{
  "schemaVersion": 1,
  "metadata": {
    "format": "plcsim.fbd-program",
    "exportedAt": "2026-06-17T00:00:00.000Z",
    "language": "FBD",
    "nodeCount": 14,
    "connectionCount": 15
  },
  "editorGraph": {
    "id": "graph-main",
    "language": "FBD",
    "version": 1,
    "viewport": {
      "x": 0,
      "y": 0,
      "zoom": 1
    },
    "nodeDefinitions": [
      {
        "id": "def-in",
        "blockType": "IN",
        "displayName": "Input",
        "stateful": false,
        "inputPorts": [],
        "outputPorts": [
          {
            "id": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": null
          }
        ]
      },
      {
        "id": "def-out",
        "blockType": "OUT",
        "displayName": "Output",
        "stateful": false,
        "inputPorts": [
          {
            "id": "in",
            "name": "IN",
            "direction": "IN",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": 1
          }
        ],
        "outputPorts": []
      },
      {
        "id": "def-and",
        "blockType": "AND",
        "displayName": "AND",
        "stateful": false,
        "inputPorts": [
          {
            "id": "in1",
            "name": "IN1",
            "direction": "IN",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": 1
          },
          {
            "id": "in2",
            "name": "IN2",
            "direction": "IN",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": 1
          }
        ],
        "outputPorts": [
          {
            "id": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": null
          }
        ]
      },
      {
        "id": "def-or",
        "blockType": "OR",
        "displayName": "OR",
        "stateful": false,
        "inputPorts": [
          {
            "id": "in1",
            "name": "IN1",
            "direction": "IN",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": 1
          },
          {
            "id": "in2",
            "name": "IN2",
            "direction": "IN",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": 1
          }
        ],
        "outputPorts": [
          {
            "id": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": null
          }
        ]
      },
      {
        "id": "def-not",
        "blockType": "NOT",
        "displayName": "NOT",
        "stateful": false,
        "inputPorts": [
          {
            "id": "in",
            "name": "IN",
            "direction": "IN",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": 1
          }
        ],
        "outputPorts": [
          {
            "id": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL",
            "required": true,
            "maxConnections": null
          }
        ]
      }
    ],
    "nodes": [
      {
        "id": "node-0001",
        "definitionId": "def-in",
        "label": "Auto_Mode",
        "position": {
          "x": 80,
          "y": 80
        },
        "ports": [
          {
            "id": "node-0001:q",
            "nodeId": "node-0001",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0002",
        "definitionId": "def-in",
        "label": "Manual_Mode",
        "position": {
          "x": 80,
          "y": 200
        },
        "ports": [
          {
            "id": "node-0002:q",
            "nodeId": "node-0002",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0003",
        "definitionId": "def-in",
        "label": "Auto_Command",
        "position": {
          "x": 80,
          "y": 340
        },
        "ports": [
          {
            "id": "node-0003:q",
            "nodeId": "node-0003",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0004",
        "definitionId": "def-in",
        "label": "Manual_Command",
        "position": {
          "x": 80,
          "y": 460
        },
        "ports": [
          {
            "id": "node-0004:q",
            "nodeId": "node-0004",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0005",
        "definitionId": "def-and",
        "label": "Conflict_AND",
        "position": {
          "x": 340,
          "y": 140
        },
        "ports": [
          {
            "id": "node-0005:in1",
            "nodeId": "node-0005",
            "definitionPortId": "in1",
            "name": "IN1",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0005:in2",
            "nodeId": "node-0005",
            "definitionPortId": "in2",
            "name": "IN2",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0005:q",
            "nodeId": "node-0005",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0006",
        "definitionId": "def-not",
        "label": "No_Conflict",
        "position": {
          "x": 560,
          "y": 140
        },
        "ports": [
          {
            "id": "node-0006:in",
            "nodeId": "node-0006",
            "definitionPortId": "in",
            "name": "IN",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0006:q",
            "nodeId": "node-0006",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0007",
        "definitionId": "def-and",
        "label": "Auto_Request",
        "position": {
          "x": 340,
          "y": 320
        },
        "ports": [
          {
            "id": "node-0007:in1",
            "nodeId": "node-0007",
            "definitionPortId": "in1",
            "name": "IN1",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0007:in2",
            "nodeId": "node-0007",
            "definitionPortId": "in2",
            "name": "IN2",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0007:q",
            "nodeId": "node-0007",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0008",
        "definitionId": "def-and",
        "label": "Manual_Request",
        "position": {
          "x": 340,
          "y": 470
        },
        "ports": [
          {
            "id": "node-0008:in1",
            "nodeId": "node-0008",
            "definitionPortId": "in1",
            "name": "IN1",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0008:in2",
            "nodeId": "node-0008",
            "definitionPortId": "in2",
            "name": "IN2",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0008:q",
            "nodeId": "node-0008",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0009",
        "definitionId": "def-and",
        "label": "Auto_Allowed",
        "position": {
          "x": 600,
          "y": 320
        },
        "ports": [
          {
            "id": "node-0009:in1",
            "nodeId": "node-0009",
            "definitionPortId": "in1",
            "name": "IN1",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0009:in2",
            "nodeId": "node-0009",
            "definitionPortId": "in2",
            "name": "IN2",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0009:q",
            "nodeId": "node-0009",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0010",
        "definitionId": "def-and",
        "label": "Manual_Allowed",
        "position": {
          "x": 600,
          "y": 470
        },
        "ports": [
          {
            "id": "node-0010:in1",
            "nodeId": "node-0010",
            "definitionPortId": "in1",
            "name": "IN1",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0010:in2",
            "nodeId": "node-0010",
            "definitionPortId": "in2",
            "name": "IN2",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0010:q",
            "nodeId": "node-0010",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0011",
        "definitionId": "def-or",
        "label": "Select_OR",
        "position": {
          "x": 850,
          "y": 395
        },
        "ports": [
          {
            "id": "node-0011:in1",
            "nodeId": "node-0011",
            "definitionPortId": "in1",
            "name": "IN1",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0011:in2",
            "nodeId": "node-0011",
            "definitionPortId": "in2",
            "name": "IN2",
            "direction": "IN",
            "signalType": "BOOL"
          },
          {
            "id": "node-0011:q",
            "nodeId": "node-0011",
            "definitionPortId": "q",
            "name": "Q",
            "direction": "OUT",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0012",
        "definitionId": "def-out",
        "label": "Drive_Command",
        "position": {
          "x": 1100,
          "y": 395
        },
        "ports": [
          {
            "id": "node-0012:in",
            "nodeId": "node-0012",
            "definitionPortId": "in",
            "name": "IN",
            "direction": "IN",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "node-0013",
        "definitionId": "def-out",
        "label": "Mode_Conflict",
        "position": {
          "x": 850,
          "y": 140
        },
        "ports": [
          {
            "id": "node-0013:in",
            "nodeId": "node-0013",
            "definitionPortId": "in",
            "name": "IN",
            "direction": "IN",
            "signalType": "BOOL"
          }
        ],
        "parameterValues": {}
      },
      {
        "id": "comment-0001",
        "type": "comment",
        "position": {
          "x": 80,
          "y": 620
        },
        "data": {
          "text": "Режим Auto / Manual\n\nAuto_Mode и Manual_Mode выбирают источник команды. Если активен только Auto_Mode, на выход Drive_Command проходит Auto_Command. Если активен только Manual_Mode, проходит Manual_Command. Если оба режима включены одновременно, Mode_Conflict = TRUE, а Drive_Command блокируется через No_Conflict.",
          "width": 840,
          "height": 150
        }
      }
    ],
    "connections": [
      {
        "id": "edge-0001",
        "sourceNodeId": "node-0001",
        "sourcePortId": "node-0001:q",
        "targetNodeId": "node-0005",
        "targetPortId": "node-0005:in1",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0002",
        "sourceNodeId": "node-0002",
        "sourcePortId": "node-0002:q",
        "targetNodeId": "node-0005",
        "targetPortId": "node-0005:in2",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0003",
        "sourceNodeId": "node-0005",
        "sourcePortId": "node-0005:q",
        "targetNodeId": "node-0006",
        "targetPortId": "node-0006:in",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0004",
        "sourceNodeId": "node-0005",
        "sourcePortId": "node-0005:q",
        "targetNodeId": "node-0013",
        "targetPortId": "node-0013:in",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0005",
        "sourceNodeId": "node-0001",
        "sourcePortId": "node-0001:q",
        "targetNodeId": "node-0007",
        "targetPortId": "node-0007:in1",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0006",
        "sourceNodeId": "node-0003",
        "sourcePortId": "node-0003:q",
        "targetNodeId": "node-0007",
        "targetPortId": "node-0007:in2",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0007",
        "sourceNodeId": "node-0002",
        "sourcePortId": "node-0002:q",
        "targetNodeId": "node-0008",
        "targetPortId": "node-0008:in1",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0008",
        "sourceNodeId": "node-0004",
        "sourcePortId": "node-0004:q",
        "targetNodeId": "node-0008",
        "targetPortId": "node-0008:in2",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0009",
        "sourceNodeId": "node-0007",
        "sourcePortId": "node-0007:q",
        "targetNodeId": "node-0009",
        "targetPortId": "node-0009:in1",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0010",
        "sourceNodeId": "node-0006",
        "sourcePortId": "node-0006:q",
        "targetNodeId": "node-0009",
        "targetPortId": "node-0009:in2",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0011",
        "sourceNodeId": "node-0008",
        "sourcePortId": "node-0008:q",
        "targetNodeId": "node-0010",
        "targetPortId": "node-0010:in1",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0012",
        "sourceNodeId": "node-0006",
        "sourcePortId": "node-0006:q",
        "targetNodeId": "node-0010",
        "targetPortId": "node-0010:in2",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0013",
        "sourceNodeId": "node-0009",
        "sourcePortId": "node-0009:q",
        "targetNodeId": "node-0011",
        "targetPortId": "node-0011:in1",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0014",
        "sourceNodeId": "node-0010",
        "sourcePortId": "node-0010:q",
        "targetNodeId": "node-0011",
        "targetPortId": "node-0011:in2",
        "signalType": "BOOL"
      },
      {
        "id": "edge-0015",
        "sourceNodeId": "node-0011",
        "sourcePortId": "node-0011:q",
        "targetNodeId": "node-0012",
        "targetPortId": "node-0012:in",
        "signalType": "BOOL"
      }
    ]
  }
}