1280 lines
50 KiB
JSON
1280 lines
50 KiB
JSON
{
|
|
"block_name": "BlenderPIDCtrl__Loop",
|
|
"block_number": 1729,
|
|
"language": "LAD",
|
|
"block_comment": "TASK1 PID",
|
|
"interface": {
|
|
"Static": [
|
|
{
|
|
"name": "PID_1_300ms",
|
|
"datatype": "Bool"
|
|
},
|
|
{
|
|
"name": "PID_2_300ms",
|
|
"datatype": "Bool"
|
|
},
|
|
{
|
|
"name": "PID_3_300ms",
|
|
"datatype": "Bool"
|
|
},
|
|
{
|
|
"name": "PID_4_300ms",
|
|
"datatype": "Bool"
|
|
},
|
|
{
|
|
"name": "PID_5_300ms",
|
|
"datatype": "Bool"
|
|
},
|
|
{
|
|
"name": "PID_6_300ms",
|
|
"datatype": "Bool"
|
|
},
|
|
{
|
|
"name": "Flow_Meter_Error_RETVAL",
|
|
"datatype": "Real"
|
|
},
|
|
{
|
|
"name": "PID_FF_Calc",
|
|
"datatype": "\"BlenderPID_PIDFFCalc\""
|
|
},
|
|
{
|
|
"name": "PID_Blending_Fault",
|
|
"datatype": "\"BlenderPID_BlendingFault\""
|
|
},
|
|
{
|
|
"name": "PID_Save_Integral",
|
|
"datatype": "\"BlenderPIDCtrl_SaveInteg\""
|
|
},
|
|
{
|
|
"name": "PID_Monitor",
|
|
"datatype": "\"BlenderPIDCtrl_Monitor\""
|
|
},
|
|
{
|
|
"name": "Read_AnalogInput",
|
|
"datatype": "\"BlenderPIDCtrl_ReadAnIn\""
|
|
}
|
|
]
|
|
},
|
|
"networks": [
|
|
{
|
|
"id": "9",
|
|
"title": "Read Analoc Inputs",
|
|
"comment": "",
|
|
"logic": [
|
|
{
|
|
"instruction_uid": "21",
|
|
"uid": "21",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "BlenderPIDCtrl_ReadAnIn",
|
|
"block_type": "FB",
|
|
"instance_db": "\"Read_AnalogInput\"",
|
|
"instance_scope": "LocalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "powerrail"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "\"Read_AnalogInput\"();"
|
|
}
|
|
],
|
|
"language": "LAD"
|
|
},
|
|
{
|
|
"id": "1A",
|
|
"title": "MIX - OB35 scan counter",
|
|
"comment": "PID Control Time Bit (300ms)",
|
|
"logic": [
|
|
{
|
|
"instruction_uid": "40",
|
|
"uid": "40",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "powerrail"
|
|
},
|
|
"operand": {
|
|
"uid": "21",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"AUX TRUE\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v0_"
|
|
},
|
|
{
|
|
"instruction_uid": "41",
|
|
"uid": "41",
|
|
"type": "Eq_sympy_processed",
|
|
"template_values": {
|
|
"SrcType": "Type"
|
|
},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"pre": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "40",
|
|
"source_pin": "out"
|
|
},
|
|
"in1": {
|
|
"uid": "22",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"MW1968\""
|
|
},
|
|
"in2": {
|
|
"uid": "23",
|
|
"scope": "LiteralConstant",
|
|
"type": "constant",
|
|
"datatype": "Int",
|
|
"value": 1
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy EQ: Eq(v18_, 1)"
|
|
},
|
|
{
|
|
"instruction_uid": "42",
|
|
"uid": "42",
|
|
"type": "Coil_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Eq",
|
|
"source_instruction_uid": "41",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "24",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_1_300ms\""
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "\"PID_1_300ms\" := Eq(\"MW1968\", 1);"
|
|
},
|
|
{
|
|
"instruction_uid": "43",
|
|
"uid": "43",
|
|
"type": "Eq_sympy_processed",
|
|
"template_values": {
|
|
"SrcType": "Type"
|
|
},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"pre": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "40",
|
|
"source_pin": "out"
|
|
},
|
|
"in1": {
|
|
"uid": "25",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"MW1968\""
|
|
},
|
|
"in2": {
|
|
"uid": "26",
|
|
"scope": "LiteralConstant",
|
|
"type": "constant",
|
|
"datatype": "Int",
|
|
"value": 2
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy EQ: Eq(v18_, 2)"
|
|
},
|
|
{
|
|
"instruction_uid": "44",
|
|
"uid": "44",
|
|
"type": "Coil_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Eq",
|
|
"source_instruction_uid": "43",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "27",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_2_300ms\""
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "\"PID_2_300ms\" := Eq(\"MW1968\", 2);"
|
|
},
|
|
{
|
|
"instruction_uid": "45",
|
|
"uid": "45",
|
|
"type": "Eq_sympy_processed",
|
|
"template_values": {
|
|
"SrcType": "Type"
|
|
},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"pre": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "40",
|
|
"source_pin": "out"
|
|
},
|
|
"in1": {
|
|
"uid": "28",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"MW1968\""
|
|
},
|
|
"in2": {
|
|
"uid": "29",
|
|
"scope": "LiteralConstant",
|
|
"type": "constant",
|
|
"datatype": "Int",
|
|
"value": 3
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy EQ: Eq(v18_, 3)"
|
|
},
|
|
{
|
|
"instruction_uid": "46",
|
|
"uid": "46",
|
|
"type": "Coil_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Eq",
|
|
"source_instruction_uid": "45",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "30",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_3_300ms\""
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "\"PID_3_300ms\" := Eq(\"MW1968\", 3);"
|
|
},
|
|
{
|
|
"instruction_uid": "47",
|
|
"uid": "47",
|
|
"type": "Eq_sympy_processed",
|
|
"template_values": {
|
|
"SrcType": "Type"
|
|
},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"pre": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "40",
|
|
"source_pin": "out"
|
|
},
|
|
"in1": {
|
|
"uid": "31",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"MW1968\""
|
|
},
|
|
"in2": {
|
|
"uid": "32",
|
|
"scope": "LiteralConstant",
|
|
"type": "constant",
|
|
"datatype": "Int",
|
|
"value": 4
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy EQ: Eq(v18_, 4)"
|
|
},
|
|
{
|
|
"instruction_uid": "48",
|
|
"uid": "48",
|
|
"type": "Coil_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Eq",
|
|
"source_instruction_uid": "47",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "33",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_4_300ms\""
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "\"PID_4_300ms\" := Eq(\"MW1968\", 4);"
|
|
},
|
|
{
|
|
"instruction_uid": "49",
|
|
"uid": "49",
|
|
"type": "Eq_sympy_processed",
|
|
"template_values": {
|
|
"SrcType": "Type"
|
|
},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"pre": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "40",
|
|
"source_pin": "out"
|
|
},
|
|
"in1": {
|
|
"uid": "34",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"MW1968\""
|
|
},
|
|
"in2": {
|
|
"uid": "35",
|
|
"scope": "LiteralConstant",
|
|
"type": "constant",
|
|
"datatype": "Int",
|
|
"value": 5
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy EQ: Eq(v18_, 5)"
|
|
},
|
|
{
|
|
"instruction_uid": "50",
|
|
"uid": "50",
|
|
"type": "Coil_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Eq",
|
|
"source_instruction_uid": "49",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "36",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_5_300ms\""
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "\"PID_5_300ms\" := Eq(\"MW1968\", 5);"
|
|
},
|
|
{
|
|
"instruction_uid": "51",
|
|
"uid": "51",
|
|
"type": "Eq_sympy_processed",
|
|
"template_values": {
|
|
"SrcType": "Type"
|
|
},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"pre": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "40",
|
|
"source_pin": "out"
|
|
},
|
|
"in1": {
|
|
"uid": "37",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"MW1968\""
|
|
},
|
|
"in2": {
|
|
"uid": "38",
|
|
"scope": "LiteralConstant",
|
|
"type": "constant",
|
|
"datatype": "Int",
|
|
"value": 6
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy EQ: Eq(v18_, 6)"
|
|
},
|
|
{
|
|
"instruction_uid": "52",
|
|
"uid": "52",
|
|
"type": "Coil_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Eq",
|
|
"source_instruction_uid": "51",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "39",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_6_300ms\""
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "\"PID_6_300ms\" := Eq(\"MW1968\", 6);"
|
|
}
|
|
],
|
|
"language": "LAD"
|
|
},
|
|
{
|
|
"id": "2B",
|
|
"title": "PID Call",
|
|
"comment": "Water PID\nSyrup PID\nCO2 PID",
|
|
"logic": [
|
|
{
|
|
"instruction_uid": "27",
|
|
"uid": "27",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "powerrail"
|
|
},
|
|
"operand": {
|
|
"uid": "21",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_1_300ms\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "IF \"PID_1_300ms\" THEN\n \"PID_FF_Calc\"();\n \"PID_Blending_Fault\"();\n BlenderPID_FlowMeterErro();\n \"PID_Monitor\"();\n \"PID_Save_Integral\"();\n BlenderPIDCtrl_SaveValve();\nEND_IF;"
|
|
},
|
|
{
|
|
"instruction_uid": "28",
|
|
"uid": "28",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "22",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RMM301\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v1_ & v2_"
|
|
},
|
|
{
|
|
"instruction_uid": "29",
|
|
"uid": "29",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_RMM301",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_RMM301_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "28",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"PID_1_300ms\" AND \"HMI_PID\".\"RMM301\".\"Config\" THEN\n \"PID_RMM301_Data\"();\nEND_IF;"
|
|
},
|
|
{
|
|
"instruction_uid": "31",
|
|
"uid": "31",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "23",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RMP302\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v1_ & v3_"
|
|
},
|
|
{
|
|
"instruction_uid": "32",
|
|
"uid": "32",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_RMP302",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_RMP302_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "31",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"PID_1_300ms\" AND \"HMI_PID\".\"RMP302\".\"Config\" THEN\n \"PID_RMP302_Data\"();\nEND_IF;"
|
|
},
|
|
{
|
|
"instruction_uid": "34",
|
|
"uid": "34",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "24",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RMM303\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v1_ & v4_"
|
|
},
|
|
{
|
|
"instruction_uid": "35",
|
|
"uid": "35",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_RMM303",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_RMM303_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "34",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"PID_1_300ms\" AND \"HMI_PID\".\"RMM303\".\"Config\" THEN\n \"PID_RMM303_Data\"();\nEND_IF;"
|
|
},
|
|
{
|
|
"instruction_uid": "37",
|
|
"uid": "37",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "25",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RMM304\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v1_ & v5_"
|
|
},
|
|
{
|
|
"instruction_uid": "38",
|
|
"uid": "38",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_RMM304",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_RMM304_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "37",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"PID_1_300ms\" AND \"HMI_PID\".\"RMM304\".\"Config\" THEN\n \"PID_RMM304_Data\"();\nEND_IF;"
|
|
},
|
|
{
|
|
"instruction_uid": "40",
|
|
"uid": "40",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "BlenderPID_PIDFFCalc",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_FF_Calc\"",
|
|
"instance_scope": "LocalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "// Logic included in grouped IF (by UID 27)",
|
|
"grouped": true
|
|
},
|
|
{
|
|
"instruction_uid": "42",
|
|
"uid": "42",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "BlenderPID_BlendingFault",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_Blending_Fault\"",
|
|
"instance_scope": "LocalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "// Logic included in grouped IF (by UID 27)",
|
|
"grouped": true
|
|
},
|
|
{
|
|
"instruction_uid": "44",
|
|
"uid": "44",
|
|
"type": "Call_FC_sympy_processed",
|
|
"block_name": "BlenderPID_FlowMeterErro",
|
|
"block_type": "FC",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "// Logic included in grouped IF (by UID 27)",
|
|
"grouped": true
|
|
},
|
|
{
|
|
"instruction_uid": "45",
|
|
"uid": "45",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "BlenderPIDCtrl_Monitor",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_Monitor\"",
|
|
"instance_scope": "LocalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "// Logic included in grouped IF (by UID 27)",
|
|
"grouped": true
|
|
},
|
|
{
|
|
"instruction_uid": "47",
|
|
"uid": "47",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "BlenderPIDCtrl_SaveInteg",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_Save_Integral\"",
|
|
"instance_scope": "LocalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "// Logic included in grouped IF (by UID 27)",
|
|
"grouped": true
|
|
},
|
|
{
|
|
"instruction_uid": "49",
|
|
"uid": "49",
|
|
"type": "Call_FC_sympy_processed",
|
|
"block_name": "BlenderPIDCtrl_SaveValve",
|
|
"block_type": "FC",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "// Logic included in grouped IF (by UID 27)",
|
|
"grouped": true
|
|
}
|
|
],
|
|
"language": "LAD"
|
|
},
|
|
{
|
|
"id": "3C",
|
|
"title": "PID Product Tank Pressure",
|
|
"comment": "",
|
|
"logic": [
|
|
{
|
|
"instruction_uid": "23",
|
|
"uid": "23",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "powerrail"
|
|
},
|
|
"operand": {
|
|
"uid": "21",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_2_300ms\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v6_"
|
|
},
|
|
{
|
|
"instruction_uid": "24",
|
|
"uid": "24",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "23",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "22",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RVM301\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "IF \"PID_2_300ms\" AND \"HMI_PID\".\"RVM301\".\"Config\" THEN\n \"PID_RVM301_Data\"();\n BlenderPIDCtrl_PresRelea();\nEND_IF;"
|
|
},
|
|
{
|
|
"instruction_uid": "25",
|
|
"uid": "25",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_RVM301",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_RVM301_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "24",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "// Logic included in grouped IF (by UID 24)",
|
|
"grouped": true
|
|
},
|
|
{
|
|
"instruction_uid": "27",
|
|
"uid": "27",
|
|
"type": "Call_FC_sympy_processed",
|
|
"block_name": "BlenderPIDCtrl_PresRelea",
|
|
"block_type": "FC",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "24",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "// Logic included in grouped IF (by UID 24)",
|
|
"grouped": true
|
|
}
|
|
],
|
|
"language": "LAD"
|
|
},
|
|
{
|
|
"id": "4D",
|
|
"title": "Pid Call",
|
|
"comment": "",
|
|
"logic": [
|
|
{
|
|
"instruction_uid": "26",
|
|
"uid": "26",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "powerrail"
|
|
},
|
|
"operand": {
|
|
"uid": "21",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_4_300ms\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v8_"
|
|
},
|
|
{
|
|
"instruction_uid": "27",
|
|
"uid": "27",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "26",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "22",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RVM319_PRD\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v8_ & v9_"
|
|
},
|
|
{
|
|
"instruction_uid": "28",
|
|
"uid": "28",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_RVM319_PRD",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_RVM319_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "27",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"PID_4_300ms\" AND \"HMI_PID\".\"RVM319_PRD\".\"Config\" THEN\n \"PID_RVM319_Data\"();\nEND_IF;"
|
|
},
|
|
{
|
|
"instruction_uid": "30",
|
|
"uid": "30",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "26",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "23",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RVP303\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v10_ & v8_"
|
|
},
|
|
{
|
|
"instruction_uid": "31",
|
|
"uid": "31",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_RVP303",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_RVP303_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "30",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"HMI_PID\".\"RVP303\".\"Config\" AND \"PID_4_300ms\" THEN\n \"PID_RVP303_Data\"();\nEND_IF;"
|
|
},
|
|
{
|
|
"instruction_uid": "33",
|
|
"uid": "33",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {
|
|
"operand": true
|
|
},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "26",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "24",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RVN302\".\"ConfigPID\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v8_ & ~v11_"
|
|
},
|
|
{
|
|
"instruction_uid": "34",
|
|
"uid": "34",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "33",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "25",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RVN302\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v12_ & v8_ & ~v11_"
|
|
},
|
|
{
|
|
"instruction_uid": "35",
|
|
"uid": "35",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_RVN302",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_RVN302_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "34",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"HMI_PID\".\"RVN302\".\"Config\" AND \"PID_4_300ms\" AND NOT \"HMI_PID\".\"RVN302\".\"ConfigPID\" THEN\n \"PID_RVN302_Data\"();\nEND_IF;"
|
|
}
|
|
],
|
|
"language": "LAD"
|
|
},
|
|
{
|
|
"id": "5E",
|
|
"title": "Filling Head",
|
|
"comment": "",
|
|
"logic": [
|
|
{
|
|
"instruction_uid": "24",
|
|
"uid": "24",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "powerrail"
|
|
},
|
|
"operand": {
|
|
"uid": "21",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_Blender_Parameters\".\"Processor_Options\".\"Blender_OPT\".\"_BlendFillSystem\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v13_"
|
|
},
|
|
{
|
|
"instruction_uid": "25",
|
|
"uid": "25",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "24",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "22",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_5_300ms\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v13_ & v14_"
|
|
},
|
|
{
|
|
"instruction_uid": "26",
|
|
"uid": "26",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "25",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "23",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"PPM303\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v13_ & v14_ & v15_"
|
|
},
|
|
{
|
|
"instruction_uid": "27",
|
|
"uid": "27",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_Filling_Head",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_Filling_Head_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "26",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"HMI_Blender_Parameters\".\"Processor_Options\".\"Blender_OPT\".\"_BlendFillSystem\" AND \"PID_5_300ms\" AND \"HMI_PID\".\"PPM303\".\"Config\" THEN\n \"PID_Filling_Head_Data\"();\nEND_IF;"
|
|
}
|
|
],
|
|
"language": "LAD"
|
|
},
|
|
{
|
|
"id": "6F",
|
|
"title": "CIp Heating PID",
|
|
"comment": "",
|
|
"logic": [
|
|
{
|
|
"instruction_uid": "23",
|
|
"uid": "23",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "powerrail"
|
|
},
|
|
"operand": {
|
|
"uid": "21",
|
|
"scope": "LocalVariable",
|
|
"type": "variable",
|
|
"name": "\"PID_6_300ms\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v16_"
|
|
},
|
|
{
|
|
"instruction_uid": "24",
|
|
"uid": "24",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "23",
|
|
"source_pin": "out"
|
|
},
|
|
"operand": {
|
|
"uid": "22",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"HMI_PID\".\"RVS318\".\"Config\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v16_ & v17_"
|
|
},
|
|
{
|
|
"instruction_uid": "25",
|
|
"uid": "25",
|
|
"type": "Call_FB_sympy_processed",
|
|
"block_name": "PID_RVS318",
|
|
"block_type": "FB",
|
|
"instance_db": "\"PID_RVS318_Data\"",
|
|
"instance_scope": "GlobalVariable",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "24",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"PID_6_300ms\" AND \"HMI_PID\".\"RVS318\".\"Config\" THEN\n \"PID_RVS318_Data\"();\nEND_IF;"
|
|
}
|
|
],
|
|
"language": "LAD"
|
|
},
|
|
{
|
|
"id": "80",
|
|
"title": "Write Analog Outputs",
|
|
"comment": "",
|
|
"logic": [
|
|
{
|
|
"instruction_uid": "22",
|
|
"uid": "22",
|
|
"type": "Contact_sympy_processed",
|
|
"template_values": {},
|
|
"negated_pins": {},
|
|
"inputs": {
|
|
"in": {
|
|
"type": "powerrail"
|
|
},
|
|
"operand": {
|
|
"uid": "21",
|
|
"scope": "GlobalVariable",
|
|
"type": "variable",
|
|
"name": "\"AUX TRUE\""
|
|
}
|
|
},
|
|
"outputs": {
|
|
"out": []
|
|
},
|
|
"scl": "// SymPy Contact: v0_"
|
|
},
|
|
{
|
|
"instruction_uid": "23",
|
|
"uid": "23",
|
|
"type": "Call_FC_sympy_processed",
|
|
"block_name": "BlenderPIDCtrl_WriteAnOu",
|
|
"block_type": "FC",
|
|
"inputs": {
|
|
"en": {
|
|
"type": "connection",
|
|
"source_instruction_type": "Contact",
|
|
"source_instruction_uid": "22",
|
|
"source_pin": "out"
|
|
}
|
|
},
|
|
"outputs": {},
|
|
"scl": "IF \"AUX TRUE\" THEN\n BlenderPIDCtrl_WriteAnOu();\nEND_IF;"
|
|
}
|
|
],
|
|
"language": "LAD"
|
|
}
|
|
]
|
|
} |