{ "ui": { "network": { "ip": "192.168.0.111", "port": 8501, "docker_network": "vlan1" } }, "hmis": [ { "name": "hmi", "network": { "ip": "192.168.0.40", "docker_network": "vlan1" }, "inbound_connections": [ ], "outbound_connections": [ { "type": "tcp", "ip": "192.168.0.31", "port": 502, "id": "plc_con" } ], "registers": { "coil": [ { "address": 3, "count": 1, "id": "transfer_switch_state" } ], "discrete_input": [ ], "holding_register": [ { "address": 4, "count": 1, "id": "switching_threshold" } ], "input_register": [ { "address": 1, "count": 1, "id": "solar_panel_reading" }, { "address": 2, "count": 1, "id": "household_reading" } ] }, "monitors": [ { "outbound_connection_id": "plc_con", "id": "solar_panel_reading", "value_type": "input_register", "slave_id": 1, "address": 20, "count": 1, "interval": 1 }, { "outbound_connection_id": "plc_con", "id": "transfer_switch_state", "value_type": "coil", "slave_id": 1, "address": 10, "count": 1, "interval": 1 }, { "outbound_connection_id": "plc_con", "id": "switching_threshold", "value_type": "holding_register", "slave_id": 1, "address": 40, "count": 1, "interval": 1 }, { "outbound_connection_id": "plc_con", "id": "household_reading", "value_type": "input_register", "slave_id": 1, "address": 21, "count": 1, "interval": 1 } ], "controllers": [ ] } ], "plcs": [ { "name": "ats_plc", "logic": "ats_plc_logic.py", "network": { "ip": "192.168.0.31", "docker_network": "vlan1" }, "inbound_connections": [ { "type": "tcp", "ip": "192.168.0.31", "port": 502 } ], "outbound_connections": [ { "type": "rtu", "comm_port": "ttyS1", "id": "sp_pm_con" }, { "type": "rtu", "comm_port": "ttyS3", "id": "hh_pm_con" }, { "type": "rtu", "comm_port": "ttyS5", "id": "ts_con" } ], "registers": { "coil": [ { "address": 10, "count": 1, "io": "output", "id": "transfer_switch_state" } ], "discrete_input": [ ], "holding_register": [ ], "input_register": [ { "address": 20, "count": 1, "io": "input", "id": "solar_panel_reading" }, { "address": 21, "count": 1, "io": "input", "id": "household_reading" } ] }, "monitors": [ { "outbound_connection_id": "sp_pm_con", "id": "solar_panel_reading", "value_type": "input_register", "slave_id": 1, "address": 1, "count": 1, "interval": 0.2 }, { "outbound_connection_id": "hh_pm_con", "id": "household_reading", "value_type": "input_register", "slave_id": 1, "address": 1, "count": 1, "interval": 0.2 } ], "controllers": [ { "outbound_connection_id": "ts_con", "id": "transfer_switch_state", "value_type": "coil", "slave_id": 2, "address": 2, "count": 1, "interval": 1 } ] } ], "sensors": [ { "name": "solar_panel_power_meter", "hil": "electrical_hil", "network": { "ip": "192.168.0.21", "docker_network": "vlan1" }, "inbound_connections": [ { "type": "rtu", "slave_id": 1, "comm_port": "ttyS2" } ], "registers": { "coil": [ ], "discrete_input": [ ], "holding_register": [ ], "input_register": [ { "address": 1, "count": 1, "physical_value": "solar_power" } ] } }, { "name": "household_power_meter", "hil": "electrical_hil", "network": { "ip": "192.168.0.22", "docker_network": "vlan1" }, "inbound_connections": [ { "type": "rtu", "slave_id": 1, "comm_port": "ttyS4" } ], "registers": { "coil": [ ], "discrete_input": [ ], "holding_register": [ ], "input_register": [ { "address": 1, "count": 1, "physical_value": "household_power" } ] } } ], "actuators": [ { "name": "transfer_switch", "hil": "electrical_hil", "network": { "ip": "192.168.0.23", "docker_network": "vlan1" }, "inbound_connections": [ { "type": "rtu", "slave_id": 2, "comm_port": "ttyS6" } ], "registers": { "coil": [ { "address": 2, "count": 1, "physical_value": "transfer_switch_state" } ], "discrete_input": [ ], "holding_register": [ ], "input_register": [ ] } } ], "hils": [ { "name": "electrical_hil", "logic": "electrical_hil_logic.py", "physical_values": [ { "name": "solar_power", "io": "output" }, { "name": "household_power", "io": "output" }, { "name": "transfer_switch_state", "io": "input" } ] } ], "serial_networks": [ { "src": "ttyS1", "dest": "ttyS2" }, { "src": "ttyS3", "dest": "ttyS4" }, { "src": "ttyS5", "dest": "ttyS6" } ], "ip_networks": [ { "docker_name": "vlan1", "name": "ics_simlab", "subnet": "192.168.0.0/24" } ] }