CNO8/tags.json

7520 lines
277 KiB
JSON

{
"name": "_types_",
"tagType": "Folder",
"tags": [
{
"name": "Chute",
"tagType": "Folder",
"tags": [
{
"name": "NC",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Disabled"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Disabled",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Full"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Full",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Half_Full"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Half Full",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Half_Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Jam"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Jam",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocaiton": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Jammed",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "Enable",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable_Chute_PB"
},
"valueSource": "opc",
"name": "Enable_Chute_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Chute_Type"
},
"valueSource": "opc",
"name": "Chute_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable.Button_Type"
},
"valueSource": "opc",
"name": "Button_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "FL_CHUTE",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Jam"
},
"valueSource": "opc",
"alarms": [
{
"setpointA": 1.0,
"name": "Jammed",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Jammed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Full"
},
"valueSource": "opc",
"alarms": [
{
"setpointA": 1.0,
"name": "Full",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Chute_Type"
},
"valueSource": "opc",
"name": "Chute_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.TimeOut"
},
"valueSource": "opc",
"name": "TimeOut",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "D2C",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"name": "GS",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS.Button_Type"
},
"valueSource": "opc",
"name": "Button_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS_PB"
},
"valueSource": "opc",
"name": "GS_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Pressed"
},
"valueSource": "opc",
"dataType": "Int4",
"alarms": [
{
"mode": "Equality",
"setpointA": 1.0,
"setpointB": 2.0,
"name": "Pressed",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.ZMX_Communication_Fault"
},
"valueSource": "opc",
"alarms": [
{
"setpointA": 1.0,
"name": "ZMX_Comm_Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "ZMX_Communication_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "D2C_Enable",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS_PB"
},
"valueSource": "opc",
"name": "GS_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS.Button_Type"
},
"valueSource": "opc",
"name": "Button_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "GS",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.GS.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "Chute",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI,Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Full"
},
"valueSource": "opc",
"alarms": [
{
"setpointA": 1.0,
"name": "Full",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Chute_Type"
},
"valueSource": "opc",
"name": "Chute_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "PalletBuild",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PR.Button_Type"
},
"valueSource": "opc",
"name": "Button_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "PR",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PR.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PR.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PR.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PR_PB"
},
"valueSource": "opc",
"name": "PR_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable_Chute_PB"
},
"valueSource": "opc",
"name": "Enable_Chute_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "DIV",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Chute_Type"
},
"valueSource": "opc",
"name": "Chute_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Disabled"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Disabled",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Half_Full"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Half Full",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Half_Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Jam"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Jammed",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocaiton": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Jammed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Full"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Full",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "Enable",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable_Chute_PB"
},
"valueSource": "opc",
"name": "Enable_Chute_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable.Button_Type"
},
"valueSource": "opc",
"name": "Button_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "Station",
"tagType": "Folder",
"tags": [
{
"name": "Chute_JR",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Chute_JR.Button_Type"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Button_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.JR_PB"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "JR_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Pressed",
"priority": "Medium",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "Chute_JR",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Chute_JR.State"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Chute_JR.Priority"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Chute_JR.Color"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "S_PB",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start.Button_Type"
},
"valueSource": "opc",
"name": "Button_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Start",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Pressed"
},
"valueSource": "opc",
"dataType": "Int4",
"alarms": [
{
"mode": "Equality",
"setpointA": 1.0,
"setpointB": 2.0,
"name": "Pressed",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start_PB"
},
"valueSource": "opc",
"name": "Start_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "EPC",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.EStopped"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "EStopped",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "EStopped",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.EPC.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.EPC.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.EPC.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "SS_PB",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"name": "Start",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Stop_PB"
},
"valueSource": "opc",
"name": "Stop_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start_PB"
},
"valueSource": "opc",
"name": "Start_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Stop",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Stop.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Stop.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Stop.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Stop_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"mode": "Equality",
"setpointA": 1.0,
"setpointB": 2.0,
"name": "Stop Pressed",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
}
}
],
"name": "Stop_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Pressed"
},
"valueSource": "opc",
"dataType": "Int4",
"alarms": [
{
"mode": "Equality",
"setpointA": 1.0,
"setpointB": 2.0,
"name": "Pressed",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
}
}
],
"name": "Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Stopped"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Stopped",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Stopped",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "JR",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Pressed"
},
"valueSource": "opc",
"dataType": "Int4",
"alarms": [
{
"setpointA": 1.0,
"name": "Pressed",
"priority": "Medium",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "JR",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.JR.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.JR.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.JR.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.JR.Button_Type"
},
"valueSource": "opc",
"name": "Button_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.JR_PB"
},
"valueSource": "opc",
"name": "JR_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "IO_BLOCK",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Communication Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "CB_MONITOR",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB10_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB10 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB10_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB18_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB18 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB18_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB17_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB17 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB17_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB4_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB4 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB4_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB24_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB24 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB24_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB16_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB16 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB16_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB9_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB9 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB9_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB12_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB12 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB12_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB25_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB25 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB25_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB15_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB15 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB15_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB23_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB23 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB23_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB22_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB22 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB22_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB26_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB26 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB26_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB21_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB21 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB21_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB13_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB13 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB13_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB3_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB3 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB3_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB8_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB8 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB8_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Power_Branch_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Power Branch Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Power_Branch_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB19_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB19 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB19_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB5_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB5 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB5_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB7_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB7 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB7_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB6_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB6 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB6 Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB20_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB20 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB20_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB11_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB11 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB11_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB14_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB14 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB14_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB1_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB1 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB1_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.CB2_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "CB2 Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "CB2_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "DIVERTER",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "ENCODER",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Encoder_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Encoder Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Encoder_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "PE",
"tagType": "Folder",
"tags": [
{
"name": "JPE",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Jammed"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\t# Tag event: valueChanged\n\t\n\t# --- guards ---\n\tif initialChange:\n\t return\n\tif not (previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t return\n\t\n\t# --- rising-edge only (0/False/None -\u003e 1/True) ---\n\tprev \u003d previousValue.value\n\tcur \u003d currentValue.value\n\tif (prev \u003d\u003d cur) or ((prev\u003d\u003d1) and (cur\u003d\u003d0)):\n\t return\n\t\n\t# --- your routing + insert (unchanged) ---\n\tif (\"ULC1\" in tagPath) or (\"ULC2\" in tagPath) or (\"ULC3\" in tagPath) or (\"ULC4\" in tagPath):\n\t query \u003d \"INSERT INTO jam_area (Bulk_Inbound, t_stamp) VALUES (1, NOW())\"\n\t\n\telif (\"UL1_\" in tagPath) or (\"UL2_\" in tagPath) or (\"UL3_\" in tagPath) or (\"UL4_\" in tagPath) or \\\n\t (\"UL5_\" in tagPath) or (\"UL6_\" in tagPath) or (\"PS1_\" in tagPath) or (\"PS2_\" in tagPath):\n\t query \u003d \"INSERT INTO jam_area (FLuid_Inbound_MCM02, t_stamp) VALUES (1, NOW())\"\n\t\n\telif (\"UL7_\" in tagPath) or (\"UL8_\" in tagPath) or (\"UL9\" in tagPath) or (\"UL10_\" in tagPath) or \\\n\t (\"UL11_\" in tagPath) or (\"UL12_\" in tagPath) or (\"PS3_\" in tagPath) or (\"PS4_\" in tagPath):\n\t query \u003d \"INSERT INTO jam_area (FLuid_Inbound_MCM03, t_stamp) VALUES (1, NOW())\"\n\t\n\telse:\n\t return\n\t\n\tsystem.db.runUpdateQuery(query, \"MariaDB\")"
}
],
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Jammed",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
}
}
],
"name": "Jammed",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "FPE",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Full"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Full",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "TPE",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Jammed"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\t# Tag event: valueChanged\n\t\n\t# --- guards ---\n\tif initialChange:\n\t return\n\tif not (previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t return\n\t\n\t# --- rising-edge only (0/False/None -\u003e 1/True) ---\n\tprev \u003d previousValue.value\n\tcur \u003d currentValue.value\n\tif (prev \u003d\u003d cur) or ((prev\u003d\u003d1) and (cur\u003d\u003d0)):\n\t return\n\t\n\t# --- your routing + insert (unchanged) ---\n\tif (\"ULC1\" in tagPath) or (\"ULC2\" in tagPath) or (\"ULC3\" in tagPath) or (\"ULC4\" in tagPath):\n\t query \u003d \"INSERT INTO jam_area (Bulk_Inbound, t_stamp) VALUES (1, NOW())\"\n\t\n\telif (\"UL1_\" in tagPath) or (\"UL2_\" in tagPath) or (\"UL3_\" in tagPath) or (\"UL4_\" in tagPath) or \\\n\t (\"UL5_\" in tagPath) or (\"UL6_\" in tagPath) or (\"PS1_\" in tagPath) or (\"PS2_\" in tagPath):\n\t query \u003d \"INSERT INTO jam_area (FLuid_Inbound_MCM02, t_stamp) VALUES (1, NOW())\"\n\t\n\telif (\"UL6_\" in tagPath) or (\"UL8_\" in tagPath) or (\"UL9\" in tagPath) or (\"UL10_\" in tagPath) or \\\n\t (\"UL11_\" in tagPath) or (\"UL12_\" in tagPath) or (\"PS3_\" in tagPath) or (\"PS4_\" in tagPath):\n\t query \u003d \"INSERT INTO jam_area (FLuid_Inbound_MCM03, t_stamp) VALUES (1, NOW())\"\n\t\n\telse:\n\t return\n\t\n\tsystem.db.runUpdateQuery(query, \"MariaDB\")"
}
],
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Jammed",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Jammed",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "Statistics",
"tagType": "Folder",
"tags": [
{
"name": "ITEM_STATISTICS",
"parameters": {
"ItemIndex": {
"dataType": "String"
},
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.adiSort_Code[3]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "adiSort_Code_3",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.sLocation_ID"
},
"valueSource": "opc",
"dataType": "String",
"name": "sLocation_ID",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.asRequested_Dest_ID[0]"
},
"valueSource": "opc",
"dataType": "String",
"name": "asRequested_Dest_ID_0",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].iPackage_Length"
},
"valueSource": "opc",
"dataType": "Int2",
"name": "iPackage_Length",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.asRequested_Dest_ID[2]"
},
"valueSource": "opc",
"dataType": "String",
"name": "asRequested_Dest_ID_2",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].bData_Ready"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\t# Tag Event Script: valueChanged\n\t# PLACE THIS on: Item/Item_000/bData_Ready\n\t\n\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\t\n\ttry:\n\t\t# Only proceed when Data_Ready \u003d\u003d 1\n\t\tif int(currentValue.value) !\u003d 1:\n\t\t\treturn\n\t\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\n\t\t# Read all required tag values\n\t\treadPaths \u003d [\n\t\t\tparentPath + \"/sBarcode\", # 0\n\t\t\tparentPath + \"/iPackage_Length\", # 1\n\t\t\tparentPath + \"/adiSort_Code_0\", # 2\n\t\t\tparentPath + \"/asRequested_Dest_ID_0\", # 3\n\t\t\tparentPath + \"/sActual_Dest_ID\", # 4\n\t\t\tparentPath + \"/sLocation_ID\", # 5\n\t\t\tparentPath + \"/iItem_Carrier_Count\", # 6\n\t\t\tparentPath + \"/diPLC_RecordNumber\" # 7\n\t\t]\n\t\tr \u003d system.tag.readBlocking(readPaths)\n\t\n\t\tbarcode \u003d r[0].value if r[0].quality.isGood() else None\n\t\tlength \u003d r[1].value if r[1].quality.isGood() else None\n\t\tsortCode \u003d r[2].value if r[2].quality.isGood() else None\n\t\trequestedDest \u003d r[3].value if r[3].quality.isGood() else None\n\t\tactualDest \u003d r[4].value if r[4].quality.isGood() else None\n\t\tlocationID \u003d r[5].value if r[5].quality.isGood() else None\n\t\tcarrierCount \u003d r[6].value if r[6].quality.isGood() else None\n\t\trecordNumber \u003d r[7].value if r[7].quality.isGood() else None\n\t\n\t\t# Insert into DB\n\t\tquery \u003d \"\"\"\n\t\t\tINSERT INTO item_data (\n\t\t\t\tt_stamp, sBarcode, iPackage_Length, adiSort_Code_0, asRequested_Dest_ID_0,\n\t\t\t\tsActual_Dest_ID, sLocation_ID, iItem_Carrier_Count, diPLC_RecordNumber\n\t\t\t) VALUES (NOW(), ?, ?, ?, ?, ?, ?, ?, ?)\n\t\t\"\"\"\n\t\tparams \u003d [barcode, length, sortCode, requestedDest, actualDest, locationID, carrierCount, recordNumber]\n\t\tsystem.db.runPrepUpdate(query, params, \"MariaDB\")\n\t\n\t\t# Reset bData_Ready to 0 after successful insert\n\t\tsystem.tag.writeBlocking([tagPath], [0])\n\t\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"ItemData\").error(\"bData_Ready insert failed: %s\" % e)"
}
],
"dataType": "Boolean",
"name": "bData_Ready",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.sBarcode"
},
"valueSource": "opc",
"dataType": "String",
"name": "sBarcode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.adiSort_Code[0]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "adiSort_Code_0",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].iItem_Carrier_Count"
},
"valueSource": "opc",
"dataType": "Int2",
"name": "iItem_Carrier_Count",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.asRequested_Dest_ID[3]"
},
"valueSource": "opc",
"dataType": "String",
"name": "asRequested_Dest_ID_3",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.adiSort_Code[2]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "adiSort_Code_2",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.asRequested_Dest_ID[1]"
},
"valueSource": "opc",
"dataType": "String",
"name": "asRequested_Dest_ID_1",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.sActual_Dest_ID"
},
"valueSource": "opc",
"dataType": "String",
"name": "sActual_Dest_ID",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.adiSort_Code[1]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "adiSort_Code_1",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ItemIndex}].tItem_S04_Data.diPLC_RecordNumber"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diPLC_RecordNumber",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "SCANNER_STATISTICS",
"parameters": {
"ScannerIndex": {
"dataType": "String"
},
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atScanner_Statistics[{ScannerIndex}].diScanner_multi_reads"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\ttry:\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\tnamePath \u003d parentPath + \"/sScanner_Name\"\n\t\tname \u003d system.tag.readBlocking([namePath])[0].value\n\t\tsystem.db.runPrepUpdate(\"\"\"\n\t\t\tINSERT INTO scanner_reads (t_stamp, sScanner_Name, diScanner_multi_reads)\n\t\t\tVALUES (NOW(), ?, 1)\n\t\t\"\"\", [name], \"MariaDB\")\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"ScannerStatistics\").error(\"multi_reads: %s\" % e)"
}
],
"dataType": "Int4",
"name": "diScanner_multi_reads",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atScanner_Statistics[{ScannerIndex}].diScanner_bad_reads"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\ttry:\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\tnamePath \u003d parentPath + \"/sScanner_Name\"\n\t\tname \u003d system.tag.readBlocking([namePath])[0].value\n\t\tsystem.db.runPrepUpdate(\"\"\"\n\t\t\tINSERT INTO scanner_reads (t_stamp, sScanner_Name, diScanner_bad_reads)\n\t\t\tVALUES (NOW(), ?, 1)\n\t\t\"\"\", [name], \"MariaDB\")\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"ScannerStatistics\").error(\"bad_reads: %s\" % e)"
}
],
"dataType": "Int4",
"name": "diScanner_bad_reads",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atScanner_Statistics[{ScannerIndex}].diScanner_no_data"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\ttry:\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\tnamePath \u003d parentPath + \"/sScanner_Name\"\n\t\tname \u003d system.tag.readBlocking([namePath])[0].value\n\t\tsystem.db.runPrepUpdate(\"\"\"\n\t\t\tINSERT INTO scanner_reads (t_stamp, sScanner_Name, diScanner_no_data)\n\t\t\tVALUES (NOW(), ?, 1)\n\t\t\"\"\", [name], \"MariaDB\")\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"ScannerStatistics\").error(\"no_data: %s\" % e)"
}
],
"dataType": "Int4",
"name": "diScanner_no_data",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atScanner_Statistics[{ScannerIndex}].diScanner_no_reads"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\ttry:\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\tnamePath \u003d parentPath + \"/sScanner_Name\"\n\t\tname \u003d system.tag.readBlocking([namePath])[0].value\n\t\tsystem.db.runPrepUpdate(\"\"\"\n\t\t\tINSERT INTO scanner_reads (t_stamp, sScanner_Name, diScanner_no_reads)\n\t\t\tVALUES (NOW(), ?, 1)\n\t\t\"\"\", [name], \"MariaDB\")\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"ScannerStatistics\").error(\"no_reads: %s\" % e)"
}
],
"dataType": "Int4",
"name": "diScanner_no_reads",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atScanner_Statistics[{ScannerIndex}].sScanner_Name"
},
"valueSource": "opc",
"dataType": "String",
"name": "sScanner_Name",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atScanner_Statistics[{ScannerIndex}].diScanner_multi_items"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\ttry:\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\tnamePath \u003d parentPath + \"/sScanner_Name\"\n\t\tname \u003d system.tag.readBlocking([namePath])[0].value\n\t\tsystem.db.runPrepUpdate(\"\"\"\n\t\t\tINSERT INTO scanner_reads (t_stamp, sScanner_Name, diScanner_multi_items)\n\t\t\tVALUES (NOW(), ?, 1)\n\t\t\"\"\", [name], \"MariaDB\")\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"ScannerStatistics\").error(\"multi_items: %s\" % e)"
}
],
"dataType": "Int4",
"name": "diScanner_multi_items",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atScanner_Statistics[{ScannerIndex}].diScanner_good_reads"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\ttry:\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\tnamePath \u003d parentPath + \"/sScanner_Name\"\n\t\tname \u003d system.tag.readBlocking([namePath])[0].value\n\t\tsystem.db.runPrepUpdate(\"\"\"\n\t\t\tINSERT INTO scanner_reads (t_stamp, sScanner_Name, diScanner_good_reads)\n\t\t\tVALUES (NOW(), ?, 1)\n\t\t\"\"\", [name], \"MariaDB\")\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"ScannerStatistics\").error(\"good_reads: %s\" % e)"
}
],
"dataType": "Int4",
"name": "diScanner_good_reads",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atScanner_Statistics[{ScannerIndex}].diScanner_comm_fault"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\ttry:\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\tnamePath \u003d parentPath + \"/sScanner_Name\"\n\t\tname \u003d system.tag.readBlocking([namePath])[0].value\n\t\tsystem.db.runPrepUpdate(\"\"\"\n\t\t\tINSERT INTO scanner_reads (t_stamp, sScanner_Name, diScanner_comm_fault)\n\t\t\tVALUES (NOW(), ?, 1)\n\t\t\"\"\", [name], \"MariaDB\")\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"ScannerStatistics\").error(\"comm_fault: %s\" % e)"
}
],
"dataType": "Int4",
"name": "diScanner_comm_fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atScanner_Statistics[{ScannerIndex}].diScanner_total_reads"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diScanner_total_reads",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "AIRKNIFE_STATISTICS",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
},
"AirknifeIndex": {
"dataType": "String"
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atAirknife_Statistics[{AirknifeIndex}].diAirknife_comm_fault"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diAirknife_comm_fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atAirknife_Statistics[{AirknifeIndex}].diAirknife_activations"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diAirknife_activations",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atAirknife_Statistics[{AirknifeIndex}].sAirknife_name"
},
"valueSource": "opc",
"dataType": "String",
"name": "sAirknife_Name",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "DESTINATION_STATISTICS",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
},
"DestinationIndex": {
"dataType": "String"
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atDestination_Statistics[{DestinationIndex}].diJam_Duration"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diJam_Duration",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atDestination_Statistics[{DestinationIndex}].sName"
},
"valueSource": "opc",
"dataType": "String",
"name": "sName",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atDestination_Statistics[{DestinationIndex}].diBlock_Oper_Duration"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diBlock_Oper_Duration",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atDestination_Statistics[{DestinationIndex}].diContainer_Not_In_Pos_Duration"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diContainer_Not_In_Pos_Duration",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atDestination_Statistics[{DestinationIndex}].diHalffull_Duration"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diHalf_Full_Duration",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atDestination_Statistics[{DestinationIndex}].diFull_Duration"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diFull_Duration",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "INDUCTION_STATISTICS",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
},
"InductionIndex": {
"dataType": "String"
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atInduction_Statistics[{InductionIndex}].diTotal_Inducted"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "diTotal_Inducted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atInduction_Statistics[{InductionIndex}].diTotal_Double_Carrier"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\t# Tag Event Script: valueChanged\n\t# PLACE THIS on: diTotal_Double_Carrier\n\t\n\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\t\n\ttry:\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\tnamePath \u003d parentPath + \"/sInduction_Name\"\n\t\tname \u003d system.tag.readBlocking([namePath])[0].value\n\t\n\t\tsystem.db.runPrepUpdate(\"\"\"\n\t\t\tINSERT INTO induction_data (t_stamp, sInduction_Name, diTotal_Double_Carrier)\n\t\t\tVALUES (NOW(), ?, 1)\n\t\t\"\"\", [name], \"MariaDB\")\n\t\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"InductionStatistics\").error(\"double_carrier: %s\" % e)"
}
],
"dataType": "Int4",
"name": "diTotal_Double_Carrier",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.atInduction_Statistics[{InductionIndex}].diTotal_Single_Carrier"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\t# Tag Event Script: valueChanged\n\t# PLACE THIS on: diTotal_Single_Carrier\n\t\n\tif initialChange or not currentValue.quality.isGood() or (not previousValue.quality.isGood() and currentValue.quality.isGood()):\n\t\treturn\n\t\n\ttry:\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\tnamePath \u003d parentPath + \"/sInduction_Name\"\n\t\tname \u003d system.tag.readBlocking([namePath])[0].value\n\t\n\t\tsystem.db.runPrepUpdate(\"\"\"\n\t\t\tINSERT INTO induction_data (t_stamp, sInduction_Name, diTotal_Single_Carrier)\n\t\t\tVALUES (NOW(), ?, 1)\n\t\t\"\"\", [name], \"MariaDB\")\n\t\n\texcept Exception as e:\n\t\tsystem.util.getLogger(\"InductionStatistics\").error(\"single_carrier: %s\" % e)"
}
],
"dataType": "Int4",
"name": "diTotal_Single_Carrier",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"valueSource": "memory",
"dataType": "String",
"name": "sInduction_Name",
"tagType": "AtomicTag"
}
]
}
]
},
{
"name": "RACK",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Slot6_OB16E_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Slot6 OB16E Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Slot6_OB16E_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Slot7_IB16S_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Slot7 IB16S Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Slot7_IB16S_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Slot2_EN4TR_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Slot2 EN4TR Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Slot2_EN4TR_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Slot5_IB16_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Slot5 IB16 Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Slot5_IB16_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "Conveyor",
"tagType": "Folder",
"tags": [
{
"name": "FMH_Extendo",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.OK_To_Run"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "OK_To_Run",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Ready_To_Receive"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Ready_To_Receive",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.EX_Type"
},
"valueSource": "opc",
"name": "EX_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Belt_Running"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Belt_Running",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarms",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarms.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Communication Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarms.Motor_Faulted"
},
"valueSource": "opc",
"alarms": [
{
"setpointA": 1.0,
"name": "Extendo Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Motor_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarms.E_Stop"
},
"valueSource": "opc",
"alarms": [
{
"setpointA": 1.0,
"name": "Estopped",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "E_Stop",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PLC_Ready_To_Run"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "PLC_Ready_To_Run",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "Extendo",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Fully_Retracted"
},
"valueSource": "opc",
"name": "Fully_Retracted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Full"
},
"valueSource": "opc",
"alarms": [
{
"setpointA": 1.0,
"name": "Full",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Extendo_Faulted"
},
"valueSource": "opc",
"alarms": [
{
"setpointA": 1.0,
"name": "Extendo Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Extendo_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Communication_Faulted"
},
"valueSource": "opc",
"alarms": [
{
"setpointA": 1.0,
"name": "Communication Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Aopen_Active"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Aopen_Active",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Unloading_Mode"
},
"valueSource": "opc",
"name": "Unloading_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.EX_Type"
},
"valueSource": "opc",
"name": "EX_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Loading_Mode"
},
"valueSource": "opc",
"name": "Loading_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Fully_Extended"
},
"valueSource": "opc",
"name": "Fully_Extended",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Extendo_Faults_Reset_PB"
},
"valueSource": "opc",
"name": "Extendo_Faults_Reset_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PEC_Override_PB"
},
"valueSource": "opc",
"name": "PEC_Override_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Power_Saving_Mode"
},
"valueSource": "opc",
"name": "Power_Saving_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "VFD",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Speed_At_30rev"
},
"valueSource": "opc",
"name": "Speed_At_30rev",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.VFD_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "VFD Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"myLoaction": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
}
}
],
"name": "VFD_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.VFD_Reset_Required"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "VFD Reset Required",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "VFD_Reset_Required",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Safe_Off_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Safe Off Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Safe_Off_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Maintenance_Mode"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Maintenance Mode",
"priority": "Diagnostic",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Maintenance_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Disconnected"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Disconnected",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Disconnected",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Communication Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Fault_Code"
},
"valueSource": "opc",
"name": "Communication_Fault_Code",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.VFD_Fault_Code"
},
"valueSource": "opc",
"name": "VFD_Fault_Code",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Cycle_Time_Factor"
},
"valueSource": "opc",
"name": "Cycle_Time_Factor",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Last_VFD_Fault_Code"
},
"valueSource": "opc",
"name": "Last_VFD_Fault_Code",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Voltage"
},
"valueSource": "opc",
"name": "Voltage",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Amperage"
},
"valueSource": "opc",
"name": "Amperage",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Frequency"
},
"valueSource": "opc",
"name": "Frequency",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.FPM"
},
"valueSource": "opc",
"name": "FPM",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Maintenance",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Maintenance.Start_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Start_PB_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Maintenance.Jog_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Jog_PB_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Maintenance.Speed_FPM"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Speed_FPM",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Maintenance.Direction_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Direction_PB_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Maintenance.Stop_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Stop_PB_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Maintenance.Maintenance_Mode"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Maintenance_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Maintenance.Direction"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Direction",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.VFD_Type"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "VFD_Type",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Velocity"
},
"valueSource": "opc",
"name": "Velocity",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Speed_At_60Hz"
},
"valueSource": "opc",
"name": "Speed_At_60Hz",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "Tipper",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Running"
},
"valueSource": "opc",
"name": "Running",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.System_Fault"
},
"valueSource": "opc",
"name": "System_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Manual_Mode"
},
"valueSource": "opc",
"name": "Manual_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Auto_Mode"
},
"valueSource": "opc",
"name": "Auto_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Dumping"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\t# PLACE ON: Tipper/Dumping\n\tif initialChange or not currentValue.quality.isGood():\n\t return\n\t\n\ttry:\n\t parentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1]) # Tipper level\n\t name \u003d system.tag.readBlocking([parentPath + \"/Name\"])[0].value\n\t\n\t if int(currentValue.value) \u003d\u003d 1 and int(previousValue.value) !\u003d 1:\n\t system.db.runPrepUpdate(\"\"\"\n\t INSERT INTO tipper_status (t_stamp, Name, Dumping)\n\t VALUES (NOW(), ?, 1)\n\t \"\"\", [name], \"MariaDB\")\n\t\n\t elif int(currentValue.value) \u003d\u003d 0 and int(previousValue.value) !\u003d 0:\n\t system.db.runPrepUpdate(\"\"\"\n\t INSERT INTO tipper_status (t_stamp, Name, Dumping)\n\t VALUES (NOW(), ?, 0)\n\t \"\"\", [name], \"MariaDB\")\n\t\n\texcept Exception as e:\n\t system.util.getLogger(\"TipperStatus\").error(\"Dumping edge insert: %s\" % e)"
}
],
"name": "Dumping",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Communication Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Full"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Full",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Tipper_Faulted"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\t# PLACE ON: Tipper/Alarm/Tipper_Faulted\n\tif initialChange or not currentValue.quality.isGood():\n\t return\n\t\n\ttry:\n\t parentPath \u003d \"/\".join(tagPath.split(\"/\")[:-2]) # up to Tipper level\n\t name \u003d system.tag.readBlocking([parentPath + \"/Name\"])[0].value\n\t\n\t if int(currentValue.value) \u003d\u003d 1 and int(previousValue.value) !\u003d 1:\n\t system.db.runPrepUpdate(\"\"\"\n\t INSERT INTO tipper_status (t_stamp, Name, Tipper_Faulted)\n\t VALUES (NOW(), ?, 1)\n\t \"\"\", [name], \"MariaDB\")\n\t\n\t elif int(currentValue.value) \u003d\u003d 0 and int(previousValue.value) !\u003d 0:\n\t system.db.runPrepUpdate(\"\"\"\n\t INSERT INTO tipper_status (t_stamp, Name, Tipper_Faulted)\n\t VALUES (NOW(), ?, 0)\n\t \"\"\", [name], \"MariaDB\")\n\t\n\texcept Exception as e:\n\t system.util.getLogger(\"TipperStatus\").error(\"Fault edge insert: %s\" % e)"
}
],
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Tipper Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Tipper_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"valueSource": "memory",
"dataType": "String",
"name": "Name",
"tagType": "AtomicTag"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Maintenance_Mode"
},
"valueSource": "opc",
"name": "Maintenance_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Enable_PB"
},
"valueSource": "opc",
"name": "Enable_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "Status",
"tagType": "Folder",
"tags": [
{
"name": "SORTER",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.5"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 5)",
"dataType": "Boolean",
"name": "Energy_Saving",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.10"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 10)",
"dataType": "Boolean",
"name": "Test_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.2"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 2)",
"dataType": "Boolean",
"name": "Running",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.bMCC001_Common_Error"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "bMCC001_Common_Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.iActual_Sorter_Speed"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "iActual_Sorter_Speed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.13"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 13)",
"dataType": "Boolean",
"name": "Carrier_Selected",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.12"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 12)",
"dataType": "Boolean",
"name": "Lamp_Test_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "wSorter",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.iLifeSign_SCADA"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "iLifeSign_SCADA",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.7"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 7)",
"dataType": "Boolean",
"name": "Automatic_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.9"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 9)",
"dataType": "Boolean",
"name": "Blocked",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.1"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 1)",
"dataType": "Boolean",
"name": "Starting",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.15"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 15)",
"dataType": "Boolean",
"name": "Common_Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.4"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 4)",
"dataType": "Boolean",
"name": "Sortation_Allowed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.11"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 11)",
"dataType": "Boolean",
"name": "Discharge_Test_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.3"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 3)",
"dataType": "Boolean",
"name": "Stopping",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.6"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 6)",
"dataType": "Boolean",
"name": "Power_Off",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.8"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 8)",
"dataType": "Boolean",
"name": "Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.14"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 14)",
"dataType": "Boolean",
"name": "Not_Synchronised",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.wSorter.0"
},
"valueSource": "expr",
"expression": "getBit({[.]wSorter}, 0)",
"dataType": "Boolean",
"name": "Stopped",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Commands",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bIUs_Empty_stop"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bIUs_Empty_stop",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bEnable"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bEnable",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bUnblock"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bUnblock",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bReset"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bReset",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bBlock"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bBlock",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bLamp_test_start"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bLamp_test_start",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bNormal_stop"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bNormal_stop",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bStart"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bStart",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bDisable"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bDisable",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bLamp_test_stop"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bLamp_test_stop",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Sorter.bEmpty_stop"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bEmpty_stop",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "CHUTE",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
},
"ChuteNumber": {
"dataType": "String"
},
"RealName": {
"dataType": "String"
}
},
"tagType": "UdtType",
"tags": [
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]../awChute}, 8)",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Disabled",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{RealName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]../awChute}, 4)",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Conveyor Not Ready",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{RealName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Conveyor_Not_Ready",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].1"
},
"valueSource": "expr",
"expression": "getBit({[.]../awChute}, 1)",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Jam",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{RealName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Jam",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].14"
},
"valueSource": "expr",
"expression": "getBit({[.]../awChute}, 14)",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "No Container",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{RealName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "No_Container",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]../awChute}, 7)",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "No 24 V DC",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{RealName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "No_24_V_DC",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]../awChute}, 2)",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Blocked By Operator",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{RealName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Blocked_By_Operator",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]../awChute}, 9)",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Blocked By Operator",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{RealName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Blocked_From_SCADA",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].0"
},
"valueSource": "expr",
"expression": "getBit({[.]../awChute}, 0)",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Full",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{RealName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].3"
},
"valueSource": "expr",
"expression": "getBit({[.]../awChute}, 3)",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Half Full",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{RealName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Half_Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumbaer}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]awChute}, 8)",
"dataType": "Boolean",
"name": "Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"valueSource": "expr",
"expression": "getBit({[.]awChute}, 0)",
"opcItemPath": "getBit([PLC]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[5], 0)",
"dataType": "Boolean",
"name": "Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "getBit({[.]awChute}, 8)"
},
"valueSource": "expr",
"expression": "getBit({[.]awChute}, 3)",
"dataType": "Boolean",
"name": "Half_Full",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].1"
},
"valueSource": "expr",
"expression": "getBit({[.]awChute}, 1)",
"dataType": "Boolean",
"name": "Jam",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].14"
},
"valueSource": "expr",
"expression": "getBit({[.]awChute}, 14)",
"dataType": "Boolean",
"name": "No_Container",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Commands",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Chute[{ChuteNumber}].bBlockHost1"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bBlockHost1",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Chute[{ChuteNumber}].bUnblockHost1"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "bUnblockHost1",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "awChute",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "SAFETY_SUPERVISION",
"parameters": {
"SupervisionNumber": {
"dataType": "String"
},
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awIBS[{SensorNumber}]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "awIBS",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awIBS[{SensorNumber}].9"
},
"valueSource": "expr",
"expression": "getBit({[.]awIBS}, 9)",
"dataType": "Boolean",
"name": "IBS_Blocked",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awIBS[{SensorNumber}].4"
},
"valueSource": "expr",
"expression": "getBit({[.]awIBS}, 4)",
"dataType": "Boolean",
"name": "IBS_Commissioning_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awIBS[{SensorNumber}].2"
},
"valueSource": "expr",
"expression": "getBit({[.]awIBS}, 2)",
"dataType": "Boolean",
"name": "IBS_Running",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awIBS[{SensorNumber}].0"
},
"valueSource": "expr",
"expression": "getBit({[.]awIBS}, 0)",
"dataType": "Boolean",
"name": "IBS_Stopped",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awIBS[{SensorNumber}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]awIBS}, 8)",
"dataType": "Boolean",
"name": "IBS_Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awIBS[{SensorNumber}].11"
},
"valueSource": "expr",
"expression": "getBit({[.]awIBS}, 11)",
"dataType": "Boolean",
"name": "IBS_No_24V_DC",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awIBS[{SensorNumber}].15"
},
"valueSource": "expr",
"expression": "getBit({[.]awIBS}, 15)",
"dataType": "Boolean",
"name": "IBS_Common_Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awIBS[{SensorNumber}].14"
},
"valueSource": "expr",
"expression": "getBit({[.]awIBS}, 14)",
"dataType": "Boolean",
"name": "IBS_Photocell_Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "CARRIER",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
},
"CarrierNumber": {
"dataType": "String"
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].22"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 22)",
"dataType": "Boolean",
"name": "Item_Overhanging_Belt_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].13"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 13)",
"dataType": "Boolean",
"name": "Default_Configuration",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].14"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 14)",
"dataType": "Boolean",
"name": "Programming_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].27"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 27)",
"dataType": "Boolean",
"name": "Deflected_Bellows_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].5"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 5)",
"dataType": "Boolean",
"name": "Possible_TCB_MCB_Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].26"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 26)",
"dataType": "Boolean",
"name": "Item_on_Activated_Carrier",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].4"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 4)",
"dataType": "Boolean",
"name": "CCT_Communication_to_Carrier",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].7"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 7)",
"dataType": "Boolean",
"name": "Communication_Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].6"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 6)",
"dataType": "Boolean",
"name": "Not_Checked_at_Last_CTB_CRB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].2"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 2)",
"dataType": "Boolean",
"name": "Blocked",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].11"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 11)",
"dataType": "Boolean",
"name": "Calibration_Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].25"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 25)",
"dataType": "Boolean",
"name": "Item_Too_Wide",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].28"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 28)",
"dataType": "Boolean",
"name": "Double_Maximum_Recirculation",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].0"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 0)",
"dataType": "Boolean",
"name": "Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].9"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 9)",
"dataType": "Boolean",
"name": "Current_Limit_Exceeded",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].3"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 3)",
"dataType": "Boolean",
"name": "Common_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].23"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 23)",
"dataType": "Boolean",
"name": "Current_Collector_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].30"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 30)",
"dataType": "Boolean",
"name": "Item_on_Bellows_Warning",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].10"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 10)",
"dataType": "Boolean",
"name": "Motor_Not_Running",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].24"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 24)",
"dataType": "Boolean",
"name": "Item_Too_High",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "adwCarrierStatus",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].1"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 1)",
"dataType": "Boolean",
"name": "Needs_Update",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].31"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 31)",
"dataType": "Boolean",
"name": "Item_on_Bellows_Is_Stuck",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].29"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 29)",
"dataType": "Boolean",
"name": "CCT_Download_Done",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.adwCarrierStatus[{CarrierNumber}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]adwCarrierStatus}, 8)",
"dataType": "Boolean",
"name": "Status_OK",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "SCANNER",
"parameters": {
"ScannerNumber": {
"dataType": "String"
},
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].9"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 9)",
"dataType": "Boolean",
"name": "Scanner_Blocked",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].11"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 11)",
"dataType": "Boolean",
"name": "Scanner_Test_Mode_Scan_1_of_2_Trays",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].0"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 0)",
"dataType": "Boolean",
"name": "Scanner_No_24V_DC",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].12"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 12)",
"dataType": "Boolean",
"name": "Scanner_Test_Mode_Scan_1_of_4_Trays",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].14"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 14)",
"dataType": "Boolean",
"name": "Scanner_Not_Alive_No_Communication",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].6"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 6)",
"dataType": "Boolean",
"name": "Scanner_Started_By_This",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 8)",
"dataType": "Boolean",
"name": "Scanner_Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].2"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 2)",
"dataType": "Boolean",
"name": "Scanner_Running",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].10"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 10)",
"dataType": "Boolean",
"name": "Scanner_Test_Mode_Scan_All_Trays",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "awScanner",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].13"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 13)",
"dataType": "Boolean",
"name": "Scanner_Test_Mode_Scan_All_Items",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].5"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 5)",
"dataType": "Boolean",
"name": "Scanner_CommLogDetail",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].15"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 15)",
"dataType": "Boolean",
"name": "Scanner_Common_Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awScanner[{ScannerNumber}].7"
},
"valueSource": "expr",
"expression": "getBit({[.]awScanner}, 7)",
"dataType": "Boolean",
"name": "Scanner_Logging_Active",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "INDUCTION",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
},
"InductionNumber": {
"dataType": "String"
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].0"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 0)",
"dataType": "Boolean",
"name": "Stopped",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].2"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 2)",
"dataType": "Boolean",
"name": "Running",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].5"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 5)",
"dataType": "Boolean",
"name": "Energy_Saving",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].3"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 3)",
"dataType": "Boolean",
"name": "Stopping",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Commands",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Induction[{InductionNumber}].bStart"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bStart",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Induction[{InductionNumber}].bUnblock"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bUnblock",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Induction[{InductionNumber}].bEnable"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bEnable",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Induction[{InductionNumber}].bNormal_stop"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bNormal_stop",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Induction[{InductionNumber}].bEmpty_stop"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bEmpty_stop",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Induction[{InductionNumber}].bDisable"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bDisable",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_Induction[{InductionNumber}].bBlock"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bBlock",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].10"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 10)",
"dataType": "Boolean",
"name": "In_Test_Mode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].11"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 11)",
"dataType": "Boolean",
"name": "RNI_NIP_Log",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "awInduction",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].8"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 8)",
"dataType": "Boolean",
"name": "Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].15"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 15)",
"dataType": "Boolean",
"name": "Common_Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].1"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 1)",
"dataType": "Boolean",
"name": "Starting",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awInduction[{InductionNumber}].9"
},
"valueSource": "expr",
"expression": "getBit({[.]awInduction}, 9)",
"dataType": "Boolean",
"name": "Blocked",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "AIRKNIFE",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
},
"AirKnifeNumber": {
"dataType": "Integer"
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.[{AirKnifeNumber}]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "awAirKnife",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_AirKnife.bDisable"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bDisable",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].1"
},
"valueSource": "expr",
"expression": "getBit({[.]awAirKnife}, 1)",
"dataType": "Boolean",
"name": "Disabled",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].1"
},
"valueSource": "expr",
"expression": "getBit({[.]awAirKnife}, 2)",
"dataType": "Boolean",
"name": "Error",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_commands_EXTERNAL_VISU.tCommands.tCommand_AirKnife.bEnable"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "bEnable",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].1"
},
"valueSource": "expr",
"expression": "getBit({[.]awAirKnife}, 0)",
"dataType": "Boolean",
"name": "Running",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatus.awChute[{ChuteNumber}].1"
},
"valueSource": "expr",
"expression": "getBit({[.]awAirKnife}, 3)",
"dataType": "Boolean",
"name": "Emergency_Stop",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
},
{
"name": "STATISTICS_INDEX",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]DB_SCADA_EXTERNAL_VISU.tStatistics.iItem_Index"
},
"valueSource": "opc",
"dataType": "Int2",
"name": "iItem_Index",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "ParcelData",
"parameters": {
"ID": {
"dataType": "Integer"
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[SMC]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ID}].tItem_S04_Data.asRequested_Dest_ID"
},
"valueSource": "opc",
"dataType": "String",
"name": "Requested_Destination",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[SMC]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ID}].tItem_S04_Data.diPLC_RecordNumber"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\t# Tag Event Script: valueChanged\n\t# Place this script on the Package_ID tag in your PackageData UDT\n\t# Fires ONLY when Package_ID value truly changes (not on PLC connect)\n\t\n\tdef decodeScanLabel(scanLabel):\n\t\t\"\"\"\n\t\tDecode ScanLabel/Barcode to determine scan status based on first character.\n\t\t\"\"\"\n\t\tif scanLabel is None or scanLabel \u003d\u003d \"\":\n\t\t\treturn \"NO READ\"\n\t\ttry:\n\t\t\tfirstChar \u003d str(scanLabel)[0:1]\n\t\texcept (IndexError, TypeError):\n\t\t\treturn \"NO READ\"\n\t\tif firstChar \u003d\u003d \"9\":\n\t\t\treturn \"MULTI READ\"\n\t\telif firstChar \u003d\u003d \"?\":\n\t\t\treturn \"NO READ\"\n\t\telif firstChar \u003d\u003d \"0\":\n\t\t\treturn \"NO CODE\"\n\t\telse:\n\t\t\treturn \"GOOD READ\"\n\t\n\t\n\tdef decodeReasonCode(code):\n\t\t\"\"\"\n\t\tDecode DivertStatus/Reason_Code numeric value to human-readable text.\n\t\t\"\"\"\n\t\tif code is None:\n\t\t\treturn \"NOT_RESPONDED\"\n\t\ttry:\n\t\t\tcode \u003d int(code)\n\t\texcept (ValueError, TypeError):\n\t\t\treturn \"NOT_RESPONDED\"\n\t\n\t\treason_map \u003d {\n\t\t\t1: \"SUCCESS\", 2: \"UNKNOWN\", 4: \"UNEXPECTED_CONTAINER\",\n\t\t\t8: \"TRACKING_ERROR\", 16: \"GAP_ERROR\", 32: \"DESTINATION_FULL\",\n\t\t\t64: \"DESTINATION_NON_OPERATIONAL\", 128: \"INVALID_DESTINATION\",\n\t\t\t256: \"NO_READ\", 512: \"NO_CODE\", 1024: \"MULTI_LABEL\",\n\t\t\t2048: \"UNUSED_BY_INTRALOX\", 4096: \"DESTINATION_DISABLED\",\n\t\t\t8192: \"THROUGHPUT_LIMITED\", 16384: \"FAILED_TO_DIVERT\",\n\t\t\t32768: \"NOT_YET_REACHED\", 65536: \"NO_DESTINATION_RECEIVED\",\n\t\t\t131072: \"LOST_CONTAINER\", 262144: \"DIMENSION_ERROR\",\n\t\t\t524288: \"WEIGHT_ERROR\", 1048576: \"CONTAINER_UTILIZATION\",\n\t\t\t2097152: \"UNABLE_TO_DIVERT\"\n\t\t}\n\t\treturn reason_map.get(code, \"NOT_RESPONDED\")\n\t\n\t\n\tif initialChange or not currentValue.quality.isGood():\n\t\treturn\n\t\n\t# Ignore transitions from bad → good (PLC just connected)\n\tif not previousValue.quality.isGood() and currentValue.quality.isGood():\n\t\treturn\n\t\n\ttry:\n\t\t# Extract value\n\t\tpackageID \u003d currentValue.value if hasattr(currentValue, \u0027value\u0027) else currentValue\n\t\tif packageID is None or str(packageID).strip() \u003d\u003d \"\":\n\t\t\treturn\n\t\n\t\tparentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\ttagPaths \u003d [\n\t\t\tparentPath + \"/Actual_Destination\",\n\t\t\tparentPath + \"/Barcode\",\n\t\t\tparentPath + \"/Length\",\n\t\t\tparentPath + \"/Reason_Code\",\n\t\t\tparentPath + \"/Requested_Destination\",\n\t\t\tparentPath + \"/Weight\"\n\t\t]\n\t\n\t\ttagReads \u003d system.tag.readBlocking(tagPaths)\n\t\tactualDest \u003d tagReads[0].value if tagReads[0].quality.isGood() else None\n\t\tbarcode \u003d tagReads[1].value if tagReads[1].quality.isGood() else None\n\t\tlength \u003d tagReads[2].value if tagReads[2].quality.isGood() else None\n\t\treasonCode \u003d tagReads[3].value if tagReads[3].quality.isGood() else None\n\t\trequestedDest \u003d tagReads[4].value if tagReads[4].quality.isGood() else None\n\t\tweight \u003d tagReads[5].value if tagReads[5].quality.isGood() else None\n\t\n\t\tscanStatus \u003d decodeScanLabel(barcode)\n\t\tsortCodeText \u003d decodeReasonCode(reasonCode)\n\t\n\t\tquery \u003d \"\"\"\n\t\t\tINSERT INTO alltable \n\t\t\t(ScanLabel, ParcelID, Length, DivertStatus, DEST_REQ, ACTUAL_DEST, Weight, SortCode, ScanStatus, t_stamp)\n\t\t\tVALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, NOW())\n\t\t\"\"\"\n\t\tparams \u003d [barcode, packageID, length, reasonCode, requestedDest, actualDest, weight, sortCodeText, scanStatus]\n\t\n\t\trowsAffected \u003d system.db.runPrepUpdate(query, params, \"MariaDB\")\n\t\tsystem.util.getLogger(\"PackageData\").info(\n\t\t\t\"Inserted package data: ParcelID\u003d%s, Barcode\u003d%s, ScanStatus\u003d%s, SortCode\u003d%s, Rows\u003d%d\"\n\t\t\t% (packageID, barcode, scanStatus, sortCodeText, rowsAffected)\n\t\t)\n\t\n\texcept Exception as e:\n\t\tpkgID \u003d packageID if \u0027packageID\u0027 in locals() else str(currentValue)\n\t\tsystem.util.getLogger(\"PackageData\").error(\n\t\t\t\"Failed to insert package data for ParcelID\u003d%s: %s\" % (pkgID, str(e))\n\t\t)"
}
],
"dataType": "String",
"name": "Package_ID",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[SMC]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ID}].tItem_S04_Data.adiSort_Code"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Reason_Code",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[SMC]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ID}].tItem_S04_Data.sActual_Dest_ID"
},
"valueSource": "opc",
"dataType": "String",
"name": "Actual_Destination",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[SMC]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ID}].iPackage_Length"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Length",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[SMC]DB_SCADA_EXTERNAL_VISU.atItem_Statistics[{ID}].tItem_S04_Data.sBarcode"
},
"valueSource": "opc",
"dataType": "String",
"name": "Barcode",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "MCM",
"typeId": "",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Motor_Fault_Reset_PB_Color"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Motor_Fault_Reset_PB_Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Low_Air_Pressure_Reset_PB_Color"
},
"valueSource": "opc",
"name": "Low_Air_Pressure_Reset_PB_Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start_PB"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Start_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Power_Branch_Fault_Reset_PB_Color"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Power_Branch_Fault_Reset_PB_Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Jam_Restart_PB"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Jam_Restart_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Power_Branch_Fault_Reset_PB"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Power_Branch_Fault_Reset_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Jam_Restart_PB_Color"
},
"valueSource": "opc",
"name": "Jam_Restart_PB_Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Setup_Motor_Speeds"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Setup_Motor_Speeds",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Encoder_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Encoder Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Encoder_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.UPS_Battery_Low"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "UPS Battery Low",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "UPS_Battery_Low",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.UPS_Battery_On"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "UPS Battery On",
"priority": "Low",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "UPS_Battery_On",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.On_UPS_Battery"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "On UPS Battery",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "On_UPS_Battery",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Stop_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Stop PB Pressed",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Stop_PB_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Jam_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Jam Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Jam_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.NAT_Switch_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "NAT Switch Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "NAT_Switch_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Low_Air_Pressure_Reset_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Low_Air Pressure Reset PB Pressed",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Low_Air_Pressure_Reset_PB_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Motor_Fault_Reset_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Motor Fault Reset PB Pressed",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Motor_Fault_Reset_PB_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Stopped"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Stopped",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Stopped",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Power_Branch_Fault_Reset_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Power_Branch Fault Reset PB Pressed",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Power_Branch_Fault_Reset_PB_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.EStopped"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "EStopped_Locally",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "EStopped",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Fire_Relay_De_Energized"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Fire Relay De Energized",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Fire_Relay_De_Energized",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.EStop_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Estop PB Rressed",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Estop_PB_Rressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.UPS_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "UPS Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "UPS_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.UPS_Battery_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "UPS Battery Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "UPS_Battery_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Jam_Restart_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Jam Restart PB Pressed",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Jam_Restart_PB_Pressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Motor_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Motor Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Motor_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.Start_PB_Pressed"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Start PB Rressed",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "Start_PB_Rressed",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.EStopped_Locally"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "EStopped Locally",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "EStopped_Locally",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Low_Air_Pressure_Reset_PB"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Low_Air_Pressure_Reset_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Start_PB_Color"
},
"valueSource": "opc",
"name": "Start_PB_Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Motor_Fault_Reset_PB"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Motor_Fault_Reset_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Stop_PB"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Stop_PB",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "PackageData",
"parameters": {
"ID": {
"dataType": "Integer"
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[MCM06]PKG_Data[{ID}].Scaner.Barcode"
},
"valueSource": "opc",
"dataType": "String",
"name": "Barcode",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[MCM06]PKG_Data[{ID}].Scaner.Package_ID"
},
"valueSource": "opc",
"dataType": "String",
"name": "Package_ID",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[MCM06]PKG_Data[{ID}].Scaner.Weight"
},
"valueSource": "opc",
"dataType": "String",
"name": "Weight",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[MCM06]PKG_Data[{ID}].Scaner.Tunnel_ID"
},
"valueSource": "opc",
"dataType": "String",
"name": "Tunnel_ID",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[MCM06]PKG_Data[{ID}].Server.Reason_Code[0]"
},
"valueSource": "opc",
"dataType": "Int4",
"name": "Reason_Code",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[MCM06]PKG_Data[{ID}].Scaner.Length"
},
"valueSource": "opc",
"dataType": "String",
"name": "Length",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[MCM06]PKG_Data[{ID}].Server.Destination[0]"
},
"valueSource": "opc",
"dataType": "String",
"name": "Requested_Destination",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[MCM06]PKG_Data[{ID}].Server.Destination[3]"
},
"valueSource": "opc",
"eventScripts": [
{
"eventid": "valueChanged",
"script": "\t# Tag Event Script: valueChanged\n\t# Place on: Actual_Destination (PackageData UDT)\n\t\n\tdef decodeScanLabel(scanLabel):\n\t \"\"\"Decode based on first 10 characters, but keep full barcode intact.\"\"\"\n\t if scanLabel is None:\n\t return \"NO READ\"\n\t scanLabel \u003d str(scanLabel).strip()\n\t if scanLabel \u003d\u003d \"\":\n\t return \"NO READ\"\n\t\n\t first10 \u003d scanLabel[:10].upper() # analyze first 10 chars only\n\t\n\t if first10 \u003d\u003d \"9999999999\":\n\t return \"MULTI READ\"\n\t elif first10 \u003d\u003d \"??????????\":\n\t return \"NO READ\"\n\t elif first10 \u003d\u003d \"0000000000\":\n\t return \"NO CODE\"\n\t elif first10 \u003d\u003d \"NSNSNSNSNS\":\n\t return \"NOT SUPPORTED\"\n\t else:\n\t return \"GOOD READ\"\n\t\n\t\n\tdef decodeReasonCode(code):\n\t \"\"\"Decode DivertStatus/Reason_Code numeric value to human-readable text.\"\"\"\n\t if code is None:\n\t return \"NOT_RESPONDED\"\n\t try:\n\t code \u003d int(code)\n\t except (ValueError, TypeError):\n\t return \"NOT_RESPONDED\"\n\t\n\t reason_map \u003d {\n\t\t 0: \"SUCCESS\",\n\t\t 1: \"UNKNOWN\",\n\t\t 2: \"UNEXPECTED_CONTAINER\",\n\t\t 3: \"TRACKING_ERROR\",\n\t\t 4: \"GAP_ERROR\",\n\t\t 5: \"DESTINATION_FULL\",\n\t\t 6: \"DESTINATION_NON_OPERATIONAL\",\n\t\t 7: \"INVALID_DESTINATION\",\n\t\t 8: \"NO_READ\",\n\t\t 9: \"NO_CODE\",\n\t\t 10: \"MULTI_LABEL\",\n\t\t 11: \"UNUSED_BY_INTRALOX\",\n\t\t 12: \"DESTINATION_DISABLED\",\n\t\t 13: \"THROUGHPUT_LIMIT\",\n\t\t 14: \"FAILED_TO_DIVERT\",\n\t\t 15: \"NOT_YET_REACHED\",\n\t\t 16: \"NO_DESTINATION_RECEIVED\",\n\t\t 17: \"LOST_CONTAINER\",\n\t\t 18: \"DIMENSION_ERROR\",\n\t\t 19: \"WEIGHT_ERROR\",\n\t\t 20: \"CONTAINER_UTILIZATION\",\n\t\t 21: \"UNABLE_TO_DIVERT\",\n\t\t 22: \"DESTINATION_NOT_ATTEMPTED\",\n\t\t}\n\t return reason_map.get(code, \"NOT_RESPONDED\")\n\t\n\t\n\t# Abort on initial or bad quality\n\tif initialChange or not currentValue.quality.isGood():\n\t return\n\t\n\t# Ignore bad→good transitions (PLC just connected)\n\tif not previousValue.quality.isGood() and currentValue.quality.isGood():\n\t return\n\t\n\t# Only check current value for emptiness/blank\n\tactualDest \u003d currentValue.value if hasattr(currentValue, \u0027value\u0027) else currentValue\n\tif actualDest is None or str(actualDest).strip() \u003d\u003d \"\":\n\t return\n\t\n\ttry:\n\t parentPath \u003d \"/\".join(tagPath.split(\"/\")[:-1])\n\t\n\t # 🔹 Read the Barcode directly (no fallback)\n\t barcodePath \u003d parentPath + \"/Barcode\"\n\t barcodeRead \u003d system.tag.readBlocking([barcodePath])[0]\n\t barcode \u003d barcodeRead.value if barcodeRead.quality.isGood() else None\n\t\n\t read_paths \u003d [\n\t parentPath + \"/Package_ID\",\n\t parentPath + \"/Length\",\n\t parentPath + \"/Reason_Code\",\n\t parentPath + \"/Requested_Destination\",\n\t parentPath + \"/Weight\",\n\t parentPath + \"/Tunnel_ID\"\n\t ]\n\t reads \u003d system.tag.readBlocking(read_paths)\n\t\n\t packageID \u003d reads[0].value if reads[0].quality.isGood() else None\n\t length \u003d reads[1].value if reads[1].quality.isGood() else None\n\t reasonCode \u003d reads[2].value if reads[2].quality.isGood() else None\n\t requestedDest \u003d reads[3].value if reads[3].quality.isGood() else None\n\t weight \u003d reads[4].value if reads[4].quality.isGood() else None\n\t tunnelID \u003d reads[5].value if reads[5].quality.isGood() else None\n\t\n\t # 🔹 Use full Barcode for decode and DB\n\t scanStatus \u003d decodeScanLabel(barcode)\n\t sortCodeText \u003d decodeReasonCode(reasonCode)\n\t\n\t query \u003d \"\"\"\n\t INSERT INTO alltable \n\t (ScanLabel, ParcelID, Length, DivertStatus, DEST_REQ, ACTUAL_DEST, Weight, SortCode, ScanStatus, Location, t_stamp)\n\t VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NOW())\n\t \"\"\"\n\t params \u003d [barcode, packageID, length, reasonCode, requestedDest, actualDest, weight, sortCodeText, scanStatus, tunnelID]\n\t\n\t rowsAffected \u003d system.db.runPrepUpdate(query, params, \"MariaDB\")\n\t system.util.getLogger(\"PackageData\").info(\n\t \"Inserted (trigger\u003dActual_Destination): ParcelID\u003d%s, Barcode\u003d%s, ActualDest\u003d%s, Tunnel\u003d%s, ScanStatus\u003d%s, SortCode\u003d%s, Rows\u003d%d\" %\n\t (packageID, barcode, actualDest, tunnelID, scanStatus, sortCodeText, rowsAffected)\n\t )\n\t\n\texcept Exception as e:\n\t system.util.getLogger(\"PackageData\").error(\n\t \"Insert failed (trigger\u003dActual_Destination, ActualDest\u003d%s): %s\" % (actualDest, str(e))\n\t )"
}
],
"dataType": "String",
"name": "Actual_Destination",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"name": "PMM",
"parameters": {
"MCM": {
"dataType": "String",
"value": ""
}
},
"tagType": "UdtType",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Priority"
},
"valueSource": "opc",
"name": "Priority",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Color"
},
"valueSource": "opc",
"name": "Color",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.State"
},
"valueSource": "opc",
"name": "State",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PMM_Max_Total_Power"
},
"valueSource": "opc",
"expression": "1",
"dataType": "Float4",
"name": "PMM_Max_Total_Power",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"name": "Alarm",
"tagType": "Folder",
"tags": [
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.PMM_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "PMM Fault",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "PMM_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Alarm.PMM_Communication_Fault"
},
"valueSource": "opc",
"dataType": "Boolean",
"alarms": [
{
"setpointA": 1.0,
"name": "Communication Faulted",
"priority": "High",
"myTag": {
"bindType": "UDTParameter",
"value": "{PathToTag}"
},
"displayPath": {
"bindType": "UDTParameter",
"value": "{InstanceName}"
},
"myLocation": {
"bindType": "UDTParameter",
"value": "{RootInstanceName}"
}
}
],
"name": "PMM_Communication_Fault",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.Communication_Faulted"
},
"valueSource": "opc",
"dataType": "Boolean",
"name": "Communication_Faulted",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PMM_Total_Power"
},
"valueSource": "opc",
"dataType": "Float4",
"name": "PMM_Total_Power",
"tagType": "AtomicTag",
"opcServer": "PLC"
},
{
"opcItemPath": {
"bindType": "parameter",
"binding": "ns\u003d1;s\u003d[{MCM}]{InstanceName}.HMI.PMM_KWH_Consumed"
},
"valueSource": "opc",
"dataType": "Float4",
"name": "PMM_KWH_Consumed",
"tagType": "AtomicTag",
"opcServer": "PLC"
}
]
}
]
}