mirror of
https://github.com/dptech-corp/Uni-Lab-OS.git
synced 2025-12-14 13:14:39 +00:00
1233 lines
27 KiB
JSON
1233 lines
27 KiB
JSON
{
|
|
"nodes": [
|
|
{
|
|
"type": "separator",
|
|
"x": 880,
|
|
"y": 240,
|
|
"internalId": 11,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"address": "",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "separator",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "separator",
|
|
"class": "ChemputerSeparator",
|
|
"name": "separator",
|
|
"current_volume": 0,
|
|
"max_volume": 300,
|
|
"necks": 1,
|
|
"dead_volume": 3,
|
|
"can_filter": false,
|
|
"label": "separator"
|
|
},
|
|
{
|
|
"type": "valve",
|
|
"x": 40,
|
|
"y": 120,
|
|
"internalId": 13,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "valve_Z",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "valve_Z",
|
|
"class": "ChemputerValve",
|
|
"name": "valve_Z",
|
|
"address": "192.168.1.121",
|
|
"current_volume": 0,
|
|
"label": "valve_Z"
|
|
},
|
|
{
|
|
"type": "pump",
|
|
"x": 40,
|
|
"y": 0,
|
|
"internalId": 14,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "pump_Z",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "pump_Z",
|
|
"class": "ChemputerPump",
|
|
"name": "pump_Z",
|
|
"address": "192.168.1.101",
|
|
"max_volume": 25,
|
|
"current_volume": 0,
|
|
"label": "pump_Z"
|
|
},
|
|
{
|
|
"type": "waste",
|
|
"x": 120,
|
|
"y": 40,
|
|
"internalId": 15,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"address": "",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "waste_Z",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "waste_Z",
|
|
"class": "ChemputerWaste",
|
|
"name": "waste_Z",
|
|
"current_volume": 0,
|
|
"max_volume": 2000,
|
|
"necks": 1,
|
|
"can_filter": false,
|
|
"label": "waste_Z"
|
|
},
|
|
{
|
|
"type": "valve",
|
|
"x": 320,
|
|
"y": 120,
|
|
"internalId": 16,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "valve_H",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "valve_H",
|
|
"class": "ChemputerValve",
|
|
"name": "valve_H",
|
|
"address": "192.168.1.122",
|
|
"current_volume": 0,
|
|
"label": "valve_H"
|
|
},
|
|
{
|
|
"type": "pump",
|
|
"x": 320,
|
|
"y": 0,
|
|
"internalId": 17,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "pump_H",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "pump_H",
|
|
"class": "ChemputerPump",
|
|
"name": "pump_H",
|
|
"address": "192.168.1.102",
|
|
"max_volume": 25,
|
|
"current_volume": 0,
|
|
"label": "pump_H"
|
|
},
|
|
{
|
|
"type": "waste",
|
|
"x": 400,
|
|
"y": 40,
|
|
"internalId": 18,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"address": "",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "waste_H",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "waste_H",
|
|
"class": "ChemputerWaste",
|
|
"name": "waste_H",
|
|
"current_volume": 0,
|
|
"max_volume": 2000,
|
|
"necks": 1,
|
|
"can_filter": false,
|
|
"label": "waste_H"
|
|
},
|
|
{
|
|
"type": "valve",
|
|
"x": 600,
|
|
"y": 120,
|
|
"internalId": 19,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "valve_G",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "valve_G",
|
|
"class": "ChemputerValve",
|
|
"name": "valve_G",
|
|
"address": "192.168.1.123",
|
|
"current_volume": 0,
|
|
"label": "valve_G"
|
|
},
|
|
{
|
|
"type": "valve",
|
|
"x": 880,
|
|
"y": 120,
|
|
"internalId": 23,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "valve_Y",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "valve_Y",
|
|
"class": "ChemputerValve",
|
|
"name": "valve_Y",
|
|
"address": "192.168.1.124",
|
|
"current_volume": 0,
|
|
"label": "valve_Y"
|
|
},
|
|
{
|
|
"type": "valve",
|
|
"x": 1080,
|
|
"y": 120,
|
|
"internalId": 24,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "valve_K",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "valve_K",
|
|
"class": "ChemputerValve",
|
|
"name": "valve_K",
|
|
"address": "192.168.1.125",
|
|
"current_volume": 0,
|
|
"label": "valve_K"
|
|
},
|
|
{
|
|
"type": "pump",
|
|
"x": 600,
|
|
"y": 0,
|
|
"internalId": 25,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "pump_G",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "pump_G",
|
|
"class": "ChemputerPump",
|
|
"name": "pump_G",
|
|
"address": "192.168.1.103",
|
|
"max_volume": 25,
|
|
"current_volume": 0,
|
|
"label": "pump_G"
|
|
},
|
|
{
|
|
"type": "pump",
|
|
"x": 880,
|
|
"y": 0,
|
|
"internalId": 26,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "pump_Y",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "pump_Y",
|
|
"class": "ChemputerPump",
|
|
"name": "pump_Y",
|
|
"address": "192.168.1.104",
|
|
"max_volume": 25,
|
|
"current_volume": 0,
|
|
"label": "pump_Y"
|
|
},
|
|
{
|
|
"type": "pump",
|
|
"x": 1080,
|
|
"y": 0,
|
|
"internalId": 27,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "pump_K",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "pump_K",
|
|
"class": "ChemputerPump",
|
|
"name": "pump_K",
|
|
"address": "192.168.1.105",
|
|
"max_volume": 50,
|
|
"current_volume": 0,
|
|
"label": "pump_K"
|
|
},
|
|
{
|
|
"type": "waste",
|
|
"x": 680,
|
|
"y": 40,
|
|
"internalId": 28,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"address": "",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "waste_G",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "waste_G",
|
|
"class": "ChemputerWaste",
|
|
"name": "waste_G",
|
|
"current_volume": 0,
|
|
"max_volume": 2000,
|
|
"necks": 1,
|
|
"can_filter": false,
|
|
"label": "waste_G"
|
|
},
|
|
{
|
|
"type": "waste",
|
|
"x": 960,
|
|
"y": 40,
|
|
"internalId": 29,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"address": "",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "waste_Y",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "waste_Y",
|
|
"class": "ChemputerWaste",
|
|
"name": "waste_Y",
|
|
"current_volume": 0,
|
|
"max_volume": 2000,
|
|
"necks": 1,
|
|
"can_filter": false,
|
|
"label": "waste_Y"
|
|
},
|
|
{
|
|
"type": "waste",
|
|
"x": 1160,
|
|
"y": 40,
|
|
"internalId": 30,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"address": "",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "waste_K",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "waste_K",
|
|
"class": "ChemputerWaste",
|
|
"name": "waste_K",
|
|
"current_volume": 0,
|
|
"max_volume": 2000,
|
|
"necks": 1,
|
|
"can_filter": false,
|
|
"label": "waste_K"
|
|
},
|
|
{
|
|
"type": "vacuum",
|
|
"x": 160,
|
|
"y": 400,
|
|
"internalId": 72,
|
|
"lock": "",
|
|
"simulation": true,
|
|
"device_name": "vacuum_filter",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "vacuum_filter",
|
|
"connection_mode": "tcpip",
|
|
"class": "ChemputerVacuum",
|
|
"name": "vacuum_filter",
|
|
"address": "",
|
|
"port": "5000",
|
|
"label": "vacuum_filter"
|
|
},
|
|
{
|
|
"type": "vacuum",
|
|
"x": 280,
|
|
"y": 400,
|
|
"internalId": 75,
|
|
"lock": "",
|
|
"simulation": true,
|
|
"device_name": "vacuum_pump",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "vacuum_pump",
|
|
"connection_mode": "tcpip",
|
|
"class": "CVC3000VacuumPump",
|
|
"name": "vacuum_pump",
|
|
"address": "192.168.1.201",
|
|
"port": "5000",
|
|
"label": "vacuum_pump"
|
|
},
|
|
{
|
|
"type": "conductivity_sensor",
|
|
"x": 880,
|
|
"y": 320,
|
|
"internalId": 80,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"simulation": true,
|
|
"device_name": "sensor_separator",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "sensor_separator",
|
|
"class": "ConductivitySensor",
|
|
"name": "sensor_separator",
|
|
"address": "",
|
|
"port": "5000",
|
|
"label": "sensor_separator"
|
|
},
|
|
{
|
|
"type": "stirrer",
|
|
"x": 800,
|
|
"y": 240,
|
|
"internalId": 82,
|
|
"lock": "",
|
|
"simulation": true,
|
|
"device_name": "stirrer_separator",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "stirrer_separator",
|
|
"connection_mode": "tcpip",
|
|
"class": "HeiTorque100PrecisionStirrer",
|
|
"name": "stirrer_separator",
|
|
"address": "192.168.1.206",
|
|
"port": "5000",
|
|
"label": "stirrer_separator"
|
|
},
|
|
{
|
|
"type": "filter",
|
|
"x": 40,
|
|
"y": 240,
|
|
"internalId": 0,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"address": "",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "filter",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "filter",
|
|
"class": "ChemputerFilter",
|
|
"name": "filter",
|
|
"current_volume": 0,
|
|
"max_volume": 100,
|
|
"dead_volume": 10,
|
|
"label": "filter"
|
|
},
|
|
{
|
|
"type": "valve",
|
|
"x": 160,
|
|
"y": 240,
|
|
"internalId": 6,
|
|
"lock": "",
|
|
"connection_mode": "tcpip",
|
|
"port": "5000",
|
|
"simulation": true,
|
|
"device_name": "valve_vacuum",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "valve_vacuum",
|
|
"class": "ChemputerValve",
|
|
"name": "valve_vacuum",
|
|
"address": "",
|
|
"current_volume": 0,
|
|
"label": "valve_vacuum"
|
|
},
|
|
{
|
|
"type": "stirrer",
|
|
"x": -40,
|
|
"y": 240,
|
|
"internalId": 20,
|
|
"lock": "",
|
|
"simulation": true,
|
|
"device_name": "stirrer_filter",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "stirrer_filter",
|
|
"class": "RZR2052ControlStirrer",
|
|
"name": "stirrer_filter",
|
|
"port": "",
|
|
"address": "",
|
|
"connection_mode": "tcpip",
|
|
"label": "stirrer_filter"
|
|
},
|
|
{
|
|
"type": "chiller",
|
|
"x": 40,
|
|
"y": 320,
|
|
"internalId": 3,
|
|
"lock": "",
|
|
"simulation": true,
|
|
"device_name": "chiller_filter",
|
|
"obj": "",
|
|
"xdl_locks": {
|
|
"temp": "",
|
|
"ongoing": ""
|
|
},
|
|
"id": "chiller_filter",
|
|
"class": "CF41Chiller",
|
|
"name": "chiller_filter",
|
|
"min_temp": null,
|
|
"max_temp": null,
|
|
"port": "",
|
|
"address": "",
|
|
"temp_sensor": "external",
|
|
"connection_mode": "tcpip",
|
|
"label": "chiller_filter"
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": 960,
|
|
"y": 200,
|
|
"id": "buffer_flask1",
|
|
"label": "buffer_flask1",
|
|
"internalId": 9,
|
|
"obj": "",
|
|
"class": "ChemputerFlask",
|
|
"name": "buffer_flask1",
|
|
"max_volume": 500,
|
|
"current_volume": 0,
|
|
"chemical": "",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": 600,
|
|
"y": 240,
|
|
"obj": "",
|
|
"label": "flask_2,6-Dimethylaniline",
|
|
"id": "flask_2,6-Dimethylaniline",
|
|
"internalId": 5,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "2,6-Dimethylaniline",
|
|
"name": "flask_2,6-Dimethylaniline",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": 1080,
|
|
"y": 240,
|
|
"obj": "",
|
|
"label": "flask_3 M hydrochloric acid",
|
|
"id": "flask_3 M hydrochloric acid",
|
|
"internalId": 44,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "3 M hydrochloric acid",
|
|
"name": "flask_3 M hydrochloric acid",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": 320,
|
|
"y": 240,
|
|
"obj": "",
|
|
"label": "flask_3 M sodium hydroxide",
|
|
"id": "flask_3 M sodium hydroxide",
|
|
"internalId": 46,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "3 M sodium hydroxide",
|
|
"name": "flask_3 M sodium hydroxide",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": 1160,
|
|
"y": 200,
|
|
"obj": "",
|
|
"label": "flask_chloroacetyl chloride",
|
|
"id": "flask_chloroacetyl chloride",
|
|
"internalId": 48,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "chloroacetyl chloride",
|
|
"name": "flask_chloroacetyl chloride",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": 520,
|
|
"y": 200,
|
|
"obj": "",
|
|
"label": "flask_diethylamine",
|
|
"id": "flask_diethylamine",
|
|
"internalId": 50,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "diethylamine",
|
|
"name": "flask_diethylamine",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": 400,
|
|
"y": 200,
|
|
"obj": "",
|
|
"label": "flask_glacial acetic acid",
|
|
"id": "flask_glacial acetic acid",
|
|
"internalId": 52,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "glacial acetic acid",
|
|
"name": "flask_glacial acetic acid",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": -40,
|
|
"y": 200,
|
|
"obj": "",
|
|
"label": "flask_half-saturated aqueous sodium acetate",
|
|
"id": "flask_half-saturated aqueous sodium acetate",
|
|
"internalId": 54,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "half-saturated aqueous sodium acetate",
|
|
"name": "flask_half-saturated aqueous sodium acetate",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": -40,
|
|
"y": 40,
|
|
"obj": "",
|
|
"label": "flask_toluene",
|
|
"id": "flask_toluene",
|
|
"internalId": 56,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "toluene",
|
|
"name": "flask_toluene",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": 680,
|
|
"y": 200,
|
|
"obj": "",
|
|
"label": "flask_water",
|
|
"id": "flask_water",
|
|
"internalId": 65,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "water",
|
|
"name": "flask_water",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
},
|
|
{
|
|
"type": "flask",
|
|
"x": 120,
|
|
"y": 200,
|
|
"obj": "",
|
|
"label": "flask_nitrogen",
|
|
"id": "flask_nitrogen",
|
|
"internalId": 67,
|
|
"max_volume": 100,
|
|
"current_volume": 0,
|
|
"class": "ChemputerFlask",
|
|
"chemical": "nitrogen",
|
|
"name": "flask_nitrogen",
|
|
"can_filter": false,
|
|
"buffer_flask": false
|
|
}
|
|
],
|
|
"links": [
|
|
{
|
|
"id": 58,
|
|
"sourceInternal": 11,
|
|
"targetInternal": 23,
|
|
"source": "separator",
|
|
"target": "valve_Y",
|
|
"port": "(bottom,4)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 32,
|
|
"sourceInternal": 13,
|
|
"targetInternal": 14,
|
|
"source": "valve_Z",
|
|
"target": "pump_Z",
|
|
"port": "(-1,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 85,
|
|
"sourceInternal": 13,
|
|
"targetInternal": 16,
|
|
"source": "valve_Z",
|
|
"target": "valve_H",
|
|
"port": "(1,2)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 95,
|
|
"sourceInternal": 13,
|
|
"targetInternal": 15,
|
|
"source": "valve_Z",
|
|
"target": "waste_Z",
|
|
"port": "(0,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 1,
|
|
"sourceInternal": 13,
|
|
"targetInternal": 0,
|
|
"source": "valve_Z",
|
|
"target": "filter",
|
|
"port": "(4,top)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 31,
|
|
"sourceInternal": 14,
|
|
"targetInternal": 13,
|
|
"source": "pump_Z",
|
|
"target": "valve_Z",
|
|
"port": "(0,-1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 34,
|
|
"sourceInternal": 16,
|
|
"targetInternal": 17,
|
|
"source": "valve_H",
|
|
"target": "pump_H",
|
|
"port": "(-1,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 86,
|
|
"sourceInternal": 16,
|
|
"targetInternal": 13,
|
|
"source": "valve_H",
|
|
"target": "valve_Z",
|
|
"port": "(2,1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 87,
|
|
"sourceInternal": 16,
|
|
"targetInternal": 19,
|
|
"source": "valve_H",
|
|
"target": "valve_G",
|
|
"port": "(1,2)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 96,
|
|
"sourceInternal": 16,
|
|
"targetInternal": 18,
|
|
"source": "valve_H",
|
|
"target": "waste_H",
|
|
"port": "(0,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 43,
|
|
"sourceInternal": 16,
|
|
"targetInternal": 6,
|
|
"source": "valve_H",
|
|
"target": "valve_vacuum",
|
|
"port": "(3,2)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 33,
|
|
"sourceInternal": 17,
|
|
"targetInternal": 16,
|
|
"source": "pump_H",
|
|
"target": "valve_H",
|
|
"port": "(0,-1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 36,
|
|
"sourceInternal": 19,
|
|
"targetInternal": 25,
|
|
"source": "valve_G",
|
|
"target": "pump_G",
|
|
"port": "(-1,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 88,
|
|
"sourceInternal": 19,
|
|
"targetInternal": 16,
|
|
"source": "valve_G",
|
|
"target": "valve_H",
|
|
"port": "(2,1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 89,
|
|
"sourceInternal": 19,
|
|
"targetInternal": 23,
|
|
"source": "valve_G",
|
|
"target": "valve_Y",
|
|
"port": "(1,2)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 97,
|
|
"sourceInternal": 19,
|
|
"targetInternal": 28,
|
|
"source": "valve_G",
|
|
"target": "waste_G",
|
|
"port": "(0,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 38,
|
|
"sourceInternal": 23,
|
|
"targetInternal": 26,
|
|
"source": "valve_Y",
|
|
"target": "pump_Y",
|
|
"port": "(-1,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 59,
|
|
"sourceInternal": 23,
|
|
"targetInternal": 11,
|
|
"source": "valve_Y",
|
|
"target": "separator",
|
|
"port": "(4,bottom)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 42,
|
|
"sourceInternal": 23,
|
|
"targetInternal": 11,
|
|
"source": "valve_Y",
|
|
"target": "separator",
|
|
"port": "(3,top)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 90,
|
|
"sourceInternal": 23,
|
|
"targetInternal": 19,
|
|
"source": "valve_Y",
|
|
"target": "valve_G",
|
|
"port": "(2,1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 91,
|
|
"sourceInternal": 23,
|
|
"targetInternal": 24,
|
|
"source": "valve_Y",
|
|
"target": "valve_K",
|
|
"port": "(1,2)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 98,
|
|
"sourceInternal": 23,
|
|
"targetInternal": 29,
|
|
"source": "valve_Y",
|
|
"target": "waste_Y",
|
|
"port": "(0,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 10,
|
|
"sourceInternal": 23,
|
|
"targetInternal": 9,
|
|
"source": "valve_Y",
|
|
"target": "buffer_flask1",
|
|
"port": "(5,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 40,
|
|
"sourceInternal": 24,
|
|
"targetInternal": 27,
|
|
"source": "valve_K",
|
|
"target": "pump_K",
|
|
"port": "(-1,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 92,
|
|
"sourceInternal": 24,
|
|
"targetInternal": 23,
|
|
"source": "valve_K",
|
|
"target": "valve_Y",
|
|
"port": "(2,1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 99,
|
|
"sourceInternal": 24,
|
|
"targetInternal": 30,
|
|
"source": "valve_K",
|
|
"target": "waste_K",
|
|
"port": "(0,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 35,
|
|
"sourceInternal": 25,
|
|
"targetInternal": 19,
|
|
"source": "pump_G",
|
|
"target": "valve_G",
|
|
"port": "(0,-1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 37,
|
|
"sourceInternal": 26,
|
|
"targetInternal": 23,
|
|
"source": "pump_Y",
|
|
"target": "valve_Y",
|
|
"port": "(0,-1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 39,
|
|
"sourceInternal": 27,
|
|
"targetInternal": 24,
|
|
"source": "pump_K",
|
|
"target": "valve_K",
|
|
"port": "(0,-1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 77,
|
|
"sourceInternal": 75,
|
|
"targetInternal": 72,
|
|
"source": "vacuum_pump",
|
|
"target": "vacuum_filter",
|
|
"port": "(,)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 81,
|
|
"sourceInternal": 80,
|
|
"targetInternal": 11,
|
|
"source": "sensor_separator",
|
|
"target": "separator",
|
|
"port": "(,)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 83,
|
|
"sourceInternal": 82,
|
|
"targetInternal": 11,
|
|
"source": "stirrer_separator",
|
|
"target": "separator",
|
|
"port": "(,)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 8,
|
|
"sourceInternal": 0,
|
|
"targetInternal": 6,
|
|
"source": "filter",
|
|
"target": "valve_vacuum",
|
|
"port": "(bottom,-1)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 7,
|
|
"sourceInternal": 6,
|
|
"targetInternal": 0,
|
|
"source": "valve_vacuum",
|
|
"target": "filter",
|
|
"port": "(-1,bottom)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 4,
|
|
"sourceInternal": 6,
|
|
"targetInternal": 72,
|
|
"source": "valve_vacuum",
|
|
"target": "vacuum_filter",
|
|
"port": "(1,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 2,
|
|
"sourceInternal": 6,
|
|
"targetInternal": 16,
|
|
"source": "valve_vacuum",
|
|
"target": "valve_H",
|
|
"port": "(2,3)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 21,
|
|
"sourceInternal": 20,
|
|
"targetInternal": 0,
|
|
"source": "stirrer_filter",
|
|
"target": "filter",
|
|
"port": "(,)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 41,
|
|
"sourceInternal": 3,
|
|
"targetInternal": 0,
|
|
"source": "chiller_filter",
|
|
"target": "filter",
|
|
"port": "(,)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 12,
|
|
"sourceInternal": 9,
|
|
"targetInternal": 23,
|
|
"source": "buffer_flask1",
|
|
"target": "valve_Y",
|
|
"port": "(0,5)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 22,
|
|
"sourceInternal": 5,
|
|
"targetInternal": 19,
|
|
"source": "flask_2,6-Dimethylaniline",
|
|
"target": "valve_G",
|
|
"port": "(0,4)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 45,
|
|
"sourceInternal": 44,
|
|
"targetInternal": 24,
|
|
"source": "flask_3 M hydrochloric acid",
|
|
"target": "valve_K",
|
|
"port": "(0,4)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 47,
|
|
"sourceInternal": 46,
|
|
"targetInternal": 16,
|
|
"source": "flask_3 M sodium hydroxide",
|
|
"target": "valve_H",
|
|
"port": "(0,4)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 49,
|
|
"sourceInternal": 48,
|
|
"targetInternal": 24,
|
|
"source": "flask_chloroacetyl chloride",
|
|
"target": "valve_K",
|
|
"port": "(0,5)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 51,
|
|
"sourceInternal": 50,
|
|
"targetInternal": 19,
|
|
"source": "flask_diethylamine",
|
|
"target": "valve_G",
|
|
"port": "(0,3)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 53,
|
|
"sourceInternal": 52,
|
|
"targetInternal": 16,
|
|
"source": "flask_glacial acetic acid",
|
|
"target": "valve_H",
|
|
"port": "(0,5)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 55,
|
|
"sourceInternal": 54,
|
|
"targetInternal": 13,
|
|
"source": "flask_half-saturated aqueous sodium acetate",
|
|
"target": "valve_Z",
|
|
"port": "(0,3)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 57,
|
|
"sourceInternal": 56,
|
|
"targetInternal": 13,
|
|
"source": "flask_toluene",
|
|
"target": "valve_Z",
|
|
"port": "(0,2)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 66,
|
|
"sourceInternal": 65,
|
|
"targetInternal": 19,
|
|
"source": "flask_water",
|
|
"target": "valve_G",
|
|
"port": "(0,5)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 68,
|
|
"sourceInternal": 67,
|
|
"targetInternal": 13,
|
|
"source": "flask_nitrogen",
|
|
"target": "valve_Z",
|
|
"port": "(0,5)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
},
|
|
{
|
|
"id": 69,
|
|
"sourceInternal": 67,
|
|
"targetInternal": 6,
|
|
"source": "flask_nitrogen",
|
|
"target": "valve_vacuum",
|
|
"port": "(0,0)",
|
|
"tubeLength": null,
|
|
"tubeDiameter": null
|
|
}
|
|
]
|
|
} |