diff --git a/.DS_Store b/.DS_Store index d1fc46b..e5a2b09 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/Pub_Sub/.DS_Store b/Pub_Sub/.DS_Store index 9902218..6f7593a 100644 Binary files a/Pub_Sub/.DS_Store and b/Pub_Sub/.DS_Store differ diff --git a/Pub_Sub/advvfdipp/.DS_Store b/Pub_Sub/advvfdipp/.DS_Store index f780204..a9f00b4 100644 Binary files a/Pub_Sub/advvfdipp/.DS_Store and b/Pub_Sub/advvfdipp/.DS_Store differ diff --git a/Pub_Sub/ek_facility/thingsboard/ek_facility_measures.csv b/Pub_Sub/ek_facility/thingsboard/ek_facility_measures.csv index 3b71dc9..6b3ba0a 100644 --- a/Pub_Sub/ek_facility/thingsboard/ek_facility_measures.csv +++ b/Pub_Sub/ek_facility/thingsboard/ek_facility_measures.csv @@ -1,190 +1,213 @@ MeasuringPointName,ControllerName,GroupName,UploadType,DeadZonePercent,DataType,ArrayIndex,EnableBit,BitIndex,reverseBit,Address,Decimal,Len,ReadWrite,Unit,Description,Transform Type,MaxValue,MinValue,MaxScale,MinScale,Gain,Offset,startBit,endBit,Pt,Ct,Mapping_table,TransDecimal,bitMap,msecSample,storageLwTSDB,DataEndianReverse,ReadOffset,ReadLength,WriteOffset,WriteLength,DataParseMethod,BitId -a_current,ek_facility,default,periodic,,FLOAT,,,,,Val_A_Current,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -ab_volt,ek_facility,default,periodic,,FLOAT,,,,,Val_AB_Volt,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -ac_volt,ek_facility,default,periodic,,FLOAT,,,,,Val_AC_Volt,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -ait_102a_turbitity,ek_facility,default,periodic,,FLOAT,,,,,AI_102A.Scaled_Out,2,,ro,,Inlet Turbitity Value,none,,,,,,,,,,,,,,,0,,,,,,, -ait_102b_h2s,ek_facility,default,periodic,,FLOAT,,,,,AI_102B.Scaled_Out,2,,ro,,Inlet H2S Value,none,,,,,,,,,,,,,,,0,,,,,,, -ait_102c_ph,ek_facility,default,periodic,,FLOAT,,,,,AI_102C.Scaled_Out,2,,ro,,Inlet pH Value,none,,,,,,,,,,,,,,,0,,,,,,, -ait_102d_oil_in_water,ek_facility,default,periodic,,FLOAT,,,,,AI_102D.Scaled_Out,2,,ro,,Inlet Oil In Water,none,,,,,,,,,,,,,,,0,,,,,,, -ait_114a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -ait_114b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -ait_114c_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114C.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -ait_114d_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114D.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -ait_114e_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114E.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -at_109a_turbidity,ek_facility,default,periodic,,FLOAT,,,,,AI_109A.Scaled_Out,2,,ro,,Outlet Turbidity Value,none,,,,,,,,,,,,,,,0,,,,,,, -at_109b_h2s,ek_facility,default,periodic,,FLOAT,,,,,AI_109B.Scaled_Out,2,,ro,,Outlet H2S Value,none,,,,,,,,,,,,,,,0,,,,,,, -at_109c_oil_in_water,ek_facility,default,periodic,,FLOAT,,,,,AI_109C.Scaled_Out,2,,ro,,Outlet Oil In Water Value,none,,,,,,,,,,,,,,,0,,,,,,, -at_109d_o2_in_water,ek_facility,default,periodic,,FLOAT,,,,,AI_109D.Scaled_Out,2,,ro,,Outlet O2 In Water Value,none,,,,,,,,,,,,,,,0,,,,,,, -at_109e_orp,ek_facility,default,periodic,,FLOAT,,,,,AI_109E.Scaled_Out,2,,ro,,Outlet ORP Value,none,,,,,,,,,,,,,,,0,,,,,,, -b_current,ek_facility,default,periodic,,FLOAT,,,,,Val_B_Current,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -bc_volt,ek_facility,default,periodic,,FLOAT,,,,,Val_BC_Volt,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -bp_3a_auto,ek_facility,default,periodic,,BIT,,,,0,BP_3A_Auto,,,ro,,M107A HOA Hand Feedback,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3a_fault,ek_facility,default,periodic,,BIT,,,,0,BP_3A_Fault_FBK,,,ro,,M107A Fault Feedback,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3a_hand,ek_facility,default,periodic,,BIT,,,,0,BP_3A_Hand,,,ro,,M107A HOA Auto Feedback,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3a_run,ek_facility,default,periodic,,BIT,,,,0,BP_3A_RUN_FDBK,,,ro,,M107A Run Status,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3a_run_cmd,ek_facility,default,periodic,,BIT,,,,0,BP_3A,,,ro,,M107A Run Command,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3a_run_fail_alm,ek_facility,default,periodic,,BIT,,,,0,BP_3A_RUN_FAIL,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3b_auto,ek_facility,default,periodic,,BIT,,,,0,BP_3B_Auto,,,ro,,M107B HOA Hand Feedback,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3b_fault,ek_facility,default,periodic,,BIT,,,,0,BP_3B_Fault_FBK,,,ro,,M107B Fault Feedback,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3b_hand,ek_facility,default,periodic,,BIT,,,,0,BP_3B_Hand,,,ro,,M107B HOA Auto Feedback,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3b_run,ek_facility,default,periodic,,BIT,,,,0,BP_3B_RUN_FDBK,,,ro,,M107B Run Status,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3b_run_cmd,ek_facility,default,periodic,,BIT,,,,0,BP_3B,,,ro,,M107B Run Command,none,,,,,,,,,,,,,0,,0,,,,,,, -bp_3b_run_fail_alm,ek_facility,default,periodic,,BIT,,,,0,BP_3B_RUN_FAIL,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -c_current,ek_facility,default,periodic,,FLOAT,,,,,Val_C_Current,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -chemical_pump_01_rate_offset,ek_facility,default,periodic,,FLOAT,,,,,SPT_Chemical_Pump_1_Rate_Offset,2,,ro,%,Operator Adjustment,none,,,,,,,,,,,,,,,0,,,,,,, -chemical_pump_01_run_status,ek_facility,default,periodic,,BIT,,,,0,FBK_Chemical_Pump_1_Running,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -chemical_pump_auto,ek_facility,default,periodic,,BIT,,,,0,CMD_Chemical_Pump_Auto,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -compressor_ambient_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Air_Compressor_Ambient_Temp,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -compressor_controller_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Air_Compressor_Controller_Temp,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -compressor_outlet_pressure,ek_facility,default,periodic,,FLOAT,,,,,Val_Air_Compressor_Outlet_PSI,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -compressor_outlet_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Air_Compressor_Outlet_Element_Temp,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -ct_200_current,ek_facility,default,periodic,,FLOAT,,,,,CT_200.Scaled_Out,2,,ro,,M-105 Motor Amperage,none,,,,,,,,,,,,,,,0,,,,,,, -dpi_108a_pressure,ek_facility,default,periodic,,FLOAT,,,,,DPI_108A,2,,ro,,Differential PSI Across Sock Filter,none,,,,,,,,,,,,,,,0,,,,,,, -dpi_108b_pressure,ek_facility,default,periodic,,FLOAT,,,,,DPI_108B,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -esd_exists,ek_facility,default,periodic,,BIT,,,,0,ESD_Exists,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -fcv_001_valve,ek_facility,default,periodic,,FLOAT,,,,,FCV_001_PRESCALE,2,,ro,,M107A Control Valve Setpoint,none,,,,,,,,,,,,,,,0,,,,,,, -fcv_002_valve,ek_facility,default,periodic,,FLOAT,,,,,FCV_002_PRESCALE,2,,ro,,M107B Control Valve Setpoint,none,,,,,,,,,,,,,,,0,,,,,,, -fcv_101a_valve,ek_facility,default,periodic,,FLOAT,,,,,FCV_101A.Scaled_Out,2,,ro,,Reject Stream Throttling Valve Position Feedback,none,,,,,,,,,,,,,,,0,,,,,,, -fcv_101b_valve,ek_facility,default,periodic,,FLOAT,,,,,FCV_101B.Scaled_Out,2,,ro,,Inlet Stream Throttling Valve Position Feedback,none,,,,,,,,,,,,,,,0,,,,,,, -fi_101b_popoff,ek_facility,default,periodic,,BIT,,,,0,FI_101B.Discrete_Input,,,ro,,Reject Stream Popoff Flow Switch,none,,,,,,,,,,,,,0,,0,,,,,,, -fis_112_h2o2_popoff,ek_facility,default,periodic,,BIT,,,,0,FIS_112_FBK,,,ro,,H2O2 Popoff Flow Switch,none,,,,,,,,,,,,,0,,0,,,,,,, -fit_004_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_004.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -fit_100_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_100.Scaled_Out,2,,ro,,Inlet Flow Rate To ACW,none,,,,,,,,,,,,,,,0,,,,,,, -fit_100_hi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_100.AH,,,ro,,Inlet Flow Rate To ACW Hi,none,,,,,,,,,,,,,0,,0,,,,,,, -fit_100_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_100.AHH,,,ro,,Inlet Flow Rate To ACW HiHi,none,,,,,,,,,,,,,0,,0,,,,,,, -fit_100_lo_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_100.AL,,,ro,,Inlet Flow Rate To ACW Lo,none,,,,,,,,,,,,,0,,0,,,,,,, -fit_100_water_job,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Job_Total,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_100_water_last_month,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_LastMonth,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_100_water_lifetime,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_100_water_month,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_Month,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_100_water_today,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_Todays,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_100_water_yesterday,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_Yest,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_101_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_101.Scaled_Out,2,,ro,bbls,Reject Stream Flow Rate,none,,,,,,,,,,,,,,,0,,,,,,, -fit_102_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_102.Scaled_Out,2,,ro,,Inlet Slip Stream Flow Rate,none,,,,,,,,,,,,,,,0,,,,,,, -fit_104_n2_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_004.Scaled_Out,2,,ro,,M-104 Onyx Pump N2 Injection Rate,none,,,,,,,,,,,,,,,0,,,,,,, -fit_106a_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_106A.Scaled_Out,2,,ro,,M-106A Flow Rate,none,,,,,,,,,,,,,,,0,,,,,,, -fit_106a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_106A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -fit_106b_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_106B.Scaled_Out,2,,ro,,M-106B Flow Rate,none,,,,,,,,,,,,,,,0,,,,,,, -fit_106b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_106B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -fit_107a_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_107A.Scaled_Out,2,,ro,,M107A Flow Rate,none,,,,,,,,,,,,,,,0,,,,,,, -fit_107a_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_107A.ALL,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -fit_107b_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_107B.Scaled_Out,2,,ro,,M107B Flow Rate,none,,,,,,,,,,,,,,,0,,,,,,, -fit_107b_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_107B.ALL,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -fit_109a_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_109A.Scaled_Out,2,,ro,,Outlet Slip Stream Flow Rate,none,,,,,,,,,,,,,,,0,,,,,,, -fit_109b_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_109B.Scaled_Out,2,,ro,,Outlet Sales Meter,none,,,,,,,,,,,,,,,0,,,,,,, -fit_109b_water_job,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Job_Total,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_109b_water_last_month,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_LastMonth,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_109b_water_lifetime,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_109b_water_month,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_Month,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_109b_water_today,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_Todays,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_109b_water_yesterday,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_Yest,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -fit_111_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_111.Scaled_Out,2,,ro,,FIT_111 Inlet Gas Flow Rate To ACW,none,,,,,,,,,,,,,,,0,,,,,,, -fit_112a_h2o2_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_112A.Scaled_Out,2,,ro,,H2O2 Flow Rate,none,,,,,,,,,,,,,,,0,,,,,,, -fit_112b_nahso3_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_112B.Scaled_Out,2,,ro,,NaHSO3 Flow Rate,none,,,,,,,,,,,,,,,0,,,,,,, -h2o2_chemical_rate,ek_facility,default,periodic,,INT,,0,,,Chemical_Pump_1_Rate,,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -li_103D_level_alm,ek_facility,default,periodic,,BIT,,,,0,LI_103D_FBK,,,ro,,ACW Containment Level Tripped (Red When Tripped Please),none,,,,,,,,,,,,,0,,0,,,,,,, -lit_101_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_101.Scaled_Out,2,,ro,,Chamber 5 Skim Level In Weir,none,,,,,,,,,,,,,,,0,,,,,,, -lit_112a_h2o2_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_112A.Scaled_Out,2,,ro,,H2O2 Chemical Level,none,,,,,,,,,,,,,,,0,,,,,,, -lit_112b_nahso3_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_112B.Scaled_Out,2,,ro,,NaHSO3 Chemical Level,none,,,,,,,,,,,,,,,0,,,,,,, -lit_170_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,LIT_170.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -lit_170_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_170.Scaled_Out,2,,ro,,Chamber 5 Level GWR,none,,,,,,,,,,,,,,,0,,,,,,, -lit_200_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,LIT_200.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -lit_200_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_200.Scaled_Out,2,,ro,,Chamber 5 Level DP,none,,,,,,,,,,,,,,,0,,,,,,, -lsh_114_alm,ek_facility,default,periodic,,BIT,,,,0,LSH_114.ALARM,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -lsh_120_alm,ek_facility,default,periodic,,BIT,,,,0,LSH-120.ALARM,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -lsh_120_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,LSH_120,,,ro,,ACW Chamber 5 Level HiHi Switch Tripped (Red When Tripped Please),none,,,,,,,,,,,,,0,,0,,,,,,, -m106a_vfd_active,ek_facility,default,periodic,,BIT,,,,0,M106A_VFD:I.Active,,,ro,,M-106A Run Status,none,,,,,,,,,,,,,0,,0,,,,,,, -m106a_vfd_faulted_alm,ek_facility,default,periodic,,BIT,,,,0,M106A_VFD:I.Faulted,,,ro,,M-106A Fault Status,none,,,,,,,,,,,,,0,,0,,,,,,, -m106a_vfd_frequency,ek_facility,default,periodic,,INT,,0,,,M106A_VFD:I.OutputFreq,,,ro,,M-106A Current Output Frequency,none,,,,,,,,,,,,,,,0,,,,,,, -m106a_vfd_start,ek_facility,default,periodic,,BIT,,,,0,M106A_VFD:O.Start,,,ro,,M-106A Start Command,none,,,,,,,,,,,,,0,,0,,,,,,, -m106a_vfd_stop,ek_facility,default,periodic,,BIT,,,,0,M106A_VFD:O.Stop,,,ro,,M-106A Stop Command,none,,,,,,,,,,,,,0,,0,,,,,,, -m106b_vfd_active,ek_facility,default,periodic,,BIT,,,,0,M106B_VFD:I.Active,,,ro,,M-106B Run Status,none,,,,,,,,,,,,,0,,0,,,,,,, -m106b_vfd_faulted_alm,ek_facility,default,periodic,,BIT,,,,0,M106B_VFD:I.Faulted,,,ro,,M-106B Fault Status,none,,,,,,,,,,,,,0,,0,,,,,,, -m106b_vfd_frequency,ek_facility,default,periodic,,INT,,0,,,M106B_VFD:I.OutputFreq,,,ro,,M-106B Current Output Frequency,none,,,,,,,,,,,,,,,0,,,,,,, -m106b_vfd_start,ek_facility,default,periodic,,BIT,,,,0,M106B_VFD:O.Start,,,ro,,M-106B Start Command,none,,,,,,,,,,,,,0,,0,,,,,,, -m106b_vfd_stop,ek_facility,default,periodic,,BIT,,,,0,M106B_VFD:O.Stop,,,ro,,M-106B Stop Command,none,,,,,,,,,,,,,0,,0,,,,,,, -n2_inlet_pressure,ek_facility,default,periodic,,FLOAT,,,,,Val_N2_Inlet_PSI,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -n2_outlet_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,Val_N2_Outlet_Flow_Rate,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -n2_outlet_pressure,ek_facility,default,periodic,,FLOAT,,,,,Val_ N2_Outlet_ PSI,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -n2_outlet_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_N2_Outlet_Temp,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -n2_purity,ek_facility,default,periodic,,FLOAT,,,,,Val_N2_N2_Purity,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -p100_auto,ek_facility,default,periodic,,BIT,,,,0,P100_Auto,,,ro,,M-104 Onyx Pump HOA Auto Status,none,,,,,,,,,,,,,0,,0,,,,,,, -p100_hand,ek_facility,default,periodic,,BIT,,,,0,P100_Hand,,,ro,,M-104 Onyx Pump HOA Hand Status,none,,,,,,,,,,,,,0,,0,,,,,,, -p200_auto,ek_facility,default,periodic,,BIT,,,,0,P200_Auto,,,ro,,M-105 Skim Pump HOA Hand Status,none,,,,,,,,,,,,,0,,0,,,,,,, -p200_hand,ek_facility,default,periodic,,BIT,,,,0,P200_Hand,,,ro,,M-105 Skim Pump HOA Auto Status,none,,,,,,,,,,,,,0,,0,,,,,,, -pdi_065_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PDI_065.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pdi_065_lo_alm,ek_facility,default,periodic,,BIT,,,,0,PDI_065.AL,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pdi_065_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,PDI_065.ALL,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pdi_065_pressure,ek_facility,default,periodic,,FLOAT,,,,,PDI_065.AI_Scaled,2,,ro,,M-104 Onyx Pump Discharge PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pdt_108a_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108A.AH,,,ro,,Sock Filter High Differential PSI,none,,,,,,,,,,,,,0,,0,,,,,,, -pdt_108a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108A.AHH,,,ro,,Sock Filter High High Differential PSI,none,,,,,,,,,,,,,0,,0,,,,,,, -pdt_108b_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108B.AH,,,ro,,Cartrige Filter #1 High Differential PSI,none,,,,,,,,,,,,,0,,0,,,,,,, -pdt_108b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108B.AHH,,,ro,,Cartrige Filter #1 High High Differential PSI,none,,,,,,,,,,,,,0,,0,,,,,,, -pdt_108b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PDT_108B.AI_Scaled,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -pdt_108c_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108C.AH,,,ro,,Cartrige Filter #2 High Differential PSI,none,,,,,,,,,,,,,0,,0,,,,,,, -pdt_108c_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108C.AHH,,,ro,,Cartrige Filter #2 High High Differential PSI,none,,,,,,,,,,,,,0,,0,,,,,,, -pdt_108c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PDT_108C.AI_Scaled,2,,ro,,Differential PSI Across Cartrige Filter #2,none,,,,,,,,,,,,,,,0,,,,,,, -pit_050_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_050.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_050_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_050.Scaled_Out,2,,ro,,PIT-104A Onyx Pump Suction PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_065_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_065.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_065_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_065.Scaled_Out,2,,ro,,PIT_104D Onyx Pump Discharge PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_100_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_100.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_100_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_100.Scaled_Out,2,,ro,,M-105 Skim Pump Discharge PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_100a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_100A.Scaled_Out,2,,ro,psi,Inlet PSI External To ACW,none,,,,,,,,,,,,,,,0,,,,,,, -pit_101a_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101A.AH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_101a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_101a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_101A.Scaled_Out,2,,ro,psi,"Inlet PSI Internal To ACW, Before SDV-101A",none,,,,,,,,,,,,,,,0,,,,,,, -pit_101a_transmitter_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101A.XFail,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_101b_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_P101B.AH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_101b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_101b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_101B.Scaled_Out,2,,ro,psi,"Inlet PSI Internal To ACW, After SDV-101A",none,,,,,,,,,,,,,,,0,,,,,,, -pit_101b_transmitter_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101B.XFail,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_101c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_101C.Scaled_Out,2,,ro,psi,Reject Stream PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_102_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_102.AH,,,ro,,Indicated if PIT102 is in Hi alarm state,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_102_hi_spt,ek_facility,default,periodic,,BIT,,,,0,PIT_102.AH_SP,,,ro,,"PIT_102 Hi Alarm Setpoint, If needed",none,,,,,,,,,,,,,0,,0,,,,,,, -pit_102_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_102.AHH,,,ro,,Indicates if PIT102 is in HiHi alarm state,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_102_hihi_spt,ek_facility,default,periodic,,BIT,,,,0,PIT_102.AHH_SP,,,ro,,PIT_102 HiHi Alarm Setpoint If Needed,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_102_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_102.Scaled_Out,2,,ro,,Inlet PSI To Reaction Tank,none,,,,,,,,,,,,,,,0,,,,,,, -pit_106a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_106A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_106a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_106A.Scaled_Out,2,,ro,,M-106A Discharge PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_106b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_106B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_106b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_106B.Scaled_Out,2,,ro,,M-106B Discharge PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_106c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_106C.Scaled_Out,2,,ro,,"Reject Stream Discharge Header PSI, Pre SDV 106",none,,,,,,,,,,,,,,,0,,,,,,, -pit_106d_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_106D.Scaled_Out,2,,ro,,"Reject Stream Discharge Header PSI, Post SDV106",none,,,,,,,,,,,,,,,0,,,,,,, -pit_107a_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_107A.ALL,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_107a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_107A.Scaled_Out,2,,ro,,M107A & M107B Suction Header PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_107b_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_107B.ALL,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_107b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_107B.Scaled_Out,2,,ro,,M107A Discharge PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_107c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_107C.Scaled_Out,2,,ro,,M107A and M107B Discharge Flow Line PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_107d_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_107D.Scaled_Out,2,,ro,,M107B Discharge PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_108_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108G.Scaled_Out,2,,ro,,Post Filter Flow Line PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_108a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_108A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_108a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108A.Scaled_Out,2,,ro,,Pre Sock Filter PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_108b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_108B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_108b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108B.Scaled_Out,2,,ro,,Post Sock Filter PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_108c_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_108C.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_108c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108C.Scaled_Out,2,,ro,,Pre Cartrige Filter #1 PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_108d_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108D.Scaled_Out,2,,ro,,Post Cartrige Filter #1 PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_108e_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108E.Scaled_Out,2,,ro,,Pre Cartrige Filter #2 PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_108f_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108F.Scaled_Out,2,,ro,,Post Cartrige Filter #2 PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_108g_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_108G.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_110_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_110.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_110_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_110.Scaled_Out,2,,ro,,PIT_103 ACW Vapor Space Pressure,none,,,,,,,,,,,,,,,0,,,,,,, -pit_111a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_111A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_111a_n2,ek_facility,default,periodic,,FLOAT,,,,,PIT_111A.Scaled_Out,2,,ro,,N2 System PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_111b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_111B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_111b_n2,ek_facility,default,periodic,,FLOAT,,,,,PIT_111B.Scaled_Out,2,,ro,,Inlet Skid N2 PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pit_111c_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_111C.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -pit_111c_n2,ek_facility,default,periodic,,FLOAT,,,,,PIT_111C.Scaled_Out,2,,ro,,N2 Outlet Skid PSI,none,,,,,,,,,,,,,,,0,,,,,,, -pnl_esd_alm,ek_facility,default,periodic,,BIT,,,,0,PNL_ESD.ALARM,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -rmt_sd_alm,ek_facility,default,periodic,,BIT,,,,0,RMT_SD.ALARM,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -scada_stop_cmd,ek_facility,default,periodic,,BIT,,,,0,CMD_Scada_Stop,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, -sdv_101a,ek_facility,default,periodic,,INT,,1,7,0,Local:12:I.Data,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -sdv106_closed,ek_facility,default,periodic,,BIT,,,,0,SDV106_Closed_FBK,,,ro,,SDV106 Closed Feedback Status,none,,,,,,,,,,,,,0,,0,,,,,,, -sdv106_open,ek_facility,default,periodic,,BIT,,,,0,SDV106_Open_FBK,,,ro,,SDV106 Open Feedback Status,none,,,,,,,,,,,,,0,,0,,,,,,, -skim_total_barrels,ek_facility,default,periodic,,FLOAT,,,,,SKIM_TOTAL_BARRELS,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -spt_chemical_manual_rate,ek_facility,default,periodic,,FLOAT,,,,,SPT_Chemical_Manual_Rate,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, -xy_100_run,ek_facility,default,periodic,,BIT,,,,0,XY_100,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -xy_200_run,ek_facility,default,periodic,,BIT,,,,0,XY_200,,,ro,,M-105 Run Command,none,,,,,,,,,,,,,0,,0,,,,,,, -zae_111a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,ZAE_111A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, -zae_111b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,ZAE_111B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, \ No newline at end of file +a_current,ek_facility,default,periodic,,FLOAT,,,,,Val_A_Current,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +ab_volt,ek_facility,default,periodic,,FLOAT,,,,,Val_AB_Volt,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +ac_volt,ek_facility,default,periodic,,FLOAT,,,,,Val_AC_Volt,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +ait_102a_turbitity,ek_facility,default,periodic,,FLOAT,,,,,AI_102A.Scaled_Out,2,,ro,,Inlet Turbitity Value,none,,,,,,,,,,,,,,,1,,,,,,, +ait_102b_h2s,ek_facility,default,periodic,,FLOAT,,,,,AI_102B.Scaled_Out,2,,ro,,Inlet H2S Value,none,,,,,,,,,,,,,,,1,,,,,,, +ait_102c_ph,ek_facility,default,periodic,,FLOAT,,,,,AI_102C.Scaled_Out,2,,ro,,Inlet pH Value,none,,,,,,,,,,,,,,,1,,,,,,, +ait_102d_oil_in_water,ek_facility,default,periodic,,FLOAT,,,,,AI_102D.Scaled_Out,2,,ro,,Inlet Oil In Water,none,,,,,,,,,,,,,,,1,,,,,,, +ait_114a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114a_lo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114A.AL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114a_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114A.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114c_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114C.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114c_lo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114C.AL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114c_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114C.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114d_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114D.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114e_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114E.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114l_lo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114L.AL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114l_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114L.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114r_lo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114R.AL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114r_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114R.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114x_lo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114X.AL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114x_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114X.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114z_lo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114Z.AL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +ait_114z_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,AIT_114Z.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +at_109a_turbidity,ek_facility,default,periodic,,FLOAT,,,,,AI_109A.Scaled_Out,2,,ro,,Outlet Turbidity Value,none,,,,,,,,,,,,,,,1,,,,,,, +at_109b_h2s,ek_facility,default,periodic,,FLOAT,,,,,AI_109B.Scaled_Out,2,,ro,,Outlet H2S Value,none,,,,,,,,,,,,,,,1,,,,,,, +at_109c_oil_in_water,ek_facility,default,periodic,,FLOAT,,,,,AI_109C.Scaled_Out,2,,ro,,Outlet Oil In Water Value,none,,,,,,,,,,,,,,,1,,,,,,, +at_109d_o2_in_water,ek_facility,default,periodic,,FLOAT,,,,,AI_109D.Scaled_Out,2,,ro,,Outlet O2 In Water Value,none,,,,,,,,,,,,,,,1,,,,,,, +at_109e_orp,ek_facility,default,periodic,,FLOAT,,,,,AI_109E.Scaled_Out,2,,ro,,Outlet ORP Value,none,,,,,,,,,,,,,,,1,,,,,,, +b_current,ek_facility,default,periodic,,FLOAT,,,,,Val_B_Current,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +bc_volt,ek_facility,default,periodic,,FLOAT,,,,,Val_BC_Volt,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +bp_3a_auto,ek_facility,default,periodic,,BIT,,,,0,BP_3A_Auto,,,ro,,M107A HOA Hand Feedback,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3a_fault,ek_facility,default,periodic,,BIT,,,,0,BP_3A_Fault_FBK,,,ro,,M107A Fault Feedback,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3a_hand,ek_facility,default,periodic,,BIT,,,,0,BP_3A_Hand,,,ro,,M107A HOA Auto Feedback,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3a_run,ek_facility,default,periodic,,BIT,,,,0,BP_3A_RUN_FDBK,,,ro,,M107A Run Status,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3a_run_cmd,ek_facility,default,periodic,,BIT,,,,0,BP_3A,,,ro,,M107A Run Command,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3a_run_fail_alm,ek_facility,default,periodic,,BIT,,,,0,BP_3A_RUN_FAIL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3b_auto,ek_facility,default,periodic,,BIT,,,,0,BP_3B_Auto,,,ro,,M107B HOA Hand Feedback,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3b_fault,ek_facility,default,periodic,,BIT,,,,0,BP_3B_Fault_FBK,,,ro,,M107B Fault Feedback,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3b_hand,ek_facility,default,periodic,,BIT,,,,0,BP_3B_Hand,,,ro,,M107B HOA Auto Feedback,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3b_run,ek_facility,default,periodic,,BIT,,,,0,BP_3B_RUN_FDBK,,,ro,,M107B Run Status,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3b_run_cmd,ek_facility,default,periodic,,BIT,,,,0,BP_3B,,,ro,,M107B Run Command,none,,,,,,,,,,,,,0,,1,,,,,,, +bp_3b_run_fail_alm,ek_facility,default,periodic,,BIT,,,,0,BP_3B_RUN_FAIL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +c_current,ek_facility,default,periodic,,FLOAT,,,,,Val_C_Current,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +chemical_pump_01_rate_offset,ek_facility,default,periodic,,FLOAT,,,,,SPT_Chemical_Pump_1_Rate_Offset,2,,ro,%,Operator Adjustment,none,,,,,,,,,,,,,,,1,,,,,,, +chemical_pump_01_run_status,ek_facility,default,periodic,,BIT,,,,0,FBK_Chemical_Pump_1_Running,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +chemical_pump_auto,ek_facility,default,periodic,,BIT,,,,0,CMD_Chemical_Pump_Auto,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +compressor_ambient_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Air_Compressor_Ambient_Temp,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +compressor_controller_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Air_Compressor_Controller_Temp,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +compressor_outlet_pressure,ek_facility,default,periodic,,FLOAT,,,,,Val_Air_Compressor_Outlet_PSI,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +compressor_outlet_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Air_Compressor_Outlet_Element_Temp,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +ct_200_current,ek_facility,default,periodic,,FLOAT,,,,,CT_200.Scaled_Out,2,,ro,,M-105 Motor Amperage,none,,,,,,,,,,,,,,,1,,,,,,, +dpi_108a_pressure,ek_facility,default,periodic,,FLOAT,,,,,DPI_108A,2,,ro,,Differential PSI Across Sock Filter,none,,,,,,,,,,,,,,,1,,,,,,, +dpi_108b_pressure,ek_facility,default,periodic,,FLOAT,,,,,DPI_108B,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +esd_exists,ek_facility,default,periodic,,BIT,,,,0,ESD_Exists,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +fcv_001_valve,ek_facility,default,periodic,,FLOAT,,,,,FCV_001_PRESCALE,2,,ro,,M107A Control Valve Setpoint,none,,,,,,,,,,,,,,,1,,,,,,, +fcv_002_valve,ek_facility,default,periodic,,FLOAT,,,,,FCV_002_PRESCALE,2,,ro,,M107B Control Valve Setpoint,none,,,,,,,,,,,,,,,1,,,,,,, +fcv_101a_valve,ek_facility,default,periodic,,FLOAT,,,,,FCV_101A.Scaled_Out,2,,ro,,Reject Stream Throttling Valve Position Feedback,none,,,,,,,,,,,,,,,1,,,,,,, +fcv_101b_valve,ek_facility,default,periodic,,FLOAT,,,,,FCV_101B.Scaled_Out,2,,ro,,Inlet Stream Throttling Valve Position Feedback,none,,,,,,,,,,,,,,,1,,,,,,, +fi_101b_popoff,ek_facility,default,periodic,,BIT,,,,0,FI_101B.Discrete_Input,,,ro,,Reject Stream Popoff Flow Switch,none,,,,,,,,,,,,,0,,1,,,,,,, +fis_112_h2o2_popoff,ek_facility,default,periodic,,BIT,,,,0,FIS_112_FBK,,,ro,,H2O2 Popoff Flow Switch,none,,,,,,,,,,,,,0,,1,,,,,,, +fit_004_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_004.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +fit_100_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_100.Scaled_Out,2,,ro,,Inlet Flow Rate To ACW,none,,,,,,,,,,,,,,,1,,,,,,, +fit_100_hi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_100.AH,,,ro,,Inlet Flow Rate To ACW Hi,none,,,,,,,,,,,,,0,,1,,,,,,, +fit_100_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_100.AHH,,,ro,,Inlet Flow Rate To ACW HiHi,none,,,,,,,,,,,,,0,,1,,,,,,, +fit_100_lo_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_100.AL,,,ro,,Inlet Flow Rate To ACW Lo,none,,,,,,,,,,,,,0,,1,,,,,,, +fit_100_water_job,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Job_Total,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_100_water_last_month,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_LastMonth,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_100_water_lifetime,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_T1,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_100_water_month,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_Month,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_100_water_today,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_Todays,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_100_water_yesterday,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_100_Water_Yest,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_101_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_101.Scaled_Out,2,,ro,bbls,Reject Stream Flow Rate,none,,,,,,,,,,,,,,,1,,,,,,, +fit_102_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_102.Scaled_Out,2,,ro,,Inlet Slip Stream Flow Rate,none,,,,,,,,,,,,,,,1,,,,,,, +fit_104_n2_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_004.Scaled_Out,2,,ro,,M-104 Onyx Pump N2 Injection Rate,none,,,,,,,,,,,,,,,1,,,,,,, +fit_106a_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_106A.Scaled_Out,2,,ro,,M-106A Flow Rate,none,,,,,,,,,,,,,,,1,,,,,,, +fit_106a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_106A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +fit_106b_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_106B.Scaled_Out,2,,ro,,M-106B Flow Rate,none,,,,,,,,,,,,,,,1,,,,,,, +fit_106b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_106B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +fit_107a_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_107A.Scaled_Out,2,,ro,,M107A Flow Rate,none,,,,,,,,,,,,,,,1,,,,,,, +fit_107a_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_107A.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +fit_107b_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_107B.Scaled_Out,2,,ro,,M107B Flow Rate,none,,,,,,,,,,,,,,,1,,,,,,, +fit_107b_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,FIT_107B.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +fit_109a_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_109A.Scaled_Out,2,,ro,,Outlet Slip Stream Flow Rate,none,,,,,,,,,,,,,,,1,,,,,,, +fit_109b_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_109B.Scaled_Out,2,,ro,,Outlet Sales Meter,none,,,,,,,,,,,,,,,1,,,,,,, +fit_109b_water_job,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Job_Total,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_109b_water_last_month,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_LastMonth,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_109b_water_lifetime,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_T1,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_109b_water_month,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_Month,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_109b_water_today,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_Todays,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_109b_water_yesterday,ek_facility,default,periodic,,FLOAT,,,,,Val_FIT_109B_Water_Yest,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +fit_111_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_111.Scaled_Out,2,,ro,,FIT_111 Inlet Gas Flow Rate To ACW,none,,,,,,,,,,,,,,,1,,,,,,, +fit_112a_h2o2_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_112A.Scaled_Out,2,,ro,,H2O2 Flow Rate,none,,,,,,,,,,,,,,,1,,,,,,, +fit_112b_nahso3_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,FIT_112B.Scaled_Out,2,,ro,,NaHSO3 Flow Rate,none,,,,,,,,,,,,,,,1,,,,,,, +h2o2_chemical_rate,ek_facility,default,periodic,,INT,,0,,,Chemical_Pump_1_Rate,,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +li_103D_level_alm,ek_facility,default,periodic,,BIT,,,,0,LI_103D_FBK,,,ro,,ACW Containment Level Tripped (Red When Tripped Please),none,,,,,,,,,,,,,0,,1,,,,,,, +lit_101_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_101.Scaled_Out,2,,ro,,Chamber 5 Skim Level In Weir,none,,,,,,,,,,,,,,,1,,,,,,, +lit_112a_h2o2_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_112A.Scaled_Out,2,,ro,,H2O2 Chemical Level,none,,,,,,,,,,,,,,,1,,,,,,, +lit_112b_nahso3_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_112B.Scaled_Out,2,,ro,,NaHSO3 Chemical Level,none,,,,,,,,,,,,,,,1,,,,,,, +lit_116a_hi_alm,ek_facility,default,periodic,,BIT,,,,0,LIT_116A.AH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +lit_116a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,LIT_116A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +lit_116a_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_116A.Scaled_Out,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +lit_116b_hi_alm,ek_facility,default,periodic,,BIT,,,,0,LIT_116B.AH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +lit_116b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,LIT_116B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +lit_116b_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_116B.Scaled_Out,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +lit_170_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,LIT_170.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +lit_170_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_170.Scaled_Out,2,,ro,,Chamber 5 Level GWR,none,,,,,,,,,,,,,,,1,,,,,,, +lit_200_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,LIT_200.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +lit_200_level,ek_facility,default,periodic,,FLOAT,,,,,LIT_200.Scaled_Out,2,,ro,,Chamber 5 Level DP,none,,,,,,,,,,,,,,,1,,,,,,, +lsh_114_alm,ek_facility,default,periodic,,BIT,,,,0,LSH_114.ALARM,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +lsh_120_alm,ek_facility,default,periodic,,BIT,,,,0,LSH-120.ALARM,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +lsh_120_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,LSH_120,,,ro,,ACW Chamber 5 Level HiHi Switch Tripped (Red When Tripped Please),none,,,,,,,,,,,,,0,,1,,,,,,, +m106a_vfd_active,ek_facility,default,periodic,,BIT,,,,0,M106A_VFD:I.Active,,,ro,,M-106A Run Status,none,,,,,,,,,,,,,0,,1,,,,,,, +m106a_vfd_faulted_alm,ek_facility,default,periodic,,BIT,,,,0,M106A_VFD:I.Faulted,,,ro,,M-106A Fault Status,none,,,,,,,,,,,,,0,,1,,,,,,, +m106a_vfd_frequency,ek_facility,default,periodic,,INT,,0,,,M106A_VFD:I.OutputFreq,,,ro,,M-106A Current Output Frequency,none,,,,,,,,,,,,,,,1,,,,,,, +m106a_vfd_start,ek_facility,default,periodic,,BIT,,,,0,M106A_VFD:O.Start,,,ro,,M-106A Start Command,none,,,,,,,,,,,,,0,,1,,,,,,, +m106a_vfd_stop,ek_facility,default,periodic,,BIT,,,,0,M106A_VFD:O.Stop,,,ro,,M-106A Stop Command,none,,,,,,,,,,,,,0,,1,,,,,,, +m106b_vfd_active,ek_facility,default,periodic,,BIT,,,,0,M106B_VFD:I.Active,,,ro,,M-106B Run Status,none,,,,,,,,,,,,,0,,1,,,,,,, +m106b_vfd_faulted_alm,ek_facility,default,periodic,,BIT,,,,0,M106B_VFD:I.Faulted,,,ro,,M-106B Fault Status,none,,,,,,,,,,,,,0,,1,,,,,,, +m106b_vfd_frequency,ek_facility,default,periodic,,INT,,0,,,M106B_VFD:I.OutputFreq,,,ro,,M-106B Current Output Frequency,none,,,,,,,,,,,,,,,1,,,,,,, +m106b_vfd_start,ek_facility,default,periodic,,BIT,,,,0,M106B_VFD:O.Start,,,ro,,M-106B Start Command,none,,,,,,,,,,,,,0,,1,,,,,,, +m106b_vfd_stop,ek_facility,default,periodic,,BIT,,,,0,M106B_VFD:O.Stop,,,ro,,M-106B Stop Command,none,,,,,,,,,,,,,0,,1,,,,,,, +n2_inlet_pressure,ek_facility,default,periodic,,FLOAT,,,,,Val_N2_Inlet_PSI,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +n2_outlet_flow_rate,ek_facility,default,periodic,,FLOAT,,,,,Val_N2_Outlet_Flow_Rate,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +n2_outlet_pressure,ek_facility,default,periodic,,FLOAT,,,,,Val_ N2_Outlet_ PSI,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +n2_outlet_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_N2_Outlet_Temp,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +n2_purity,ek_facility,default,periodic,,FLOAT,,,,,Val_N2_N2_Purity,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +p100_auto,ek_facility,default,periodic,,BIT,,,,0,P100_Auto,,,ro,,M-104 Onyx Pump HOA Auto Status,none,,,,,,,,,,,,,0,,1,,,,,,, +p100_hand,ek_facility,default,periodic,,BIT,,,,0,P100_Hand,,,ro,,M-104 Onyx Pump HOA Hand Status,none,,,,,,,,,,,,,0,,1,,,,,,, +p200_auto,ek_facility,default,periodic,,BIT,,,,0,P200_Auto,,,ro,,M-105 Skim Pump HOA Hand Status,none,,,,,,,,,,,,,0,,1,,,,,,, +p200_hand,ek_facility,default,periodic,,BIT,,,,0,P200_Hand,,,ro,,M-105 Skim Pump HOA Auto Status,none,,,,,,,,,,,,,0,,1,,,,,,, +pdi_065_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PDI_065.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pdi_065_lo_alm,ek_facility,default,periodic,,BIT,,,,0,PDI_065.AL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pdi_065_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,PDI_065.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pdi_065_pressure,ek_facility,default,periodic,,FLOAT,,,,,PDI_065.AI_Scaled,2,,ro,,M-104 Onyx Pump Discharge PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pdt_108a_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108A.AH,,,ro,,Sock Filter High Differential PSI,none,,,,,,,,,,,,,0,,1,,,,,,, +pdt_108a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108A.AHH,,,ro,,Sock Filter High High Differential PSI,none,,,,,,,,,,,,,0,,1,,,,,,, +pdt_108b_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108B.AH,,,ro,,Cartrige Filter #1 High Differential PSI,none,,,,,,,,,,,,,0,,1,,,,,,, +pdt_108b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108B.AHH,,,ro,,Cartrige Filter #1 High High Differential PSI,none,,,,,,,,,,,,,0,,1,,,,,,, +pdt_108b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PDT_108B.AI_Scaled,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +pdt_108c_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108C.AH,,,ro,,Cartrige Filter #2 High Differential PSI,none,,,,,,,,,,,,,0,,1,,,,,,, +pdt_108c_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PDT_108C.AHH,,,ro,,Cartrige Filter #2 High High Differential PSI,none,,,,,,,,,,,,,0,,1,,,,,,, +pdt_108c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PDT_108C.AI_Scaled,2,,ro,,Differential PSI Across Cartrige Filter #2,none,,,,,,,,,,,,,,,1,,,,,,, +pit_050_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_050.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_050_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_050.Scaled_Out,2,,ro,,PIT-104A Onyx Pump Suction PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_065_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_065.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_065_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_065.Scaled_Out,2,,ro,,PIT_104D Onyx Pump Discharge PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_100_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_100.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_100_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_100.Scaled_Out,2,,ro,,M-105 Skim Pump Discharge PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_100a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_100A.Scaled_Out,2,,ro,psi,Inlet PSI External To ACW,none,,,,,,,,,,,,,,,1,,,,,,, +pit_101a_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101A.AH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_101a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_101a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_101A.Scaled_Out,2,,ro,psi,"Inlet PSI Internal To ACW, Before SDV-101A",none,,,,,,,,,,,,,,,1,,,,,,, +pit_101a_transmitter_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101A.XFail,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_101b_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_P101B.AH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_101b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_101b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_101B.Scaled_Out,2,,ro,psi,"Inlet PSI Internal To ACW, After SDV-101A",none,,,,,,,,,,,,,,,1,,,,,,, +pit_101b_transmitter_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_101B.XFail,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_101c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_101C.Scaled_Out,2,,ro,psi,Reject Stream PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_102_hi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_102.AH,,,ro,,Indicated if PIT102 is in Hi alarm state,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_102_hi_spt,ek_facility,default,periodic,,BIT,,,,0,PIT_102.AH_SP,,,ro,,"PIT_102 Hi Alarm Setpoint, If needed",none,,,,,,,,,,,,,0,,1,,,,,,, +pit_102_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_102.AHH,,,ro,,Indicates if PIT102 is in HiHi alarm state,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_102_hihi_spt,ek_facility,default,periodic,,BIT,,,,0,PIT_102.AHH_SP,,,ro,,PIT_102 HiHi Alarm Setpoint If Needed,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_102_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_102.Scaled_Out,2,,ro,,Inlet PSI To Reaction Tank,none,,,,,,,,,,,,,,,1,,,,,,, +pit_106a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_106A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_106a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_106A.Scaled_Out,2,,ro,,M-106A Discharge PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_106b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_106B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_106b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_106B.Scaled_Out,2,,ro,,M-106B Discharge PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_106c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_106C.Scaled_Out,2,,ro,,"Reject Stream Discharge Header PSI, Pre SDV 106",none,,,,,,,,,,,,,,,1,,,,,,, +pit_106d_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_106D.Scaled_Out,2,,ro,,"Reject Stream Discharge Header PSI, Post SDV106",none,,,,,,,,,,,,,,,1,,,,,,, +pit_107a_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_107A.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_107a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_107A.Scaled_Out,2,,ro,,M107A & M107B Suction Header PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_107b_lolo_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_107B.ALL,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_107b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_107B.Scaled_Out,2,,ro,,M107A Discharge PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_107c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_107C.Scaled_Out,2,,ro,,M107A and M107B Discharge Flow Line PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_107d_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_107D.Scaled_Out,2,,ro,,M107B Discharge PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_108_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108G.Scaled_Out,2,,ro,,Post Filter Flow Line PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_108a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_108A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_108a_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108A.Scaled_Out,2,,ro,,Pre Sock Filter PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_108b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_108B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_108b_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108B.Scaled_Out,2,,ro,,Post Sock Filter PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_108c_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_108C.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_108c_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108C.Scaled_Out,2,,ro,,Pre Cartrige Filter #1 PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_108d_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108D.Scaled_Out,2,,ro,,Post Cartrige Filter #1 PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_108e_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108E.Scaled_Out,2,,ro,,Pre Cartrige Filter #2 PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_108f_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_108F.Scaled_Out,2,,ro,,Post Cartrige Filter #2 PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_108g_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_108G.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_110_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_110.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_110_pressure,ek_facility,default,periodic,,FLOAT,,,,,PIT_110.Scaled_Out,2,,ro,,PIT_103 ACW Vapor Space Pressure,none,,,,,,,,,,,,,,,1,,,,,,, +pit_111a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_111A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_111a_n2,ek_facility,default,periodic,,FLOAT,,,,,PIT_111A.Scaled_Out,2,,ro,,N2 System PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_111b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_111B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_111b_n2,ek_facility,default,periodic,,FLOAT,,,,,PIT_111B.Scaled_Out,2,,ro,,Inlet Skid N2 PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pit_111c_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,PIT_111C.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pit_111c_n2,ek_facility,default,periodic,,FLOAT,,,,,PIT_111C.Scaled_Out,2,,ro,,N2 Outlet Skid PSI,none,,,,,,,,,,,,,,,1,,,,,,, +pnl_esd_alm,ek_facility,default,periodic,,BIT,,,,0,PNL_ESD.ALARM,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +psd_alm,ek_facility,default,periodic,,BIT,,,,0,CMD_PSD,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +rmt_sd_alm,ek_facility,default,periodic,,BIT,,,,0,RMT_SD.ALARM,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +scada_stop_cmd,ek_facility,default,periodic,,BIT,,,,0,CMD_Scada_Stop,,,rw,,,none,,,,,,,,,,,,,0,,1,,,,,,, +sdv_101a,ek_facility,default,periodic,,INT,,1,7,0,Local:12:I.Data,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +sdv106_closed,ek_facility,default,periodic,,BIT,,,,0,SDV106_Closed_FBK,,,ro,,SDV106 Closed Feedback Status,none,,,,,,,,,,,,,0,,1,,,,,,, +sdv106_open,ek_facility,default,periodic,,BIT,,,,0,SDV106_Open_FBK,,,ro,,SDV106 Open Feedback Status,none,,,,,,,,,,,,,0,,1,,,,,,, +skim_total_barrels,ek_facility,default,periodic,,FLOAT,,,,,SKIM_TOTAL_BARRELS,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +spt_chemical_manual_rate,ek_facility,default,periodic,,FLOAT,,,,,SPT_Chemical_Manual_Rate,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +xy_100_run,ek_facility,default,periodic,,BIT,,,,0,XY_100,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +xy_200_run,ek_facility,default,periodic,,BIT,,,,0,XY_200,,,ro,,M-105 Run Command,none,,,,,,,,,,,,,0,,1,,,,,,, +zae_111a_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,ZAE_111A.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +zae_111b_hihi_alm,ek_facility,default,periodic,,BIT,,,,0,ZAE_111B.AHH,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +inlet_ph_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Inlet_PH_Temp,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +inlet_turbidity_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Inlet_Turbidity_Temp,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +outlet_orp_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Outlet_ORP_Temp,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +outlet_turbidity_temp,ek_facility,default,periodic,,FLOAT,,,,,Val_Outlet_Turbidity_Temp,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, \ No newline at end of file diff --git a/Pub_Sub/fk_transfer/thingsboard/fk_transfer_v2.csv b/Pub_Sub/fk_transfer/thingsboard/fk_transfer_v2.csv new file mode 100644 index 0000000..d0f8e68 --- /dev/null +++ b/Pub_Sub/fk_transfer/thingsboard/fk_transfer_v2.csv @@ -0,0 +1,27 @@ +MeasuringPointName,ControllerName,GroupName,UploadType,DeadZonePercent,DataType,ArrayIndex,EnableBit,BitIndex,reverseBit,Address,Decimal,Len,ReadWrite,Unit,Description,Transform Type,MaxValue,MinValue,MaxScale,MinScale,Gain,Offset,startBit,endBit,Pt,Ct,Mapping_table,TransDecimal,bitMap,msecSample,storageLwTSDB,DataEndianReverse,ReadOffset,ReadLength,WriteOffset,WriteLength,DataParseMethod,BitId +discharge_in,AA_Transfer,default,periodic,,FLOAT,,,,,DisPSI_In,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +discharge_out,AA_Transfer,default,periodic,,FLOAT,,,,,DisPSI_Out,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +discharge_hi_spt,AA_Transfer,default,periodic,,FLOAT,,,,,AlarmSpt_DisPSI_Hi,2,,rw,,,none,,,,,,,,,,,,,,,1,,,,,,, +discharge_lo_spt,AA_Transfer,default,periodic,,FLOAT,,,,,AlarmSpt_DisPSI_Lo,2,,rw,,,none,,,,,,,,,,,,,,,1,,,,,,, +discharge_hi_alm,AA_Transfer,default,periodic,,BIT,,,,0,Alarm_DisPSI_Hi,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +discharge_lo_alm,AA_Transfer,default,periodic,,BIT,,,,0,Alarm_DisPSI_Lo,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +alarm_enable_cmd,AA_Transfer,default,periodic,,INT,,0,,,Alarm_Enable,,,rw,,,none,,,,,,,,,,,,,,,1,,,,,,, +aa_flow_rate,AA_Transfer,default,periodic,,FLOAT,,,,,Flow_Rate_AA,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +aa_totalizer_1,AA_Transfer,default,periodic,,FLOAT,,,,,Totalizer_1_AA,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +flow_rate_hi_spt,AA_Transfer,default,periodic,,FLOAT,,,,,AlarmSpt_FlowRate_Hi,2,,rw,,,none,,,,,,,,,,,,,,,1,,,,,,, +flow_rate_lo_spt,AA_Transfer,default,periodic,,FLOAT,,,,,AlarmSpt_FlowRate_Lo,2,,rw,,,none,,,,,,,,,,,,,,,1,,,,,,, +flow_rate_hi_alm,AA_Transfer,default,periodic,,BIT,,,,0,Alarm_FlowRate_Hi,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +flow_rate_lo_alm,AA_Transfer,default,periodic,,BIT,,,,0,Alarm_FlowRate_Lo,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pond_level,AA_Transfer,default,periodic,,FLOAT,,,,,PondLvl,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +pond_level_hi_spt,AA_Transfer,default,periodic,,FLOAT,,,,,AlarmSpt_PondLvl_Hi,2,,rw,,,none,,,,,,,,,,,,,,,1,,,,,,, +pond_level_lo_spt,AA_Transfer,default,periodic,,FLOAT,,,,,AlarmSpt_PondLvl_Lo,2,,rw,,,none,,,,,,,,,,,,,,,1,,,,,,, +pond_level_hi_alm,AA_Transfer,default,periodic,,BIT,,,,0,Alarm_PondLvl_Hi,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +pond_level_lo_alm,AA_Transfer,default,periodic,,BIT,,,,0,Alarm_Pondlvl_Lo,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +power_loss_120v_alm,AA_Transfer,default,periodic,,BIT,,,,0,Alarm_PowerLoss_120V,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +vfd_ready,AA_Transfer,default,periodic,,BIT,,,,0,VFD_Ready,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +vfd_warning,AA_Transfer,default,periodic,,BIT,,,,0,VFD_Warning,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +vfd_faulted,AA_Transfer,default,periodic,,BIT,,,,0,VFD_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +vfd_running,AA_Transfer,default,periodic,,BIT,,,,0,VFD_Running,,,ro,,,none,,,,,,,,,,,,,0,,1,,,,,,, +vfd_frequency_reference,AA_Transfer,default,periodic,,FLOAT,,,,,VFD_Freq_Ref,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +vfd_frequency_output,AA_Transfer,default,periodic,,FLOAT,,,,,VFD_Output_Freq,2,,ro,,,none,,,,,,,,,,,,,,,1,,,,,,, +vfd_start_stop,AA_Transfer,default,periodic,,BIT,,,,0,VFD_Start_Stop_Pushbutton,,,rw,,,none,,,,,,,,,,,,,0,,1,,,,,,, \ No newline at end of file diff --git a/Pub_Sub/gateway/thingsboard/aa-pond-gateway.cfg b/Pub_Sub/gateway/thingsboard/aa-pond-gateway.cfg new file mode 100644 index 0000000..a6c6332 --- /dev/null +++ b/Pub_Sub/gateway/thingsboard/aa-pond-gateway.cfg @@ -0,0 +1,1067 @@ +{ + "controllers": [ + { + "enable": 1, + "protocol": "AllenBradley MicroCip", + "name": "AA_Pond", + "samplePeriod": 10, + "desc": "", + "expired": 10000, + "args": { + "slot": 0, + "connectTimeOut": 10000 + }, + "enableDebug": 0, + "enablePerOnchange": 0, + "endpoint": "192.168.1.12:44818" + }, + { + "enable": 1, + "protocol": "EtherNet/IP", + "name": "AA_Transfer", + "samplePeriod": 10, + "desc": "", + "expired": 10000, + "args": { + "connectTimeOut": 30000, + "slot": 0 + }, + "enableDebug": 0, + "enablePerOnchange": 0, + "endpoint": "192.168.1.10:44818" + } + ], + "measures": [ + { + "name": "pond_1_level", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_1_Lev", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_1_total_bbls", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_1_Total_Barrels", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_1_hi_alm", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Pond_1_Hi_Alarm", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0 + }, + { + "name": "pond_1_hi_spt", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_1_Hi_Setpoint", + "decimal": 2, + "len": 1, + "readWrite": "rw", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_1_hi_clr_spt", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_1_Hi_Clr_Setpoint", + "decimal": 2, + "len": 1, + "readWrite": "rw", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_1_lo_alm", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Pond_1_Lo_Alarm", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0 + }, + { + "name": "pond_1_lo_spt", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_1_Lo_Setpoint", + "decimal": 2, + "len": 1, + "readWrite": "rw", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_1_lo_clr_spt", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_1_Lo_Clr_Setpoint", + "decimal": 2, + "len": 1, + "readWrite": "rw", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_2_level", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_2_Lev", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_2_total_bbls", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_2_Total_Barrels", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_2_hi_alm", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Pond_2_Hi_Alarm", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0 + }, + { + "name": "pond_2_hi_spt", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_2_Hi_Setpoint", + "decimal": 2, + "len": 1, + "readWrite": "rw", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_2_hi_clr_spt", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_2_Hi_Clr_Setpoint", + "decimal": 2, + "len": 1, + "readWrite": "rw", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "1.0", + "offset": "0.0", + "storageLwTSDB": 0 + }, + { + "name": "pond_2_lo_alm", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Pond_2_Lo_Alarm", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0 + }, + { + "name": "pond_2_lo_spt", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_2_Lo_Setpoint", + "decimal": 2, + "len": 1, + "readWrite": "rw", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "pond_2_lo_clr_spt", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Pond_2_Lo_Clr_Setpoint", + "decimal": 2, + "len": 1, + "readWrite": "rw", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "storageLwTSDB": 0 + }, + { + "name": "air_comp_low_alm", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "AL0_Air_Comp_Low", + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "storageLwTSDB": 0, + "reverseBit": 0, + "bitMap": 0 + }, + { + "name": "air_comp_val", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Val_Air_Comp_Out", + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "storageLwTSDB": 0, + "decimal": 2 + }, + { + "name": "air_comp_spt", + "ctrlName": "AA_Pond", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "SPT_Low_Air_PSI", + "readWrite": "rw", + "unit": "", + "desc": "", + "transformType": 0, + "storageLwTSDB": 0, + "decimal": 2 + }, + { + "name": "discharge_in", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "DisPSI_In", + "decimal": 2, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "discharge_out", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "DisPSI_Out", + "decimal": 2, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "discharge_hi_spt", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AlarmSpt_DisPSI_Hi", + "decimal": 2, + "readWrite": "rw", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "discharge_lo_spt", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AlarmSpt_DisPSI_Lo", + "decimal": 2, + "readWrite": "rw", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "discharge_hi_alm", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Alarm_DisPSI_Hi", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "discharge_lo_alm", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Alarm_DisPSI_Lo", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "alarm_enable_cmd", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "INT", + "addr": "Alarm_Enable", + "enableBit": 0, + "readWrite": "rw", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "aa_flow_rate", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Flow_Rate_AA", + "decimal": 2, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "aa_totalizer_1", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Totalizer_1_AA", + "decimal": 2, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "flow_rate_hi_spt", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AlarmSpt_FlowRate_Hi", + "decimal": 2, + "readWrite": "rw", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "flow_rate_lo_spt", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AlarmSpt_FlowRate_Lo", + "decimal": 2, + "readWrite": "rw", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "flow_rate_hi_alm", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Alarm_FlowRate_Hi", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "flow_rate_lo_alm", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Alarm_FlowRate_Lo", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "pond_level", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "PondLvl", + "decimal": 2, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "pond_level_hi_spt", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AlarmSpt_PondLvl_Hi", + "decimal": 2, + "readWrite": "rw", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "pond_level_lo_spt", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AlarmSpt_PondLvl_Lo", + "decimal": 2, + "readWrite": "rw", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "pond_level_hi_alm", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Alarm_PondLvl_Hi", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "pond_level_lo_alm", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Alarm_Pondlvl_Lo", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "power_loss_120v_alm", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "Alarm_PowerLoss_120V", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "vfd_ready", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "VFD_Ready", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "vfd_warning", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "VFD_Warning", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "vfd_faulted", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "VFD_Faulted", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "vfd_running", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "VFD_Running", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "vfd_frequency_reference", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "VFD_Freq_Ref", + "decimal": 2, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "vfd_frequency_output", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "VFD_Output_Freq", + "decimal": 2, + "readWrite": "ro", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + }, + { + "name": "vfd_start_stop", + "ctrlName": "AA_Transfer", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "VFD_Start_Stop_Pushbutton", + "bitMap": 0, + "reverseBit": 0, + "readWrite": "rw", + "unit": "", + "desc": "", + "storageLwTSDB": 1, + "transformType": 0 + } + ], + "alarmLables": [ + "default" + ], + "alarms": [ + { + "name": "air_comp_low_alm", + "ctrlName": "AA_Pond", + "alarmLevel": 5, + "content": "Alarm Triggered", + "alarmLable": "default", + "measureName": "air_comp_low_alm", + "cond1": { + "op": "eq", + "value": "1" + }, + "cond2": { + "op": "eq", + "value": "" + }, + "condOp": "none" + } + ], + "groups": [ + { + "name": "default", + "uploadInterval": 600, + "reference": 16, + "LwTSDBSize": 1000, + "strategy": 1, + "historyDataPath": "/var/user/data/dbhome/device_supervisor/LwTSDB", + "enablePerOnchange": 0 + } + ], + "misc": { + "maxAlarmRecordSz": 2000, + "logLvl": "INFO", + "coms": [ + { + "name": "rs232", + "baud": 9600, + "bits": 8, + "stopbits": 1, + "parityChk": "n" + }, + { + "name": "rs485", + "baud": 9600, + "bits": 8, + "stopbits": 1, + "parityChk": "n" + } + ], + "cachePath": "/var/user/data/dbhome/device_supervisor/offlinedata", + "cacheSize": 10000, + "debugLogPath": "/var/user/data/dbhome/device_supervisor/debugLog", + "debugLogSize": 2000 + }, + "clouds": [ + { + "cacheSize": 10000, + "enable": 1, + "name": "default", + "type": "Standard MQTT", + "args": { + "host": "hp.henrypump.cloud", + "port": 1883, + "clientId": "faskens-aa-gateway", + "auth": 1, + "tls": 0, + "cleanSession": 1, + "mqttVersion": "v3.1.1", + "keepalive": 60, + "key": "", + "cert": "", + "rootCA": "", + "verifyServer": 0, + "verifyClient": 0, + "username": "c3r3ci9gm80yp29kmn7s", + "passwd": "", + "authType": 1, + "willQos": 0, + "willRetain": 0, + "willTopic": "", + "willPayload": "", + "tlsAuth": "caSelfSigned" + }, + "uploadRules": [] + } + ], + "quickfaas": { + "genericFuncs": [], + "uploadFuncs": [ + { + "name": "sendData", + "trigger": "measure_event", + "topic": "v1/gateway/telemetry", + "qos": 2, + "groups": [ + "default" + ], + "funcName": "sendData", + "script": "# Enter your python code.\nimport json, os, time\nfrom datetime import datetime as dt\nfrom common.Logger import logger\nfrom quickfaas.remotebus import publish\nfrom quickfaas.global_dict import get as get_params\nfrom quickfaas.global_dict import _set_global_args\n\ndef chunk_payload(payload, chunk_size=20, is_attributes_payload=False):\n if is_attributes_payload:\n # For attributes payload, chunk the controllers\n controllers = list(payload.items())\n for i in range(0, len(controllers), chunk_size):\n yield dict(controllers[i:i + chunk_size])\n else:\n # For data payload, chunk the values within each controller\n for controller, data in payload.items():\n for entry in data:\n ts = entry['ts']\n values = entry['values']\n chunked_values = list(values.items())\n for i in range(0, len(chunked_values), chunk_size):\n yield {\n controller:[\n {\n \"ts\": ts,\n \"values\": dict(chunked_values[i:i + chunk_size])}\n ]\n }\n\ndef sendData(message):\n #logger.info(message)\n # Extract measures and group by ctrlName\n grouped_data = {}\n grouped_attributes = {}\n now = (round(dt.timestamp(dt.now())/600)*600)*1000\n resetPayload = {\"ts\": \"\", \"values\": {}}\n dayReset, weekReset, monthReset, yearReset = False, False, False, False\n for measure in message['measures']:\n ctrlName = \" \".join(measure['ctrlName'].split(\"_\"))\n name = measure['name']\n value = measure['value']\n health = measure['health']\n #Add controller for telemetry if it doesn't exist\n if ctrlName not in grouped_data:\n grouped_data[ctrlName] = {}\n #Add controller for attributes if it doesn't exist\n if ctrlName not in grouped_attributes:\n grouped_attributes[ctrlName] = {}\n #Add data to temp payload if datapoint health is good\n if health:\n if \"_spt\" in name:\n grouped_attributes[ctrlName][name] = value\n elif \"totalizer_1\" in name:\n grouped_data[ctrlName][\"day_volume\"], dayReset = totalizeDay(value)\n grouped_data[ctrlName][\"week_volume\"], weekReset = totalizeWeek(value)\n grouped_data[ctrlName][\"month_volume\"], monthReset = totalizeMonth(value)\n grouped_data[ctrlName][\"year_volume\"], yearReset = totalizeYear(value)\n elif name == \"alarm_enable_cmd\":\n gatewayData = {\"ts\": now, \"values\": {name: value, \"connected\": True}}\n grouped_data[ctrlName][name] = value\n grouped_attributes[ctrlName][\"latestReportTime\"] = now\n #logger.info(grouped_data)\n # Transform the grouped data to desired structure\n payload = {}\n\n for key, value in grouped_data.items():\n if value:\n payload[key] = [{\"ts\": now ,\"values\": value}]\n attributes_payload = {}\n for key, value in grouped_attributes.items():\n if value:\n attributes_payload[key] = value\n\n if dayReset:\n logger.info(\"MADE IT TO DAY RESET\")\n resetPayload[\"values\"][\"yesterday_volume\"] = payload[\"values\"][\"day_volume\"]\n resetPayload[\"values\"][\"day_volume\"] = 0\n if weekReset:\n resetPayload[\"values\"][\"last_week_volume\"] = payload[\"values\"][\"week_volume\"]\n resetPayload[\"values\"][\"week_volume\"] = 0\n if monthReset:\n resetPayload[\"values\"][\"last_month_volume\"] = payload[\"values\"][\"month_volume\"]\n resetPayload[\"values\"][\"month_volume\"] = 0\n if yearReset:\n resetPayload[\"values\"][\"last_year_volume\"] = payload[\"values\"][\"year_volume\"]\n resetPayload[\"values\"][\"year_volume\"] = 0\n \n if resetPayload[\"values\"]:\n logger.info(\"MADE IT TO APPEND RESET\")\n payload[\"AA Transfer\"].append({\"ts\": now + 1000 ,\"values\": resetPayload[\"values\"]})\n\n logger.info(json.dumps(payload, indent=4))\n #logger.info(json.dumps(payload, indent=4))\n #logger.debug(payload)\n #publish(__topic__, json.dumps(payload), __qos__,cloud_name=\"default\")\n publish(\"v1/gateway/attributes\", json.dumps(attributes_payload), __qos__,cloud_name=\"default\")\n publish(\"v1/devices/me/telemetry\", json.dumps(gatewayData), __qos__, cloud_name=\"default\")\n \n for chunk in chunk_payload(payload=payload):\n publish(__topic__, json.dumps(chunk), __qos__, cloud_name=\"default\")\n #logger.info(json.dumps(chunk, indent=4))\n time.sleep(2)\n \"\"\" \n for chunk in chunk_payload(payload=attributes_payload, is_attributes_payload=True):\n publish(\"v1/gateway/attributes\", json.dumps(chunk), __qos__, cloud_name=\"default\")\n logger.info(json.dumps(chunk, indent=4))\n time.sleep(2)\n \"\"\"\n\n\ndef initialize_totalizers():\n return {\n \"day\": 0,\n \"week\": 0,\n \"month\": 0,\n \"year\": 0,\n \"lifetime\": 0,\n \"dayHolding\": 0,\n \"weekHolding\": 0,\n \"monthHolding\": 0,\n \"yearHolding\": 0\n }\n\ndef getTotalizers(file_path=\"/var/user/files/totalizers.json\"):\n \"\"\"\n Retrieves totalizer data from a JSON file.\n\n :param file_path: Path to the JSON file storing totalizer data.\n :return: Dictionary containing totalizer values.\n \"\"\"\n try:\n with open(file_path, \"r\") as t:\n totalizers = json.load(t)\n if not totalizers or not isinstance(totalizers, dict):\n logger.info(\"Invalid data format in the file. Initializing totalizers.\")\n totalizers = initialize_totalizers()\n except FileNotFoundError:\n logger.info(\"File not found. Initializing totalizers.\")\n totalizers = initialize_totalizers()\n except json.JSONDecodeError:\n timestamp = dt.now().strftime(\"%Y%m%d_%H%M%S\")\n # Split the file path and insert the timestamp before the extension\n file_name, file_extension = os.path.splitext(file_path)\n backup_file_path = f\"{file_name}_{timestamp}{file_extension}\"\n shutil.copyfile(file_path, backup_file_path)\n logger.error(f\"Error decoding JSON. A backup of the file is created at {backup_file_path}. Initializing totalizers.\")\n totalizers = initialize_totalizers()\n return totalizers\n\ndef saveTotalizers(totalizers, file_path=\"/var/user/files/totalizers.json\"):\n \"\"\"\n Saves totalizer data to a JSON file.\n\n :param totalizers: Dictionary containing totalizer values to be saved.\n :param file_path: Path to the JSON file where totalizer data will be saved.\n \"\"\"\n try:\n with open(file_path, \"w\") as t:\n json.dump(totalizers, t)\n except (IOError, OSError, json.JSONEncodeError) as e:\n logger.error(f\"Error saving totalizers to {file_path}: {e}\")\n raise # Optionally re-raise the exception if it should be handled by the caller\n\n\ndef totalizeDay(lifetime, max_retries=3, retry_delay=2):\n \"\"\"\n Update and save daily totalizers based on the lifetime value.\n\n :param lifetime: The current lifetime total.\n :param max_retries: Maximum number of save attempts.\n :param retry_delay: Delay in seconds between retries.\n :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails.\n \"\"\"\n totalizers = getTotalizers()\n now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600)\n reset = False\n value = lifetime - totalizers[\"dayHolding\"]\n\n if not int(now.strftime(\"%d\")) == int(totalizers[\"day\"]):\n totalizers[\"dayHolding\"] = lifetime\n totalizers[\"day\"] = int(now.strftime(\"%d\"))\n\n for attempt in range(max_retries):\n try:\n saveTotalizers(totalizers)\n reset = True\n return (value, reset)\n except Exception as e:\n logger.error(f\"Attempt {attempt + 1} failed to save totalizers: {e}\")\n if attempt < max_retries - 1:\n time.sleep(retry_delay)\n else:\n logger.error(\"All attempts to save totalizers failed.\")\n return (None, False)\n\n return (value, reset)\n\ndef totalizeWeek(lifetime, max_retries=3, retry_delay=2):\n \"\"\"\n Update and save weekly totalizers based on the lifetime value.\n\n :param lifetime: The current lifetime total.\n :param max_retries: Maximum number of save attempts.\n :param retry_delay: Delay in seconds between retries.\n :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails.\n \"\"\"\n totalizers = getTotalizers()\n now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600)\n reset = False\n value = lifetime - totalizers[\"weekHolding\"]\n if (not now.strftime(\"%U\") == totalizers[\"week\"] and now.strftime(\"%a\") == \"Sun\") or totalizers[\"week\"] == 0:\n totalizers[\"weekHolding\"] = lifetime\n totalizers[\"week\"] = now.strftime(\"%U\")\n\n for attempt in range(max_retries):\n try:\n saveTotalizers(totalizers)\n reset = True\n return (value, reset)\n except Exception as e:\n logger.error(f\"Attempt {attempt + 1} failed to save totalizers: {e}\")\n if attempt < max_retries - 1:\n time.sleep(retry_delay)\n else:\n logger.error(\"All attempts to save totalizers failed.\")\n return (None, False)\n return (value, reset)\n\ndef totalizeMonth(lifetime, max_retries=3, retry_delay=2):\n \"\"\"\n Update and save monthly totalizers based on the lifetime value.\n\n :param lifetime: The current lifetime total.\n :param max_retries: Maximum number of save attempts.\n :param retry_delay: Delay in seconds between retries.\n :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails.\n \"\"\"\n totalizers = getTotalizers()\n now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600)\n reset = False\n value = lifetime - totalizers[\"monthHolding\"]\n if not int(now.strftime(\"%m\")) == int(totalizers[\"month\"]):\n totalizers[\"monthHolding\"] = lifetime\n totalizers[\"month\"] = now.strftime(\"%m\")\n\n for attempt in range(max_retries):\n try:\n saveTotalizers(totalizers)\n reset = True\n return (value, reset)\n except Exception as e:\n logger.error(f\"Attempt {attempt + 1} failed to save totalizers: {e}\")\n if attempt < max_retries - 1:\n time.sleep(retry_delay)\n else:\n logger.error(\"All attempts to save totalizers failed.\")\n return (None, False)\n\n return (value,reset)\n\ndef totalizeYear(lifetime, max_retries=3, retry_delay=2):\n \"\"\"\n Update and save yearly totalizers based on the lifetime value.\n\n :param lifetime: The current lifetime total.\n :param max_retries: Maximum number of save attempts.\n :param retry_delay: Delay in seconds between retries.\n :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails.\n \"\"\"\n totalizers = getTotalizers()\n now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600)\n reset = False\n value = lifetime - totalizers[\"yearHolding\"]\n if not int(now.strftime(\"%Y\")) == int(totalizers[\"year\"]):\n totalizers[\"yearHolding\"] = lifetime\n totalizers[\"year\"] = now.strftime(\"%Y\")\n\n for attempt in range(max_retries):\n try:\n saveTotalizers(totalizers)\n reset = True\n return (value, reset)\n except Exception as e:\n logger.error(f\"Attempt {attempt + 1} failed to save totalizers: {e}\")\n if attempt < max_retries - 1:\n time.sleep(retry_delay)\n else:\n logger.error(\"All attempts to save totalizers failed.\")\n return (None, False)\n return (value, reset)\n \n", + "cloudName": "default", + "msgType": 0 + } + ], + "downloadFuncs": [ + { + "name": "receiveCommand", + "topic": "v1/devices/me/rpc/request/+", + "qos": 1, + "funcName": "receiveCommand", + "payload_type": "Plaintext", + "script": "import json, time\nfrom datetime import datetime as dt\nfrom quickfaas.measure import recall, write\nfrom quickfaas.remotebus import publish\nfrom common.Logger import logger\n\n# Helper function to split the payload into chunks\ndef chunk_payload(payload, chunk_size=20):\n chunked_values = list(payload[\"values\"].items())\n for i in range(0, len(chunked_values), chunk_size):\n yield {\n \"ts\": payload[\"ts\"],\n \"values\": dict(chunked_values[i:i+chunk_size])\n }\n\ndef sync():\n #get new values and send\n now = round(dt.timestamp(dt.now()))*1000\n topic = \"v1/gateway/telemetry\"\n try:\n data = recall()#json.loads(recall().decode(\"utf-8\"))\n except Exception as e:\n logger.error(e)\n logger.debug(data)\n logger.info(\"SYNCING\")\n grouped_data = {}\n try:\n for controller in data:\n ctrlName = \" \".join(controller['name'].split(\"_\"))\n #logger.info(ctrlName)\n for measure in controller[\"measures\"]:\n #logger.info(measure[\"name\"])\n if ctrlName not in grouped_data:\n grouped_data[ctrlName] = {}\n if measure[\"health\"]:\n #logger.info(f\"Adding Data to {ctrlName}:{measure['name']} -> {measure['value']}\")\n grouped_data[ctrlName][measure[\"name\"]] = measure[\"value\"]\n except Exception as e:\n logger.error(e)\n try:\n #logger.info(json.dumps(grouped_data, indent=4))\n payload = {}\n for key, value in grouped_data.items():\n if value:\n payload[key] = [{\"ts\": now ,\"values\": value}]\n #logger.info(json.dumps(payload, indent=4))\n publish(topic, json.dumps(payload), qos=1,cloud_name=\"default\")\n except Exception as e:\n logger.error(e)\n\ndef writeplctag(value):\n #value in the form {\"measurement\": , \"value\": }\n try:\n #value = json.loads(value.replace(\"'\",'\"'))\n logger.info(value)\n #payload format: [{\"name\": \"advvfdipp\", \"measures\": [{\"name\": \"manualfrequencysetpoint\", \"value\": 49}]}]\n message = [{\"name\": value[\"entityName\"], \"measures\":[{\"name\":value[\"measurement\"], \"value\": value[\"value\"]}]}]\n resp = write(message) \n logger.info(\"RETURN FROM WRITE: {}\".format(resp))\n return True\n except Exception as e:\n logger.error(e)\n return False\n \ndef receiveCommand(topic, payload):\n try:\n logger.debug(topic)\n logger.debug(json.loads(payload))\n p = json.loads(payload)\n command = p[\"method\"]\n commands = {\n \"sync\": sync,\n \"writeplctag\": writeplctag,\n } \n if command == \"setPLCTag\":\n try:\n result = commands[\"writeplctag\"](p[\"params\"])\n logger.debug(result)\n except Exception as e:\n logger.error(e)\n #logger.debug(command)\n ack(topic.split(\"/\")[-1])\n time.sleep(5)\n sync()\n except Exception as e:\n logger.error(e)\n \n\ndef ack(msgid):\n #logger.debug(msgid)\n #logger.debug(mac)\n #logger.debug(name)\n #logger.debug(value)\n publish(\"v1/devices/me/rpc/response/\" + str(msgid), json.dumps({\"msg\": {\"time\": time.time()}, \"metadata\": \"\", \"msgType\": \"\"}), 1, cloud_name=\"default\")\n", + "msgType": 0, + "cloudName": "default", + "trigger": "command_event" + }, + { + "name": "receiveAttributes", + "topic": "v1/devices/me/attributes", + "qos": 1, + "funcName": "receiveAttributes", + "payload_type": "Plaintext", + "script": "import json, time\nfrom datetime import datetime as dt\nfrom quickfaas.measure import recall, write\nfrom quickfaas.remotebus import publish\nfrom common.Logger import logger\n\ndef chunk_payload(payload, chunk_size=20, is_attributes_payload=False):\n if is_attributes_payload:\n # For attributes payload, chunk the controllers\n controllers = list(payload.items())\n for i in range(0, len(controllers), chunk_size):\n yield dict(controllers[i:i + chunk_size])\n else:\n # For data payload, chunk the values within each controller\n for controller, data in payload.items():\n for entry in data:\n ts = entry['ts']\n values = entry['values']\n chunked_values = list(values.items())\n for i in range(0, len(chunked_values), chunk_size):\n yield {\n controller:[\n {\n \"ts\": ts,\n \"values\": dict(chunked_values[i:i + chunk_size])}\n ]\n \n }\n\ndef sync():\n #get new values and send\n now = round(dt.timestamp(dt.now()))*1000\n topic = \"v1/gateway/telemetry\"\n try:\n data = recall()#json.loads(recall().decode(\"utf-8\"))\n except Exception as e:\n logger.error(e)\n logger.debug(data)\n logger.info(\"SYNCING\")\n grouped_data = {}\n try:\n for controller in data:\n ctrlName = \" \".join(controller['name'].split(\"_\"))\n for measure in controller[\"measures\"]:\n if ctrlName not in grouped_data:\n grouped_data[ctrlName] = {}\n if measure[\"health\"]:\n if measure[\"name\"] == \"alarm_enable_cmd\":\n gatewayPayload = {\"ts\": now, \"values\": {measure[\"name\"]: measure[\"value\"]}}\n grouped_data[ctrlName][measure[\"name\"]] = measure[\"value\"]\n except Exception as e:\n logger.error(e)\n try:\n payload = {}\n for key, value in grouped_data.items():\n if value:\n payload[key] = [{\"ts\": now ,\"values\": value}]\n publish(\"v1/devices/me/telemetry\", json.dumps(gatewayPayload), qos=1,cloud_name=\"default\")\n \n for chunk in chunk_payload(payload=payload):\n publish(topic, json.dumps(chunk), qos=1, cloud_name=\"default\")\n logger.info(json.dumps(chunk, indent=4))\n time.sleep(2)\n \n except Exception as e:\n logger.error(e)\n\ndef writeplctag(value):\n #value in the form {\"measurement\": , \"value\": }\n try:\n #value = json.loads(value.replace(\"'\",'\"'))\n logger.debug(value)\n #payload format: [{\"name\": \"advvfdipp\", \"measures\": [{\"name\": \"manualfrequencysetpoint\", \"value\": 49}]}]\n message = [{\"name\": \"AA_Transfer\", \"measures\":[{\"name\":value[\"measurement\"], \"value\": value[\"value\"]}]}]\n resp = write(message) \n logger.debug(\"RETURN FROM WRITE: {}\".format(resp))\n return True\n except Exception as e:\n logger.debug(e)\n return False\n \ndef receiveAttributes(topic, payload):\n try:\n logger.debug(topic)\n logger.debug(json.loads(payload))\n p = json.loads(payload)\n for key, value in p.items():\n try:\n result = writeplctag({\"measurement\":key, \"value\":value})\n logger.debug(result)\n except Exception as e:\n logger.error(e)\n #logger.debug(command)\n sync()\n except Exception as e:\n logger.debug(e)\n \n\n", + "msgType": 0, + "cloudName": "default", + "trigger": "command_event" + } + ] + }, + "labels": [ + { + "key": "SN", + "value": "GF5022311031664" + }, + { + "key": "MAC", + "value": "00:18:05:28:4a:40" + } + ], + "modbusSlave": { + "enable": 0, + "protocol": "Modbus-TCP", + "port": 502, + "slaveAddr": 1, + "int16Ord": "ab", + "int32Ord": "abcd", + "float32Ord": "abcd", + "maxConnection": 5, + "mapping_table": [] + }, + "modbusRTUSlave": { + "enable": 0, + "protocol": "Modbus-RTU", + "coms": "rs485", + "slaveAddr": 1, + "int16Ord": "ab", + "int32Ord": "abcd", + "float32Ord": "abcd", + "mapping_table": [] + }, + "iec104Server": { + "enable": 0, + "cotSize": 2, + "port": 2404, + "serverList": [ + { + "asduAddr": 1 + } + ], + "kValue": 12, + "wValue": 8, + "t0": 30, + "t1": 15, + "t2": 10, + "t3": 20, + "maximumLink": 5, + "timeSet": 1, + "byteOrder": "abcd", + "mapping_table": [] + }, + "iec101Server": { + "enable": 0, + "coms": "rs485", + "mode": "UnBalance", + "linkLen": 2, + "linkAddr": 1, + "asduLen": 2, + "ioaLen": 3, + "cotLen": 2, + "serverList": [ + { + "asduAddr": 1 + } + ], + "linkTimeOut": 2000, + "timeSet": 1, + "idleTimeOut": 10000, + "byteOrder": "abcd", + "mapping_table": { + "YX": [], + "YC": [], + "YK": [] + } + }, + "iec104Client": { + "enable": 0, + "connectType": 2, + "serverAddr": "ipower.inhandcloud.cn", + "serverPort": 2404, + "communicationCode": "", + "protocol": 1, + "asduAddr": 1, + "tls": 0, + "mapping_table": { + "YX": [], + "YC": [], + "YK": [] + } + }, + "opcuaServer": { + "enable": 0, + "port": 4840, + "maximumLink": 5, + "securityMode": 0, + "identifierType": "String", + "certificate": "None", + "privateKey": "None", + "pubsub": 0, + "mapping_table": [] + }, + "sl651Slave": { + "enable": 0, + "centerAaddr": 1, + "remoteAddr": "", + "addrCode": "", + "password": "", + "platform_list": [], + "mapping_table": [] + }, + "hj212Client": { + "enable": 0, + "platform_list": [], + "block_list": [], + "mapping_table": [] + }, + "southMetadata": {}, + "bindMetadata": { + "version": "", + "timestamp": "" + }, + "bindConfig": { + "enable": 0, + "bind": { + "modelId": "", + "modelName": "", + "srcId": "", + "srcName": "", + "devId": "", + "devName": "" + }, + "varGroups": [], + "variables": [], + "alerts": [] + }, + "templates": {}, + "version": "2.7.1" +} \ No newline at end of file diff --git a/Pub_Sub/gateway/thingsboard/pub/aa-pond.py b/Pub_Sub/gateway/thingsboard/pub/aa-pond.py new file mode 100644 index 0000000..6b9cceb --- /dev/null +++ b/Pub_Sub/gateway/thingsboard/pub/aa-pond.py @@ -0,0 +1,292 @@ +# Enter your python code. +import json, os, time +from datetime import datetime as dt +from common.Logger import logger +from quickfaas.remotebus import publish +from quickfaas.global_dict import get as get_params +from quickfaas.global_dict import _set_global_args + +def chunk_payload(payload, chunk_size=20, is_attributes_payload=False): + if is_attributes_payload: + # For attributes payload, chunk the controllers + controllers = list(payload.items()) + for i in range(0, len(controllers), chunk_size): + yield dict(controllers[i:i + chunk_size]) + else: + # For data payload, chunk the values within each controller + for controller, data in payload.items(): + for entry in data: + ts = entry['ts'] + values = entry['values'] + chunked_values = list(values.items()) + for i in range(0, len(chunked_values), chunk_size): + yield { + controller:[ + { + "ts": ts, + "values": dict(chunked_values[i:i + chunk_size])} + ] + } + +def sendData(message): + #logger.info(message) + # Extract measures and group by ctrlName + grouped_data = {} + grouped_attributes = {} + now = (round(dt.timestamp(dt.now())/600)*600)*1000 + resetPayload = {"ts": "", "values": {}} + dayReset, weekReset, monthReset, yearReset = False, False, False, False + for measure in message['measures']: + ctrlName = " ".join(measure['ctrlName'].split("_")) + name = measure['name'] + value = measure['value'] + health = measure['health'] + #Add controller for telemetry if it doesn't exist + if ctrlName not in grouped_data: + grouped_data[ctrlName] = {} + #Add controller for attributes if it doesn't exist + if ctrlName not in grouped_attributes: + grouped_attributes[ctrlName] = {} + #Add data to temp payload if datapoint health is good + if health: + if "_spt" in name: + grouped_attributes[ctrlName][name] = value + elif "totalizer_1" in name: + grouped_data[ctrlName]["day_volume"], dayReset = totalizeDay(value) + grouped_data[ctrlName]["week_volume"], weekReset = totalizeWeek(value) + grouped_data[ctrlName]["month_volume"], monthReset = totalizeMonth(value) + grouped_data[ctrlName]["year_volume"], yearReset = totalizeYear(value) + elif name == "alarm_enable_cmd": + gatewayData = {"ts": now, "values": {name: value, "connected": True}} + grouped_data[ctrlName][name] = value + grouped_attributes[ctrlName]["latestReportTime"] = now + #logger.info(grouped_data) + # Transform the grouped data to desired structure + payload = {} + + for key, value in grouped_data.items(): + if value: + payload[key] = [{"ts": now ,"values": value}] + attributes_payload = {} + for key, value in grouped_attributes.items(): + if value: + attributes_payload[key] = value + + if dayReset: + logger.info("MADE IT TO DAY RESET") + resetPayload["values"]["yesterday_volume"] = payload["values"]["day_volume"] + resetPayload["values"]["day_volume"] = 0 + if weekReset: + resetPayload["values"]["last_week_volume"] = payload["values"]["week_volume"] + resetPayload["values"]["week_volume"] = 0 + if monthReset: + resetPayload["values"]["last_month_volume"] = payload["values"]["month_volume"] + resetPayload["values"]["month_volume"] = 0 + if yearReset: + resetPayload["values"]["last_year_volume"] = payload["values"]["year_volume"] + resetPayload["values"]["year_volume"] = 0 + + if resetPayload["values"]: + logger.info("MADE IT TO APPEND RESET") + payload["AA Transfer"].append({"ts": now + 1000 ,"values": resetPayload["values"]}) + + logger.info(json.dumps(payload, indent=4)) + #logger.info(json.dumps(payload, indent=4)) + #logger.debug(payload) + #publish(__topic__, json.dumps(payload), __qos__,cloud_name="default") + publish("v1/gateway/attributes", json.dumps(attributes_payload), __qos__,cloud_name="default") + publish("v1/devices/me/telemetry", json.dumps(gatewayData), __qos__, cloud_name="default") + + for chunk in chunk_payload(payload=payload): + publish(__topic__, json.dumps(chunk), __qos__, cloud_name="default") + #logger.info(json.dumps(chunk, indent=4)) + time.sleep(2) + """ + for chunk in chunk_payload(payload=attributes_payload, is_attributes_payload=True): + publish("v1/gateway/attributes", json.dumps(chunk), __qos__, cloud_name="default") + logger.info(json.dumps(chunk, indent=4)) + time.sleep(2) + """ + + +def initialize_totalizers(): + return { + "day": 0, + "week": 0, + "month": 0, + "year": 0, + "lifetime": 0, + "dayHolding": 0, + "weekHolding": 0, + "monthHolding": 0, + "yearHolding": 0 + } + +def getTotalizers(file_path="/var/user/files/totalizers.json"): + """ + Retrieves totalizer data from a JSON file. + + :param file_path: Path to the JSON file storing totalizer data. + :return: Dictionary containing totalizer values. + """ + try: + with open(file_path, "r") as t: + totalizers = json.load(t) + if not totalizers or not isinstance(totalizers, dict): + logger.info("Invalid data format in the file. Initializing totalizers.") + totalizers = initialize_totalizers() + except FileNotFoundError: + logger.info("File not found. Initializing totalizers.") + totalizers = initialize_totalizers() + except json.JSONDecodeError: + timestamp = dt.now().strftime("%Y%m%d_%H%M%S") + # Split the file path and insert the timestamp before the extension + file_name, file_extension = os.path.splitext(file_path) + backup_file_path = f"{file_name}_{timestamp}{file_extension}" + shutil.copyfile(file_path, backup_file_path) + logger.error(f"Error decoding JSON. A backup of the file is created at {backup_file_path}. Initializing totalizers.") + totalizers = initialize_totalizers() + return totalizers + +def saveTotalizers(totalizers, file_path="/var/user/files/totalizers.json"): + """ + Saves totalizer data to a JSON file. + + :param totalizers: Dictionary containing totalizer values to be saved. + :param file_path: Path to the JSON file where totalizer data will be saved. + """ + try: + with open(file_path, "w") as t: + json.dump(totalizers, t) + except (IOError, OSError, json.JSONEncodeError) as e: + logger.error(f"Error saving totalizers to {file_path}: {e}") + raise # Optionally re-raise the exception if it should be handled by the caller + + +def totalizeDay(lifetime, max_retries=3, retry_delay=2): + """ + Update and save daily totalizers based on the lifetime value. + + :param lifetime: The current lifetime total. + :param max_retries: Maximum number of save attempts. + :param retry_delay: Delay in seconds between retries. + :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails. + """ + totalizers = getTotalizers() + now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600) + reset = False + value = lifetime - totalizers["dayHolding"] + + if not int(now.strftime("%d")) == int(totalizers["day"]): + totalizers["dayHolding"] = lifetime + totalizers["day"] = int(now.strftime("%d")) + + for attempt in range(max_retries): + try: + saveTotalizers(totalizers) + reset = True + return (value, reset) + except Exception as e: + logger.error(f"Attempt {attempt + 1} failed to save totalizers: {e}") + if attempt < max_retries - 1: + time.sleep(retry_delay) + else: + logger.error("All attempts to save totalizers failed.") + return (None, False) + + return (value, reset) + +def totalizeWeek(lifetime, max_retries=3, retry_delay=2): + """ + Update and save weekly totalizers based on the lifetime value. + + :param lifetime: The current lifetime total. + :param max_retries: Maximum number of save attempts. + :param retry_delay: Delay in seconds between retries. + :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails. + """ + totalizers = getTotalizers() + now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600) + reset = False + value = lifetime - totalizers["weekHolding"] + if (not now.strftime("%U") == totalizers["week"] and now.strftime("%a") == "Sun") or totalizers["week"] == 0: + totalizers["weekHolding"] = lifetime + totalizers["week"] = now.strftime("%U") + + for attempt in range(max_retries): + try: + saveTotalizers(totalizers) + reset = True + return (value, reset) + except Exception as e: + logger.error(f"Attempt {attempt + 1} failed to save totalizers: {e}") + if attempt < max_retries - 1: + time.sleep(retry_delay) + else: + logger.error("All attempts to save totalizers failed.") + return (None, False) + return (value, reset) + +def totalizeMonth(lifetime, max_retries=3, retry_delay=2): + """ + Update and save monthly totalizers based on the lifetime value. + + :param lifetime: The current lifetime total. + :param max_retries: Maximum number of save attempts. + :param retry_delay: Delay in seconds between retries. + :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails. + """ + totalizers = getTotalizers() + now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600) + reset = False + value = lifetime - totalizers["monthHolding"] + if not int(now.strftime("%m")) == int(totalizers["month"]): + totalizers["monthHolding"] = lifetime + totalizers["month"] = now.strftime("%m") + + for attempt in range(max_retries): + try: + saveTotalizers(totalizers) + reset = True + return (value, reset) + except Exception as e: + logger.error(f"Attempt {attempt + 1} failed to save totalizers: {e}") + if attempt < max_retries - 1: + time.sleep(retry_delay) + else: + logger.error("All attempts to save totalizers failed.") + return (None, False) + + return (value,reset) + +def totalizeYear(lifetime, max_retries=3, retry_delay=2): + """ + Update and save yearly totalizers based on the lifetime value. + + :param lifetime: The current lifetime total. + :param max_retries: Maximum number of save attempts. + :param retry_delay: Delay in seconds between retries. + :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails. + """ + totalizers = getTotalizers() + now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600) + reset = False + value = lifetime - totalizers["yearHolding"] + if not int(now.strftime("%Y")) == int(totalizers["year"]): + totalizers["yearHolding"] = lifetime + totalizers["year"] = now.strftime("%Y") + + for attempt in range(max_retries): + try: + saveTotalizers(totalizers) + reset = True + return (value, reset) + except Exception as e: + logger.error(f"Attempt {attempt + 1} failed to save totalizers: {e}") + if attempt < max_retries - 1: + time.sleep(retry_delay) + else: + logger.error("All attempts to save totalizers failed.") + return (None, False) + return (value, reset) + diff --git a/Pub_Sub/gateway/thingsboard/sub/aa-gateway-attributes.py b/Pub_Sub/gateway/thingsboard/sub/aa-gateway-attributes.py new file mode 100644 index 0000000..01cd0b9 --- /dev/null +++ b/Pub_Sub/gateway/thingsboard/sub/aa-gateway-attributes.py @@ -0,0 +1,97 @@ +import json, time +from datetime import datetime as dt +from quickfaas.measure import recall, write +from quickfaas.remotebus import publish +from common.Logger import logger + +def chunk_payload(payload, chunk_size=20, is_attributes_payload=False): + if is_attributes_payload: + # For attributes payload, chunk the controllers + controllers = list(payload.items()) + for i in range(0, len(controllers), chunk_size): + yield dict(controllers[i:i + chunk_size]) + else: + # For data payload, chunk the values within each controller + for controller, data in payload.items(): + for entry in data: + ts = entry['ts'] + values = entry['values'] + chunked_values = list(values.items()) + for i in range(0, len(chunked_values), chunk_size): + yield { + controller:[ + { + "ts": ts, + "values": dict(chunked_values[i:i + chunk_size])} + ] + } + +def sync(): + #get new values and send + now = round(dt.timestamp(dt.now()))*1000 + topic = "v1/gateway/telemetry" + try: + data = recall()#json.loads(recall().decode("utf-8")) + except Exception as e: + logger.error(e) + logger.debug(data) + logger.info("SYNCING") + grouped_data = {} + try: + for controller in data: + ctrlName = " ".join(controller['name'].split("_")) + for measure in controller["measures"]: + if ctrlName not in grouped_data: + grouped_data[ctrlName] = {} + if measure["health"]: + if measure["name"] == "alarm_enable_cmd": + gatewayPayload = {"ts": now, "values": {measure["name"]: measure["value"]}} + grouped_data[ctrlName][measure["name"]] = measure["value"] + except Exception as e: + logger.error(e) + try: + payload = {} + for key, value in grouped_data.items(): + if value: + payload[key] = [{"ts": now ,"values": value}] + publish("v1/devices/me/telemetry", json.dumps(gatewayPayload), qos=1,cloud_name="default") + + for chunk in chunk_payload(payload=payload): + publish(topic, json.dumps(chunk), qos=1, cloud_name="default") + logger.info(json.dumps(chunk, indent=4)) + time.sleep(2) + + except Exception as e: + logger.error(e) + +def writeplctag(value): + #value in the form {"measurement": , "value": } + try: + #value = json.loads(value.replace("'",'"')) + logger.debug(value) + #payload format: [{"name": "advvfdipp", "measures": [{"name": "manualfrequencysetpoint", "value": 49}]}] + message = [{"name": "AA_Transfer", "measures":[{"name":value["measurement"], "value": value["value"]}]}] + resp = write(message) + logger.debug("RETURN FROM WRITE: {}".format(resp)) + return True + except Exception as e: + logger.debug(e) + return False + +def receiveAttributes(topic, payload): + try: + logger.debug(topic) + logger.debug(json.loads(payload)) + p = json.loads(payload) + for key, value in p.items(): + try: + result = writeplctag({"measurement":key, "value":value}) + logger.debug(result) + except Exception as e: + logger.error(e) + #logger.debug(command) + sync() + except Exception as e: + logger.debug(e) + + diff --git a/Pub_Sub/gateway/thingsboard/sub/aa-gateway-rpc.py b/Pub_Sub/gateway/thingsboard/sub/aa-gateway-rpc.py new file mode 100644 index 0000000..dff2cd3 --- /dev/null +++ b/Pub_Sub/gateway/thingsboard/sub/aa-gateway-rpc.py @@ -0,0 +1,104 @@ +import json, time +from datetime import datetime as dt +from quickfaas.measure import recall, write +from quickfaas.remotebus import publish +from common.Logger import logger + +def chunk_payload(payload, chunk_size=20, is_attributes_payload=False): + if is_attributes_payload: + # For attributes payload, chunk the controllers + controllers = list(payload.items()) + for i in range(0, len(controllers), chunk_size): + yield dict(controllers[i:i + chunk_size]) + else: + # For data payload, chunk the values within each controller + for controller, data in payload.items(): + for entry in data: + ts = entry['ts'] + values = entry['values'] + chunked_values = list(values.items()) + for i in range(0, len(chunked_values), chunk_size): + yield { + controller:[ + { + "ts": ts, + "values": dict(chunked_values[i:i + chunk_size])} + ] + } + +def sync(): + #get new values and send + now = round(dt.timestamp(dt.now()))*1000 + topic = "v1/gateway/telemetry" + try: + data = recall()#json.loads(recall().decode("utf-8")) + except Exception as e: + logger.error(e) + logger.debug(data) + logger.info("SYNCING") + grouped_data = {} + try: + for controller in data: + ctrlName = " ".join(controller['name'].split("_")) + for measure in controller["measures"]: + if ctrlName not in grouped_data: + grouped_data[ctrlName] = {} + if measure["health"]: + if measure["name"] == "alarm_enable_cmd": + gatewayPayload = {"ts": now, "values": {measure["name"]: measure["value"]}} + grouped_data[ctrlName][measure["name"]] = measure["value"] + except Exception as e: + logger.error(e) + try: + payload = {} + for key, value in grouped_data.items(): + if value: + payload[key] = [{"ts": now ,"values": value}] + publish("v1/devices/me/telemetry", json.dumps(gatewayPayload), qos=1,cloud_name="default") + + for chunk in chunk_payload(payload=payload): + publish(topic, json.dumps(chunk), qos=1, cloud_name="default") + logger.info(json.dumps(chunk, indent=4)) + time.sleep(2) + + except Exception as e: + logger.error(e) + +def writeplctag(value): + #value in the form {"measurement": , "value": } + try: + logger.debug(value) + #payload format: [{"name": "advvfdipp", "measures": [{"name": "manualfrequencysetpoint", "value": 49}]}] + message = [{"name": value["entityName"], "measures":[{"name":value["measurement"], "value": value["value"]}]}] + resp = write(message) + logger.debug("RETURN FROM WRITE: {}".format(resp)) + return True + except Exception as e: + logger.error(e) + return False + +def receiveCommand(topic, payload): + try: + logger.debug(topic) + logger.debug(json.loads(payload)) + p = json.loads(payload) + command = p["method"] + commands = { + "sync": sync, + "writeplctag": writeplctag, + } + if command == "setPLCTag": + try: + result = commands["writeplctag"](p["params"]) + logger.debug(result) + except Exception as e: + logger.error(e) + ack(topic.split("/")[-1]) + time.sleep(5) + sync() + except Exception as e: + logger.error(e) + + +def ack(msgid): + publish("v1/devices/me/rpc/response/" + str(msgid), json.dumps({"msg": {"time": time.time()}, "metadata": "", "msgType": ""}), 1, cloud_name="default") diff --git a/Pub_Sub/oradvvfdipp/thingsboard/intermediate_config.cfg b/Pub_Sub/oradvvfdipp/thingsboard/intermediate_config.cfg new file mode 100644 index 0000000..c1c7aae --- /dev/null +++ b/Pub_Sub/oradvvfdipp/thingsboard/intermediate_config.cfg @@ -0,0 +1,1526 @@ +{ + "controllers": [ + { + "protocol": "EtherNet/IP", + "name": "advvfdipp", + "args": { + "connectTimeOut": 2000, + "slot": 0 + }, + "samplePeriod": 10, + "expired": 10000, + "endpoint": "192.168.1.10:44818", + "desc": "", + "enable": 1, + "enableDebug": 0, + "enablepollCycle": 0, + "samplePeriod2": 60, + "_id": "000066fc0df10c8d" + } + ], + "measures": [ + { + "name": "flowrate", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "val_Flowmeter", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000066fc0df1fef1" + }, + { + "name": "fluidlevel", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "val_FluidLevel", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000166fc0df19053" + }, + { + "name": "intakepressure", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "val_IntakePressure", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000266fc0df1cb5b" + }, + { + "name": "intaketemperature", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "val_IntakeTemperature", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000366fc0df12d87" + }, + { + "name": "tubingpressure", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "val_TubingPressure", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000466fc0df10299" + }, + { + "name": "pidcontrolmode", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "sts_PID_Control", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "000566fc0df14ab7" + }, + { + "name": "wellstatus", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "INT", + "addr": "Device_Status_INT", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "enableBit": 0, + "storageLwTSDB": 0, + "_id": "000666fc0df18af0" + }, + { + "name": "vfdfrequency", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "VFD_SpeedFdbk", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000766fc0df19e6b" + }, + { + "name": "flowtotal", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Flow_Total[0]", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000866fc0df19fd3" + }, + { + "name": "energytotal", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Energy_Total[0]", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000966fc0df1dddd" + }, + { + "name": "vfdcurrent", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "VFD_OutCurrent", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000a66fc0df1efce" + }, + { + "name": "downholesensorstatus", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "INT", + "addr": "Downhole_Sensor_Status_INT", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "enableBit": 0, + "storageLwTSDB": 0, + "_id": "000b66fc0df104e2" + }, + { + "name": "fluidspecificgravity", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "cfg_FluidSpecificGravity", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000c66fc0df17b6f" + }, + { + "name": "flowtotalyesterday", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Flow_Total[1]", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000d66fc0df1b27a" + }, + { + "name": "energytotalyesterday", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "Energy_Total[1]", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "000e66fc0df1b732" + }, + { + "name": "alarmflowrate", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "alarm_Flowmeter", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "000f66fc0df11cb5" + }, + { + "name": "alarmintakepressure", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "alarm_IntakePressure", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "001066fc0df1f0b2" + }, + { + "name": "alarmintaketemperature", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "alarm_IntakeTemperature", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "001166fc0df1abed" + }, + { + "name": "alarmtubingpressure", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "alarm_TubingPressure", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "001266fc0df1a631" + }, + { + "name": "alarmvfd", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "alarm_VFD", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "001366fc0df1cbb6" + }, + { + "name": "alarmlockout", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "alarm_Lockout", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "001466fc0df1b64d" + }, + { + "name": "runpermissive", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "INT", + "addr": "Run_Permissive_INT", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "enableBit": 0, + "storageLwTSDB": 0, + "_id": "001566fc0df1d882" + }, + { + "name": "startpermissive", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "INT", + "addr": "Start_Permissive_INT", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "enableBit": 0, + "storageLwTSDB": 0, + "_id": "001666fc0df1fe83" + }, + { + "name": "startcommand", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "cmd_Start", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "001766fc0df10fb6" + }, + { + "name": "stopcommand", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "cmd_Stop", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "001866fc0df19454" + }, + { + "name": "flowsetpoint", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "cfg_PID_FlowSP", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "001966fc0df158b8" + }, + { + "name": "fluidlevelsetpoint", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "cfg_PID_FluidLevelSP", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "001a66fc0df1c4b0" + }, + { + "name": "manualfrequencysetpoint", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "cfg_PID_ManualSP", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "001b66fc0df12043" + }, + { + "name": "tubingpressuresetpoint", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "cfg_PID_TubingPressureSP", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "001c66fc0df1db60" + }, + { + "name": "alarmfluidlevel", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "alarm_FluidLevel", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "001d66fc0df11b9c" + }, + { + "name": "pressureshutdownlimit", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AIn_IntakePressure.Val_LoLim", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "001e66fc0df124a7" + }, + { + "name": "pressurestartuplimit", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AIn_IntakePressure.Val_HiLim", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "001f66fc0df19179" + }, + { + "name": "temperatureshutdownlimit", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AIn_IntakeTemperature.Val_HiLim", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "002066fc0df1c93e" + }, + { + "name": "temperaturestartuplimit", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "AIn_IntakeTemperature.Val_LoLim", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "002166fc0df16c2f" + }, + { + "name": "sensorheight", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "cfg_DHSensorDistToIntake", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "002266fc0df10f3b" + }, + { + "name": "last_vfd_fault_code", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "INT", + "addr": "PowerFlex755.Val_LastFaultCode", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "enableBit": 0, + "storageLwTSDB": 0, + "_id": "002366fc0df1e7b4" + }, + { + "name": "vfd_fault", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "INT", + "addr": "sts_CurrentVFDFaultCode", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "enableBit": 0, + "storageLwTSDB": 0, + "_id": "002466fc0df17600" + }, + { + "name": "controllerfault_io", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "ControllerFault_IO", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "002566fc0df1a58e" + }, + { + "name": "controllerfault_program", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "BIT", + "addr": "ControllerFault_Program", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "002666fc0df1bb1a" + }, + { + "name": "minvfdfrequency", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "PowerFlex755.Cfg_MinSpdRef", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "002766fc0df1fb1a" + }, + { + "name": "maxvfdfrequency", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "PowerFlex755.Cfg_MaxSpdRef", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "002866fc0df15e20" + }, + { + "name": "hartnettotal", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "in_HART_Flowmeter_Net", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "002966fc0df118e3" + }, + { + "name": "hartfwdtotal", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "in_HART_Flowmeter_Fwd", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "002a66fc0df15cc0" + }, + { + "name": "hartrevtotal", + "ctrlName": "advvfdipp", + "group": "default", + "uploadType": "periodic", + "dataType": "FLOAT", + "addr": "in_HART_Flowmeter_Rev", + "decimal": 2, + "len": 1, + "readWrite": "ro", + "unit": "", + "desc": "", + "transformType": 0, + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "gain": "", + "offset": "", + "pollCycle": 0, + "storageLwTSDB": 0, + "_id": "002b66fc0df1226c" + }, + { + "ctrlName": "advvfdipp", + "dataType": "BIT", + "addr": "cmd_Start", + "readWrite": "rw", + "uploadType": "periodic", + "group": "default", + "name": "cmd_Start", + "desc": "", + "unit": "", + "transformType": 0, + "gain": "1.0", + "offset": "0.0", + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "decimal": 2, + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "002c66fc0df1de62" + }, + { + "ctrlName": "advvfdipp", + "dataType": "BIT", + "addr": "cmd_Stop", + "readWrite": "rw", + "uploadType": "periodic", + "group": "default", + "name": "cmd_Stop", + "desc": "", + "unit": "", + "transformType": 0, + "gain": "1.0", + "offset": "0.0", + "maxValue": "", + "minValue": "", + "maxScaleValue": "", + "minScaleValue": "", + "decimal": 2, + "pollCycle": 0, + "bitMap": 0, + "reverseBit": 0, + "storageLwTSDB": 0, + "_id": "002d66fc0df15517" + } + ], + "alarmLables": [ + "default" + ], + "alarms": [], + "groups": [ + { + "name": "default", + "uploadInterval": 600, + "reference": 44, + "_id": "group59b64649c93", + "LwTSDBSize": 1000, + "strategy": 1, + "historyDataMode": "gateway", + "historyDataPath": "/var/user/data/dbhome/device_supervisor/LwTSDB", + "enablePerOnchange": 0 + } + ], + "misc": { + "maxAlarmRecordSz": 2000, + "logLvl": "DEBUG", + "coms": [ + { + "name": "rs232", + "baud": 9600, + "bits": 8, + "stopbits": 1, + "parityChk": "n" + }, + { + "name": "rs485", + "baud": 19200, + "bits": 8, + "stopbits": 1, + "parityChk": "n" + } + ], + "cacheMode": "gateway", + "cachePath": "/var/user/data/dbhome/device_supervisor/offlinedata", + "cacheSize": 10000, + "cacheUploadPeriod": 200, + "cacheStrategy": 0, + "pubTimeout": 1000, + "pubRepeatNum": 3, + "debugLogMode": "gateway", + "debugLogPath": "/var/user/data/dbhome/device_supervisor/debugLog", + "debugLogSize": 2000, + "logNum": 2, + "logSize": 1 + }, + "clouds": [ + { + "cacheSize": 100, + "enable": 1, + "type": "Standard MQTT", + "args": { + "host": "mq194.imistaway.net", + "port": 1883, + "clientId": "nail-ranch-37-sr-2-3", + "auth": 1, + "tls": 0, + "cleanSession": 1, + "mqttVersion": "v3.1.1", + "keepalive": 120, + "key": "", + "cert": "", + "rootCA": "", + "verifyServer": 0, + "verifyClient": 0, + "username": "admin", + "passwd": "columbus", + "authType": 1, + "willQos": 0, + "willRetain": 0, + "willTopic": "", + "willPayload": "", + "tlsAuth": "caSelfSigned" + }, + "name": "default", + "_id": "cloud59b6464bd03", + "uploadRules": [] + }, + { + "_id": "000066fc0e8015d0", + "cacheSize": 10000, + "enable": 1, + "name": "ThingsBoard", + "type": "Standard MQTT", + "args": { + "host": "hp.henrypump.cloud", + "port": 1883, + "clientId": "nail-ranch-37-sr-2-3", + "auth": 1, + "tls": 0, + "cleanSession": 0, + "mqttVersion": "v3.1.1", + "keepalive": 60, + "key": "", + "cert": "", + "rootCA": "", + "verifyServer": 0, + "verifyClient": 0, + "username": "S5rgxjv4H620dD9QmThF", + "passwd": "", + "willQos": 0, + "willRetain": 0, + "willTopic": "", + "willPayload": "" + }, + "uploadRules": [] + } + ], + "quickfaas": { + "genericFuncs": [], + "uploadFuncs": [ + { + "name": "Send Data", + "trigger": "measure_event", + "topic": "meshify/db/194/_/advvfdipp/${MAC_LOWER}", + "qos": 1, + "groups": [ + "default" + ], + "funcName": "sendData", + "script": "# Enter your python code.\nimport json, math, time, os\nfrom datetime import datetime as dt\nfrom common.Logger import logger\nfrom quickfaas.remotebus import publish\nfrom quickfaas.global_dict import get as get_params\nfrom quickfaas.global_dict import _set_global_args\n\nimport re, uuid\nfrom paho.mqtt import client\n\nclass RuntimeStats:\n def __init__(self):\n self.runs = {}\n self.currentRun = 0\n self.today = \"\"\n self.todayString = \"\"\n\n def manageTime(self):\n if self.todayString != dt.strftime(dt.today(), \"%Y-%m-%d\"):\n if self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"start\"] and not self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"end\"]:\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"end\"] = time.mktime(dt.strptime(self.todayString + \" 23:59:59\", \"%Y-%m-%d %H:%M:%S\").timetuple())\n self.addDay()\n self.today = dt.today()\n self.todayString = dt.strftime(self.today, \"%Y-%m-%d\")\n days = list(self.runs.keys())\n days.sort()\n while (dt.strptime(days[-1],\"%Y-%m-%d\") - dt.strptime(days[0], \"%Y-%m-%d\")).days > 30:\n self.removeDay(day=days[0])\n days = list(self.runs.keys())\n days.sort()\n\n def addHertzDataPoint(self, frequency):\n if frequency > 0:\n self.manageTime()\n try:\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"frequencies\"].append(frequency)\n except:\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"frequencies\"] = [frequency]\n\n def startRun(self):\n if self.checkRunning():\n self.endRun()\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"start\"] = time.time()\n\n def endRun(self):\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"end\"] = time.time()\n self.currentRun += 1\n self.runs[self.todayString][\"run_\" + str(self.currentRun)] = {\"start\":0, \"end\": 0, \"frequencies\":[]} \n\n def checkRunning(self):\n if self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"start\"] and not self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"end\"]:\n return True\n return False\n\n def addDay(self):\n self.today = dt.today()\n self.todayString = dt.strftime(self.today, \"%Y-%m-%d\")\n self.currentRun = 1\n self.runs[self.todayString] = {}\n self.runs[self.todayString][\"run_\" + str(self.currentRun)] = {\"start\":0, \"end\": 0, \"frequencies\":[]}\n\n def countRunsDay(self, day=None):\n if not day:\n day = self.todayString\n return len(self.runs[day].keys())\n\n def countRunsMultiDay(self, numDays=30):\n total_runs = 0\n for day in list(self.runs.keys()):\n total_runs += self.countRunsDay(day=day)\n return total_runs\n\n def calculateAverageHertzDay(self, day=None, returnArray=False):\n dayFrequencies = []\n if not day:\n day = self.todayString\n for run in list(self.runs[day].keys()):\n try:\n dayFrequencies += self.runs[day][run][\"frequencies\"]\n except Exception as e:\n print(\"{} missing frequency data for {}\".format(day,run))\n if returnArray:\n return dayFrequencies\n return round(math.fsum(dayFrequencies)/len(dayFrequencies),2)\n\n def calculateAverageHertzMultiDay(self, numDays=30):\n self.manageTime()\n frequencies = []\n for day in list(self.runs.keys()):\n if not day == self.todayString and (dt.strptime(self.todayString, \"%Y-%m-%d\") - dt.strptime(day, \"%Y-%m-%d\")).days <= numDays:\n try:\n frequencies += self.calculateAverageHertzDay(day=day, returnArray=True)\n except Exception as e:\n print(\"{} missing frequency data\".format(day))\n if len(frequencies):\n return round(math.fsum(frequencies)/len(frequencies), 2)\n return 0\n \n def calculateRunTimeDay(self, day=None, convertToHours=True):\n total_time = 0\n if not day:\n day = self.todayString\n for run in list(self.runs[day].keys()):\n total_time = self.runs[day][run][\"end\"] - self.runs[day][run][\"start\"] + total_time\n if convertToHours:\n return self.convertSecondstoHours(total_time)\n return total_time\n\n def calculateRunTimeMultiDay(self, numDays=30, convertToHours=True):\n total_time = 0\n for day in list(self.runs.keys()):\n if not day == self.todayString and (dt.strptime(self.todayString, \"%Y-%m-%d\") - dt.strptime(day, \"%Y-%m-%d\")).days <= numDays:\n total_time += self.calculateRunTimeDay(day=day, convertToHours=False)\n if convertToHours:\n return self.convertSecondstoHours(total_time)\n return total_time\n \n def calculateRunPercentDay(self, day=None, precise=False):\n if not day:\n day = self.todayString\n if precise:\n return (self.calculateRunTimeDay(day=day)/24) * 100\n return round((self.calculateRunTimeDay(day=day)/24) * 100, 2)\n \n\n def calculateRunPercentMultiDay(self, numDays=30, precise=False):\n self.manageTime()\n if precise:\n return (self.calculateRunTimeMultiDay()/(24*numDays)) * 100\n return round((self.calculateRunTimeMultiDay()/(24*numDays)) * 100,2)\n\n def removeDay(self, day=None):\n if not day:\n raise Exception(\"Day can not be None\")\n print(\"removing day {}\".format(day))\n del self.runs[day]\n \n def convertSecondstoHours(self, seconds):\n return round(seconds / (60*60),2)\n\n def loadDataFromFile(self, filePath=\"/var/user/files/runtimestats.json\"):\n try:\n with open(filePath, \"r\") as f:\n temp = json.load(f)\n self.runs = temp[\"data\"]\n self.currentRun = temp[\"current_run\"]\n self.today = dt.strptime(temp[\"current_day\"], \"%Y-%m-%d\")\n self.todayString = temp[\"current_day\"]\n self.manageTime()\n except:\n print(\"Could not find file at {}\".format(filePath))\n print(\"creating file\")\n self.addDay()\n try:\n with open(filePath, \"w\") as f:\n d = {\n \"current_run\": self.currentRun,\n \"current_day\": self.todayString,\n \"data\": self.runs\n }\n json.dump(d, f, indent=4)\n except Exception as e:\n print(e)\n\n def saveDataToFile(self, filePath=\"/var/user/files/runtimestats.json\"):\n try:\n print(\"Saving Runs\")\n with open(filePath, \"w\") as f:\n d = {\n \"current_run\": self.currentRun,\n \"current_day\": self.todayString,\n \"data\": self.runs\n }\n json.dump(d, f, indent=4)\n except Exception as e:\n print(e)\n\nrts = RuntimeStats()\nrts.loadDataFromFile()\nrts.saveDataToFile()\n\ndef reboot(reason=\"Rebooting for config file update\"):\n #basic = Basic()\n logger.info(\"!\" * 10 + \"REBOOTING DEVICE\" + \"!\"*10)\n logger.info(reason)\n r = os.popen(\"kill -s SIGHUP `cat /var/run/python/supervisord.pid`\").read()\n logger.info(f\"REBOOT : {r}\")\n\ndef checkFileExist(filename):\n path = \"/var/user/files\"\n if not os.path.exists(path):\n logger.info(\"no folder making files folder in var/user\")\n os.makedirs(path)\n with open(path + \"/\" + filename, \"a\") as f:\n json.dump({}, f)\n if not os.path.exists(path + \"/\" + filename):\n logger.info(\"no creds file making creds file\")\n with open(path + \"/\" + filename, \"a\") as f:\n json.dump({}, f)\n\ndef convertDStoJSON(ds):\n j = dict()\n for x in ds:\n j[x[\"key\"]] = x[\"value\"]\n return j\n\ndef convertJSONtoDS(j):\n d = []\n for key in j.keys():\n d.append({\"key\": key, \"value\": j[key]})\n return d\n\ndef checkCredentialConfig():\n logger.info(\"CHECKING CONFIG\")\n cfgpath = \"/var/user/cfg/device_supervisor/device_supervisor.cfg\"\n credspath = \"/var/user/files/creds.json\"\n cfg = dict()\n with open(cfgpath, \"r\") as f:\n cfg = json.load(f)\n clouds = cfg.get(\"clouds\")\n logger.info(clouds)\n #if not configured then try to configure from stored values\n if clouds[0][\"args\"][\"clientId\"] == \"unknown\" or clouds[0][\"args\"][\"username\"] == \"unknown\" or not clouds[0][\"args\"][\"passwd\"] or clouds[0][\"args\"][\"passwd\"] == \"unknown\":\n checkFileExist(\"creds.json\")\n with open(credspath, \"r\") as c:\n creds = json.load(c)\n if creds:\n logger.info(\"updating config with stored data\")\n clouds[0][\"args\"][\"clientId\"] = creds[\"clientId\"]\n clouds[0][\"args\"][\"username\"] = creds[\"userName\"]\n clouds[0][\"args\"][\"passwd\"] = creds[\"password\"]\n cfg[\"clouds\"] = clouds\n cfg = checkParameterConfig(cfg)\n with open(cfgpath, \"w\", encoding='utf-8') as n:\n json.dump(cfg, n, indent=1, ensure_ascii=False)\n reboot()\n else:\n #assuming clouds is filled out, if data is different then assume someone typed in something new and store it, if creds is empty fill with clouds' data\n checkFileExist(\"creds.json\")\n with open(credspath, \"r\") as c:\n logger.info(\"updating stored file with new data\")\n cfg = checkParameterConfig(cfg)\n with open(cfgpath, \"w\", encoding='utf-8') as n:\n json.dump(cfg, n, indent=1, ensure_ascii=False)\n creds = json.load(c)\n if creds:\n if creds[\"clientId\"] != clouds[0][\"args\"][\"clientId\"]:\n creds[\"clientId\"] = clouds[0][\"args\"][\"clientId\"]\n if creds[\"userName\"] != clouds[0][\"args\"][\"username\"]:\n creds[\"userName\"] = clouds[0][\"args\"][\"username\"]\n if creds[\"password\"] != clouds[0][\"args\"][\"passwd\"]:\n creds[\"password\"] = clouds[0][\"args\"][\"passwd\"]\n else:\n creds[\"clientId\"] = clouds[0][\"args\"][\"clientId\"]\n creds[\"userName\"] = clouds[0][\"args\"][\"username\"]\n creds[\"password\"] = clouds[0][\"args\"][\"passwd\"]\n with open(credspath, \"w\") as cw:\n json.dump(creds,cw)\n\ndef checkParameterConfig(cfg):\n logger.info(\"Checking Parameters!!!!\")\n paramspath = \"/var/user/files/params.json\"\n cfgparams = convertDStoJSON(cfg.get(\"labels\"))\n #check stored values \n checkFileExist(\"params.json\")\n with open(paramspath, \"r\") as f:\n logger.info(\"Opened param storage file\")\n params = json.load(f)\n if params:\n if cfgparams != params:\n #go through each param\n #if not \"unknown\" and cfg and params aren't the same take from cfg likely updated manually\n #if key in cfg but not in params copy to params\n logger.info(\"equalizing params between cfg and stored\")\n for key in cfgparams.keys():\n try:\n if cfgparams[key] != params[key] and cfgparams[key] != \"unknown\":\n params[key] = cfgparams[key]\n except:\n params[key] = cfgparams[key]\n cfg[\"labels\"] = convertJSONtoDS(params)\n _set_global_args(convertJSONtoDS(params))\n with open(paramspath, \"w\") as p:\n json.dump(params, p)\n else:\n with open(paramspath, \"w\") as p:\n logger.info(\"initializing param file with params in memory\")\n json.dump(convertDStoJSON(get_params()), p)\n cfg[\"labels\"] = get_params()\n \n return cfg\n\n\n\nlwtData = {\n \"init\":False,\n \"client\": client.Client(client_id=str(uuid.uuid4()), clean_session=True, userdata=None, protocol=client.MQTTv311, transport=\"tcp\")\n}\ndef lwt(mac):\n try:\n #if not lwtData[\"connected\"]:\n if not lwtData[\"init\"]:\n logger.info(\"INITIALIZING LWT CLIENT\")\n lwtData[\"client\"].username_pw_set(username=\"admin\", password=\"columbus\")\n lwtData[\"client\"].will_set(\"meshify/db/194/_/mainHP/\" + mac + \":00:00/connected\",json.dumps({\"value\":False}))\n lwtData[\"init\"] = True\n logger.info(\"Connecting to MQTT Broker for LWT purposes!!!!!!!\")\n lwtData[\"client\"].connect(\"mq194.imistaway.net\",1883, 600)\n lwtData[\"client\"].publish(\"meshify/db/194/_/mainHP/\" + mac + \":00:00/connected\", json.dumps({\"value\":True}),1)\n except Exception as e:\n logger.error(\"LWT DID NOT DO THE THING\")\n logger.error(e)\n\ndef sendData(message):\n #logger.debug(message)\n try:\n mac = __topic__.split(\"/\")[-1] #':'.join(re.findall('..', '%012x' % uuid.getnode()))\n lwt(mac)\n except Exception as e:\n logger.error(f\"Error in MA lwt: {e}\")\n try:\n checkCredentialConfig()\n except Exception as e:\n logger.error(f\"Error in MA checkCredntialConfig: {e}\")\n \n try:\n for measure in message[\"measures\"]:\n try:\n logger.debug(measure)\n now = (round(dt.timestamp(dt.now())/600)*600)\n if abs(now - measure[\"timestamp\"]) > 7200:\n reboot(reason=\"Poll timestamp and actual timestamp out of sync. Actual: {} Poll: {}\".format(now,measure[\"timestamp\"]))\n if measure[\"name\"] in [\"wellstatus\",\"pidcontrolmode\",\"downholesensorstatus\",\"alarmflowrate\",\"alarmintakepressure\",\"alarmintaketemperature\",\"alarmtubingpressure\",\"alarmvfd\",\"alarmlockout\",\"alarmfluidlevel\",\"runpermissive\",\"startpermissive\",\"last_vfd_fault_code\",\"vfd_fault\"]:\n logger.debug(\"Converting DINT/BOOL to STRING\")\n value = convert_int(measure[\"name\"], measure[\"value\"])\n logger.debug(\"Converted {} to {}\".format(measure[\"value\"], value))\n publish(__topic__ + \":01:99/\" + measure[\"name\"], json.dumps({\"value\": value}), __qos__,cloud_name=\"default\")\n else:\n publish(__topic__ + \":01:99/\" + measure[\"name\"], json.dumps({\"value\": measure[\"value\"]}), __qos__, cloud_name=\"default\")\n \n if measure[\"name\"] == \"wellstatus\":\n if measure[\"value\"] == 0 and not rts.runs[rts.todayString][\"run_\" + str(rts.currentRun)][\"start\"]:\n rts.startRun()\n rts.saveDataToFile()\n elif measure[\"value\"] > 0 and rts.runs[rts.todayString][\"run_\" + str(rts.currentRun)][\"start\"] and not rts.runs[rts.todayString][\"run_\" + str(rts.currentRun)][\"end\"]:\n rts.endRun()\n rts.saveDataToFile()\n publish(__topic__ + \":01:99/\" + \"percentRunTime30Days\", json.dumps({\"value\": rts.calculateRunPercentMultiDay()}), __qos__, cloud_name=\"default\")\n \n if measure[\"name\"] == \"vfdfrequency\":\n if measure[\"value\"] > 0:\n rts.addHertzDataPoint(measure[\"value\"])\n rts.saveDataToFile()\n publish(__topic__ + \":01:99/\" + \"avgFrequency30Days\", json.dumps({\"value\": rts.calculateAverageHertzMultiDay()}), __qos__, cloud_name=\"default\")\n except Exception as e:\n logger.error(f\"Error in MA: {e}\")\n \n #publish(__topic__, json.dumps({measure[\"name\"]: measure[\"value\"]}), __qos__, cloud_name=\"default\")\n except Exception as e:\n logger.error(f\"Error in MA send loop: {e}\")\n\ndef convert_int(plc_tag, value):\n well_status_codes = {\n 0: \"Running\",\n 1: \"Pumped Off\",\n 2: \"Alarmed\",\n 3: \"Locked Out\",\n 4: \"Stopped\"\n }\n\n pid_control_codes = {\n 0: \"Flow\",\n 1: \"Fluid Level\",\n 2: \"Tubing Pressure\",\n 3: \"Manual\"\n }\n\n downhole_codes = {\n 0: \"OK\",\n 1: \"Connecting\",\n 2: \"Open Circuit\",\n 3: \"Shorted\",\n 4: \"Cannot Decode\"\n }\n\n permissive_codes = {\n 0: \"OK\",\n 1: \"Flow\",\n 2: \"Intake Pressure\",\n 3: \"Intake Temperature\",\n 4: \"Tubing Pressure\",\n 5: \"VFD\",\n 6: \"Fluid Level\",\n 7: \"Min. Downtime\"\n }\n\n alarm_codes = {\n 0: \"OK\",\n 1: \"Alarm\"\n }\n\n alarm_vfd_codes = {\n 0: \"OK\",\n 1: \"Locked Out\"\n }\n\n vfd_fault_codes = {\n 0: \"No Fault\",\n 2: \"Auxiliary Input\",\n 3: \"Power Loss\",\n 4: \"UnderVoltage\",\n 5: \"OverVoltage\",\n 7: \"Motor Overload\",\n 8: \"Heatsink OverTemp\",\n 9: \"Thermister OverTemp\",\n 10: \"Dynamic Brake OverTemp\",\n 12: \"Hardware OverCurrent\",\n 13: \"Ground Fault\",\n 14: \"Ground Warning\",\n 15: \"Load Loss\",\n 17: \"Input Phase Loss\",\n 18: \"Motor PTC Trip\",\n 19: \"Task Overrun\",\n 20: \"Torque Prove Speed Band\",\n 21: \"Output Phase Loss\",\n 24: \"Decel Inhibit\",\n 25: \"OverSpeed Limit\",\n 26: \"Brake Slipped\",\n 27: \"Torque Prove Conflict\",\n 28: \"TP Encls Confict\",\n 29: \"Analog In Loss\",\n 33: \"Auto Restarts Exhausted\",\n 35: \"IPM OverCurrent\",\n 36: \"SW OverCurrent\",\n 38: \"Phase U to Ground\",\n 39: \"Phase V to Ground\",\n 40: \"Phase W to Ground\",\n 41: \"Phase UV Short\",\n 42: \"Phase VW Short\",\n 43: \"Phase WU Short\",\n 44: \"Phase UNeg to Ground\",\n 45: \"Phase VNeg to Ground\",\n 46: \"Phase WNeg to Ground\",\n 48: \"System Defaulted\",\n 49: \"Drive Powerup\",\n 51: \"Clear Fault Queue\",\n 55: \"Control Board Overtemp\",\n 59: \"Invalid Code\",\n 61: \"Shear Pin 1\",\n 62: \"Shear Pin 2\",\n 64: \"Drive Overload\",\n 66: \"OW Torque Level\",\n 67: \"Pump Off\",\n 71: \"Port 1 Adapter\",\n 72: \"Port 2 Adapter\",\n 73: \"Port 3 Adapter\",\n 74: \"Port 4 Adapter\",\n 75: \"Port 5 Adapter\",\n 76: \"Port 6 Adapter\",\n 77: \"IR Volts Range\",\n 78: \"FluxAmps Ref Range\",\n 79: \"Excessive Load\",\n 80: \"AutoTune Aborted\",\n 81: \"Port 1 DPI Loss\",\n 82: \"Port 2 DPI Loss\",\n 83: \"Port 3 DPI Loss\",\n 84: \"Port 4 DPI Loss\",\n 85: \"Port 5 DPI Loss\",\n 86: \"Port 6 DPI Loss\",\n 87: \"IXo Voltage Range\",\n 91: \"Primary Velocity Feedback Loss\",\n 93: \"Hardware Enable Check\",\n 94: \"Alternate Velocity Feedback Loss\",\n 95: \"Auxiliary Velocity Feedback Loss\",\n 96: \"Position Feedback Loss\",\n 97: \"Auto Tach Switch\",\n 100: \"Parameter Checksum\",\n 101: \"Power Down NVS Blank\",\n 102: \"NVS Not Blank\",\n 103: \"Power Down NVS Incompatible\",\n 104: \"Power Board Checksum\",\n 106: \"Incompat MCB-PB\",\n 107: \"Replaced MCB-PB\",\n 108: \"Analog Calibration Checksum\",\n 110: \"Invalid Power Board Data\",\n 111: \"Power Board Invalid ID\",\n 112: \"Power Board App Min Version\",\n 113: \"Tracking DataError\",\n 115: \"Power Down Table Full\",\n 116: \"Power Down Entry Too Large\",\n 117: \"Power Down Data Checksum\",\n 118: \"Power Board Power Down Checksum\",\n 124: \"App ID Changed\",\n 125: \"Using Backup App\",\n 134: \"Start on Power Up\",\n 137: \"External Precharge Error\",\n 138: \"Precharge Open\",\n 141: \"Autotune Enc Angle\",\n 142: \"Autotune Speed Restricted\",\n 143: \"Autotune Current Regulator\",\n 144: \"Autotune Inertia\",\n 145: \"Autotune Travel\",\n 13035: \"Net IO Timeout\",\n 13037: \"Net IO Timeout\"\n\n }\n\n plc_tags = {\n \"wellstatus\": well_status_codes.get(value, \"Invalid Code\"),\n \"pidcontrolmode\": pid_control_codes.get(value, \"Invalid Code\"),\n \"downholesensorstatus\": downhole_codes.get(value, \"Invalid Code\"),\n \"alarmflowrate\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmintakepressure\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmintaketemperature\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmtubingpressure\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmvfd\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmlockout\": alarm_vfd_codes.get(value, \"Invalid Code\"),\n \"alarmfluidlevel\": alarm_codes.get(value, \"Invalid Code\"),\n \"runpermissive\": permissive_codes.get(value, \"Invalid Code\"),\n \"startpermissive\": permissive_codes.get(value, \"Invalid Code\"),\n \"last_vfd_fault_code\": vfd_fault_codes.get(value, \"Invalid Code\"),\n \"vfd_fault\": vfd_fault_codes.get(value, \"Invalid Code\")\n }\n\n return plc_tags.get(plc_tag, \"Invalid Tag\")\n\n ", + "cloudName": "default", + "hideOfflineData": 0, + "msgType": 0 + }, + { + "hideOfflineData": 1, + "qos": 1, + "funcName": "sendData", + "script": "import json, os, time, math, uuid\nfrom datetime import datetime as dt\nfrom common.Logger import logger\nfrom quickfaas.remotebus import publish\nfrom quickfaas.global_dict import get as get_params\nfrom quickfaas.global_dict import _set_global_args\n\nclass RuntimeStats:\n def __init__(self):\n self.runs = {}\n self.currentRun = 0\n self.today = \"\"\n self.todayString = \"\"\n\n def manageTime(self):\n if self.todayString != dt.strftime(dt.today(), \"%Y-%m-%d\"):\n if self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"start\"] and not self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"end\"]:\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"end\"] = time.mktime(dt.strptime(self.todayString + \" 23:59:59\", \"%Y-%m-%d %H:%M:%S\").timetuple())\n self.addDay()\n self.today = dt.today()\n self.todayString = dt.strftime(self.today, \"%Y-%m-%d\")\n days = list(self.runs.keys())\n days.sort()\n while (dt.strptime(days[-1],\"%Y-%m-%d\") - dt.strptime(days[0], \"%Y-%m-%d\")).days > 30:\n self.removeDay(day=days[0])\n days = list(self.runs.keys())\n days.sort()\n\n def addHertzDataPoint(self, frequency):\n if frequency > 0:\n self.manageTime()\n try:\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"frequencies\"].append(frequency)\n except:\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"frequencies\"] = [frequency]\n\n def startRun(self):\n if self.checkRunning():\n self.endRun()\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"start\"] = time.time()\n\n def endRun(self):\n self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"end\"] = time.time()\n self.currentRun += 1\n self.runs[self.todayString][\"run_\" + str(self.currentRun)] = {\"start\":0, \"end\": 0, \"frequencies\":[]} \n\n def checkRunning(self):\n if self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"start\"] and not self.runs[self.todayString][\"run_\" + str(self.currentRun)][\"end\"]:\n return True\n return False\n\n def addDay(self):\n self.today = dt.today()\n self.todayString = dt.strftime(self.today, \"%Y-%m-%d\")\n self.currentRun = 1\n self.runs[self.todayString] = {}\n self.runs[self.todayString][\"run_\" + str(self.currentRun)] = {\"start\":0, \"end\": 0, \"frequencies\":[]}\n\n def countRunsDay(self, day=None):\n if not day:\n day = self.todayString\n return len(self.runs[day].keys())\n\n def countRunsMultiDay(self, numDays=30):\n total_runs = 0\n for day in list(self.runs.keys()):\n total_runs += self.countRunsDay(day=day)\n return total_runs\n\n def calculateAverageHertzDay(self, day=None, returnArray=False):\n dayFrequencies = []\n if not day:\n day = self.todayString\n for run in list(self.runs[day].keys()):\n try:\n dayFrequencies += self.runs[day][run][\"frequencies\"]\n except Exception as e:\n print(\"{} missing frequency data for {}\".format(day,run))\n if returnArray:\n return dayFrequencies\n return round(math.fsum(dayFrequencies)/len(dayFrequencies),2)\n\n def calculateAverageHertzMultiDay(self, numDays=30):\n self.manageTime()\n frequencies = []\n for day in list(self.runs.keys()):\n if not day == self.todayString and (dt.strptime(self.todayString, \"%Y-%m-%d\") - dt.strptime(day, \"%Y-%m-%d\")).days <= numDays:\n try:\n frequencies += self.calculateAverageHertzDay(day=day, returnArray=True)\n except Exception as e:\n print(\"{} missing frequency data\".format(day))\n if len(frequencies):\n return round(math.fsum(frequencies)/len(frequencies), 2)\n return 0\n \n def calculateRunTimeDay(self, day=None, convertToHours=True):\n total_time = 0\n if not day:\n day = self.todayString\n for run in list(self.runs[day].keys()):\n total_time = self.runs[day][run][\"end\"] - self.runs[day][run][\"start\"] + total_time\n if convertToHours:\n return self.convertSecondstoHours(total_time)\n return total_time\n\n def calculateRunTimeMultiDay(self, numDays=30, convertToHours=True):\n total_time = 0\n for day in list(self.runs.keys()):\n if not day == self.todayString and (dt.strptime(self.todayString, \"%Y-%m-%d\") - dt.strptime(day, \"%Y-%m-%d\")).days <= numDays:\n total_time += self.calculateRunTimeDay(day=day, convertToHours=False)\n if convertToHours:\n return self.convertSecondstoHours(total_time)\n return total_time\n \n def calculateRunPercentDay(self, day=None, precise=False):\n if not day:\n day = self.todayString\n if precise:\n return (self.calculateRunTimeDay(day=day)/24) * 100\n return round((self.calculateRunTimeDay(day=day)/24) * 100, 2)\n \n\n def calculateRunPercentMultiDay(self, numDays=30, precise=False):\n self.manageTime()\n if precise:\n return (self.calculateRunTimeMultiDay()/(24*numDays)) * 100\n return round((self.calculateRunTimeMultiDay()/(24*numDays)) * 100,2)\n\n def removeDay(self, day=None):\n if not day:\n raise Exception(\"Day can not be None\")\n print(\"removing day {}\".format(day))\n del self.runs[day]\n \n def convertSecondstoHours(self, seconds):\n return round(seconds / (60*60),2)\n\n def loadDataFromFile(self, filePath=\"/var/user/files/runtimestats.json\"):\n try:\n with open(filePath, \"r\") as f:\n temp = json.load(f)\n self.runs = temp[\"data\"]\n self.currentRun = temp[\"current_run\"]\n self.today = dt.strptime(temp[\"current_day\"], \"%Y-%m-%d\")\n self.todayString = temp[\"current_day\"]\n self.manageTime()\n except:\n print(\"Could not find file at {}\".format(filePath))\n print(\"creating file\")\n self.addDay()\n try:\n with open(filePath, \"w\") as f:\n d = {\n \"current_run\": self.currentRun,\n \"current_day\": self.todayString,\n \"data\": self.runs\n }\n json.dump(d, f, indent=4)\n except Exception as e:\n print(e)\n\n def saveDataToFile(self, filePath=\"/var/user/files/runtimestats.json\"):\n try:\n print(\"Saving Runs\")\n with open(filePath, \"w\") as f:\n d = {\n \"current_run\": self.currentRun,\n \"current_day\": self.todayString,\n \"data\": self.runs\n }\n json.dump(d, f, indent=4)\n except Exception as e:\n print(e)\n\ntry:\n rts_path = \"/var/user/files/runtimestats_tb.json\"\n rts = RuntimeStats()\n rts.loadDataFromFile(filePath=rts_path)\n rts.saveDataToFile(filePath=rts_path)\nexcept Exception as e:\n logger.error(f\"Error in TB start RTS: {e}\" )\n\ndef reboot(reason=\"Rebooting for config file update\"):\n #basic = Basic()\n logger.info(\"!\" * 10 + \"REBOOTING DEVICE\" + \"!\"*10)\n logger.info(reason)\n r = os.popen(\"kill -s SIGHUP `cat /var/run/python/supervisord.pid`\").read()\n logger.info(f\"REBOOT : {r}\")\n\ndef checkFileExist(filename):\n path = \"/var/user/files\"\n if not os.path.exists(path):\n logger.debug(\"no folder making files folder in var/user\")\n os.makedirs(path)\n with open(path + \"/\" + filename, \"a\") as f:\n json.dump({}, f)\n if not os.path.exists(path + \"/\" + filename):\n logger.debug(\"no creds file making creds file\")\n with open(path + \"/\" + filename, \"a\") as f:\n json.dump({}, f)\n\ndef convertDStoJSON(ds):\n j = dict()\n for x in ds:\n j[x[\"key\"]] = x[\"value\"]\n return j\n\ndef convertJSONtoDS(j):\n d = []\n for key in j.keys():\n d.append({\"key\": key, \"value\": j[key]})\n return d\n\ndef checkCredentialConfig():\n logger.debug(\"CHECKING CONFIG\")\n cfgpath = \"/var/user/cfg/device_supervisor/device_supervisor.cfg\"\n credspath = \"/var/user/files/creds.json\"\n cfg = dict()\n with open(cfgpath, \"r\") as f:\n cfg = json.load(f)\n clouds = cfg.get(\"clouds\")\n logger.debug(clouds)\n #if not configured then try to configure from stored values\n if clouds[0][\"args\"][\"clientId\"] == \"unknown\" or clouds[0][\"args\"][\"username\"] == \"unknown\" or not clouds[0][\"args\"][\"passwd\"] or clouds[0][\"args\"][\"passwd\"] == \"unknown\":\n checkFileExist(\"creds.json\")\n with open(credspath, \"r\") as c:\n creds = json.load(c)\n if creds:\n logger.debug(\"updating config with stored data\")\n clouds[0][\"args\"][\"clientId\"] = creds[\"clientId\"]\n clouds[0][\"args\"][\"username\"] = creds[\"userName\"]\n clouds[0][\"args\"][\"passwd\"] = creds[\"password\"]\n cfg[\"clouds\"] = clouds\n cfg = checkParameterConfig(cfg)\n with open(cfgpath, \"w\", encoding='utf-8') as n:\n json.dump(cfg, n, indent=1, ensure_ascii=False)\n reboot()\n else:\n #assuming clouds is filled out, if data is different then assume someone typed in something new and store it, if creds is empty fill with clouds' data\n checkFileExist(\"creds.json\")\n with open(credspath, \"r\") as c:\n logger.debug(\"updating stored file with new data\")\n cfg = checkParameterConfig(cfg)\n with open(cfgpath, \"w\", encoding='utf-8') as n:\n json.dump(cfg, n, indent=1, ensure_ascii=False)\n creds = json.load(c)\n if creds:\n if creds[\"clientId\"] != clouds[0][\"args\"][\"clientId\"]:\n creds[\"clientId\"] = clouds[0][\"args\"][\"clientId\"]\n if creds[\"userName\"] != clouds[0][\"args\"][\"username\"]:\n creds[\"userName\"] = clouds[0][\"args\"][\"username\"]\n if creds[\"password\"] != clouds[0][\"args\"][\"passwd\"]:\n creds[\"password\"] = clouds[0][\"args\"][\"passwd\"]\n else:\n creds[\"clientId\"] = clouds[0][\"args\"][\"clientId\"]\n creds[\"userName\"] = clouds[0][\"args\"][\"username\"]\n creds[\"password\"] = clouds[0][\"args\"][\"passwd\"]\n with open(credspath, \"w\") as cw:\n json.dump(creds,cw)\n\ndef checkParameterConfig(cfg):\n logger.debug(\"Checking Parameters!!!!\")\n paramspath = \"/var/user/files/params.json\"\n cfgparams = convertDStoJSON(cfg.get(\"labels\"))\n #check stored values \n checkFileExist(\"params.json\")\n with open(paramspath, \"r\") as f:\n logger.debug(\"Opened param storage file\")\n params = json.load(f)\n if params:\n if cfgparams != params:\n #go through each param\n #if not \"unknown\" and cfg and params aren't the same take from cfg likely updated manually\n #if key in cfg but not in params copy to params\n logger.debug(\"equalizing params between cfg and stored\")\n for key in cfgparams.keys():\n try:\n if cfgparams[key] != params[key] and cfgparams[key] != \"unknown\":\n params[key] = cfgparams[key]\n except:\n params[key] = cfgparams[key]\n cfg[\"labels\"] = convertJSONtoDS(params)\n _set_global_args(convertJSONtoDS(params))\n with open(paramspath, \"w\") as p:\n json.dump(params, p)\n else:\n with open(paramspath, \"w\") as p:\n logger.debug(\"initializing param file with params in memory\")\n json.dump(convertDStoJSON(get_params()), p)\n cfg[\"labels\"] = get_params()\n \n return cfg\n\n# Helper function to split the payload into chunks\ndef chunk_payload(payload, chunk_size=20):\n chunked_values = list(payload[\"values\"].items())\n for i in range(0, len(chunked_values), chunk_size):\n yield {\n \"ts\": payload[\"ts\"],\n \"values\": dict(chunked_values[i:i+chunk_size])\n }\n\ndef sendData(message):\n #logger.debug(message)\n try:\n checkCredentialConfig()\n except Exception as e:\n logger.error(e)\n payload = {\"ts\": (round(dt.timestamp(dt.now())/600)*600)*1000, \"values\": {}}\n for measure in message[\"measures\"]:\n try:\n logger.debug(measure)\n if abs(payload[\"ts\"]/1000 - measure[\"timestamp\"]) > 3600:\n reboot(reason=\"Poll timestamp and actual timestamp out of sync. Actual: {} Poll: {}\".format(payload[\"ts\"]/1000,measure[\"timestamp\"]))\n if measure[\"name\"] in [\"wellstatus\",\"pidcontrolmode\",\"downholesensorstatus\",\"alarmflowrate\",\"alarmintakepressure\",\"alarmintaketemperature\",\"alarmtubingpressure\",\"alarmvfd\",\"alarmlockout\",\"alarmfluidlevel\",\"runpermissive\",\"startpermissive\",\"last_vfd_fault_code\",\"vfd_fault\", \"flowmeter_fault\"]:\n logger.debug(\"Converting DINT/BOOL to STRING\")\n value = convert_int(measure[\"name\"], measure[\"value\"])\n logger.debug(\"Converted {} to {}\".format(measure[\"value\"], value))\n payload[\"values\"][measure[\"name\"]] = value\n payload[\"values\"][measure[\"name\"] + \"_int\"] = measure[\"value\"]\n else:\n payload[\"values\"][measure[\"name\"]] = measure[\"value\"]\n if measure[\"name\"] == \"wellstatus\":\n if measure[\"value\"] == 0 and not rts.runs[rts.todayString][\"run_\" + str(rts.currentRun)][\"start\"]:\n rts.startRun()\n rts.saveDataToFile(filePath=rts_path)\n elif measure[\"value\"] > 0 and rts.runs[rts.todayString][\"run_\" + str(rts.currentRun)][\"start\"] and not rts.runs[rts.todayString][\"run_\" + str(rts.currentRun)][\"end\"]:\n rts.endRun()\n rts.saveDataToFile(filePath=rts_path)\n logger.info(f\"Adding {rts.calculateRunPercentMultiDay()} to payload as percentRunTime30Days\")\n payload[\"values\"][\"percentRunTime30Days\"] = rts.calculateRunPercentMultiDay()\n \n \n if measure[\"name\"] == \"vfdfrequency\":\n if measure[\"value\"] > 0:\n rts.addHertzDataPoint(measure[\"value\"])\n rts.saveDataToFile(filePath=rts_path)\n logger.info(f\"Adding {rts.calculateAverageHertzMultiDay()} to payload as avgFrequency30Days\")\n payload[\"values\"][\"avgFrequency30Days\"] = rts.calculateAverageHertzMultiDay()\n \n except Exception as e:\n logger.error(e)\n \n for chunk in chunk_payload(payload=payload):\n publish(__topic__, json.dumps(chunk), __qos__, cloud_name=\"ThingsBoard\")\n time.sleep(2)\n publish(\"v1/devices/me/attributes\", json.dumps({\"latestReportTime\": (round(dt.timestamp(dt.now())/600)*600)*1000}), __qos__, cloud_name=\"ThingsBoard\")\n\ndef convert_int(plc_tag, value):\n well_status_codes = {\n 0: \"Running\",\n 1: \"Pumped Off\",\n 2: \"Alarmed\",\n 3: \"Locked Out\",\n 4: \"Stopped\"\n }\n\n pid_control_codes = {\n 0: \"Flow\",\n 1: \"Fluid Level\",\n 2: \"Tubing Pressure\",\n 3: \"Manual\"\n }\n\n downhole_codes = {\n 0: \"OK\",\n 1: \"Connecting\",\n 2: \"Open Circuit\",\n 3: \"Shorted\",\n 4: \"Cannot Decode\"\n }\n\n permissive_codes = {\n 0: \"OK\",\n 1: \"Flow\",\n 2: \"Intake Pressure\",\n 3: \"Intake Temperature\",\n 4: \"Tubing Pressure\",\n 5: \"VFD\",\n 6: \"Fluid Level\",\n 7: \"Min. Downtime\"\n }\n\n alarm_codes = {\n 0: \"OK\",\n 1: \"Alarm\"\n }\n\n alarm_vfd_codes = {\n 0: \"OK\",\n 1: \"Locked Out\"\n }\n\n vfd_fault_codes = {\n 0: \"No Fault\",\n 2: \"Auxiliary Input\",\n 3: \"Power Loss\",\n 4: \"UnderVoltage\",\n 5: \"OverVoltage\",\n 7: \"Motor Overload\",\n 8: \"Heatsink OverTemp\",\n 9: \"Thermister OverTemp\",\n 10: \"Dynamic Brake OverTemp\",\n 12: \"Hardware OverCurrent\",\n 13: \"Ground Fault\",\n 14: \"Ground Warning\",\n 15: \"Load Loss\",\n 17: \"Input Phase Loss\",\n 18: \"Motor PTC Trip\",\n 19: \"Task Overrun\",\n 20: \"Torque Prove Speed Band\",\n 21: \"Output Phase Loss\",\n 24: \"Decel Inhibit\",\n 25: \"OverSpeed Limit\",\n 26: \"Brake Slipped\",\n 27: \"Torque Prove Conflict\",\n 28: \"TP Encls Confict\",\n 29: \"Analog In Loss\",\n 33: \"Auto Restarts Exhausted\",\n 35: \"IPM OverCurrent\",\n 36: \"SW OverCurrent\",\n 38: \"Phase U to Ground\",\n 39: \"Phase V to Ground\",\n 40: \"Phase W to Ground\",\n 41: \"Phase UV Short\",\n 42: \"Phase VW Short\",\n 43: \"Phase WU Short\",\n 44: \"Phase UNeg to Ground\",\n 45: \"Phase VNeg to Ground\",\n 46: \"Phase WNeg to Ground\",\n 48: \"System Defaulted\",\n 49: \"Drive Powerup\",\n 51: \"Clear Fault Queue\",\n 55: \"Control Board Overtemp\",\n 59: \"Invalid Code\",\n 61: \"Shear Pin 1\",\n 62: \"Shear Pin 2\",\n 64: \"Drive Overload\",\n 66: \"OW Torque Level\",\n 67: \"Pump Off\",\n 71: \"Port 1 Adapter\",\n 72: \"Port 2 Adapter\",\n 73: \"Port 3 Adapter\",\n 74: \"Port 4 Adapter\",\n 75: \"Port 5 Adapter\",\n 76: \"Port 6 Adapter\",\n 77: \"IR Volts Range\",\n 78: \"FluxAmps Ref Range\",\n 79: \"Excessive Load\",\n 80: \"AutoTune Aborted\",\n 81: \"Port 1 DPI Loss\",\n 82: \"Port 2 DPI Loss\",\n 83: \"Port 3 DPI Loss\",\n 84: \"Port 4 DPI Loss\",\n 85: \"Port 5 DPI Loss\",\n 86: \"Port 6 DPI Loss\",\n 87: \"IXo Voltage Range\",\n 91: \"Primary Velocity Feedback Loss\",\n 93: \"Hardware Enable Check\",\n 94: \"Alternate Velocity Feedback Loss\",\n 95: \"Auxiliary Velocity Feedback Loss\",\n 96: \"Position Feedback Loss\",\n 97: \"Auto Tach Switch\",\n 100: \"Parameter Checksum\",\n 101: \"Power Down NVS Blank\",\n 102: \"NVS Not Blank\",\n 103: \"Power Down NVS Incompatible\",\n 104: \"Power Board Checksum\",\n 106: \"Incompat MCB-PB\",\n 107: \"Replaced MCB-PB\",\n 108: \"Analog Calibration Checksum\",\n 110: \"Invalid Power Board Data\",\n 111: \"Power Board Invalid ID\",\n 112: \"Power Board App Min Version\",\n 113: \"Tracking DataError\",\n 115: \"Power Down Table Full\",\n 116: \"Power Down Entry Too Large\",\n 117: \"Power Down Data Checksum\",\n 118: \"Power Board Power Down Checksum\",\n 124: \"App ID Changed\",\n 125: \"Using Backup App\",\n 134: \"Start on Power Up\",\n 137: \"External Precharge Error\",\n 138: \"Precharge Open\",\n 141: \"Autotune Enc Angle\",\n 142: \"Autotune Speed Restricted\",\n 143: \"Autotune Current Regulator\",\n 144: \"Autotune Inertia\",\n 145: \"Autotune Travel\",\n 13035: \"Net IO Timeout\",\n 13037: \"Net IO Timeout\"\n\n }\n\n plc_tags = {\n \"wellstatus\": well_status_codes.get(value, \"Invalid Code\"),\n \"pidcontrolmode\": pid_control_codes.get(value, \"Invalid Code\"),\n \"downholesensorstatus\": downhole_codes.get(value, \"Invalid Code\"),\n \"alarmflowrate\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmintakepressure\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmintaketemperature\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmtubingpressure\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmvfd\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmlockout\": alarm_vfd_codes.get(value, \"Invalid Code\"),\n \"alarmfluidlevel\": alarm_codes.get(value, \"Invalid Code\"),\n \"runpermissive\": permissive_codes.get(value, \"Invalid Code\"),\n \"startpermissive\": permissive_codes.get(value, \"Invalid Code\"),\n \"last_vfd_fault_code\": vfd_fault_codes.get(value, \"Invalid Code\"),\n \"vfd_fault\": vfd_fault_codes.get(value, \"Invalid Code\"),\n \"flowmeter_fault\": alarm_codes.get(value, \"Invalid Code\")\n }\n\n return plc_tags.get(plc_tag, \"Invalid Tag\")\n\n ", + "name": "sendData", + "trigger": "measure_event", + "topic": "v1/devices/me/telemetry", + "cloudName": "ThingsBoard", + "groups": [ + "default" + ], + "msgType": 0 + } + ], + "downloadFuncs": [ + { + "name": "Commands", + "topic": "meshify/sets/194/${MAC_UPPER}:01:99", + "qos": 1, + "funcName": "receiveCommand", + "payload_type": "Plaintext", + "script": "# Enter your python code.\nimport json\nfrom quickfaas.measure import recall\nfrom common.Logger import logger\n\ndef sync(mac,value, wizard_api):\n #get new values and send\n try:\n data = recall()#json.loads(recall().decode(\"utf-8\"))\n except Exception as e:\n logger.error(e)\n logger.info(data)\n for controller in data:\n for measure in controller[\"measures\"]:\n #publish measure\n topic = \"meshify/db/194/_/advvfdipp/\" + mac + \"/\" + measure[\"name\"]\n if measure[\"name\"] in [\"wellstatus\",\"pidcontrolmode\",\"downholesensorstatus\",\"alarmflowrate\",\"alarmintakepressure\",\"alarmintaketemperature\",\"alarmtubingpressure\",\"alarmvfd\",\"alarmlockout\",\"alarmfluidlevel\",\"runpermissive\",\"startpermissive\",\"last_vfd_fault_code\",\"vfd_fault\"]:\n payload = [{\"value\": convert_int(measure[\"name\"], measure[\"value\"])}]\n else:\n payload = [{\"value\": measure[\"value\"]}]\n logger.debug(\"Sending on topic: {}\".format(topic))\n logger.debug(\"Sending value: {}\".format(payload))\n wizard_api.mqtt_publish(topic, json.dumps(payload))\ndef writeplctag(mac, value, wizard_api):\n try:\n value = json.loads(value.replace(\"'\",'\"'))\n logger.debug(value)\n message = {\"advvfdipp\":{value[\"tag\"]: value[\"val\"]}}\n wizard_api.write_plc_values(message)\n except Exception as e:\n logger.debug(e)\n \ndef receiveCommand(topic, payload, wizard_api):\n logger.debug(topic)\n logger.debug(json.loads(payload))\n p = json.loads(payload)[0]\n command = p[\"payload\"][\"name\"].split(\".\")[1]\n commands = {\n \"sync\": sync,\n \"writeplctag\": writeplctag,\n }\n commands[command](p[\"mac\"].lower(),p[\"payload\"][\"value\"], wizard_api)\n #logger.debug(command)\n ack(p[\"msgId\"], p[\"mac\"], command, p[\"payload\"][\"name\"].split(\".\")[1], p[\"payload\"][\"value\"], wizard_api)\n\ndef ack(msgid, mac, name, command, value, wizard_api):\n #logger.debug(mac)\n macsquish = \"\".join(mac.split(\":\")[:-2])\n maclower = \":\".join(mac.split(\":\")[:-2])\n maclower = maclower.lower()\n #logger.debug(msgid)\n #logger.debug(mac)\n #logger.debug(name)\n #logger.debug(value)\n wizard_api.mqtt_publish(\"meshify/responses/\" + str(msgid), json.dumps([{\"value\": \"{} Success Setting: {} To: {}\".format(macsquish,name, value), \"msgid\": str(msgid)}]))\n wizard_api.mqtt_publish(\"meshify/db/194/_/mainMeshify/\" + maclower + \":00:00/commands\", json.dumps([{\"value\": {\"status\": \"success\", \"value\": str(value), \"channel\": command}, \"msgid\": str(msgid)}]))\n\ndef convert_int(plc_tag, value):\n well_status_codes = {\n 0: \"Running\",\n 1: \"Pumped Off\",\n 2: \"Alarmed\",\n 3: \"Locked Out\",\n 4: \"Stopped\"\n }\n\n pid_control_codes = {\n 0: \"Flow\",\n 1: \"Fluid Level\",\n 2: \"Tubing Pressure\",\n 3: \"Manual\"\n }\n\n downhole_codes = {\n 0: \"OK\",\n 1: \"Connecting\",\n 2: \"Open Circuit\",\n 3: \"Shorted\",\n 4: \"Cannot Decode\"\n }\n\n permissive_codes = {\n 0: \"OK\",\n 1: \"Flow\",\n 2: \"Intake Pressure\",\n 3: \"Intake Temperature\",\n 4: \"Tubing Pressure\",\n 5: \"VFD\",\n 6: \"Fluid Level\",\n 7: \"Min. Downtime\"\n }\n\n alarm_codes = {\n 0: \"OK\",\n 1: \"Alarm\"\n }\n\n alarm_vfd_codes = {\n 0: \"OK\",\n 1: \"Locked Out\"\n }\n\n vfd_fault_codes = {\n 0: \"No Fault\",\n 2: \"Auxiliary Input\",\n 3: \"Power Loss\",\n 4: \"UnderVoltage\",\n 5: \"OverVoltage\",\n 7: \"Motor Overload\",\n 8: \"Heatsink OverTemp\",\n 9: \"Thermister OverTemp\",\n 10: \"Dynamic Brake OverTemp\",\n 12: \"Hardware OverCurrent\",\n 13: \"Ground Fault\",\n 14: \"Ground Warning\",\n 15: \"Load Loss\",\n 17: \"Input Phase Loss\",\n 18: \"Motor PTC Trip\",\n 19: \"Task Overrun\",\n 20: \"Torque Prove Speed Band\",\n 21: \"Output Phase Loss\",\n 24: \"Decel Inhibit\",\n 25: \"OverSpeed Limit\",\n 26: \"Brake Slipped\",\n 27: \"Torque Prove Conflict\",\n 28: \"TP Encls Confict\",\n 29: \"Analog In Loss\",\n 33: \"Auto Restarts Exhausted\",\n 35: \"IPM OverCurrent\",\n 36: \"SW OverCurrent\",\n 38: \"Phase U to Ground\",\n 39: \"Phase V to Ground\",\n 40: \"Phase W to Ground\",\n 41: \"Phase UV Short\",\n 42: \"Phase VW Short\",\n 43: \"Phase WU Short\",\n 44: \"Phase UNeg to Ground\",\n 45: \"Phase VNeg to Ground\",\n 46: \"Phase WNeg to Ground\",\n 48: \"System Defaulted\",\n 49: \"Drive Powerup\",\n 51: \"Clear Fault Queue\",\n 55: \"Control Board Overtemp\",\n 59: \"Invalid Code\",\n 61: \"Shear Pin 1\",\n 62: \"Shear Pin 2\",\n 64: \"Drive Overload\",\n 66: \"OW Torque Level\",\n 67: \"Pump Off\",\n 71: \"Port 1 Adapter\",\n 72: \"Port 2 Adapter\",\n 73: \"Port 3 Adapter\",\n 74: \"Port 4 Adapter\",\n 75: \"Port 5 Adapter\",\n 76: \"Port 6 Adapter\",\n 77: \"IR Volts Range\",\n 78: \"FluxAmps Ref Range\",\n 79: \"Excessive Load\",\n 80: \"AutoTune Aborted\",\n 81: \"Port 1 DPI Loss\",\n 82: \"Port 2 DPI Loss\",\n 83: \"Port 3 DPI Loss\",\n 84: \"Port 4 DPI Loss\",\n 85: \"Port 5 DPI Loss\",\n 86: \"Port 6 DPI Loss\",\n 87: \"IXo Voltage Range\",\n 91: \"Primary Velocity Feedback Loss\",\n 93: \"Hardware Enable Check\",\n 94: \"Alternate Velocity Feedback Loss\",\n 95: \"Auxiliary Velocity Feedback Loss\",\n 96: \"Position Feedback Loss\",\n 97: \"Auto Tach Switch\",\n 100: \"Parameter Checksum\",\n 101: \"Power Down NVS Blank\",\n 102: \"NVS Not Blank\",\n 103: \"Power Down NVS Incompatible\",\n 104: \"Power Board Checksum\",\n 106: \"Incompat MCB-PB\",\n 107: \"Replaced MCB-PB\",\n 108: \"Analog Calibration Checksum\",\n 110: \"Invalid Power Board Data\",\n 111: \"Power Board Invalid ID\",\n 112: \"Power Board App Min Version\",\n 113: \"Tracking DataError\",\n 115: \"Power Down Table Full\",\n 116: \"Power Down Entry Too Large\",\n 117: \"Power Down Data Checksum\",\n 118: \"Power Board Power Down Checksum\",\n 124: \"App ID Changed\",\n 125: \"Using Backup App\",\n 134: \"Start on Power Up\",\n 137: \"External Precharge Error\",\n 138: \"Precharge Open\",\n 141: \"Autotune Enc Angle\",\n 142: \"Autotune Speed Restricted\",\n 143: \"Autotune Current Regulator\",\n 144: \"Autotune Inertia\",\n 145: \"Autotune Travel\",\n 13035: \"Net IO Timeout\",\n 13037: \"Net IO Timeout\"\n\n }\n\n plc_tags = {\n \"wellstatus\": well_status_codes.get(value, \"Invalid Code\"),\n \"pidcontrolmode\": pid_control_codes.get(value, \"Invalid Code\"),\n \"downholesensorstatus\": downhole_codes.get(value, \"Invalid Code\"),\n \"alarmflowrate\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmintakepressure\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmintaketemperature\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmtubingpressure\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmvfd\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmlockout\": alarm_vfd_codes.get(value, \"Invalid Code\"),\n \"alarmfluidlevel\": alarm_codes.get(value, \"Invalid Code\"),\n \"runpermissive\": permissive_codes.get(value, \"Invalid Code\"),\n \"startpermissive\": permissive_codes.get(value, \"Invalid Code\"),\n \"last_vfd_fault_code\": vfd_fault_codes.get(value, \"Invalid Code\"),\n \"vfd_fault\": vfd_fault_codes.get(value, \"Invalid Code\")\n }\n\n return plc_tags.get(plc_tag, \"Invalid Tag\")\n", + "msgType": 0, + "trigger": "command_event", + "cloudName": "default" + }, + { + "payload_type": "Plaintext", + "name": "receiveCommand", + "topic": "v1/devices/me/rpc/request/+", + "qos": 1, + "funcName": "receiveCommand", + "script": "import json, time\nfrom datetime import datetime as dt\nfrom quickfaas.measure import recall, write\nfrom quickfaas.remotebus import publish\nfrom common.Logger import logger\n\n# Helper function to split the payload into chunks\ndef chunk_payload(payload, chunk_size=20):\n chunked_values = list(payload[\"values\"].items())\n for i in range(0, len(chunked_values), chunk_size):\n yield {\n \"ts\": payload[\"ts\"],\n \"values\": dict(chunked_values[i:i+chunk_size])\n }\n\ndef sync():\n #get new values and send\n payload = {\"ts\": round(dt.timestamp(dt.now()))*1000, \"values\": {}}\n topic = \"v1/devices/me/telemetry\"\n try:\n data = recall()#json.loads(recall().decode(\"utf-8\"))\n except Exception as e:\n logger.error(e)\n logger.debug(data)\n for controller in data:\n for measure in controller[\"measures\"]:\n #publish measure\n if measure[\"name\"] in [\"wellstatus\",\"pidcontrolmode\",\"downholesensorstatus\",\"alarmflowrate\",\"alarmintakepressure\",\"alarmintaketemperature\",\"alarmtubingpressure\",\"alarmvfd\",\"alarmlockout\",\"alarmfluidlevel\",\"runpermissive\",\"startpermissive\",\"last_vfd_fault_code\",\"vfd_fault\", \"flowmeter_fault\"]:\n payload[\"values\"][measure[\"name\"]] = convert_int(measure[\"name\"], measure[\"value\"])\n payload[\"values\"][measure[\"name\"]+ \"_int\"] = measure[\"value\"]\n else:\n payload[\"values\"][measure[\"name\"]] = measure[\"value\"]\n logger.debug(\"Sending on topic: {}\".format(topic))\n logger.debug(\"Sending value: {}\".format(payload))\n for chunk in chunk_payload(payload=payload):\n publish(topic, json.dumps(chunk), 1, cloud_name=\"ThingsBoard\")\n time.sleep(2)\ndef writeplctag(value):\n #value in the form {\"measurement\": , \"value\": }\n try:\n #value = json.loads(value.replace(\"'\",'\"'))\n logger.debug(value)\n #payload format: [{\"name\": \"advvfdipp\", \"measures\": [{\"name\": \"manualfrequencysetpoint\", \"value\": 49}]}]\n message = [{\"name\": \"advvfdipp\", \"measures\":[{\"name\":value[\"measurement\"], \"value\": value[\"value\"]}]}]\n resp = write(message) \n logger.debug(\"RETURN FROM WRITE: {}\".format(resp))\n return True\n except Exception as e:\n logger.debug(e)\n return False\n \ndef receiveCommand(topic, payload):\n try:\n logger.debug(topic)\n logger.debug(json.loads(payload))\n p = json.loads(payload)\n command = p[\"method\"]\n commands = {\n \"sync\": sync,\n \"writeplctag\": writeplctag,\n } \n if command == \"setPLCTag\":\n try:\n result = commands[\"writeplctag\"](p[\"params\"])\n logger.debug(result)\n except Exception as e:\n logger.error(e)\n elif command == \"changeSetpoint\":\n try:\n logger.debug(\"attempting controlpoint write\")\n params_type = {\"measurement\": \"pidcontrolmode\", \"value\": p[\"params\"][\"setpointType\"]}\n if params_type[\"value\"]:\n commands[\"writeplctag\"](params_type)\n time.sleep(2)\n except Exception as e:\n logger.error(\"DID NOT WRITE CONTROL MODE\")\n logger.error(e)\n try:\n logger.debug(\"attempting setpoint write\")\n modes = {0: \"flowsetpoint\", 1: \"fluidlevelsetpoint\", 2: \"tubingpressuresetpoint\", 3: \"manualfrequencysetpoint\"}\n params_value = {\"value\": p[\"params\"][\"setpointValue\"]}\n if params_value[\"value\"]:\n params_value[\"measurement\"] = modes[getMode()]\n result = commands[\"writeplctag\"](params_value)\n logger.debug(result)\n except Exception as e:\n logger.error(\"DID NOT WRITE SETPOINT\")\n logger.error(e)\n #logger.debug(command)\n ack(topic.split(\"/\")[-1])\n time.sleep(5)\n sync()\n except Exception as e:\n logger.debug(e)\n \n\ndef ack(msgid):\n #logger.debug(msgid)\n #logger.debug(mac)\n #logger.debug(name)\n #logger.debug(value)\n publish(\"v1/devices/me/rpc/response/\" + str(msgid), json.dumps({\"msg\": {\"time\": time.time()}, \"metadata\": \"\", \"msgType\": \"\"}), 1,cloud_name=\"ThingsBoard\")\n\ndef getMode():\n try:\n data = recall()\n for controller in data:\n for measure in controller[\"measures\"]:\n if measure[\"name\"] == \"pidcontrolmode\":\n return measure[\"value\"]\n except:\n return None\n\ndef convert_int(plc_tag, value):\n well_status_codes = {\n 0: \"Running\",\n 1: \"Pumped Off\",\n 2: \"Alarmed\",\n 3: \"Locked Out\",\n 4: \"Stopped\"\n }\n\n pid_control_codes = {\n 0: \"Flow\",\n 1: \"Fluid Level\",\n 2: \"Tubing Pressure\",\n 3: \"Manual\"\n }\n\n downhole_codes = {\n 0: \"OK\",\n 1: \"Connecting\",\n 2: \"Open Circuit\",\n 3: \"Shorted\",\n 4: \"Cannot Decode\"\n }\n\n permissive_codes = {\n 0: \"OK\",\n 1: \"Flow\",\n 2: \"Intake Pressure\",\n 3: \"Intake Temperature\",\n 4: \"Tubing Pressure\",\n 5: \"VFD\",\n 6: \"Fluid Level\",\n 7: \"Min. Downtime\"\n }\n\n alarm_codes = {\n 0: \"OK\",\n 1: \"Alarm\"\n }\n\n alarm_vfd_codes = {\n 0: \"OK\",\n 1: \"Locked Out\"\n }\n\n vfd_fault_codes = {\n 0: \"No Fault\",\n 2: \"Auxiliary Input\",\n 3: \"Power Loss\",\n 4: \"UnderVoltage\",\n 5: \"OverVoltage\",\n 7: \"Motor Overload\",\n 8: \"Heatsink OverTemp\",\n 9: \"Thermister OverTemp\",\n 10: \"Dynamic Brake OverTemp\",\n 12: \"Hardware OverCurrent\",\n 13: \"Ground Fault\",\n 14: \"Ground Warning\",\n 15: \"Load Loss\",\n 17: \"Input Phase Loss\",\n 18: \"Motor PTC Trip\",\n 19: \"Task Overrun\",\n 20: \"Torque Prove Speed Band\",\n 21: \"Output Phase Loss\",\n 24: \"Decel Inhibit\",\n 25: \"OverSpeed Limit\",\n 26: \"Brake Slipped\",\n 27: \"Torque Prove Conflict\",\n 28: \"TP Encls Confict\",\n 29: \"Analog In Loss\",\n 33: \"Auto Restarts Exhausted\",\n 35: \"IPM OverCurrent\",\n 36: \"SW OverCurrent\",\n 38: \"Phase U to Ground\",\n 39: \"Phase V to Ground\",\n 40: \"Phase W to Ground\",\n 41: \"Phase UV Short\",\n 42: \"Phase VW Short\",\n 43: \"Phase WU Short\",\n 44: \"Phase UNeg to Ground\",\n 45: \"Phase VNeg to Ground\",\n 46: \"Phase WNeg to Ground\",\n 48: \"System Defaulted\",\n 49: \"Drive Powerup\",\n 51: \"Clear Fault Queue\",\n 55: \"Control Board Overtemp\",\n 59: \"Invalid Code\",\n 61: \"Shear Pin 1\",\n 62: \"Shear Pin 2\",\n 64: \"Drive Overload\",\n 66: \"OW Torque Level\",\n 67: \"Pump Off\",\n 71: \"Port 1 Adapter\",\n 72: \"Port 2 Adapter\",\n 73: \"Port 3 Adapter\",\n 74: \"Port 4 Adapter\",\n 75: \"Port 5 Adapter\",\n 76: \"Port 6 Adapter\",\n 77: \"IR Volts Range\",\n 78: \"FluxAmps Ref Range\",\n 79: \"Excessive Load\",\n 80: \"AutoTune Aborted\",\n 81: \"Port 1 DPI Loss\",\n 82: \"Port 2 DPI Loss\",\n 83: \"Port 3 DPI Loss\",\n 84: \"Port 4 DPI Loss\",\n 85: \"Port 5 DPI Loss\",\n 86: \"Port 6 DPI Loss\",\n 87: \"IXo Voltage Range\",\n 91: \"Primary Velocity Feedback Loss\",\n 93: \"Hardware Enable Check\",\n 94: \"Alternate Velocity Feedback Loss\",\n 95: \"Auxiliary Velocity Feedback Loss\",\n 96: \"Position Feedback Loss\",\n 97: \"Auto Tach Switch\",\n 100: \"Parameter Checksum\",\n 101: \"Power Down NVS Blank\",\n 102: \"NVS Not Blank\",\n 103: \"Power Down NVS Incompatible\",\n 104: \"Power Board Checksum\",\n 106: \"Incompat MCB-PB\",\n 107: \"Replaced MCB-PB\",\n 108: \"Analog Calibration Checksum\",\n 110: \"Invalid Power Board Data\",\n 111: \"Power Board Invalid ID\",\n 112: \"Power Board App Min Version\",\n 113: \"Tracking DataError\",\n 115: \"Power Down Table Full\",\n 116: \"Power Down Entry Too Large\",\n 117: \"Power Down Data Checksum\",\n 118: \"Power Board Power Down Checksum\",\n 124: \"App ID Changed\",\n 125: \"Using Backup App\",\n 134: \"Start on Power Up\",\n 137: \"External Precharge Error\",\n 138: \"Precharge Open\",\n 141: \"Autotune Enc Angle\",\n 142: \"Autotune Speed Restricted\",\n 143: \"Autotune Current Regulator\",\n 144: \"Autotune Inertia\",\n 145: \"Autotune Travel\",\n 13035: \"Net IO Timeout\",\n 13037: \"Net IO Timeout\"\n\n }\n\n plc_tags = {\n \"wellstatus\": well_status_codes.get(value, \"Invalid Code\"),\n \"pidcontrolmode\": pid_control_codes.get(value, \"Invalid Code\"),\n \"downholesensorstatus\": downhole_codes.get(value, \"Invalid Code\"),\n \"alarmflowrate\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmintakepressure\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmintaketemperature\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmtubingpressure\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmvfd\": alarm_codes.get(value, \"Invalid Code\"),\n \"alarmlockout\": alarm_vfd_codes.get(value, \"Invalid Code\"),\n \"alarmfluidlevel\": alarm_codes.get(value, \"Invalid Code\"),\n \"runpermissive\": permissive_codes.get(value, \"Invalid Code\"),\n \"startpermissive\": permissive_codes.get(value, \"Invalid Code\"),\n \"last_vfd_fault_code\": vfd_fault_codes.get(value, \"Invalid Code\"),\n \"vfd_fault\": vfd_fault_codes.get(value, \"Invalid Code\"),\n \"flowmeter_fault\": alarm_codes.get(value, \"Invalid Code\")\n }\n\n return plc_tags.get(plc_tag, \"Invalid Tag\")\n", + "msgType": 0, + "cloudName": "ThingsBoard", + "trigger": "command_event" + } + ] + }, + "mindspheres": [ + { + "name": "mindsphere", + "enable": 0, + "_id": "mindsphereeafcdf", + "args": { + "hostEnvironment": "eu1", + "hostDomain": "mindsphere.io", + "appName": "", + "appVersion": "", + "clientId": "", + "clientSecret": "", + "authType": "tenant", + "hostTenant": "", + "userTenant": "", + "timeout": 10, + "statusTimeout": 300, + "enableOfflinePut": 0 + }, + "mindsphereputs": [] + } + ], + "labels": [ + { + "key": "SN", + "value": "GF5022137006247", + "_id": "000066fc0df1ddfa" + }, + { + "key": "MAC", + "value": "00:18:05:1a:e5:2a", + "_id": "000166fc0df1f2b4" + }, + { + "key": "MAC_LOWER", + "value": "c4:93:00:0e:d5:03", + "_id": "000266fc0df1f909" + }, + { + "key": "MAC_UPPER", + "value": "C4:93:00:0E:D5:03", + "_id": "000366fc0df17442" + } + ], + "modbusSlave": { + "enable": 0, + "protocol": "Modbus-TCP", + "port": 502, + "slaveAddr": 1, + "int16Ord": "ab", + "int32Ord": "abcd", + "float32Ord": "abcd", + "maxConnection": 5, + "mapping_table": [], + "useRawvalue": 1, + "mappingTable": [ + { + "name": "1", + "slaveAddr": 1, + "_id": "modbusTCPSlave01", + "measures": [] + } + ] + }, + "modbusRTUSlave": { + "enable": 0, + "protocol": "Modbus-RTU", + "coms": "rs485", + "slaveAddr": 1, + "int16Ord": "ab", + "int32Ord": "abcd", + "float32Ord": "abcd", + "mappingTable": [ + { + "name": "1", + "slaveAddr": 1, + "_id": "modbusRTUSlave01", + "measures": [] + } + ] + }, + "iec104Server": { + "enable": 0, + "cotSize": 2, + "port": 2404, + "serverList": [ + { + "asduAddr": 1 + } + ], + "kValue": 12, + "wValue": 8, + "t0": 15, + "t1": 15, + "t2": 10, + "t3": 20, + "maximumLink": 5, + "timeSet": 1, + "byteOrder": "abcd", + "useRawvalue": 1, + "connectMode": "tcpServer", + "enableSpontaneous": 1, + "asduLen": 2, + "mapping_table": [] + }, + "iec101Server": { + "enable": 0, + "coms": "rs485", + "mode": "UnBalance", + "protocolMode": 0, + "linkLen": 2, + "linkAddr": 1, + "asduLen": 2, + "ioaLen": 3, + "cotLen": 2, + "serverList": [ + { + "asduAddr": 1 + } + ], + "linkTimeOut": 2000, + "timeSet": 1, + "idleTimeOut": 10000, + "byteOrder": "abcd", + "useRawvalue": 1, + "enableSpontaneous": 1, + "mappingTable": { + "YX": [], + "YC": [], + "YK": [] + } + }, + "iec104Client": { + "enable": 0, + "connectType": 2, + "serverAddr": "ipower.inhandcloud.cn", + "serverPort": 2406, + "communicationCode": "", + "protocol": 1, + "asduAddr": 1, + "tls": 1, + "verification": 1, + "mapping_table": { + "YX": [], + "YC": [], + "YK": [] + } + }, + "opcuaServer": { + "enable": 0, + "port": 4840, + "maximumLink": 5, + "securityMode": 0, + "identifierType": "String", + "certificate": "None", + "privateKey": "None", + "pubsub": 0, + "useRawvalue": 1, + "mapping_table": [] + }, + "iec61850Server": { + "enable": 0, + "protocol": "iec61850Server", + "port": 102, + "iedName": "INHAND", + "LDName": "Gateway", + "ctrlMode": 1, + "authentication": 0, + "password": "123456", + "useRawvalue": 1, + "dataSet": [], + "mapping_table": [] + }, + "sl651Slave": { + "enable": 0, + "centerAaddr": 1, + "remoteAddr": "", + "addrCode": "", + "password": "", + "platform_list": [], + "useRawvalue": 1, + "mapping_table": [] + }, + "hj212Client": { + "enable": 0, + "useRawvalue": 1, + "platform_list": [], + "block_list": [], + "mapping_table": [] + }, + "bacnetServer": { + "enable": 0, + "protocol": "BACnet/IP", + "deviceId": 0, + "port": 47808, + "bbmdEnable": 0, + "useRawvalue": 1, + "mapping_table": [] + }, + "Dnp3Server": { + "enable": 0, + "protocol": "Dnp3-TCP", + "slaveAddr": 1, + "masterAddr": 2, + "port": 20000, + "useRawvalue": 1, + "enableUnsol": 0, + "maxFrasize": 4096, + "layerTimeout": 1000, + "linkRetry": 5, + "enableLink": 0, + "mapping_table": [] + }, + "snmpAgent": { + "enable": 0, + "port": 161, + "useRawvalue": 1, + "version": 3, + "userName": "", + "enableAuth": 0, + "readWrite": "ro", + "enable_trap": 0, + "mapping_table": [] + }, + "southMetadata": {}, + "bindMetadata": { + "version": "", + "timestamp": "" + }, + "bindConfig": { + "enable": 0, + "bind": { + "modelId": "", + "modelName": "", + "srcId": "", + "srcName": "", + "devId": "", + "devName": "" + }, + "varGroups": [], + "variables": [], + "alerts": [] + }, + "templates": {}, + "version": "3.1.5" +} \ No newline at end of file diff --git a/Pub_Sub/oradvvfdipp/thingsboard/pub/sendData.py b/Pub_Sub/oradvvfdipp/thingsboard/pub/sendData.py new file mode 100644 index 0000000..2929c7d --- /dev/null +++ b/Pub_Sub/oradvvfdipp/thingsboard/pub/sendData.py @@ -0,0 +1,515 @@ +import json, os, time, math, uuid +from datetime import datetime as dt +from common.Logger import logger +from quickfaas.remotebus import publish +from quickfaas.global_dict import get as get_params +from quickfaas.global_dict import _set_global_args + +class RuntimeStats: + def __init__(self): + self.runs = {} + self.currentRun = 0 + self.today = "" + self.todayString = "" + + def manageTime(self): + if self.todayString != dt.strftime(dt.today(), "%Y-%m-%d"): + if self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] and not self.runs[self.todayString]["run_" + str(self.currentRun)]["end"]: + self.runs[self.todayString]["run_" + str(self.currentRun)]["end"] = time.mktime(dt.strptime(self.todayString + " 23:59:59", "%Y-%m-%d %H:%M:%S").timetuple()) + self.addDay() + self.today = dt.today() + self.todayString = dt.strftime(self.today, "%Y-%m-%d") + days = list(self.runs.keys()) + days.sort() + while (dt.strptime(days[-1],"%Y-%m-%d") - dt.strptime(days[0], "%Y-%m-%d")).days > 30: + self.removeDay(day=days[0]) + days = list(self.runs.keys()) + days.sort() + + def addHertzDataPoint(self, frequency): + if frequency > 0: + self.manageTime() + try: + self.runs[self.todayString]["run_" + str(self.currentRun)]["frequencies"].append(frequency) + except: + self.runs[self.todayString]["run_" + str(self.currentRun)]["frequencies"] = [frequency] + + def startRun(self): + if self.checkRunning(): + self.endRun() + self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] = time.time() + + def endRun(self): + self.runs[self.todayString]["run_" + str(self.currentRun)]["end"] = time.time() + self.currentRun += 1 + self.runs[self.todayString]["run_" + str(self.currentRun)] = {"start":0, "end": 0, "frequencies":[]} + + def checkRunning(self): + if self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] and not self.runs[self.todayString]["run_" + str(self.currentRun)]["end"]: + return True + return False + + def addDay(self): + self.today = dt.today() + self.todayString = dt.strftime(self.today, "%Y-%m-%d") + self.currentRun = 1 + self.runs[self.todayString] = {} + self.runs[self.todayString]["run_" + str(self.currentRun)] = {"start":0, "end": 0, "frequencies":[]} + + def countRunsDay(self, day=None): + if not day: + day = self.todayString + return len(self.runs[day].keys()) + + def countRunsMultiDay(self, numDays=30): + total_runs = 0 + for day in list(self.runs.keys()): + total_runs += self.countRunsDay(day=day) + return total_runs + + def calculateAverageHertzDay(self, day=None, returnArray=False): + dayFrequencies = [] + if not day: + day = self.todayString + for run in list(self.runs[day].keys()): + try: + dayFrequencies += self.runs[day][run]["frequencies"] + except Exception as e: + print("{} missing frequency data for {}".format(day,run)) + if returnArray: + return dayFrequencies + return round(math.fsum(dayFrequencies)/len(dayFrequencies),2) + + def calculateAverageHertzMultiDay(self, numDays=30): + self.manageTime() + frequencies = [] + for day in list(self.runs.keys()): + if not day == self.todayString and (dt.strptime(self.todayString, "%Y-%m-%d") - dt.strptime(day, "%Y-%m-%d")).days <= numDays: + try: + frequencies += self.calculateAverageHertzDay(day=day, returnArray=True) + except Exception as e: + print("{} missing frequency data".format(day)) + if len(frequencies): + return round(math.fsum(frequencies)/len(frequencies), 2) + return 0 + + def calculateRunTimeDay(self, day=None, convertToHours=True): + total_time = 0 + if not day: + day = self.todayString + for run in list(self.runs[day].keys()): + total_time = self.runs[day][run]["end"] - self.runs[day][run]["start"] + total_time + if convertToHours: + return self.convertSecondstoHours(total_time) + return total_time + + def calculateRunTimeMultiDay(self, numDays=30, convertToHours=True): + total_time = 0 + for day in list(self.runs.keys()): + if not day == self.todayString and (dt.strptime(self.todayString, "%Y-%m-%d") - dt.strptime(day, "%Y-%m-%d")).days <= numDays: + total_time += self.calculateRunTimeDay(day=day, convertToHours=False) + if convertToHours: + return self.convertSecondstoHours(total_time) + return total_time + + def calculateRunPercentDay(self, day=None, precise=False): + if not day: + day = self.todayString + if precise: + return (self.calculateRunTimeDay(day=day)/24) * 100 + return round((self.calculateRunTimeDay(day=day)/24) * 100, 2) + + + def calculateRunPercentMultiDay(self, numDays=30, precise=False): + self.manageTime() + if precise: + return (self.calculateRunTimeMultiDay()/(24*numDays)) * 100 + return round((self.calculateRunTimeMultiDay()/(24*numDays)) * 100,2) + + def removeDay(self, day=None): + if not day: + raise Exception("Day can not be None") + print("removing day {}".format(day)) + del self.runs[day] + + def convertSecondstoHours(self, seconds): + return round(seconds / (60*60),2) + + def loadDataFromFile(self, filePath="/var/user/files/runtimestats.json"): + try: + with open(filePath, "r") as f: + temp = json.load(f) + self.runs = temp["data"] + self.currentRun = temp["current_run"] + self.today = dt.strptime(temp["current_day"], "%Y-%m-%d") + self.todayString = temp["current_day"] + self.manageTime() + except: + print("Could not find file at {}".format(filePath)) + print("creating file") + self.addDay() + try: + with open(filePath, "w") as f: + d = { + "current_run": self.currentRun, + "current_day": self.todayString, + "data": self.runs + } + json.dump(d, f, indent=4) + except Exception as e: + print(e) + + def saveDataToFile(self, filePath="/var/user/files/runtimestats.json"): + try: + print("Saving Runs") + with open(filePath, "w") as f: + d = { + "current_run": self.currentRun, + "current_day": self.todayString, + "data": self.runs + } + json.dump(d, f, indent=4) + except Exception as e: + print(e) + +try: + rts_path = "/var/user/files/runtimestats_tb.json" + rts = RuntimeStats() + rts.loadDataFromFile(filePath=rts_path) + rts.saveDataToFile(filePath=rts_path) +except Exception as e: + logger.error(f"Error in TB start RTS: {e}" ) + +def reboot(reason="Rebooting for config file update"): + #basic = Basic() + logger.info("!" * 10 + "REBOOTING DEVICE" + "!"*10) + logger.info(reason) + r = os.popen("kill -s SIGHUP `cat /var/run/python/supervisord.pid`").read() + logger.info(f"REBOOT : {r}") + +def checkFileExist(filename): + path = "/var/user/files" + if not os.path.exists(path): + logger.debug("no folder making files folder in var/user") + os.makedirs(path) + with open(path + "/" + filename, "a") as f: + json.dump({}, f) + if not os.path.exists(path + "/" + filename): + logger.debug("no creds file making creds file") + with open(path + "/" + filename, "a") as f: + json.dump({}, f) + +def convertDStoJSON(ds): + j = dict() + for x in ds: + j[x["key"]] = x["value"] + return j + +def convertJSONtoDS(j): + d = [] + for key in j.keys(): + d.append({"key": key, "value": j[key]}) + return d + +def checkCredentialConfig(): + logger.debug("CHECKING CONFIG") + cfgpath = "/var/user/cfg/device_supervisor/device_supervisor.cfg" + credspath = "/var/user/files/creds.json" + cfg = dict() + with open(cfgpath, "r") as f: + cfg = json.load(f) + clouds = cfg.get("clouds") + logger.debug(clouds) + #if not configured then try to configure from stored values + if clouds[0]["args"]["clientId"] == "unknown" or clouds[0]["args"]["username"] == "unknown" or not clouds[0]["args"]["passwd"] or clouds[0]["args"]["passwd"] == "unknown": + checkFileExist("creds.json") + with open(credspath, "r") as c: + creds = json.load(c) + if creds: + logger.debug("updating config with stored data") + clouds[0]["args"]["clientId"] = creds["clientId"] + clouds[0]["args"]["username"] = creds["userName"] + clouds[0]["args"]["passwd"] = creds["password"] + cfg["clouds"] = clouds + cfg = checkParameterConfig(cfg) + with open(cfgpath, "w", encoding='utf-8') as n: + json.dump(cfg, n, indent=1, ensure_ascii=False) + reboot() + else: + #assuming clouds is filled out, if data is different then assume someone typed in something new and store it, if creds is empty fill with clouds' data + checkFileExist("creds.json") + with open(credspath, "r") as c: + logger.debug("updating stored file with new data") + cfg = checkParameterConfig(cfg) + with open(cfgpath, "w", encoding='utf-8') as n: + json.dump(cfg, n, indent=1, ensure_ascii=False) + creds = json.load(c) + if creds: + if creds["clientId"] != clouds[0]["args"]["clientId"]: + creds["clientId"] = clouds[0]["args"]["clientId"] + if creds["userName"] != clouds[0]["args"]["username"]: + creds["userName"] = clouds[0]["args"]["username"] + if creds["password"] != clouds[0]["args"]["passwd"]: + creds["password"] = clouds[0]["args"]["passwd"] + else: + creds["clientId"] = clouds[0]["args"]["clientId"] + creds["userName"] = clouds[0]["args"]["username"] + creds["password"] = clouds[0]["args"]["passwd"] + with open(credspath, "w") as cw: + json.dump(creds,cw) + +def checkParameterConfig(cfg): + logger.debug("Checking Parameters!!!!") + paramspath = "/var/user/files/params.json" + cfgparams = convertDStoJSON(cfg.get("labels")) + #check stored values + checkFileExist("params.json") + with open(paramspath, "r") as f: + logger.debug("Opened param storage file") + params = json.load(f) + if params: + if cfgparams != params: + #go through each param + #if not "unknown" and cfg and params aren't the same take from cfg likely updated manually + #if key in cfg but not in params copy to params + logger.debug("equalizing params between cfg and stored") + for key in cfgparams.keys(): + try: + if cfgparams[key] != params[key] and cfgparams[key] != "unknown": + params[key] = cfgparams[key] + except: + params[key] = cfgparams[key] + cfg["labels"] = convertJSONtoDS(params) + _set_global_args(convertJSONtoDS(params)) + with open(paramspath, "w") as p: + json.dump(params, p) + else: + with open(paramspath, "w") as p: + logger.debug("initializing param file with params in memory") + json.dump(convertDStoJSON(get_params()), p) + cfg["labels"] = get_params() + + return cfg + +# Helper function to split the payload into chunks +def chunk_payload(payload, chunk_size=20): + chunked_values = list(payload["values"].items()) + for i in range(0, len(chunked_values), chunk_size): + yield { + "ts": payload["ts"], + "values": dict(chunked_values[i:i+chunk_size]) + } + +def sendData(message): + #logger.debug(message) + try: + checkCredentialConfig() + except Exception as e: + logger.error(e) + payload = {"ts": (round(dt.timestamp(dt.now())/600)*600)*1000, "values": {}} + for measure in message["measures"]: + try: + logger.debug(measure) + if abs(payload["ts"]/1000 - measure["timestamp"]) > 3600: + reboot(reason="Poll timestamp and actual timestamp out of sync. Actual: {} Poll: {}".format(payload["ts"]/1000,measure["timestamp"])) + if measure["name"] in ["wellstatus","pidcontrolmode","downholesensorstatus","alarmflowrate","alarmintakepressure","alarmintaketemperature","alarmtubingpressure","alarmvfd","alarmlockout","alarmfluidlevel","runpermissive","startpermissive","last_vfd_fault_code","vfd_fault", "flowmeter_fault"]: + logger.debug("Converting DINT/BOOL to STRING") + value = convert_int(measure["name"], measure["value"]) + logger.debug("Converted {} to {}".format(measure["value"], value)) + payload["values"][measure["name"]] = value + payload["values"][measure["name"] + "_int"] = measure["value"] + else: + payload["values"][measure["name"]] = measure["value"] + if measure["name"] == "wellstatus": + if measure["value"] == 0 and not rts.runs[rts.todayString]["run_" + str(rts.currentRun)]["start"]: + rts.startRun() + rts.saveDataToFile(filePath=rts_path) + elif measure["value"] > 0 and rts.runs[rts.todayString]["run_" + str(rts.currentRun)]["start"] and not rts.runs[rts.todayString]["run_" + str(rts.currentRun)]["end"]: + rts.endRun() + rts.saveDataToFile(filePath=rts_path) + logger.info(f"Adding {rts.calculateRunPercentMultiDay()} to payload as percentRunTime30Days") + payload["values"]["percentRunTime30Days"] = rts.calculateRunPercentMultiDay() + + + if measure["name"] == "vfdfrequency": + if measure["value"] > 0: + rts.addHertzDataPoint(measure["value"]) + rts.saveDataToFile(filePath=rts_path) + logger.info(f"Adding {rts.calculateAverageHertzMultiDay()} to payload as avgFrequency30Days") + payload["values"]["avgFrequency30Days"] = rts.calculateAverageHertzMultiDay() + + except Exception as e: + logger.error(e) + + for chunk in chunk_payload(payload=payload): + publish(__topic__, json.dumps(chunk), __qos__, cloud_name="ThingsBoard") + time.sleep(2) + publish("v1/devices/me/attributes", json.dumps({"latestReportTime": (round(dt.timestamp(dt.now())/600)*600)*1000}), __qos__, cloud_name="ThingsBoard") + +def convert_int(plc_tag, value): + well_status_codes = { + 0: "Running", + 1: "Pumped Off", + 2: "Alarmed", + 3: "Locked Out", + 4: "Stopped" + } + + pid_control_codes = { + 0: "Flow", + 1: "Fluid Level", + 2: "Tubing Pressure", + 3: "Manual" + } + + downhole_codes = { + 0: "OK", + 1: "Connecting", + 2: "Open Circuit", + 3: "Shorted", + 4: "Cannot Decode" + } + + permissive_codes = { + 0: "OK", + 1: "Flow", + 2: "Intake Pressure", + 3: "Intake Temperature", + 4: "Tubing Pressure", + 5: "VFD", + 6: "Fluid Level", + 7: "Min. Downtime" + } + + alarm_codes = { + 0: "OK", + 1: "Alarm" + } + + alarm_vfd_codes = { + 0: "OK", + 1: "Locked Out" + } + + vfd_fault_codes = { + 0: "No Fault", + 2: "Auxiliary Input", + 3: "Power Loss", + 4: "UnderVoltage", + 5: "OverVoltage", + 7: "Motor Overload", + 8: "Heatsink OverTemp", + 9: "Thermister OverTemp", + 10: "Dynamic Brake OverTemp", + 12: "Hardware OverCurrent", + 13: "Ground Fault", + 14: "Ground Warning", + 15: "Load Loss", + 17: "Input Phase Loss", + 18: "Motor PTC Trip", + 19: "Task Overrun", + 20: "Torque Prove Speed Band", + 21: "Output Phase Loss", + 24: "Decel Inhibit", + 25: "OverSpeed Limit", + 26: "Brake Slipped", + 27: "Torque Prove Conflict", + 28: "TP Encls Confict", + 29: "Analog In Loss", + 33: "Auto Restarts Exhausted", + 35: "IPM OverCurrent", + 36: "SW OverCurrent", + 38: "Phase U to Ground", + 39: "Phase V to Ground", + 40: "Phase W to Ground", + 41: "Phase UV Short", + 42: "Phase VW Short", + 43: "Phase WU Short", + 44: "Phase UNeg to Ground", + 45: "Phase VNeg to Ground", + 46: "Phase WNeg to Ground", + 48: "System Defaulted", + 49: "Drive Powerup", + 51: "Clear Fault Queue", + 55: "Control Board Overtemp", + 59: "Invalid Code", + 61: "Shear Pin 1", + 62: "Shear Pin 2", + 64: "Drive Overload", + 66: "OW Torque Level", + 67: "Pump Off", + 71: "Port 1 Adapter", + 72: "Port 2 Adapter", + 73: "Port 3 Adapter", + 74: "Port 4 Adapter", + 75: "Port 5 Adapter", + 76: "Port 6 Adapter", + 77: "IR Volts Range", + 78: "FluxAmps Ref Range", + 79: "Excessive Load", + 80: "AutoTune Aborted", + 81: "Port 1 DPI Loss", + 82: "Port 2 DPI Loss", + 83: "Port 3 DPI Loss", + 84: "Port 4 DPI Loss", + 85: "Port 5 DPI Loss", + 86: "Port 6 DPI Loss", + 87: "IXo Voltage Range", + 91: "Primary Velocity Feedback Loss", + 93: "Hardware Enable Check", + 94: "Alternate Velocity Feedback Loss", + 95: "Auxiliary Velocity Feedback Loss", + 96: "Position Feedback Loss", + 97: "Auto Tach Switch", + 100: "Parameter Checksum", + 101: "Power Down NVS Blank", + 102: "NVS Not Blank", + 103: "Power Down NVS Incompatible", + 104: "Power Board Checksum", + 106: "Incompat MCB-PB", + 107: "Replaced MCB-PB", + 108: "Analog Calibration Checksum", + 110: "Invalid Power Board Data", + 111: "Power Board Invalid ID", + 112: "Power Board App Min Version", + 113: "Tracking DataError", + 115: "Power Down Table Full", + 116: "Power Down Entry Too Large", + 117: "Power Down Data Checksum", + 118: "Power Board Power Down Checksum", + 124: "App ID Changed", + 125: "Using Backup App", + 134: "Start on Power Up", + 137: "External Precharge Error", + 138: "Precharge Open", + 141: "Autotune Enc Angle", + 142: "Autotune Speed Restricted", + 143: "Autotune Current Regulator", + 144: "Autotune Inertia", + 145: "Autotune Travel", + 13035: "Net IO Timeout", + 13037: "Net IO Timeout" + + } + + plc_tags = { + "wellstatus": well_status_codes.get(value, "Invalid Code"), + "pidcontrolmode": pid_control_codes.get(value, "Invalid Code"), + "downholesensorstatus": downhole_codes.get(value, "Invalid Code"), + "alarmflowrate": alarm_codes.get(value, "Invalid Code"), + "alarmintakepressure": alarm_codes.get(value, "Invalid Code"), + "alarmintaketemperature": alarm_codes.get(value, "Invalid Code"), + "alarmtubingpressure": alarm_codes.get(value, "Invalid Code"), + "alarmvfd": alarm_codes.get(value, "Invalid Code"), + "alarmlockout": alarm_vfd_codes.get(value, "Invalid Code"), + "alarmfluidlevel": alarm_codes.get(value, "Invalid Code"), + "runpermissive": permissive_codes.get(value, "Invalid Code"), + "startpermissive": permissive_codes.get(value, "Invalid Code"), + "last_vfd_fault_code": vfd_fault_codes.get(value, "Invalid Code"), + "vfd_fault": vfd_fault_codes.get(value, "Invalid Code"), + "flowmeter_fault": alarm_codes.get(value, "Invalid Code") + } + + return plc_tags.get(plc_tag, "Invalid Tag") + + \ No newline at end of file diff --git a/Pub_Sub/rigpump/.DS_Store b/Pub_Sub/rigpump/.DS_Store index 5ec3f70..43a933a 100644 Binary files a/Pub_Sub/rigpump/.DS_Store and b/Pub_Sub/rigpump/.DS_Store differ diff --git a/Pub_Sub/rigpump/thingsboard/sub/receiveCommand.py b/Pub_Sub/rigpump/thingsboard/sub/receiveCommand.py index b9f07be..e990f4c 100644 --- a/Pub_Sub/rigpump/thingsboard/sub/receiveCommand.py +++ b/Pub_Sub/rigpump/thingsboard/sub/receiveCommand.py @@ -1,4 +1,4 @@ -import json, time +import json, time, os from datetime import datetime as dt from quickfaas.measure import recall, write from quickfaas.remotebus import publish @@ -48,7 +48,13 @@ def writeplctag(value): except Exception as e: logger.debug(e) return False - + +def reboot(): + #basic = Basic() + logger.info("!" * 10 + "REBOOTING DEVICE FROM CLOUD" + "!"*10) + r = os.popen("kill -s SIGHUP `cat /var/run/python/supervisord.pid`").read() + logger.info(f"REBOOT : {r}") + def receiveCommand(topic, payload): try: logger.debug(topic) @@ -58,6 +64,7 @@ def receiveCommand(topic, payload): commands = { "sync": sync, "writeplctag": writeplctag, + "reboot": reboot } if command == "setPLCTag": try: @@ -65,6 +72,12 @@ def receiveCommand(topic, payload): logger.debug(result) except Exception as e: logger.error(e) + elif command == "reboot": + try: + ack(topic.split("/")[-1]) + commands["reboot"]() + except Exception as e: + logger.error(e) #logger.debug(command) ack(topic.split("/")[-1]) time.sleep(2) diff --git a/Pub_Sub/solarpump/thingsboard/api_attributes.json b/Pub_Sub/solarpump/thingsboard/api_attributes.json new file mode 100644 index 0000000..48c98a9 --- /dev/null +++ b/Pub_Sub/solarpump/thingsboard/api_attributes.json @@ -0,0 +1,2888 @@ +{ + "success": true, + "records": [ + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 691, + "description": "Bluetooth enabled", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "ble", + "bitmask": 0, + "formattedValue": "Enabled", + "rawValue": 1, + "dataAttributeEnumValues": [ + { + "nameEnum": "Disabled", + "valueEnum": 0 + }, + { + "nameEnum": "Enabled", + "valueEnum": 1 + } + ], + "id": 1 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 1, + "description": "gatewayID", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "d", + "bitmask": 0, + "formattedValue": "Coupling / GlobalLink", + "rawValue": 3, + "dataAttributeEnumValues": [ + { + "nameEnum": "VGR, VGR2 or VER", + "valueEnum": 0 + }, + { + "nameEnum": "Venus OS", + "valueEnum": 1 + }, + { + "nameEnum": "Venus OS", + "valueEnum": 2 + }, + { + "nameEnum": "Coupling / GlobalLink", + "valueEnum": 3 + }, + { + "nameEnum": "PHYSEE NodeMCU", + "valueEnum": 4 + }, + { + "nameEnum": "Satlog.io", + "valueEnum": 5 + } + ], + "id": 2 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 386, + "description": "Productid", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "mi", + "bitmask": 0, + "formattedValue": "c021", + "rawValue": "c021", + "id": 3 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 387, + "description": "MachineName", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "mn", + "bitmask": 0, + "formattedValue": "GlobalLink 520", + "rawValue": "GlobalLink 520", + "id": 4 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 2, + "description": "Fw Version", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "v", + "bitmask": 0, + "formattedValue": "v2.06", + "rawValue": "v2.06", + "id": 5 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 3, + "description": "Fw Build date", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "build", + "bitmask": 0, + "formattedValue": "v2.06-0-g21dffe1, firmware release: 1.20.2.r0, firmware version: v1.20.1.r2-187-ge47ffaec4 on 2020-08-27, modem firmware: 5.4.1.0 [50523] by amelie at 2021-09-30 14:50:47", + "rawValue": "v2.06-0-g21dffe1, firmware release: 1.20.2.r0, firmware version: v1.20.1.r2-187-ge47ffaec4 on 2020-08-27, modem firmware: 5.4.1.0 [50523] by amelie at 2021-09-30 14:50:47", + "id": 6 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 556, + "description": "Machine serial number", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "ms", + "bitmask": 0, + "formattedValue": "HQ2313AJCJG", + "rawValue": "HQ2313AJCJG", + "id": 7 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 636, + "description": "Hardware revision", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "hwr", + "bitmask": 0, + "formattedValue": "PCB revision: A5, chipset: GPy with ESP32", + "rawValue": "PCB revision: A5, chipset: GPy with ESP32", + "id": 8 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 148, + "description": "Remote ip address", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "ipr", + "bitmask": 0, + "formattedValue": "3.126.126.6", + "rawValue": "3.126.126.6", + "id": 9 + }, + { + "idSite": 472967, + "timestamp": 1723739878, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 594, + "description": "SIM card identifier", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "iccid", + "bitmask": 0, + "formattedValue": "89882280666070246180", + "rawValue": "89882280666070246180", + "id": 10 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 150, + "description": "Auto update", + "formatWithUnit": "%d", + "dbusServiceType": "settings", + "dbusPath": "/Settings/System/AutoUpdate", + "code": "au", + "bitmask": 0, + "formattedValue": "On", + "rawValue": 1, + "dataAttributeEnumValues": [ + { + "nameEnum": "Off", + "valueEnum": 0 + }, + { + "nameEnum": "On", + "valueEnum": 1 + }, + { + "nameEnum": "Check", + "valueEnum": 2 + } + ], + "id": 11 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 151, + "description": "Update to", + "formatWithUnit": "%d", + "dbusServiceType": "settings", + "dbusPath": "/Settings/System/ReleaseType", + "code": "ut", + "bitmask": 0, + "formattedValue": "Official release", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "Official release", + "valueEnum": 0 + }, + { + "nameEnum": "Release-candidate", + "valueEnum": 1 + }, + { + "nameEnum": "Testing", + "valueEnum": 2 + }, + { + "nameEnum": "Develop", + "valueEnum": 3 + } + ], + "id": 12 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 558, + "description": "Update status", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "us", + "bitmask": 0, + "formattedValue": "Idle", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "Idle", + "valueEnum": 0 + }, + { + "nameEnum": "Updating", + "valueEnum": 1 + } + ], + "id": 13 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 630, + "description": "Voltage", + "formatWithUnit": "%.2F V", + "dbusServiceType": null, + "dbusPath": null, + "code": "glV", + "bitmask": 0, + "formattedValue": "51.68 V", + "rawValue": "51.682", + "id": 14 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 631, + "description": "Internal temperature", + "formatWithUnit": "%.0F °C", + "dbusServiceType": null, + "dbusPath": null, + "code": "glT", + "bitmask": 0, + "formattedValue": "43 °C", + "rawValue": 43, + "id": 15 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 632, + "description": "Antenna Type", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "glAnt", + "bitmask": 0, + "formattedValue": "External", + "rawValue": 1, + "dataAttributeEnumValues": [ + { + "nameEnum": "Internal", + "valueEnum": 0 + }, + { + "nameEnum": "External", + "valueEnum": 1 + } + ], + "id": 16 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 575, + "description": "Signal RSSI", + "formatWithUnit": "%.0F dB", + "dbusServiceType": null, + "dbusPath": null, + "code": "pcR", + "bitmask": 0, + "formattedValue": "-77 dB", + "rawValue": "-77", + "id": 17 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 216, + "description": "VRM Log time offset", + "formatWithUnit": "%d s", + "dbusServiceType": null, + "dbusPath": null, + "code": "TO", + "bitmask": 0, + "formattedValue": "0 s", + "rawValue": 0, + "id": 18 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 255, + "description": "VRM Log interval", + "formatWithUnit": "%d s", + "dbusServiceType": "settings", + "dbusPath": "/Settings/Vrmlogger/LogInterval", + "code": "sl", + "bitmask": 0, + "formattedValue": "900 s", + "rawValue": 900, + "id": 19 + }, + { + "idSite": 472967, + "timestamp": 1723739878, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 188, + "description": "Network name", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "mN", + "bitmask": 0, + "formattedValue": "AT&T (310410)", + "rawValue": "AT&T (310410)", + "id": 20 + }, + { + "idSite": 472967, + "timestamp": 1723683956, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 4, + "description": "Latitude", + "formatWithUnit": "%.5F LAT", + "dbusServiceType": "gps", + "dbusPath": "/Position/Latitude", + "code": "lt", + "bitmask": 0, + "formattedValue": "31.46380 LAT", + "rawValue": "31.4638", + "id": 21 + }, + { + "idSite": 472967, + "timestamp": 1723683956, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 5, + "description": "Longitude", + "formatWithUnit": "%.5F LNG", + "dbusServiceType": "gps", + "dbusPath": "/Position/Longitude", + "code": "lg", + "bitmask": 0, + "formattedValue": "-100.43700 LNG", + "rawValue": "-100.437", + "id": 22 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Gateway", + "instance": 0, + "idDataAttribute": 306, + "description": "Relay 1 state", + "formatWithUnit": "%s", + "dbusServiceType": "system", + "dbusPath": "/Relay/0/State", + "code": "cRelay", + "bitmask": 0, + "formattedValue": "Open", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "Open", + "valueEnum": 0 + }, + { + "nameEnum": "Closed", + "valueEnum": 1 + } + ], + "id": 23 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 585, + "description": "Battery custom name", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/CustomName", + "code": "Bcn", + "bitmask": 0, + "formattedValue": "Shunt Load Monitoring", + "rawValue": "Shunt Load Monitoring", + "id": 24 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 45, + "description": "Model", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/ProductId", + "code": "BM", + "bitmask": 0, + "formattedValue": "a389", + "rawValue": "a389", + "id": 25 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 46, + "description": "Firmware version", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/FirmwareVersion", + "code": "BV", + "bitmask": 0, + "formattedValue": "v4.16", + "rawValue": "v4.16", + "id": 26 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 47, + "description": "Voltage", + "formatWithUnit": "%.2F V", + "dbusServiceType": "battery", + "dbusPath": "/Dc/0/Voltage", + "code": "V", + "bitmask": 0, + "formattedValue": "50.76 V", + "rawValue": "50.762", + "id": 27 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 49, + "description": "Current", + "formatWithUnit": "%.2F A", + "dbusServiceType": "battery", + "dbusPath": "/Dc/0/Current", + "code": "I", + "bitmask": 0, + "formattedValue": "0.00 A", + "rawValue": 0, + "id": 28 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 50, + "description": "Consumed Amphours", + "formatWithUnit": "%.2F Ah", + "dbusServiceType": "battery", + "dbusPath": "/ConsumedAmphours", + "code": "CE", + "bitmask": 0, + "formattedValue": "0.00 Ah", + "rawValue": 0, + "id": 29 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 51, + "description": "State of charge", + "formatWithUnit": "%.1F %%", + "dbusServiceType": "battery", + "dbusPath": "/Soc", + "code": "SOC", + "bitmask": 0, + "formattedValue": "7.7 %", + "rawValue": "7.7", + "id": 30 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 52, + "description": "Time to go", + "formatWithUnit": "%.2F h", + "dbusServiceType": "battery", + "dbusPath": "/TimeToGo", + "code": "TTG", + "bitmask": 0, + "formattedValue": "0.00 h", + "rawValue": 0, + "id": 31 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 119, + "description": "Low voltage alarm", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/Alarms/LowVoltage", + "code": "AL", + "bitmask": 0, + "formattedValue": "No alarm", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No alarm", + "valueEnum": 0 + }, + { + "nameEnum": "Warning", + "valueEnum": 1 + }, + { + "nameEnum": "Alarm", + "valueEnum": 2 + } + ], + "id": 32 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 120, + "description": "High voltage alarm", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/Alarms/HighVoltage", + "code": "AH", + "bitmask": 0, + "formattedValue": "No alarm", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No alarm", + "valueEnum": 0 + }, + { + "nameEnum": "Warning", + "valueEnum": 1 + }, + { + "nameEnum": "Alarm", + "valueEnum": 2 + } + ], + "id": 33 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 121, + "description": "Low starter-voltage alarm", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/Alarms/LowStarterVoltage", + "code": "ALS", + "bitmask": 0, + "formattedValue": "No alarm", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No alarm", + "valueEnum": 0 + }, + { + "nameEnum": "Warning", + "valueEnum": 1 + }, + { + "nameEnum": "Alarm", + "valueEnum": 2 + } + ], + "id": 34 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 122, + "description": "High starter-voltage alarm", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/Alarms/HighStarterVoltage", + "code": "AHS", + "bitmask": 0, + "formattedValue": "No alarm", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No alarm", + "valueEnum": 0 + }, + { + "nameEnum": "Warning", + "valueEnum": 1 + }, + { + "nameEnum": "Alarm", + "valueEnum": 2 + } + ], + "id": 35 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 123, + "description": "Low state-of-charge alarm", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/Alarms/LowSoc", + "code": "ASoc", + "bitmask": 0, + "formattedValue": "No alarm", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No alarm", + "valueEnum": 0 + }, + { + "nameEnum": "Warning", + "valueEnum": 1 + }, + { + "nameEnum": "Alarm", + "valueEnum": 2 + } + ], + "id": 36 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 124, + "description": "Low battery temperature alarm", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/Alarms/LowTemperature", + "code": "ALT", + "bitmask": 0, + "formattedValue": "No alarm", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No alarm", + "valueEnum": 0 + }, + { + "nameEnum": "Warning", + "valueEnum": 1 + }, + { + "nameEnum": "Alarm", + "valueEnum": 2 + } + ], + "id": 37 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 125, + "description": "High battery temperature alarm", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/Alarms/HighTemperature", + "code": "AHT", + "bitmask": 0, + "formattedValue": "No alarm", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No alarm", + "valueEnum": 0 + }, + { + "nameEnum": "Warning", + "valueEnum": 1 + }, + { + "nameEnum": "Alarm", + "valueEnum": 2 + } + ], + "id": 38 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 126, + "description": "Mid-voltage alarm", + "formatWithUnit": "%s", + "dbusServiceType": "battery", + "dbusPath": "/Alarms/MidVoltage", + "code": "AM", + "bitmask": 0, + "formattedValue": "No alarm", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No alarm", + "valueEnum": 0 + }, + { + "nameEnum": "Warning", + "valueEnum": 1 + }, + { + "nameEnum": "Alarm", + "valueEnum": 2 + } + ], + "id": 39 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 55, + "description": "Deepest discharge", + "formatWithUnit": "%.2F Ah", + "dbusServiceType": "battery", + "dbusPath": "/History/DeepestDischarge", + "code": "H1", + "bitmask": 0, + "formattedValue": "-88.86 Ah", + "rawValue": "-88.861", + "id": 40 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 56, + "description": "Last discharge", + "formatWithUnit": "%.2F Ah", + "dbusServiceType": "battery", + "dbusPath": "/History/LastDischarge", + "code": "H2", + "bitmask": 0, + "formattedValue": "-88.86 Ah", + "rawValue": "-88.861", + "id": 41 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 57, + "description": "Average discharge", + "formatWithUnit": "%.2F Ah", + "dbusServiceType": "battery", + "dbusPath": "/History/AverageDischarge", + "code": "H3", + "bitmask": 0, + "formattedValue": "0.00 Ah", + "rawValue": 0, + "id": 42 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 58, + "description": "Charge cycles", + "formatWithUnit": "%.2F", + "dbusServiceType": "battery", + "dbusPath": "/History/ChargeCycles", + "code": "H4", + "bitmask": 0, + "formattedValue": "0.00", + "rawValue": 0, + "id": 43 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 59, + "description": "Full discharges", + "formatWithUnit": "%.2F", + "dbusServiceType": "battery", + "dbusPath": "/History/FullDischarges", + "code": "H5", + "bitmask": 0, + "formattedValue": "0.00", + "rawValue": 0, + "id": 44 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 60, + "description": "Total Ah drawn", + "formatWithUnit": "%.2F Ah", + "dbusServiceType": "battery", + "dbusPath": "/History/TotalAhDrawn", + "code": "H6", + "bitmask": 0, + "formattedValue": "-88.85 Ah", + "rawValue": "-88.854", + "id": 45 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 61, + "description": "Minimum voltage", + "formatWithUnit": "%.2F V", + "dbusServiceType": "battery", + "dbusPath": "/History/MinimumVoltage", + "code": "H7", + "bitmask": 0, + "formattedValue": "45.91 V", + "rawValue": "45.913", + "id": 46 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 62, + "description": "Maximum voltage", + "formatWithUnit": "%.2F V", + "dbusServiceType": "battery", + "dbusPath": "/History/MaximumVoltage", + "code": "H8", + "bitmask": 0, + "formattedValue": "56.38 V", + "rawValue": "56.377", + "id": 47 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 63, + "description": "Time since last full charge", + "formatWithUnit": "%.2F", + "dbusServiceType": "battery", + "dbusPath": "/History/TimeSinceLastFullCharge", + "code": "H9", + "bitmask": 0, + "formattedValue": "67072.00", + "rawValue": 67072, + "id": 48 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 64, + "description": "Automatic syncs", + "formatWithUnit": "%.2F", + "dbusServiceType": "battery", + "dbusPath": "/History/AutomaticSyncs", + "code": "H10", + "bitmask": 0, + "formattedValue": "0.00", + "rawValue": 0, + "id": 49 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 65, + "description": "Low voltage alarms", + "formatWithUnit": "%.2F", + "dbusServiceType": "battery", + "dbusPath": "/History/LowVoltageAlarms", + "code": "H11", + "bitmask": 0, + "formattedValue": "0.00", + "rawValue": 0, + "id": 50 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 66, + "description": "High voltage alarms", + "formatWithUnit": "%.2F", + "dbusServiceType": "battery", + "dbusPath": "/History/HighVoltageAlarms", + "code": "H12", + "bitmask": 0, + "formattedValue": "0.00", + "rawValue": 0, + "id": 51 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 69, + "description": "Minimum starter voltage", + "formatWithUnit": "%.2F V", + "dbusServiceType": "battery", + "dbusPath": "/History/MinimumStarterVoltage", + "code": "H15", + "bitmask": 0, + "formattedValue": "0.00 V", + "rawValue": 0, + "id": 52 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 70, + "description": "Maximum starter voltage", + "formatWithUnit": "%.2F V", + "dbusServiceType": "battery", + "dbusPath": "/History/MaximumStarterVoltage", + "code": "H16", + "bitmask": 0, + "formattedValue": "0.00 V", + "rawValue": 0, + "id": 53 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 244, + "description": "Discharged Energy", + "formatWithUnit": "%.2F kWh", + "dbusServiceType": "battery", + "dbusPath": "/History/DischargedEnergy", + "code": "H21", + "bitmask": 0, + "formattedValue": "4.56 kWh", + "rawValue": "4.56", + "id": 54 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Battery Monitor", + "instance": 2, + "idDataAttribute": 245, + "description": "Charged Energy", + "formatWithUnit": "%.2F kWh", + "dbusServiceType": "battery", + "dbusPath": "/History/ChargedEnergy", + "code": "H22", + "bitmask": 0, + "formattedValue": "0.00 kWh", + "rawValue": 0, + "id": 55 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 583, + "description": "Solar charger off reason", + "formatWithUnit": "%s", + "dbusServiceType": "solarcharger", + "dbusPath": "/DeviceOffReason", + "code": "ScOR", + "bitmask": 1, + "formattedValue": " (0)", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No input power", + "valueEnum": 1 + }, + { + "nameEnum": "Physical switch", + "valueEnum": 2 + }, + { + "nameEnum": "Remote via device mode or button", + "valueEnum": 4 + }, + { + "nameEnum": "Remote input connector", + "valueEnum": 8 + }, + { + "nameEnum": "Internal condition", + "valueEnum": 16 + }, + { + "nameEnum": "PayGo token required", + "valueEnum": 32 + }, + { + "nameEnum": "BMS disallows charge", + "valueEnum": 64 + }, + { + "nameEnum": "Low input voltage", + "valueEnum": 128 + } + ], + "id": 56 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 586, + "description": "Solar charger custom name", + "formatWithUnit": "%s", + "dbusServiceType": "solarcharger", + "dbusPath": "/CustomName", + "code": "Sccn", + "bitmask": 0, + "formattedValue": "Solar Charger", + "rawValue": "Solar Charger", + "id": 57 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 106, + "description": "Solarcharger model", + "formatWithUnit": "%s", + "dbusServiceType": "solarcharger", + "dbusPath": "/ProductId", + "code": "ScM", + "bitmask": 0, + "formattedValue": "a058", + "rawValue": "a058", + "id": 58 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 80, + "description": "Solar charger version", + "formatWithUnit": "%s", + "dbusServiceType": "solarcharger", + "dbusPath": "/FirmwareVersion", + "code": "ScVt", + "bitmask": 0, + "formattedValue": "v1.64", + "rawValue": "v1.64", + "id": 59 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 118, + "description": "Solar charger serial number", + "formatWithUnit": "%s", + "dbusServiceType": "solarcharger", + "dbusPath": "/Serial", + "code": "ScSN", + "bitmask": 0, + "formattedValue": "HQ2235U2DQN", + "rawValue": "HQ2235U2DQN", + "id": 60 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 81, + "description": "Voltage", + "formatWithUnit": "%.1F V", + "dbusServiceType": "solarcharger", + "dbusPath": "/Dc/0/Voltage", + "code": "ScV", + "bitmask": 0, + "formattedValue": "50.8 V", + "rawValue": "50.76", + "id": 61 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 82, + "description": "Current", + "formatWithUnit": "%.1F A", + "dbusServiceType": "solarcharger", + "dbusPath": "/Dc/0/Current", + "code": "ScI", + "bitmask": 0, + "formattedValue": "11.8 A", + "rawValue": "11.8", + "id": 62 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 107, + "description": "Battery watts", + "formatWithUnit": "%.0F W", + "dbusServiceType": null, + "dbusPath": null, + "code": "ScW", + "bitmask": 0, + "formattedValue": "599 W", + "rawValue": "598.968", + "id": 63 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 241, + "description": "Load state", + "formatWithUnit": "%s", + "dbusServiceType": "solarcharger", + "dbusPath": "/Load/State", + "code": "SLs", + "bitmask": 0, + "formattedValue": "Off", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "Off", + "valueEnum": 0 + }, + { + "nameEnum": "On", + "valueEnum": 1 + } + ], + "id": 64 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 85, + "description": "Charge state", + "formatWithUnit": "%s", + "dbusServiceType": "solarcharger", + "dbusPath": "/State", + "code": "ScS", + "bitmask": 0, + "formattedValue": "Bulk", + "rawValue": 3, + "dataAttributeEnumValues": [ + { + "nameEnum": "Off", + "valueEnum": 0 + }, + { + "nameEnum": "Fault", + "valueEnum": 2 + }, + { + "nameEnum": "Bulk", + "valueEnum": 3 + }, + { + "nameEnum": "Absorption", + "valueEnum": 4 + }, + { + "nameEnum": "Float", + "valueEnum": 5 + }, + { + "nameEnum": "Storage", + "valueEnum": 6 + }, + { + "nameEnum": "Equalize", + "valueEnum": 7 + }, + { + "nameEnum": "Off", + "valueEnum": 245 + }, + { + "nameEnum": "Equalize", + "valueEnum": 247 + }, + { + "nameEnum": "Ext. Control", + "valueEnum": 252 + } + ], + "id": 65 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 86, + "description": "PV voltage", + "formatWithUnit": "%.1F V", + "dbusServiceType": "solarcharger", + "dbusPath": "/Pv/V", + "code": "PVV", + "bitmask": 0, + "formattedValue": "57.1 V", + "rawValue": "57.14", + "id": 66 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 442, + "description": "PV power", + "formatWithUnit": "%d W", + "dbusServiceType": "solarcharger", + "dbusPath": "/Yield/Power", + "code": "PVP", + "bitmask": 0, + "formattedValue": "598 W", + "rawValue": "598.968", + "id": 67 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 518, + "description": "MPPT State", + "formatWithUnit": "%s", + "dbusServiceType": "solarcharger", + "dbusPath": "/MppOperationMode", + "code": "ScMm", + "bitmask": 0, + "formattedValue": "MPPT active", + "rawValue": 2, + "dataAttributeEnumValues": [ + { + "nameEnum": "Off", + "valueEnum": 0 + }, + { + "nameEnum": "Voltage or current limited", + "valueEnum": 1 + }, + { + "nameEnum": "MPPT active", + "valueEnum": 2 + }, + { + "nameEnum": "Not available", + "valueEnum": 255 + } + ], + "id": 68 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 94, + "description": "Yield today", + "formatWithUnit": "%.2F kWh", + "dbusServiceType": "solarcharger", + "dbusPath": "/History/Daily/0/Yield", + "code": "YT", + "bitmask": 0, + "formattedValue": "1.15 kWh", + "rawValue": "1.15", + "id": 69 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 95, + "description": "Maximum charge power today", + "formatWithUnit": "%d W", + "dbusServiceType": "solarcharger", + "dbusPath": "/History/Daily/0/MaxPower", + "code": "MCPT", + "bitmask": 0, + "formattedValue": "587 W", + "rawValue": 587, + "id": 70 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 96, + "description": "Yield yesterday", + "formatWithUnit": "%.2F kWh", + "dbusServiceType": "solarcharger", + "dbusPath": "/History/Daily/1/Yield", + "code": "YY", + "bitmask": 0, + "formattedValue": "0.10 kWh", + "rawValue": "0.1", + "id": 71 + }, + { + "idSite": 472967, + "timestamp": 1723739870, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 97, + "description": "Maximum charge power yesterday", + "formatWithUnit": "%d W", + "dbusServiceType": "solarcharger", + "dbusPath": "/History/Daily/1/MaxPower", + "code": "MCPY", + "bitmask": 0, + "formattedValue": "106 W", + "rawValue": 106, + "id": 72 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 98, + "description": "Error code", + "formatWithUnit": "%s", + "dbusServiceType": "solarcharger", + "dbusPath": "/ErrorCode", + "code": "ScERR", + "bitmask": 0, + "formattedValue": "No error", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No error", + "valueEnum": 0 + }, + { + "nameEnum": "#1 - Battery temperature too high", + "valueEnum": 1 + }, + { + "nameEnum": "#2 - Battery voltage too high", + "valueEnum": 2 + }, + { + "nameEnum": "#3 - Battery temperature sensor miswired (+)", + "valueEnum": 3 + }, + { + "nameEnum": "#4 - Battery temperature sensor miswired (-)", + "valueEnum": 4 + }, + { + "nameEnum": "#5 - Battery temperature sensor disconnected", + "valueEnum": 5 + }, + { + "nameEnum": "#6 - Battery voltage sense miswired (+)", + "valueEnum": 6 + }, + { + "nameEnum": "#7 - Battery voltage sense miswired (-)", + "valueEnum": 7 + }, + { + "nameEnum": "#8 - Battery voltage sense disconnected", + "valueEnum": 8 + }, + { + "nameEnum": "#9 - Battery voltage wire losses too high", + "valueEnum": 9 + }, + { + "nameEnum": "#10 - Battery voltage too low", + "valueEnum": 10 + }, + { + "nameEnum": "#11 - Battery ripple voltage on terminals too high", + "valueEnum": 11 + }, + { + "nameEnum": "#12 - Battery low state of charge", + "valueEnum": 12 + }, + { + "nameEnum": "#13 - Battery mid-point voltage issue", + "valueEnum": 13 + }, + { + "nameEnum": "#14 - Battery temperature too low", + "valueEnum": 14 + }, + { + "nameEnum": "#17 - Charger temperature too high", + "valueEnum": 17 + }, + { + "nameEnum": "#18 - Charger over-current", + "valueEnum": 18 + }, + { + "nameEnum": "#19 - Charger current polarity reversed", + "valueEnum": 19 + }, + { + "nameEnum": "#20 - Max Bulk-time exceeded", + "valueEnum": 20 + }, + { + "nameEnum": "#21 - Charger current sensor issue", + "valueEnum": 21 + }, + { + "nameEnum": "#22 - Temperature sensor miswired", + "valueEnum": 22 + }, + { + "nameEnum": "#23 - Charger temperature sensor disconnected", + "valueEnum": 23 + }, + { + "nameEnum": "#24 - Charger internal fan not detected", + "valueEnum": 24 + }, + { + "nameEnum": "#25 - Charger internal fan over-current", + "valueEnum": 25 + }, + { + "nameEnum": "#26 - Charger terminal overheated", + "valueEnum": 26 + }, + { + "nameEnum": "#27 - Charger short circuit", + "valueEnum": 27 + }, + { + "nameEnum": "#28 - Charger issue with power stage", + "valueEnum": 28 + }, + { + "nameEnum": "#29 - Over-charge protection", + "valueEnum": 29 + }, + { + "nameEnum": "#31 - Input voltage out of range", + "valueEnum": 31 + }, + { + "nameEnum": "#32 - Input voltage too low", + "valueEnum": 32 + }, + { + "nameEnum": "#33 - Input voltage too high", + "valueEnum": 33 + }, + { + "nameEnum": "#34 - PV over current", + "valueEnum": 34 + }, + { + "nameEnum": "#35 - Input excessive power", + "valueEnum": 35 + }, + { + "nameEnum": "#36 - Input polarity issue", + "valueEnum": 36 + }, + { + "nameEnum": "#37 - Input voltage absent (mains removed, fuse blown?)", + "valueEnum": 37 + }, + { + "nameEnum": "#38 - PV Input shutdown", + "valueEnum": 38 + }, + { + "nameEnum": "#39 - PV Input shutdown", + "valueEnum": 39 + }, + { + "nameEnum": "#40 - Internal failure (PV Input failed to shutdown)", + "valueEnum": 40 + }, + { + "nameEnum": "#41 - Inverter shutdown (panel isolation resistance too low)", + "valueEnum": 41 + }, + { + "nameEnum": "#42 - Inverter shutdown (ground current too high: >30mA)", + "valueEnum": 42 + }, + { + "nameEnum": "#43 - Inverter shutdown (voltage over ground relay too high)", + "valueEnum": 43 + }, + { + "nameEnum": "#50 - Inverter overload (iit protection)", + "valueEnum": 50 + }, + { + "nameEnum": "#51 - Inverter temperature too high", + "valueEnum": 51 + }, + { + "nameEnum": "#52 - Inverter excessive current", + "valueEnum": 52 + }, + { + "nameEnum": "#53 - Inverter dc level (internal dc rail voltage)", + "valueEnum": 53 + }, + { + "nameEnum": "#54 - Inverter ac level (output voltage not ok)", + "valueEnum": 54 + }, + { + "nameEnum": "#55 - Inverter dc fail (dc on output)", + "valueEnum": 55 + }, + { + "nameEnum": "#56 - Inverter ac fail (shape wrong)*/", + "valueEnum": 56 + }, + { + "nameEnum": "#57 - Inverter ac on output (inverter only)", + "valueEnum": 57 + }, + { + "nameEnum": "#58 - Inverter bridge fault (hardware signal)", + "valueEnum": 58 + }, + { + "nameEnum": "#59 - ACIN1 relay test fault", + "valueEnum": 59 + }, + { + "nameEnum": "#60 - ACIN2 relay test fault", + "valueEnum": 60 + }, + { + "nameEnum": "#65 - Device disappeared during parallel operation (broken cable?)", + "valueEnum": 65 + }, + { + "nameEnum": "#66 - Incompatible device encountered for parallel operation (e.g. old firmware/different settings)", + "valueEnum": 66 + }, + { + "nameEnum": "#67 - No BMS", + "valueEnum": 67 + }, + { + "nameEnum": "#68 - Network misconfigured", + "valueEnum": 68 + }, + { + "nameEnum": "#80 - PV Input shutdown", + "valueEnum": 80 + }, + { + "nameEnum": "#81 - PV Input shutdown", + "valueEnum": 81 + }, + { + "nameEnum": "#82 - PV Input shutdown", + "valueEnum": 82 + }, + { + "nameEnum": "#83 - PV Input shutdown", + "valueEnum": 83 + }, + { + "nameEnum": "#84 - PV Input shutdown", + "valueEnum": 84 + }, + { + "nameEnum": "#85 - PV Input shutdown", + "valueEnum": 85 + }, + { + "nameEnum": "#86 - PV Input shutdown", + "valueEnum": 86 + }, + { + "nameEnum": "#87 - PV Input shutdown", + "valueEnum": 87 + }, + { + "nameEnum": "#113 - Non-volatile storage write error", + "valueEnum": 113 + }, + { + "nameEnum": "#114 - CPU temperature to high", + "valueEnum": 114 + }, + { + "nameEnum": "#115 - CAN/SCI communication lost (when critical)", + "valueEnum": 115 + }, + { + "nameEnum": "#116 - Calibration data lost", + "valueEnum": 116 + }, + { + "nameEnum": "#117 - Incompatible firmware encountered", + "valueEnum": 117 + }, + { + "nameEnum": "#118 - Incompatible hardware encountered", + "valueEnum": 118 + }, + { + "nameEnum": "#119 - Settings data lost", + "valueEnum": 119 + }, + { + "nameEnum": "#120 - Reference voltage failure", + "valueEnum": 120 + }, + { + "nameEnum": "#121 - Tester fail", + "valueEnum": 121 + }, + { + "nameEnum": "#122 - Non-volatile history data invalid/corrupted", + "valueEnum": 122 + }, + { + "nameEnum": "#200 - Internal error", + "valueEnum": 200 + }, + { + "nameEnum": "#201 - Internal error", + "valueEnum": 201 + }, + { + "nameEnum": "#203 - Internal error", + "valueEnum": 203 + }, + { + "nameEnum": "#205 - Internal error", + "valueEnum": 205 + }, + { + "nameEnum": "#212 - Internal error", + "valueEnum": 212 + }, + { + "nameEnum": "#215 - Internal error", + "valueEnum": 215 + } + ], + "id": 73 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "Solar Charger", + "instance": 1, + "idDataAttribute": 285, + "description": "User yield", + "formatWithUnit": "%.2F kWh", + "dbusServiceType": "solarcharger", + "dbusPath": "/Yield/User", + "code": "YU", + "bitmask": 0, + "formattedValue": "1.54 kWh", + "rawValue": "1.54", + "id": 74 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "System overview", + "instance": 0, + "idDataAttribute": 99, + "description": "Solar Yield (delta)", + "formatWithUnit": "%.2F kWh", + "dbusServiceType": null, + "dbusPath": null, + "code": "Pt", + "bitmask": 0, + "formattedValue": "0.15 kWh", + "rawValue": "0.15", + "id": 75 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "System overview", + "instance": 0, + "idDataAttribute": 113, + "description": "PV - DC-coupled", + "formatWithUnit": "%.0F W", + "dbusServiceType": "system", + "dbusPath": "/Dc/Pv/Power", + "code": "Pdc", + "bitmask": 0, + "formattedValue": "599 W", + "rawValue": "598.968", + "id": 76 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "System overview", + "instance": 0, + "idDataAttribute": 143, + "description": "Voltage", + "formatWithUnit": "%.2F V", + "dbusServiceType": "system", + "dbusPath": "/Dc/Battery/Voltage", + "code": "bv", + "bitmask": 0, + "formattedValue": "50.76 V", + "rawValue": "50.762", + "id": 77 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "System overview", + "instance": 0, + "idDataAttribute": 147, + "description": "Current", + "formatWithUnit": "%.2F A", + "dbusServiceType": "system", + "dbusPath": "/Dc/Battery/Current", + "code": "bc", + "bitmask": 0, + "formattedValue": "0.00 A", + "rawValue": 0, + "id": 78 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "System overview", + "instance": 0, + "idDataAttribute": 243, + "description": "Battery Power", + "formatWithUnit": "%.0F W", + "dbusServiceType": "system", + "dbusPath": "/Dc/Battery/Power", + "code": "bp", + "bitmask": 0, + "formattedValue": "0 W", + "rawValue": 0, + "id": 79 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "System overview", + "instance": 0, + "idDataAttribute": 144, + "description": "Battery SOC", + "formatWithUnit": "%.1F %%", + "dbusServiceType": "system", + "dbusPath": "/Dc/Battery/Soc", + "code": "bs", + "bitmask": 0, + "formattedValue": "7.7 %", + "rawValue": "7.7", + "id": 80 + }, + { + "idSite": 472967, + "timestamp": 1723741670, + "Device": "System overview", + "instance": 0, + "idDataAttribute": 215, + "description": "Battery state", + "formatWithUnit": "%s", + "dbusServiceType": "system", + "dbusPath": "/Dc/Battery/State", + "code": "bst", + "bitmask": 0, + "formattedValue": "idle", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "Idle", + "valueEnum": 0 + }, + { + "nameEnum": "Charging", + "valueEnum": 1 + }, + { + "nameEnum": "Discharging", + "valueEnum": 2 + } + ], + "id": 81 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Digital input", + "instance": 1, + "idDataAttribute": 464, + "description": "Digital input product id", + "formatWithUnit": "%s", + "dbusServiceType": "digitalinput", + "dbusPath": "/ProductId", + "code": "diP", + "bitmask": 0, + "formattedValue": "c021", + "rawValue": "c021", + "id": 82 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Digital input", + "instance": 1, + "idDataAttribute": 466, + "description": "Digital input state", + "formatWithUnit": "%s", + "dbusServiceType": "digitalinput", + "dbusPath": "/State", + "code": "dis", + "bitmask": 0, + "formattedValue": "high", + "rawValue": 1, + "dataAttributeEnumValues": [ + { + "nameEnum": "Low", + "valueEnum": 0 + }, + { + "nameEnum": "High", + "valueEnum": 1 + }, + { + "nameEnum": "Off", + "valueEnum": 2 + }, + { + "nameEnum": "On", + "valueEnum": 3 + }, + { + "nameEnum": "No", + "valueEnum": 4 + }, + { + "nameEnum": "Yes", + "valueEnum": 5 + }, + { + "nameEnum": "Open", + "valueEnum": 6 + }, + { + "nameEnum": "Closed", + "valueEnum": 7 + }, + { + "nameEnum": "Ok", + "valueEnum": 8 + }, + { + "nameEnum": "Alarm", + "valueEnum": 9 + }, + { + "nameEnum": "Running", + "valueEnum": 10 + }, + { + "nameEnum": "Stopped", + "valueEnum": 11 + } + ], + "id": 83 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Digital input", + "instance": 1, + "idDataAttribute": 467, + "description": "Digital input count", + "formatWithUnit": "%.0F", + "dbusServiceType": "digitalinput", + "dbusPath": "/Count", + "code": "dic", + "bitmask": 0, + "formattedValue": "0", + "rawValue": 0, + "id": 84 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Digital input", + "instance": 1, + "idDataAttribute": 468, + "description": "Digital input type", + "formatWithUnit": "%s", + "dbusServiceType": "digitalinput", + "dbusPath": "/Type", + "code": "dit", + "bitmask": 0, + "formattedValue": "Generic input", + "rawValue": 9, + "dataAttributeEnumValues": [ + { + "nameEnum": "Disabled", + "valueEnum": 0 + }, + { + "nameEnum": "Pulse meter", + "valueEnum": 1 + }, + { + "nameEnum": "Door sensor", + "valueEnum": 2 + }, + { + "nameEnum": "Bilge pump", + "valueEnum": 3 + }, + { + "nameEnum": "Bilge alarm", + "valueEnum": 4 + }, + { + "nameEnum": "Burglar alarm", + "valueEnum": 5 + }, + { + "nameEnum": "Smoke alarm", + "valueEnum": 6 + }, + { + "nameEnum": "Fire alarm", + "valueEnum": 7 + }, + { + "nameEnum": "CO2 alarm", + "valueEnum": 8 + }, + { + "nameEnum": "Generic input", + "valueEnum": 9 + }, + { + "nameEnum": "Generic I/O", + "valueEnum": 10 + } + ], + "id": 85 + }, + { + "idSite": 472967, + "timestamp": 1723739879, + "Device": "Digital input", + "instance": 2, + "idDataAttribute": 464, + "description": "Digital input product id", + "formatWithUnit": "%s", + "dbusServiceType": "digitalinput", + "dbusPath": "/ProductId", + "code": "diP", + "bitmask": 0, + "formattedValue": "c021", + "rawValue": "c021", + "id": 86 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Digital input", + "instance": 2, + "idDataAttribute": 466, + "description": "Digital input state", + "formatWithUnit": "%s", + "dbusServiceType": "digitalinput", + "dbusPath": "/State", + "code": "dis", + "bitmask": 0, + "formattedValue": "high", + "rawValue": 1, + "dataAttributeEnumValues": [ + { + "nameEnum": "Low", + "valueEnum": 0 + }, + { + "nameEnum": "High", + "valueEnum": 1 + }, + { + "nameEnum": "Off", + "valueEnum": 2 + }, + { + "nameEnum": "On", + "valueEnum": 3 + }, + { + "nameEnum": "No", + "valueEnum": 4 + }, + { + "nameEnum": "Yes", + "valueEnum": 5 + }, + { + "nameEnum": "Open", + "valueEnum": 6 + }, + { + "nameEnum": "Closed", + "valueEnum": 7 + }, + { + "nameEnum": "Ok", + "valueEnum": 8 + }, + { + "nameEnum": "Alarm", + "valueEnum": 9 + }, + { + "nameEnum": "Running", + "valueEnum": 10 + }, + { + "nameEnum": "Stopped", + "valueEnum": 11 + } + ], + "id": 87 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Digital input", + "instance": 2, + "idDataAttribute": 467, + "description": "Digital input count", + "formatWithUnit": "%.0F", + "dbusServiceType": "digitalinput", + "dbusPath": "/Count", + "code": "dic", + "bitmask": 0, + "formattedValue": "0", + "rawValue": 0, + "id": 88 + }, + { + "idSite": 472967, + "timestamp": 1723741675, + "Device": "Digital input", + "instance": 2, + "idDataAttribute": 468, + "description": "Digital input type", + "formatWithUnit": "%s", + "dbusServiceType": "digitalinput", + "dbusPath": "/Type", + "code": "dit", + "bitmask": 0, + "formattedValue": "Generic input", + "rawValue": 9, + "dataAttributeEnumValues": [ + { + "nameEnum": "Disabled", + "valueEnum": 0 + }, + { + "nameEnum": "Pulse meter", + "valueEnum": 1 + }, + { + "nameEnum": "Door sensor", + "valueEnum": 2 + }, + { + "nameEnum": "Bilge pump", + "valueEnum": 3 + }, + { + "nameEnum": "Bilge alarm", + "valueEnum": 4 + }, + { + "nameEnum": "Burglar alarm", + "valueEnum": 5 + }, + { + "nameEnum": "Smoke alarm", + "valueEnum": 6 + }, + { + "nameEnum": "Fire alarm", + "valueEnum": 7 + }, + { + "nameEnum": "CO2 alarm", + "valueEnum": 8 + }, + { + "nameEnum": "Generic input", + "valueEnum": 9 + }, + { + "nameEnum": "Generic I/O", + "valueEnum": 10 + } + ], + "id": 89 + }, + { + "idSite": 472967, + "timestamp": 1723739861, + "Device": "SmartBatteryProtect", + "instance": 100, + "idDataAttribute": 1209, + "description": "Product ID\t", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "bPP", + "bitmask": 0, + "formattedValue": "a3b3", + "rawValue": "a3b3", + "id": 90 + }, + { + "idSite": 472967, + "timestamp": 1723741662, + "Device": "SmartBatteryProtect", + "instance": 100, + "idDataAttribute": 1210, + "description": "State", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "bPS", + "bitmask": 0, + "formattedValue": "Load detect", + "rawValue": 249, + "dataAttributeEnumValues": [ + { + "nameEnum": "Off", + "valueEnum": 0 + }, + { + "nameEnum": "Low Power Mode", + "valueEnum": 1 + }, + { + "nameEnum": "Fault", + "valueEnum": 2 + }, + { + "nameEnum": "Bulk", + "valueEnum": 3 + }, + { + "nameEnum": "Absorption", + "valueEnum": 4 + }, + { + "nameEnum": "Float", + "valueEnum": 5 + }, + { + "nameEnum": "Storage", + "valueEnum": 6 + }, + { + "nameEnum": "Equalise", + "valueEnum": 7 + }, + { + "nameEnum": "Passthru", + "valueEnum": 8 + }, + { + "nameEnum": "Inverting", + "valueEnum": 9 + }, + { + "nameEnum": "Assisting", + "valueEnum": 10 + }, + { + "nameEnum": "Power Supply Mode", + "valueEnum": 11 + }, + { + "nameEnum": "Wake-up", + "valueEnum": 245 + }, + { + "nameEnum": "Repeated absorption", + "valueEnum": 246 + }, + { + "nameEnum": "Auto equalise", + "valueEnum": 247 + }, + { + "nameEnum": "BatterySafe", + "valueEnum": 248 + }, + { + "nameEnum": "Load detect", + "valueEnum": 249 + }, + { + "nameEnum": "Blocked", + "valueEnum": 250 + }, + { + "nameEnum": "Test Mode", + "valueEnum": 251 + }, + { + "nameEnum": "External Control", + "valueEnum": 252 + }, + { + "nameEnum": "Not Available", + "valueEnum": 255 + } + ], + "id": 91 + }, + { + "idSite": 472967, + "timestamp": 1723741662, + "Device": "SmartBatteryProtect", + "instance": 100, + "idDataAttribute": 1211, + "description": "Output state", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "bPOS", + "bitmask": 0, + "formattedValue": "Output off", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "Output off", + "valueEnum": 0 + }, + { + "nameEnum": "Output on", + "valueEnum": 1 + }, + { + "nameEnum": "Output scheduled to be activated", + "valueEnum": 2 + }, + { + "nameEnum": "Attempting to activate output", + "valueEnum": 3 + } + ], + "id": 92 + }, + { + "idSite": 472967, + "timestamp": 1723741662, + "Device": "SmartBatteryProtect", + "instance": 100, + "idDataAttribute": 1212, + "description": "Error", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "bPE", + "bitmask": 0, + "formattedValue": "No error", + "rawValue": 0, + "dataAttributeEnumValues": [ + { + "nameEnum": "No error", + "valueEnum": 0 + }, + { + "nameEnum": "Battery temperature too high", + "valueEnum": 1 + }, + { + "nameEnum": "Battery voltage too high", + "valueEnum": 2 + }, + { + "nameEnum": "Battery temperature sensor miswired (+)", + "valueEnum": 3 + }, + { + "nameEnum": "Battery temperature sensor miswired (-)", + "valueEnum": 4 + }, + { + "nameEnum": "Battery temperature sensor disconnected", + "valueEnum": 5 + }, + { + "nameEnum": "Battery voltage sense miswired (+)", + "valueEnum": 6 + }, + { + "nameEnum": "Battery voltage sense miswired (-)", + "valueEnum": 7 + }, + { + "nameEnum": "Battery voltage sense disconnected", + "valueEnum": 8 + }, + { + "nameEnum": "Battery wire losses too high", + "valueEnum": 9 + }, + { + "nameEnum": "Battery voltage too low", + "valueEnum": 10 + }, + { + "nameEnum": "Battery high ripple voltage", + "valueEnum": 11 + }, + { + "nameEnum": "Battery low state of charge", + "valueEnum": 12 + }, + { + "nameEnum": "Battery mid-point voltage issue", + "valueEnum": 13 + }, + { + "nameEnum": "Battery temperature too low", + "valueEnum": 14 + }, + { + "nameEnum": "Charger temperature too high", + "valueEnum": 17 + }, + { + "nameEnum": "Charger over-current", + "valueEnum": 18 + }, + { + "nameEnum": "Charger current reversed", + "valueEnum": 19 + }, + { + "nameEnum": "Bulk time limit reached", + "valueEnum": 20 + }, + { + "nameEnum": "Charger current sensor issue", + "valueEnum": 21 + }, + { + "nameEnum": "Charger temperature sensor miswired", + "valueEnum": 22 + }, + { + "nameEnum": "Charger temperature sensor disconnected", + "valueEnum": 23 + }, + { + "nameEnum": "Charger internal fan not detected", + "valueEnum": 24 + }, + { + "nameEnum": "Charger internal fan over-current", + "valueEnum": 25 + }, + { + "nameEnum": "Charger terminal over-heated", + "valueEnum": 26 + }, + { + "nameEnum": "Charger short circuit", + "valueEnum": 27 + }, + { + "nameEnum": "Charger power stage issue", + "valueEnum": 28 + }, + { + "nameEnum": "Over-charge protection", + "valueEnum": 29 + }, + { + "nameEnum": "Input voltage out of range", + "valueEnum": 31 + }, + { + "nameEnum": "Input voltage too low", + "valueEnum": 32 + }, + { + "nameEnum": "Input voltage too high", + "valueEnum": 33 + }, + { + "nameEnum": "Input current too high", + "valueEnum": 34 + }, + { + "nameEnum": "Input power too high", + "valueEnum": 35 + }, + { + "nameEnum": "Input polarity reversed", + "valueEnum": 36 + }, + { + "nameEnum": "Input voltage absent", + "valueEnum": 37 + }, + { + "nameEnum": "Input shutdown (no retries)", + "valueEnum": 38 + }, + { + "nameEnum": "Input shutdown (retry)", + "valueEnum": 39 + }, + { + "nameEnum": "Input internal failure", + "valueEnum": 40 + }, + { + "nameEnum": "Panel isolation failure", + "valueEnum": 41 + }, + { + "nameEnum": "Ground fault detected", + "valueEnum": 42 + }, + { + "nameEnum": "Ground fault detected", + "valueEnum": 43 + }, + { + "nameEnum": "Reserved by GX Devices", + "valueEnum": 44 + }, + { + "nameEnum": "Reserved by GX Devices", + "valueEnum": 45 + }, + { + "nameEnum": "Reserved by GX Devices", + "valueEnum": 46 + }, + { + "nameEnum": "Reserved by GX Devices", + "valueEnum": 47 + }, + { + "nameEnum": "Reserved by GX Devices", + "valueEnum": 48 + }, + { + "nameEnum": "Reserved by GX Devices", + "valueEnum": 49 + }, + { + "nameEnum": "Inverter overload", + "valueEnum": 50 + }, + { + "nameEnum": "Inverter temp too high", + "valueEnum": 51 + }, + { + "nameEnum": "Inverter peak current", + "valueEnum": 52 + }, + { + "nameEnum": "Inverter internal DC level", + "valueEnum": 53 + }, + { + "nameEnum": "Inverter wrong ACout level", + "valueEnum": 54 + }, + { + "nameEnum": "Inverter powerstage fault", + "valueEnum": 55 + }, + { + "nameEnum": "Inverter powerstage fault", + "valueEnum": 56 + }, + { + "nameEnum": "Inverter connected to AC", + "valueEnum": 57 + }, + { + "nameEnum": "Inverter powerstage fault", + "valueEnum": 58 + }, + { + "nameEnum": "ACIN1 relay test fault", + "valueEnum": 59 + }, + { + "nameEnum": "ACIN2 relay test fault", + "valueEnum": 60 + }, + { + "nameEnum": "Device missing (parallel operation)", + "valueEnum": 65 + }, + { + "nameEnum": "Configuration issue (parallel operation)", + "valueEnum": 66 + }, + { + "nameEnum": "BMS connection lost (parallel operation)", + "valueEnum": 67 + }, + { + "nameEnum": "Network misconfigured (parallel operation)", + "valueEnum": 68 + }, + { + "nameEnum": "Non-volatile storage write error", + "valueEnum": 113 + }, + { + "nameEnum": "CPU temperature too high", + "valueEnum": 114 + }, + { + "nameEnum": "Communication lost", + "valueEnum": 115 + }, + { + "nameEnum": "Calibration data lost", + "valueEnum": 116 + }, + { + "nameEnum": "Invalid firmware", + "valueEnum": 117 + }, + { + "nameEnum": "Incompatible hardware", + "valueEnum": 118 + }, + { + "nameEnum": "Settings invalid/corrupted", + "valueEnum": 119 + }, + { + "nameEnum": "Reference voltage failed", + "valueEnum": 120 + }, + { + "nameEnum": "Tester fail", + "valueEnum": 121 + }, + { + "nameEnum": "History invalid/corrupted", + "valueEnum": 122 + }, + { + "nameEnum": "DC voltage error", + "valueEnum": 200 + }, + { + "nameEnum": "DC voltage error", + "valueEnum": 201 + }, + { + "nameEnum": "3V3 supply error", + "valueEnum": 203 + }, + { + "nameEnum": "5V supply error", + "valueEnum": 205 + }, + { + "nameEnum": "12V supply error", + "valueEnum": 212 + }, + { + "nameEnum": "15V supply error", + "valueEnum": 215 + }, + { + "nameEnum": "Unknown error", + "valueEnum": 255 + } + ], + "id": 93 + }, + { + "idSite": 472967, + "timestamp": 1723741662, + "Device": "SmartBatteryProtect", + "instance": 100, + "idDataAttribute": 1213, + "description": "Input voltage", + "formatWithUnit": "%.2F V", + "dbusServiceType": null, + "dbusPath": null, + "code": "bPiV", + "bitmask": 0, + "formattedValue": "50.75 V", + "rawValue": "50.75", + "id": 94 + }, + { + "idSite": 472967, + "timestamp": 1723741662, + "Device": "SmartBatteryProtect", + "instance": 100, + "idDataAttribute": 1214, + "description": "Output voltage", + "formatWithUnit": "%.2F V", + "dbusServiceType": null, + "dbusPath": null, + "code": "bPoV", + "bitmask": 0, + "formattedValue": "0.02 V", + "rawValue": "0.02", + "id": 95 + }, + { + "idSite": 472967, + "timestamp": 1723741662, + "Device": "SmartBatteryProtect", + "instance": 100, + "idDataAttribute": 1215, + "description": "Off reason", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "bPOR", + "bitmask": 1, + "formattedValue": "Internal reason; Active alarm (10000)", + "rawValue": 16, + "dataAttributeEnumValues": [ + { + "nameEnum": "No/low input power", + "valueEnum": 1 + }, + { + "nameEnum": "Physical switch", + "valueEnum": 2 + }, + { + "nameEnum": "Remote via device mode or button", + "valueEnum": 4 + }, + { + "nameEnum": "Remote input connector", + "valueEnum": 8 + }, + { + "nameEnum": "Internal reason", + "valueEnum": 16 + }, + { + "nameEnum": "PayGo token required", + "valueEnum": 32 + }, + { + "nameEnum": "BMS disallows charge", + "valueEnum": 64 + }, + { + "nameEnum": "Low input voltage", + "valueEnum": 128 + }, + { + "nameEnum": "Analysing input voltage", + "valueEnum": 256 + }, + { + "nameEnum": "Low battery temperature", + "valueEnum": 512 + }, + { + "nameEnum": "No PV power", + "valueEnum": 1024 + }, + { + "nameEnum": "Low battery voltage", + "valueEnum": 2048 + }, + { + "nameEnum": "Low AC voltage", + "valueEnum": 4096 + }, + { + "nameEnum": "Parallel CAN out of sync", + "valueEnum": 8192 + }, + { + "nameEnum": "Parallel CAN insufficient inverters", + "valueEnum": 16384 + }, + { + "nameEnum": "Active alarm", + "valueEnum": 32767 + } + ], + "id": 96 + }, + { + "idSite": 472967, + "timestamp": 1723739861, + "Device": "SmartBatteryProtect", + "instance": 100, + "idDataAttribute": 1216, + "description": "Custom name", + "formatWithUnit": "%s", + "dbusServiceType": null, + "dbusPath": null, + "code": "bPcn", + "bitmask": 0, + "formattedValue": "BatteryProtect Solar", + "rawValue": "BatteryProtect Solar", + "id": 97 + } + ], + "num_records": 97 +} \ No newline at end of file diff --git a/Pub_Sub/solarpump/thingsboard/device_attributes.json b/Pub_Sub/solarpump/thingsboard/device_attributes.json new file mode 100644 index 0000000..0bb648e --- /dev/null +++ b/Pub_Sub/solarpump/thingsboard/device_attributes.json @@ -0,0 +1,111 @@ +{ + "Gateway": [ + "Bluetooth enabled", + "gatewayID", + "Productid", + "MachineName", + "Fw Version", + "Fw Build date", + "Machine serial number", + "Hardware revision", + "Remote ip address", + "SIM card identifier", + "Auto update", + "Update to", + "Update status", + "Voltage", + "Internal temperature", + "Antenna Type", + "Signal RSSI", + "VRM Log time offset", + "VRM Log interval", + "Network name", + "Latitude", + "Longitude", + "Relay 1 state" + ], + "Battery Monitor": [ + "Battery custom name", + "Model", + "Firmware version", + "Voltage", + "Current", + "Consumed Amphours", + "State of charge", + "Time to go", + "Low voltage alarm", + "High voltage alarm", + "Low starter-voltage alarm", + "High starter-voltage alarm", + "Low state-of-charge alarm", + "Low battery temperature alarm", + "High battery temperature alarm", + "Mid-voltage alarm", + "Deepest discharge", + "Last discharge", + "Average discharge", + "Charge cycles", + "Full discharges", + "Total Ah drawn", + "Minimum voltage", + "Maximum voltage", + "Time since last full charge", + "Automatic syncs", + "Low voltage alarms", + "High voltage alarms", + "Minimum starter voltage", + "Maximum starter voltage", + "Discharged Energy", + "Charged Energy" + ], + "Solar Charger": [ + "Solar charger off reason", + "Solar charger custom name", + "Solarcharger model", + "Solar charger version", + "Solar charger serial number", + "Voltage", + "Current", + "Battery watts", + "Load state", + "Charge state", + "PV voltage", + "PV power", + "MPPT State", + "Yield today", + "Maximum charge power today", + "Yield yesterday", + "Maximum charge power yesterday", + "Error code", + "User yield" + ], + "System overview": [ + "Solar Yield (delta)", + "PV - DC-coupled", + "Voltage", + "Current", + "Battery Power", + "Battery SOC", + "Battery state" + ], + "Digital input": [ + "Digital input product id", + "Digital input state", + "Digital input count", + "Digital input type", + "Digital input product id", + "Digital input state", + "Digital input count", + "Digital input type" + ], + "SmartBatteryProtect": [ + "Product ID", + "State", + "Output state", + "Error", + "Input voltage", + "Output voltage", + "Off reason", + "Custom name" + ] +} diff --git a/Pub_Sub/solarpump/thingsboard/pub/sendAlarms.py b/Pub_Sub/solarpump/thingsboard/pub/sendAlarms.py new file mode 100644 index 0000000..77866f7 --- /dev/null +++ b/Pub_Sub/solarpump/thingsboard/pub/sendAlarms.py @@ -0,0 +1,215 @@ +# Enter your python code. +import json, time, math +from datetime import datetime as dt +from datetime import timedelta as td +from common.Logger import logger +from quickfaas.remotebus import publish + +class RuntimeStats: + def __init__(self): + self.runs = {} + self.currentRun = 0 + self.today = "" + self.todayString = "" + + def manageTime(self): + if self.todayString != dt.strftime(dt.today(), "%Y-%m-%d"): + if self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] and not self.runs[self.todayString]["run_" + str(self.currentRun)]["end"]: + self.runs[self.todayString]["run_" + str(self.currentRun)]["end"] = time.mktime(dt.strptime(self.todayString + " 23:59:59", "%Y-%m-%d %H:%M:%S").timetuple()) + self.addDay() + self.today = dt.today() + self.todayString = dt.strftime(self.today, "%Y-%m-%d") + days = list(self.runs.keys()) + days.sort() + while (dt.strptime(days[-1],"%Y-%m-%d") - dt.strptime(days[0], "%Y-%m-%d")).days > 40: + self.removeDay(day=days[0]) + days = list(self.runs.keys()) + days.sort() + self.saveDataToFile() + + def addHertzDataPoint(self, frequency): + if frequency > 0: + self.manageTime() + try: + self.runs[self.todayString]["run_" + str(self.currentRun)]["frequencies"].append(frequency) + except: + self.runs[self.todayString]["run_" + str(self.currentRun)]["frequencies"] = [frequency] + + def startRun(self): + if self.checkRunning(): + self.endRun() + self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] = time.time() + + def endRun(self): + self.runs[self.todayString]["run_" + str(self.currentRun)]["end"] = time.time() + self.currentRun += 1 + self.runs[self.todayString]["run_" + str(self.currentRun)] = {"start":0, "end": 0, "frequencies":[]} + + def checkRunning(self): + if self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] and not self.runs[self.todayString]["run_" + str(self.currentRun)]["end"]: + return True + return False + + def addDay(self): + self.today = dt.today() + self.todayString = dt.strftime(self.today, "%Y-%m-%d") + self.currentRun = 1 + self.runs[self.todayString] = {} + self.runs[self.todayString]["run_" + str(self.currentRun)] = {"start":0, "end": 0, "frequencies":[]} + + def countRunsDay(self, day=None): + if not day: + day = self.todayString + return len(self.runs[day].keys()) + + def countRunsMultiDay(self, numDays=30): + total_runs = 0 + for day in list(self.runs.keys()): + total_runs += self.countRunsDay(day=day) + return total_runs + + def calculateAverageHertzDay(self, day=None, returnArray=False): + dayFrequencies = [] + if not day: + day = self.todayString + for run in list(self.runs[day].keys()): + try: + dayFrequencies += self.runs[day][run]["frequencies"] + except Exception as e: + logger.debug("{} missing frequency data for {}".format(day,run)) + if returnArray: + return dayFrequencies + return round(math.fsum(dayFrequencies)/len(dayFrequencies),2) + + def calculateAverageHertzMultiDay(self, numDays=30): + self.manageTime() + frequencies = [] + for day in list(self.runs.keys()): + if not day == self.todayString and (dt.strptime(self.todayString, "%Y-%m-%d") - dt.strptime(day, "%Y-%m-%d")).days <= numDays: + try: + frequencies += self.calculateAverageHertzDay(day=day, returnArray=True) + except Exception as e: + logger.debug("{} missing frequency data".format(day)) + if len(frequencies): + return round(math.fsum(frequencies)/len(frequencies), 2) + return 0 + + def calculateRunTimeDay(self, day=None, convertToHours=True): + self.manageTime() + total_time = 0 + if not day: + day = self.todayString + for run in list(self.runs.get(day,{}).keys()): + if self.runs[day][run]["end"] == 0 and self.runs[day][run]["start"] != 0: + total_time = time.time() - self.runs[day][run]["start"] + total_time + else: + total_time = self.runs[day][run]["end"] - self.runs[day][run]["start"] + total_time + if convertToHours: + return self.convertSecondstoHours(total_time) + return total_time + + def calculateRunTimeMultiDay(self, numDays=30, convertToHours=True): + total_time = 0 + for day in list(self.runs.keys()): + if (dt.strptime(self.todayString, "%Y-%m-%d") - dt.strptime(day, "%Y-%m-%d")).days <= numDays: + total_time += self.calculateRunTimeDay(day=day, convertToHours=False) + if convertToHours: + return self.convertSecondstoHours(total_time) + return total_time + + def calculateRunPercentDay(self, day=None, precise=False): + if not day: + day = self.todayString + if precise: + return (self.calculateRunTimeDay(day=day)/24) * 100 + return round((self.calculateRunTimeDay(day=day)/24) * 100, 2) + + + def calculateRunPercentMultiDay(self, numDays=30, precise=False): + self.manageTime() + if precise: + return (self.calculateRunTimeMultiDay()/(24*numDays)) * 100 + return round((self.calculateRunTimeMultiDay()/(24*numDays)) * 100,2) + + def removeDay(self, day=None): + if not day: + raise Exception("Day can not be None") + logger.debug("removing day {}".format(day)) + del self.runs[day] + self.saveDataToFile() + + def convertSecondstoHours(self, seconds): + return round(seconds / (60*60),2) + + def resetData(self): + logger.debug("clearing database") + try: + for day in list(self.runs.keys()): + self.removeDay(day=day) + except Exception as e: + logger.error(e) + return False + self.runs = {} + self.currentRun = 0 + self.today = "" + self.todayString = "" + self.manageTime() + return True + + def loadDataFromFile(self, filePath="/var/user/files/runtimestats.json"): + try: + with open(filePath, "r") as f: + temp = json.load(f) + self.runs = temp["data"] + self.currentRun = temp["current_run"] + self.today = dt.strptime(temp["current_day"], "%Y-%m-%d") + self.todayString = temp["current_day"] + self.manageTime() + except: + logger.debug("Could not find file at {}".format(filePath)) + logger.debug("creating file") + self.addDay() + try: + with open(filePath, "w") as f: + d = { + "current_run": self.currentRun, + "current_day": self.todayString, + "data": self.runs + } + json.dump(d, f, indent=4) + except Exception as e: + logger.error(e) + + def saveDataToFile(self, filePath="/var/user/files/runtimestats.json"): + try: + logger.debug("Saving Runs") + with open(filePath, "w") as f: + d = { + "current_run": self.currentRun, + "current_day": self.todayString, + "data": self.runs + } + json.dump(d, f, indent=4) + except Exception as e: + logger.error(e) + +rts = RuntimeStats() + + +def runTime(message, wizard_api, cloudName): + rts.loadDataFromFile() + rts.saveDataToFile() + logger.debug("publish topic:%s, payload: %s, cloudName: %s" % (__topic__, message, cloudName)) + payload = {} + payload["ts"] = time.time()*1000 + payload["values"] = {message["values"]["running"]["measureName"]: message["values"]["running"]["value"]} + rts.manageTime() + if message["values"]["running"]["value"] == 1 and not rts.runs[rts.todayString]["run_" + str(rts.currentRun)]["start"]: + rts.startRun() + rts.saveDataToFile() + elif message["values"]["running"]["value"] == 0 and rts.runs[rts.todayString]["run_" + str(rts.currentRun)]["start"] and not rts.runs[rts.todayString]["run_" + str(rts.currentRun)]["end"]: + rts.endRun() + rts.saveDataToFile() + payload["values"]["today_running_hours"] = rts.calculateRunTimeDay() + payload["values"]["month_running_hours"] = rts.calculateRunTimeMultiDay(numDays=dt.today().day) + publish(__topic__, json.dumps(payload), __qos__, cloud_name=cloudName) diff --git a/Pub_Sub/solarpump/thingsboard/pub/sendData.py b/Pub_Sub/solarpump/thingsboard/pub/sendData.py new file mode 100644 index 0000000..e189552 --- /dev/null +++ b/Pub_Sub/solarpump/thingsboard/pub/sendData.py @@ -0,0 +1,613 @@ +import json, os, time, shutil, math +from datetime import datetime as dt +from datetime import timedelta as td +from calendar import monthrange +from common.Logger import logger +from quickfaas.remotebus import publish +from mobiuspi_lib.gps import GPS +from quickfaas.global_dict import get as get_params +from quickfaas.global_dict import _set_global_args + + +class RuntimeStats: + def __init__(self): + self.runs = {} + self.currentRun = 0 + self.today = "" + self.todayString = "" + + def manageTime(self): + if self.todayString != dt.strftime(dt.today(), "%Y-%m-%d"): + if self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] and not self.runs[self.todayString]["run_" + str(self.currentRun)]["end"]: + self.runs[self.todayString]["run_" + str(self.currentRun)]["end"] = time.mktime(dt.strptime(self.todayString + " 23:59:59", "%Y-%m-%d %H:%M:%S").timetuple()) + self.addDay() + self.today = dt.today() + self.todayString = dt.strftime(self.today, "%Y-%m-%d") + days = list(self.runs.keys()) + days.sort() + while (dt.strptime(days[-1],"%Y-%m-%d") - dt.strptime(days[0], "%Y-%m-%d")).days > 40: + self.removeDay(day=days[0]) + days = list(self.runs.keys()) + days.sort() + + def addHertzDataPoint(self, frequency): + if frequency > 0: + self.manageTime() + try: + self.runs[self.todayString]["run_" + str(self.currentRun)]["frequencies"].append(frequency) + except: + self.runs[self.todayString]["run_" + str(self.currentRun)]["frequencies"] = [frequency] + + def startRun(self): + if self.checkRunning(): + self.endRun() + self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] = time.time() + + def endRun(self): + self.runs[self.todayString]["run_" + str(self.currentRun)]["end"] = time.time() + self.currentRun += 1 + self.runs[self.todayString]["run_" + str(self.currentRun)] = {"start":0, "end": 0, "frequencies":[]} + + def checkRunning(self): + if self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] and not self.runs[self.todayString]["run_" + str(self.currentRun)]["end"]: + return True + return False + + def addDay(self): + self.today = dt.today() + self.todayString = dt.strftime(self.today, "%Y-%m-%d") + self.currentRun = 1 + self.runs[self.todayString] = {} + self.runs[self.todayString]["run_" + str(self.currentRun)] = {"start":0, "end": 0, "frequencies":[]} + + def countRunsDay(self, day=None): + if not day: + day = self.todayString + return len(self.runs[day].keys()) + + def countRunsMultiDay(self, numDays=30): + total_runs = 0 + for day in list(self.runs.keys()): + total_runs += self.countRunsDay(day=day) + return total_runs + + def calculateAverageHertzDay(self, day=None, returnArray=False): + dayFrequencies = [] + if not day: + day = self.todayString + for run in list(self.runs[day].keys()): + try: + dayFrequencies += self.runs[day][run]["frequencies"] + except Exception as e: + logger.debug("{} missing frequency data for {}".format(day,run)) + if returnArray: + return dayFrequencies + return round(math.fsum(dayFrequencies)/len(dayFrequencies),2) + + def calculateAverageHertzMultiDay(self, numDays=30): + self.manageTime() + frequencies = [] + for day in list(self.runs.keys()): + if not day == self.todayString and (dt.strptime(self.todayString, "%Y-%m-%d") - dt.strptime(day, "%Y-%m-%d")).days <= numDays: + try: + frequencies += self.calculateAverageHertzDay(day=day, returnArray=True) + except Exception as e: + logger.debug("{} missing frequency data".format(day)) + if len(frequencies): + return round(math.fsum(frequencies)/len(frequencies), 2) + return 0 + + def calculateRunTimeDay(self, day=None, convertToHours=True): + self.manageTime() + total_time = 0 + if not day: + day = self.todayString + for run in list(self.runs.get(day,{}).keys()): + if self.runs[day][run]["end"] == 0 and self.runs[day][run]["start"] != 0: + total_time = time.time() - self.runs[day][run]["start"] + total_time + else: + total_time = self.runs[day][run]["end"] - self.runs[day][run]["start"] + total_time + if convertToHours: + return self.convertSecondstoHours(total_time) + return total_time + + def calculateRunTimeMultiDay(self, numDays=30, convertToHours=True): + total_time = 0 + for day in list(self.runs.keys()): + if (dt.strptime(self.todayString, "%Y-%m-%d") - dt.strptime(day, "%Y-%m-%d")).days <= numDays: + total_time += self.calculateRunTimeDay(day=day, convertToHours=False) + if convertToHours: + return self.convertSecondstoHours(total_time) + return total_time + + def calculateRunPercentDay(self, day=None, precise=False): + if not day: + day = self.todayString + if precise: + return (self.calculateRunTimeDay(day=day)/24) * 100 + return round((self.calculateRunTimeDay(day=day)/24) * 100, 2) + + + def calculateRunPercentMultiDay(self, numDays=30, precise=False): + self.manageTime() + if precise: + return (self.calculateRunTimeMultiDay()/(24*numDays)) * 100 + return round((self.calculateRunTimeMultiDay()/(24*numDays)) * 100,2) + + def removeDay(self, day=None): + if not day: + raise Exception("Day can not be None") + logger.debug("removing day {}".format(day)) + del self.runs[day] + self.saveDataToFile() + + def convertSecondstoHours(self, seconds): + return round(seconds / (60*60),2) + + def resetData(self): + logger.debug("clearing database") + try: + for day in list(self.runs.keys()): + self.removeDay(day=day) + except Exception as e: + logger.error(e) + return False + self.runs = {} + self.currentRun = 0 + self.today = "" + self.todayString = "" + self.manageTime() + return True + + def loadDataFromFile(self, filePath="/var/user/files/runtimestats.json"): + try: + with open(filePath, "r") as f: + temp = json.load(f) + self.runs = temp["data"] + self.currentRun = temp["current_run"] + self.today = dt.strptime(temp["current_day"], "%Y-%m-%d") + self.todayString = temp["current_day"] + self.manageTime() + except: + logger.debug("Could not find file at {}".format(filePath)) + logger.debug("creating file") + self.addDay() + try: + with open(filePath, "w") as f: + d = { + "current_run": self.currentRun, + "current_day": self.todayString, + "data": self.runs + } + json.dump(d, f, indent=4) + except Exception as e: + logger.error(e) + + def saveDataToFile(self, filePath="/var/user/files/runtimestats.json"): + try: + logger.debug("Saving Runs") + with open(filePath, "w") as f: + d = { + "current_run": self.currentRun, + "current_day": self.todayString, + "data": self.runs + } + json.dump(d, f, indent=4) + except Exception as e: + logger.error(e) + +rts = RuntimeStats() +rts.loadDataFromFile() +rts.saveDataToFile() + +def reboot(reason="Rebooting for config file update"): + #basic = Basic() + logger.info("!" * 10 + "REBOOTING DEVICE" + "!"*10) + logger.info(reason) + r = os.popen("kill -s SIGHUP `cat /var/run/python/supervisord.pid`").read() + logger.info(f"REBOOT : {r}") + +def checkFileExist(filename): + path = "/var/user/files" + try: + if not os.path.exists(path): + logger.debug("no folder making files folder in var/user") + os.makedirs(path) + with open(path + "/" + filename, "a") as f: + json.dump({}, f) + except Exception as e: + logger.error(f"Something went wrong in checkFileExist while making folder: {e}") + + try: + if not os.path.exists(path + "/" + filename): + logger.debug("no creds file making creds file") + with open(path + "/" + filename, "a") as f: + json.dump({}, f) + except Exception as e: + logger.error(f"Something went wrong in checkFileExist wihle making file: {e}") + +def convertDStoJSON(ds): + j = dict() + try: + for x in ds: + j[x["key"]] = x["value"] + except Exception as e: + logger.error(f"Something went wrong in convertDStoJSON: {e}") + return j + +def convertJSONtoDS(j): + d = [] + try: + for key in j.keys(): + d.append({"key": key, "value": j[key]}) + except Exception as e: + logger.error(f"Something went wrong in convertJSONtoDS: {e}") + return d + +def checkCredentialConfig(): + logger.debug("CHECKING CONFIG") + cfgpath = "/var/user/cfg/device_supervisor/device_supervisor.cfg" + credspath = "/var/user/files/creds.json" + cfg = dict() + with open(cfgpath, "r") as f: + try: + cfg = json.load(f) + clouds = cfg.get("clouds") + logger.debug(clouds) + #if not configured then try to configure from stored values + if clouds[0]["args"]["clientId"] == "unknown" or clouds[0]["args"]["username"] == "unknown" or not clouds[0]["args"]["passwd"] or clouds[0]["args"]["passwd"] == "unknown": + try: + checkFileExist("creds.json") + except Exception as e: + logger.error(f"Error in checkFileExist: {e}") + with open(credspath, "r") as c: + try: + creds = json.load(c) + if creds: + logger.debug("updating config with stored data") + clouds[0]["args"]["clientId"] = creds["clientId"] + clouds[0]["args"]["username"] = creds["userName"] + clouds[0]["args"]["passwd"] = creds["password"] + cfg["clouds"] = clouds + cfg = checkParameterConfig(cfg) + with open(cfgpath, "w", encoding='utf-8') as n: + json.dump(cfg, n, indent=1, ensure_ascii=False) + reboot() + except Exception as e: + logger.error(f"Error trying to load credentials from file: {e}") + else: + #assuming clouds is filled out, if data is different then assume someone typed in something new and store it, if creds is empty fill with clouds' data + checkFileExist("creds.json") + with open(credspath, "r") as c: + logger.debug("updating stored file with new data") + cfg = checkParameterConfig(cfg) + with open(cfgpath, "w", encoding='utf-8') as n: + json.dump(cfg, n, indent=1, ensure_ascii=False) + creds = json.load(c) + if creds: + if creds["clientId"] != clouds[0]["args"]["clientId"]: + creds["clientId"] = clouds[0]["args"]["clientId"] + if creds["userName"] != clouds[0]["args"]["username"]: + creds["userName"] = clouds[0]["args"]["username"] + if creds["password"] != clouds[0]["args"]["passwd"]: + creds["password"] = clouds[0]["args"]["passwd"] + else: + creds["clientId"] = clouds[0]["args"]["clientId"] + creds["userName"] = clouds[0]["args"]["username"] + creds["password"] = clouds[0]["args"]["passwd"] + with open(credspath, "w") as cw: + json.dump(creds,cw) + except Exception as e: + logger.error(f"Somethign went wrong in checkCredentialConfig: {e}") + +def checkParameterConfig(cfg): + try: + logger.debug("Checking Parameters!!!!") + paramspath = "/var/user/files/params.json" + cfgparams = convertDStoJSON(cfg.get("labels")) + #check stored values + checkFileExist("params.json") + with open(paramspath, "r") as f: + logger.debug("Opened param storage file") + params = json.load(f) + if params: + if cfgparams != params: + #go through each param + #if not "unknown" and cfg and params aren't the same take from cfg likely updated manually + #if key in cfg but not in params copy to params + logger.debug("equalizing params between cfg and stored") + for key in cfgparams.keys(): + try: + if cfgparams[key] != params[key] and cfgparams[key] != "unknown": + params[key] = cfgparams[key] + except: + params[key] = cfgparams[key] + cfg["labels"] = convertJSONtoDS(params) + _set_global_args(convertJSONtoDS(params)) + with open(paramspath, "w") as p: + json.dump(params, p) + else: + with open(paramspath, "w") as p: + logger.debug("initializing param file with params in memory") + json.dump(convertDStoJSON(get_params()), p) + cfg["labels"] = get_params() + + return cfg + except Exception as e: + logger.error(f"Something went wrong in checkParameterConfig: {e}") + os.system(f'rm {paramspath}') + return cfg + +payload = {} + +def initialize_totalizers(): + return { + "day": 0, + "week": 0, + "month": 0, + "year": 0, + "lifetime": 0, + "dayHolding": 0, + "weekHolding": 0, + "monthHolding": 0, + "yearHolding": 0 + } + +def getTotalizers(file_path="/var/user/files/totalizers.json"): + """ + Retrieves totalizer data from a JSON file. + + :param file_path: Path to the JSON file storing totalizer data. + :return: Dictionary containing totalizer values. + """ + try: + with open(file_path, "r") as t: + totalizers = json.load(t) + if not totalizers or not isinstance(totalizers, dict): + logger.info("Invalid data format in the file. Initializing totalizers.") + totalizers = initialize_totalizers() + except FileNotFoundError: + logger.info("File not found. Initializing totalizers.") + totalizers = initialize_totalizers() + except json.JSONDecodeError: + timestamp = dt.now().strftime("%Y%m%d_%H%M%S") + # Split the file path and insert the timestamp before the extension + file_name, file_extension = os.path.splitext(file_path) + backup_file_path = f"{file_name}_{timestamp}{file_extension}" + shutil.copyfile(file_path, backup_file_path) + logger.error(f"Error decoding JSON. A backup of the file is created at {backup_file_path}. Initializing totalizers.") + totalizers = initialize_totalizers() + return totalizers + +# Helper function to split the payload into chunks +def chunk_payload(payload, chunk_size=20): + chunked_values = list(payload["values"].items()) + for i in range(0, len(chunked_values), chunk_size): + yield { + "ts": payload["ts"], + "values": dict(chunked_values[i:i+chunk_size]) + } + + +def sendData(message,wizard_api): + rts.loadDataFromFile() + logger.debug(message) + checkCredentialConfig() + payload = {"ts": (round(dt.timestamp(dt.now())/600)*600)*1000, "values": {}} + resetPayload = {"ts": "", "values": {}} + dayReset, weekReset, monthReset, yearReset = False, False, False, False + for controller, measures in message["values"].items(): + for measure, values in measures.items(): + try: + if values.get("status") == 1: + if measure in ["totalizer_1"]: + payload["values"]["day_volume"], dayReset = totalizeDay(values.get("raw_data")) + payload["values"]["week_volume"], weekReset = totalizeWeek(values.get("raw_data")) + payload["values"]["month_volume"], monthReset = totalizeMonth(values.get("raw_data")) + payload["values"]["year_volume"], yearReset = totalizeYear(values.get("raw_data")) + if measure in ["running"]: + rts.manageTime() + if values.get("raw_data") == 1 and not rts.runs[rts.todayString]["run_" + str(rts.currentRun)]["start"]: + rts.startRun() + rts.saveDataToFile() + elif values.get("raw_data") == 0 and rts.runs[rts.todayString]["run_" + str(rts.currentRun)]["start"] and not rts.runs[rts.todayString]["run_" + str(rts.currentRun)]["end"]: + rts.endRun() + rts.saveDataToFile() + payload["values"]["today_running_hours"] = rts.calculateRunTimeDay() + payload["values"]["month_running_hours"] = rts.calculateRunTimeMultiDay(numDays=dt.today().day) + payload["values"][measure] = values.get("raw_data") + except Exception as e: + logger.error(e) + try: + payload["values"]["latitude"], payload["values"]["longitude"], payload["values"]["speed"] = getGPS() + except: + logger.error("Could not get GPS coordinates") + for chunk in chunk_payload(payload=payload): + publish(__topic__, json.dumps(chunk), __qos__) + time.sleep(2) + + publish("v1/devices/me/attributes", json.dumps({"latestReportTime": (round(dt.timestamp(dt.now())/600)*600)*1000}), __qos__) + + if dayReset: + resetPayload["values"]["yesterday_volume"] = payload["values"]["day_volume"] + resetPayload["values"]["day_volume"] = 0 + resetPayload["values"]["yesterday_running_hours"] = rts.calculateRunTimeDay(day=dt.strftime(dt.today() - td(days=1) , "%Y-%m-%d")) + if weekReset: + resetPayload["values"]["last_week_volume"] = payload["values"]["week_volume"] + resetPayload["values"]["week_volume"] = 0 + if monthReset: + resetPayload["values"]["last_month_volume"] = payload["values"]["month_volume"] + resetPayload["values"]["month_volume"] = 0 + resetPayload["values"]["last_month_running_hours"] = rts.calculateRunTimeMultiDay(numDays=monthrange(dt.today().year, (dt.today() - td(days=1)).month)[1]) + if yearReset: + resetPayload["values"]["last_year_volume"] = payload["values"]["year_volume"] + resetPayload["values"]["year_volume"] = 0 + + if resetPayload["values"]: + resetPayload["ts"] = 1 + (round(dt.timestamp(dt.now())/600)*600)*1000 + publish(__topic__, json.dumps(resetPayload), __qos__) + +def saveTotalizers(totalizers, file_path="/var/user/files/totalizers.json"): + """ + Saves totalizer data to a JSON file. + + :param totalizers: Dictionary containing totalizer values to be saved. + :param file_path: Path to the JSON file where totalizer data will be saved. + """ + try: + with open(file_path, "w") as t: + json.dump(totalizers, t) + except (IOError, OSError, json.JSONEncodeError) as e: + logger.error(f"Error saving totalizers to {file_path}: {e}") + raise # Optionally re-raise the exception if it should be handled by the caller + +def getGPS(): + # Create a gps instance + gps = GPS() + + # Retrieve GPS information + position_status = gps.get_position_status() + logger.debug("position_status: ") + logger.debug(position_status) + latitude = position_status["latitude"].split(" ") + longitude = position_status["longitude"].split(" ") + lat_dec = int(latitude[0][:-1]) + (float(latitude[1][:-1])/60) + lon_dec = int(longitude[0][:-1]) + (float(longitude[1][:-1])/60) + if latitude[2] == "S": + lat_dec = lat_dec * -1 + if longitude[2] == "W": + lon_dec = lon_dec * -1 + #lat_dec = round(lat_dec, 7) + #lon_dec = round(lon_dec, 7) + logger.info("HERE IS THE GPS COORDS") + logger.info(f"LATITUDE: {lat_dec}, LONGITUDE: {lon_dec}") + speedKnots = position_status["speed"].split(" ") + speedMPH = float(speedKnots[0]) * 1.151 + return (f"{lat_dec:.8f}",f"{lon_dec:.8f}",f"{speedMPH:.2f}") + +def totalizeDay(lifetime, max_retries=3, retry_delay=2): + """ + Update and save daily totalizers based on the lifetime value. + + :param lifetime: The current lifetime total. + :param max_retries: Maximum number of save attempts. + :param retry_delay: Delay in seconds between retries. + :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails. + """ + totalizers = getTotalizers() + now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600) + reset = False + value = lifetime - totalizers["dayHolding"] + + if not int(now.strftime("%d")) == int(totalizers["day"]): + totalizers["dayHolding"] = lifetime + totalizers["day"] = int(now.strftime("%d")) + + for attempt in range(max_retries): + try: + saveTotalizers(totalizers) + reset = True + return (value, reset) + except Exception as e: + logger.error(f"Attempt {attempt + 1} failed to save totalizers: {e}") + if attempt < max_retries - 1: + time.sleep(retry_delay) + else: + logger.error("All attempts to save totalizers failed.") + return (None, False) + + return (value, reset) + +def totalizeWeek(lifetime, max_retries=3, retry_delay=2): + """ + Update and save weekly totalizers based on the lifetime value. + + :param lifetime: The current lifetime total. + :param max_retries: Maximum number of save attempts. + :param retry_delay: Delay in seconds between retries. + :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails. + """ + totalizers = getTotalizers() + now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600) + reset = False + value = lifetime - totalizers["weekHolding"] + if (not now.strftime("%U") == totalizers["week"] and now.strftime("%a") == "Sun") or totalizers["week"] == 0: + totalizers["weekHolding"] = lifetime + totalizers["week"] = now.strftime("%U") + + for attempt in range(max_retries): + try: + saveTotalizers(totalizers) + reset = True + return (value, reset) + except Exception as e: + logger.error(f"Attempt {attempt + 1} failed to save totalizers: {e}") + if attempt < max_retries - 1: + time.sleep(retry_delay) + else: + logger.error("All attempts to save totalizers failed.") + return (None, False) + return (value, reset) + +def totalizeMonth(lifetime, max_retries=3, retry_delay=2): + """ + Update and save monthly totalizers based on the lifetime value. + + :param lifetime: The current lifetime total. + :param max_retries: Maximum number of save attempts. + :param retry_delay: Delay in seconds between retries. + :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails. + """ + totalizers = getTotalizers() + now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600) + reset = False + value = lifetime - totalizers["monthHolding"] + if not int(now.strftime("%m")) == int(totalizers["month"]): + totalizers["monthHolding"] = lifetime + totalizers["month"] = now.strftime("%m") + + for attempt in range(max_retries): + try: + saveTotalizers(totalizers) + reset = True + return (value, reset) + except Exception as e: + logger.error(f"Attempt {attempt + 1} failed to save totalizers: {e}") + if attempt < max_retries - 1: + time.sleep(retry_delay) + else: + logger.error("All attempts to save totalizers failed.") + return (None, False) + + return (value,reset) + +def totalizeYear(lifetime, max_retries=3, retry_delay=2): + """ + Update and save yearly totalizers based on the lifetime value. + + :param lifetime: The current lifetime total. + :param max_retries: Maximum number of save attempts. + :param retry_delay: Delay in seconds between retries. + :return: A tuple containing the calculated value and a boolean indicating if a reset occurred, or (None, False) if save fails. + """ + totalizers = getTotalizers() + now = dt.fromtimestamp(round(dt.timestamp(dt.now())/600)*600) + reset = False + value = lifetime - totalizers["yearHolding"] + if not int(now.strftime("%Y")) == int(totalizers["year"]): + totalizers["yearHolding"] = lifetime + totalizers["year"] = now.strftime("%Y") + + for attempt in range(max_retries): + try: + saveTotalizers(totalizers) + reset = True + return (value, reset) + except Exception as e: + logger.error(f"Attempt {attempt + 1} failed to save totalizers: {e}") + if attempt < max_retries - 1: + time.sleep(retry_delay) + else: + logger.error("All attempts to save totalizers failed.") + return (None, False) + return (value, reset) \ No newline at end of file diff --git a/Pub_Sub/solarpump/thingsboard/sub/receiveCommand.py b/Pub_Sub/solarpump/thingsboard/sub/receiveCommand.py new file mode 100644 index 0000000..50a667a --- /dev/null +++ b/Pub_Sub/solarpump/thingsboard/sub/receiveCommand.py @@ -0,0 +1,309 @@ +import json, math, time, os +from datetime import datetime as dt +from common.Logger import logger +from quickfaas.measure import write +from quickfaas.remotebus import publish + +class RuntimeStats: + def __init__(self): + self.runs = {} + self.currentRun = 0 + self.today = "" + self.todayString = "" + + def manageTime(self): + if self.todayString != dt.strftime(dt.today(), "%Y-%m-%d"): + if self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] and not self.runs[self.todayString]["run_" + str(self.currentRun)]["end"]: + self.runs[self.todayString]["run_" + str(self.currentRun)]["end"] = time.mktime(dt.strptime(self.todayString + " 23:59:59", "%Y-%m-%d %H:%M:%S").timetuple()) + self.addDay() + self.today = dt.today() + self.todayString = dt.strftime(self.today, "%Y-%m-%d") + days = list(self.runs.keys()) + days.sort() + while (dt.strptime(days[-1],"%Y-%m-%d") - dt.strptime(days[0], "%Y-%m-%d")).days > 40: + self.removeDay(day=days[0]) + days = list(self.runs.keys()) + days.sort() + + def addHertzDataPoint(self, frequency): + if frequency > 0: + self.manageTime() + try: + self.runs[self.todayString]["run_" + str(self.currentRun)]["frequencies"].append(frequency) + except: + self.runs[self.todayString]["run_" + str(self.currentRun)]["frequencies"] = [frequency] + + def startRun(self): + if self.checkRunning(): + self.endRun() + self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] = time.time() + + def endRun(self): + self.runs[self.todayString]["run_" + str(self.currentRun)]["end"] = time.time() + self.currentRun += 1 + self.runs[self.todayString]["run_" + str(self.currentRun)] = {"start":0, "end": 0, "frequencies":[]} + + def checkRunning(self): + if self.runs[self.todayString]["run_" + str(self.currentRun)]["start"] and not self.runs[self.todayString]["run_" + str(self.currentRun)]["end"]: + return True + return False + + def addDay(self): + self.today = dt.today() + self.todayString = dt.strftime(self.today, "%Y-%m-%d") + self.currentRun = 1 + self.runs[self.todayString] = {} + self.runs[self.todayString]["run_" + str(self.currentRun)] = {"start":0, "end": 0, "frequencies":[]} + + def countRunsDay(self, day=None): + if not day: + day = self.todayString + return len(self.runs[day].keys()) + + def countRunsMultiDay(self, numDays=30): + total_runs = 0 + for day in list(self.runs.keys()): + total_runs += self.countRunsDay(day=day) + return total_runs + + def calculateAverageHertzDay(self, day=None, returnArray=False): + dayFrequencies = [] + if not day: + day = self.todayString + for run in list(self.runs[day].keys()): + try: + dayFrequencies += self.runs[day][run]["frequencies"] + except Exception as e: + logger.debug("{} missing frequency data for {}".format(day,run)) + if returnArray: + return dayFrequencies + return round(math.fsum(dayFrequencies)/len(dayFrequencies),2) + + def calculateAverageHertzMultiDay(self, numDays=30): + self.manageTime() + frequencies = [] + for day in list(self.runs.keys()): + if not day == self.todayString and (dt.strptime(self.todayString, "%Y-%m-%d") - dt.strptime(day, "%Y-%m-%d")).days <= numDays: + try: + frequencies += self.calculateAverageHertzDay(day=day, returnArray=True) + except Exception as e: + logger.debug("{} missing frequency data".format(day)) + if len(frequencies): + return round(math.fsum(frequencies)/len(frequencies), 2) + return 0 + + def calculateRunTimeDay(self, day=None, convertToHours=True): + self.manageTime() + total_time = 0 + if not day: + day = self.todayString + for run in list(self.runs.get(day,{}).keys()): + if self.runs[day][run]["end"] == 0 and self.runs[day][run]["start"] != 0: + total_time = time.time() - self.runs[day][run]["start"] + total_time + else: + total_time = self.runs[day][run]["end"] - self.runs[day][run]["start"] + total_time + if convertToHours: + return self.convertSecondstoHours(total_time) + return total_time + + def calculateRunTimeMultiDay(self, numDays=30, convertToHours=True): + total_time = 0 + for day in list(self.runs.keys()): + if (dt.strptime(self.todayString, "%Y-%m-%d") - dt.strptime(day, "%Y-%m-%d")).days <= numDays: + total_time += self.calculateRunTimeDay(day=day, convertToHours=False) + if convertToHours: + return self.convertSecondstoHours(total_time) + return total_time + + def calculateRunPercentDay(self, day=None, precise=False): + if not day: + day = self.todayString + if precise: + return (self.calculateRunTimeDay(day=day)/24) * 100 + return round((self.calculateRunTimeDay(day=day)/24) * 100, 2) + + + def calculateRunPercentMultiDay(self, numDays=30, precise=False): + self.manageTime() + if precise: + return (self.calculateRunTimeMultiDay()/(24*numDays)) * 100 + return round((self.calculateRunTimeMultiDay()/(24*numDays)) * 100,2) + + def removeDay(self, day=None): + if not day: + raise Exception("Day can not be None") + logger.debug("removing day {}".format(day)) + try: + del self.runs[day] + except Exception as e: + logger.error(f"Wasn't able to delete day {day}") + logger.error(e) + + + def convertSecondstoHours(self, seconds): + return round(seconds / (60*60),2) + + def resetData(self): + logger.debug("clearing database") + try: + os.remove("/var/user/files/runtimestats.json") + except Exception as e: + logger.error(e) + return False + self.loadDataFromFile() + return True + + def loadDataFromFile(self, filePath="/var/user/files/runtimestats.json"): + try: + with open(filePath, "r") as f: + temp = json.load(f) + self.runs = temp["data"] + self.currentRun = temp["current_run"] + self.today = dt.strptime(temp["current_day"], "%Y-%m-%d") + self.todayString = temp["current_day"] + self.manageTime() + except: + logger.debug("Could not find file at {}".format(filePath)) + logger.debug("creating file") + self.addDay() + try: + with open(filePath, "w") as f: + d = { + "current_run": self.currentRun, + "current_day": self.todayString, + "data": self.runs + } + json.dump(d, f, indent=4) + except Exception as e: + logger.error(e) + + def saveDataToFile(self, filePath="/var/user/files/runtimestats.json"): + try: + logger.debug("Saving Runs") + with open(filePath, "w") as f: + d = { + "current_run": self.currentRun, + "current_day": self.todayString, + "data": self.runs + } + json.dump(d, f, indent=4) + except Exception as e: + logger.error(e) + +rts = RuntimeStats() + + +def reboot(reason="Rebooting for config file update"): + #basic = Basic() + logger.info("!" * 10 + "REBOOTING DEVICE" + "!"*10) + logger.info(reason) + r = os.popen("kill -s SIGHUP `cat /var/run/python/supervisord.pid`").read() + logger.info(f"REBOOT : {r}") + +def get_totalizers(): + try: + with open("/var/user/files/totalizers.json", "r") as t: + totalizers = json.load(t) + if not totalizers: + logger.info("-----INITIALIZING TOTALIZERS-----") + totalizers = { + "day": 0, + "week": 0, + "month": 0, + "year": 0, + "lifetime": 0, + "dayHolding": 0, + "weekHolding": 0, + "monthHolding": 0, + "yearHolding": 0 + } + except: + totalizers = { + "day": 0, + "week": 0, + "month": 0, + "year": 0, + "lifetime": 0, + "dayHolding": 0, + "weekHolding": 0, + "monthHolding": 0, + "yearHolding": 0 + } + return totalizers + +def saveTotalizers(totalizers): + try: + with open("/var/user/files/totalizers.json", "w") as t: + json.dump(totalizers,t) + except Exception as e: + logger.error(e) + +def resetTotalizers(): + try: + totalizers = get_totalizers() + + totalizers["dayHolding"] = 0 + totalizers["weekHolding"] = 0 + totalizers["monthHolding"] = 0 + totalizers["yearHolding"] = 0 + saveTotalizers(totalizers) + return True + except Exception as e: + logger.error(e) + return e + +def receiveCommand(topic, payload): + + logger.debug(topic) + logger.debug(json.loads(payload)) + p = json.loads(payload) + command = p["method"] + if command == "resetTotalizers": + r = resetTotalizers() + if r == True: + message = [{"name": "flowmeter", "measures":[{"name":"reset_totalizers", "value": 1}]}] + try: + resp = write(message) + payload = { + "ts": (round(dt.timestamp(dt.now())/600)*600)*1000, + "values": { + "day_volume": 0, + "yesterday_volume": 0, + "week_volume": 0, + "last_week_volume": 0, + "month_volume": 0, + "last_month_volume": 0, + "year_volume": 0, + "last_year_volume": 0 + } + } + publish("v1/devices/me/telemetry",json.dumps(payload)) + except Exception as e: + logger.error("Failed to write message") + logger.error(e) + elif command == "resetRunTimeStats": + rts.loadDataFromFile() + r = rts.resetData() + if r == True: + payload = { + "ts": (round(dt.timestamp(dt.now())/600)*600)*1000, + "values": { + "today_running_hours": 0, + "yesterday_running_hours": 0, + "month_running_hours": 0, + "last_month_running_hours": 0 + } + } + publish("v1/devices/me/telemetry",json.dumps(payload)) + ack(topic.split("/")[-1], r) + reboot("need to reset all softwares") + + ack(topic.split("/")[-1], r) + + +def ack(msgid, r): + #logger.debug(msgid) + #logger.debug(mac) + #logger.debug(name) + #logger.debug(value) + publish("v1/devices/me/rpc/response/" + str(msgid), json.dumps({"msg": {"time": (round(dt.timestamp(dt.now())/600)*600)*1000, "response": r}, "metadata": "", "msgType": ""})) \ No newline at end of file diff --git a/Pub_Sub/sp_pond/thingsboard/plc_tags_2024-08-09.json b/Pub_Sub/sp_pond/thingsboard/plc_tags_2024-08-09.json new file mode 100644 index 0000000..a1d01ae --- /dev/null +++ b/Pub_Sub/sp_pond/thingsboard/plc_tags_2024-08-09.json @@ -0,0 +1,4538 @@ +{ + "_IO_EM_DO_00": { + "tag_name": "_IO_EM_DO_00", + "dim": 0, + "alias": true, + "instance_id": 1, + "symbol_address": 1044, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DO_01": { + "tag_name": "_IO_EM_DO_01", + "dim": 0, + "alias": true, + "instance_id": 2, + "symbol_address": 1045, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DO_02": { + "tag_name": "_IO_EM_DO_02", + "dim": 0, + "alias": true, + "instance_id": 3, + "symbol_address": 1046, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DO_03": { + "tag_name": "_IO_EM_DO_03", + "dim": 0, + "alias": true, + "instance_id": 4, + "symbol_address": 1047, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DO_04": { + "tag_name": "_IO_EM_DO_04", + "dim": 0, + "alias": true, + "instance_id": 5, + "symbol_address": 1048, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DO_05": { + "tag_name": "_IO_EM_DO_05", + "dim": 0, + "alias": true, + "instance_id": 6, + "symbol_address": 1049, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DO_06": { + "tag_name": "_IO_EM_DO_06", + "dim": 0, + "alias": true, + "instance_id": 7, + "symbol_address": 1050, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DO_07": { + "tag_name": "_IO_EM_DO_07", + "dim": 0, + "alias": true, + "instance_id": 8, + "symbol_address": 1051, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DO_08": { + "tag_name": "_IO_EM_DO_08", + "dim": 0, + "alias": true, + "instance_id": 9, + "symbol_address": 1052, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DO_09": { + "tag_name": "_IO_EM_DO_09", + "dim": 0, + "alias": true, + "instance_id": 10, + "symbol_address": 1053, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_00": { + "tag_name": "_IO_EM_DI_00", + "dim": 0, + "alias": true, + "instance_id": 11, + "symbol_address": 1054, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_01": { + "tag_name": "_IO_EM_DI_01", + "dim": 0, + "alias": true, + "instance_id": 12, + "symbol_address": 1055, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_02": { + "tag_name": "_IO_EM_DI_02", + "dim": 0, + "alias": true, + "instance_id": 13, + "symbol_address": 1056, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_03": { + "tag_name": "_IO_EM_DI_03", + "dim": 0, + "alias": true, + "instance_id": 14, + "symbol_address": 1057, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_04": { + "tag_name": "_IO_EM_DI_04", + "dim": 0, + "alias": true, + "instance_id": 15, + "symbol_address": 1058, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_05": { + "tag_name": "_IO_EM_DI_05", + "dim": 0, + "alias": true, + "instance_id": 16, + "symbol_address": 1059, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_06": { + "tag_name": "_IO_EM_DI_06", + "dim": 0, + "alias": true, + "instance_id": 17, + "symbol_address": 1060, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_07": { + "tag_name": "_IO_EM_DI_07", + "dim": 0, + "alias": true, + "instance_id": 18, + "symbol_address": 1061, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_08": { + "tag_name": "_IO_EM_DI_08", + "dim": 0, + "alias": true, + "instance_id": 19, + "symbol_address": 1062, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_09": { + "tag_name": "_IO_EM_DI_09", + "dim": 0, + "alias": true, + "instance_id": 20, + "symbol_address": 1063, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_10": { + "tag_name": "_IO_EM_DI_10", + "dim": 0, + "alias": true, + "instance_id": 21, + "symbol_address": 1064, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_11": { + "tag_name": "_IO_EM_DI_11", + "dim": 0, + "alias": true, + "instance_id": 22, + "symbol_address": 1065, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_12": { + "tag_name": "_IO_EM_DI_12", + "dim": 0, + "alias": true, + "instance_id": 23, + "symbol_address": 1066, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_EM_DI_13": { + "tag_name": "_IO_EM_DI_13", + "dim": 0, + "alias": true, + "instance_id": 24, + "symbol_address": 1067, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "_IO_P1_AI_00": { + "tag_name": "_IO_P1_AI_00", + "dim": 0, + "alias": true, + "instance_id": 25, + "symbol_address": 1068, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "UINT", + "data_type_name": "UINT", + "tag_type": "atomic" + }, + "_IO_P1_AI_01": { + "tag_name": "_IO_P1_AI_01", + "dim": 0, + "alias": true, + "instance_id": 26, + "symbol_address": 1070, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "UINT", + "data_type_name": "UINT", + "tag_type": "atomic" + }, + "_IO_P1_AI_02": { + "tag_name": "_IO_P1_AI_02", + "dim": 0, + "alias": true, + "instance_id": 27, + "symbol_address": 1072, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "UINT", + "data_type_name": "UINT", + "tag_type": "atomic" + }, + "_IO_P1_AI_03": { + "tag_name": "_IO_P1_AI_03", + "dim": 0, + "alias": true, + "instance_id": 28, + "symbol_address": 1074, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "UINT", + "data_type_name": "UINT", + "tag_type": "atomic" + }, + "CMD_WTP1_FaultClear": { + "tag_name": "CMD_WTP1_FaultClear", + "dim": 0, + "alias": true, + "instance_id": 29, + "symbol_address": 1112, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_WTP1_Jog": { + "tag_name": "CMD_WTP1_Jog", + "dim": 0, + "alias": true, + "instance_id": 30, + "symbol_address": 1113, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_WTP1_Start": { + "tag_name": "CMD_WTP1_Start", + "dim": 0, + "alias": true, + "instance_id": 31, + "symbol_address": 1114, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_WTP1_Stop": { + "tag_name": "CMD_WTP1_Stop", + "dim": 0, + "alias": true, + "instance_id": 32, + "symbol_address": 1115, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_WTP2_FaultClear": { + "tag_name": "CMD_WTP2_FaultClear", + "dim": 0, + "alias": true, + "instance_id": 33, + "symbol_address": 1116, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_WTP2_Jog": { + "tag_name": "CMD_WTP2_Jog", + "dim": 0, + "alias": true, + "instance_id": 34, + "symbol_address": 1117, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_WTP2_Start": { + "tag_name": "CMD_WTP2_Start", + "dim": 0, + "alias": true, + "instance_id": 35, + "symbol_address": 1118, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_WTP2_Stop": { + "tag_name": "CMD_WTP2_Stop", + "dim": 0, + "alias": true, + "instance_id": 36, + "symbol_address": 1119, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_Running": { + "tag_name": "FBK_WTP1_VFD_Running", + "dim": 0, + "alias": true, + "instance_id": 37, + "symbol_address": 1120, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_Ready": { + "tag_name": "FBK_WTP1_VFD_Ready", + "dim": 0, + "alias": true, + "instance_id": 38, + "symbol_address": 1121, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_Faulted": { + "tag_name": "FBK_WTP1_VFD_Faulted", + "dim": 0, + "alias": true, + "instance_id": 39, + "symbol_address": 1122, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_CommsLoss": { + "tag_name": "FBK_WTP1_VFD_CommsLoss", + "dim": 0, + "alias": true, + "instance_id": 40, + "symbol_address": 1123, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_Error": { + "tag_name": "FBK_WTP1_VFD_Error", + "dim": 0, + "alias": true, + "instance_id": 41, + "symbol_address": 1124, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_Error": { + "tag_name": "FBK_WTP2_VFD_Error", + "dim": 0, + "alias": true, + "instance_id": 42, + "symbol_address": 1125, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_CommsLoss": { + "tag_name": "FBK_WTP2_VFD_CommsLoss", + "dim": 0, + "alias": true, + "instance_id": 43, + "symbol_address": 1126, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_Faulted": { + "tag_name": "FBK_WTP2_VFD_Faulted", + "dim": 0, + "alias": true, + "instance_id": 44, + "symbol_address": 1127, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_Ready": { + "tag_name": "FBK_WTP2_VFD_Ready", + "dim": 0, + "alias": true, + "instance_id": 45, + "symbol_address": 1128, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_Running": { + "tag_name": "FBK_WTP2_VFD_Running", + "dim": 0, + "alias": true, + "instance_id": 46, + "symbol_address": 1129, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_CP1_Run": { + "tag_name": "CMD_CP1_Run", + "dim": 0, + "alias": true, + "instance_id": 47, + "symbol_address": 1130, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_Charge_Pump_Auto": { + "tag_name": "FBK_Charge_Pump_Auto", + "dim": 0, + "alias": true, + "instance_id": 48, + "symbol_address": 1131, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_Charge_Pump_Hand": { + "tag_name": "FBK_Charge_Pump_Hand", + "dim": 0, + "alias": true, + "instance_id": 49, + "symbol_address": 1132, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_Charge_Pump_Faulted": { + "tag_name": "FBK_Charge_Pump_Faulted", + "dim": 0, + "alias": true, + "instance_id": 50, + "symbol_address": 1133, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_Charge_Pump_Running": { + "tag_name": "FBK_Charge_Pump_Running", + "dim": 0, + "alias": true, + "instance_id": 51, + "symbol_address": 1134, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_CP1_Not_in_Auto": { + "tag_name": "AL0_CP1_Not_in_Auto", + "dim": 0, + "alias": true, + "instance_id": 52, + "symbol_address": 1135, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_Charge_Pump_In_Hand": { + "tag_name": "AL0_Charge_Pump_In_Hand", + "dim": 0, + "alias": true, + "instance_id": 53, + "symbol_address": 1136, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_CP1_HOA_Off": { + "tag_name": "AL0_CP1_HOA_Off", + "dim": 0, + "alias": true, + "instance_id": 54, + "symbol_address": 1137, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_CP1_Discharge_PSI_Lo": { + "tag_name": "AL0_CP1_Discharge_PSI_Lo", + "dim": 0, + "alias": true, + "instance_id": 55, + "symbol_address": 1138, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_CP1_Low_Disch_PSI_Lock_Out": { + "tag_name": "AL0_CP1_Low_Disch_PSI_Lock_Out", + "dim": 0, + "alias": true, + "instance_id": 56, + "symbol_address": 1139, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_CP1_LO_Clear": { + "tag_name": "CMD_CP1_LO_Clear", + "dim": 0, + "alias": true, + "instance_id": 57, + "symbol_address": 1140, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_WTP1_And_WTP2_Failed_To_Start": { + "tag_name": "AL0_WTP1_And_WTP2_Failed_To_Start", + "dim": 0, + "alias": true, + "instance_id": 58, + "symbol_address": 1141, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_HMI_Fault_Clear": { + "tag_name": "CMD_HMI_Fault_Clear", + "dim": 0, + "alias": true, + "instance_id": 59, + "symbol_address": 1142, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_HMI_System_Start": { + "tag_name": "CMD_HMI_System_Start", + "dim": 0, + "alias": true, + "instance_id": 60, + "symbol_address": 1143, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_HMI_System_Stop": { + "tag_name": "CMD_HMI_System_Stop", + "dim": 0, + "alias": true, + "instance_id": 61, + "symbol_address": 1144, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_Both_TP_VFDs_Faulted": { + "tag_name": "AL0_Both_TP_VFDs_Faulted", + "dim": 0, + "alias": true, + "instance_id": 62, + "symbol_address": 1145, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_WTP1_Low_Discharge_PSI": { + "tag_name": "AL0_WTP1_Low_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 63, + "symbol_address": 1146, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_TP1_Lo_Clear": { + "tag_name": "CMD_TP1_Lo_Clear", + "dim": 0, + "alias": true, + "instance_id": 64, + "symbol_address": 1147, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_WTP1_High_Discharge_PSI": { + "tag_name": "AL0_WTP1_High_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 65, + "symbol_address": 1148, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_TP1_Hi_Clear": { + "tag_name": "CMD_TP1_Hi_Clear", + "dim": 0, + "alias": true, + "instance_id": 66, + "symbol_address": 1149, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "TP1_Lockout_Counter_Hi_Disch": { + "tag_name": "TP1_Lockout_Counter_Hi_Disch", + "dim": 0, + "alias": true, + "instance_id": 67, + "symbol_address": 1150, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_WTP1_Lo_Disch_Lockout": { + "tag_name": "AL0_WTP1_Lo_Disch_Lockout", + "dim": 0, + "alias": true, + "instance_id": 68, + "symbol_address": 1151, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_WTP1_Hi_Disch_Lockout": { + "tag_name": "AL0_WTP1_Hi_Disch_Lockout", + "dim": 0, + "alias": true, + "instance_id": 69, + "symbol_address": 1152, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_TP2_Lo_Clear": { + "tag_name": "CMD_TP2_Lo_Clear", + "dim": 0, + "alias": true, + "instance_id": 70, + "symbol_address": 1153, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_TP2_Hi_Clear": { + "tag_name": "CMD_TP2_Hi_Clear", + "dim": 0, + "alias": true, + "instance_id": 71, + "symbol_address": 1154, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_Scada_Stop": { + "tag_name": "CMD_Scada_Stop", + "dim": 0, + "alias": true, + "instance_id": 72, + "symbol_address": 1155, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_Scada_Start": { + "tag_name": "CMD_Scada_Start", + "dim": 0, + "alias": true, + "instance_id": 73, + "symbol_address": 1156, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "cmd_Scada_clear": { + "tag_name": "cmd_Scada_clear", + "dim": 0, + "alias": true, + "instance_id": 74, + "symbol_address": 1157, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_Remote_Pod_1_Enable": { + "tag_name": "CFG_Remote_Pod_1_Enable", + "dim": 0, + "alias": true, + "instance_id": 75, + "symbol_address": 1158, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_Remote_Pod_2_Enable": { + "tag_name": "CFG_Remote_Pod_2_Enable", + "dim": 0, + "alias": true, + "instance_id": 76, + "symbol_address": 1159, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_Remote_Pod_3_Enable": { + "tag_name": "CFG_Remote_Pod_3_Enable", + "dim": 0, + "alias": true, + "instance_id": 77, + "symbol_address": 1160, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_TP2_PID_Manual": { + "tag_name": "CMD_TP2_PID_Manual", + "dim": 0, + "alias": true, + "instance_id": 78, + "symbol_address": 1161, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_TP2_PID_Inverse": { + "tag_name": "CMD_TP2_PID_Inverse", + "dim": 0, + "alias": true, + "instance_id": 79, + "symbol_address": 1162, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_WTP2_Low_Discharge_PSI": { + "tag_name": "AL0_WTP2_Low_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 80, + "symbol_address": 1163, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_WTP2_High_Discharge_PSI": { + "tag_name": "AL0_WTP2_High_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 81, + "symbol_address": 1164, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_WTP2_Lo_Disch_Lockout": { + "tag_name": "AL0_WTP2_Lo_Disch_Lockout", + "dim": 0, + "alias": true, + "instance_id": 82, + "symbol_address": 1165, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_WTP2_Hi_Disch_Lockout": { + "tag_name": "AL0_WTP2_Hi_Disch_Lockout", + "dim": 0, + "alias": true, + "instance_id": 83, + "symbol_address": 1166, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_UPS_Faulted": { + "tag_name": "FBK_UPS_Faulted", + "dim": 0, + "alias": true, + "instance_id": 84, + "symbol_address": 1167, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "FBK_Power_Supply_Faulted": { + "tag_name": "FBK_Power_Supply_Faulted", + "dim": 0, + "alias": true, + "instance_id": 85, + "symbol_address": 1168, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_UPS_Faulted": { + "tag_name": "AL0_UPS_Faulted", + "dim": 0, + "alias": true, + "instance_id": 86, + "symbol_address": 1169, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_PS_Faulted": { + "tag_name": "AL0_PS_Faulted", + "dim": 0, + "alias": true, + "instance_id": 87, + "symbol_address": 1170, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_TP2_PID_Auto": { + "tag_name": "CMD_TP2_PID_Auto", + "dim": 0, + "alias": true, + "instance_id": 88, + "symbol_address": 1171, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_TP1_PID_Auto": { + "tag_name": "CMD_TP1_PID_Auto", + "dim": 0, + "alias": true, + "instance_id": 89, + "symbol_address": 1172, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_TP1_PID_Manual": { + "tag_name": "CMD_TP1_PID_Manual", + "dim": 0, + "alias": true, + "instance_id": 90, + "symbol_address": 1173, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "AL0_System_Faulted": { + "tag_name": "AL0_System_Faulted", + "dim": 0, + "alias": true, + "instance_id": 91, + "symbol_address": 1174, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_WTP1_Stop_No_Alarm": { + "tag_name": "CMD_WTP1_Stop_No_Alarm", + "dim": 0, + "alias": true, + "instance_id": 92, + "symbol_address": 1175, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CMD_WTP2_Stop_No_Alarm": { + "tag_name": "CMD_WTP2_Stop_No_Alarm", + "dim": 0, + "alias": true, + "instance_id": 93, + "symbol_address": 1176, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP1_FM1_Enable": { + "tag_name": "CFG_RP1_FM1_Enable", + "dim": 0, + "alias": true, + "instance_id": 94, + "symbol_address": 1177, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP1_FM2_Enable": { + "tag_name": "CFG_RP1_FM2_Enable", + "dim": 0, + "alias": true, + "instance_id": 95, + "symbol_address": 1178, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP1_FM3_Enable": { + "tag_name": "CFG_RP1_FM3_Enable", + "dim": 0, + "alias": true, + "instance_id": 96, + "symbol_address": 1179, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP1_FM4_Enable": { + "tag_name": "CFG_RP1_FM4_Enable", + "dim": 0, + "alias": true, + "instance_id": 97, + "symbol_address": 1180, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP1_Pond_Level_1_Enable": { + "tag_name": "CFG_RP1_Pond_Level_1_Enable", + "dim": 0, + "alias": true, + "instance_id": 98, + "symbol_address": 1181, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP1_Pond_Level_2_Enable": { + "tag_name": "CFG_RP1_Pond_Level_2_Enable", + "dim": 0, + "alias": true, + "instance_id": 99, + "symbol_address": 1182, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP2_FM1_Enable": { + "tag_name": "CFG_RP2_FM1_Enable", + "dim": 0, + "alias": true, + "instance_id": 100, + "symbol_address": 1183, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP2_FM2_Enable": { + "tag_name": "CFG_RP2_FM2_Enable", + "dim": 0, + "alias": true, + "instance_id": 101, + "symbol_address": 1184, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP2_FM3_Enable": { + "tag_name": "CFG_RP2_FM3_Enable", + "dim": 0, + "alias": true, + "instance_id": 102, + "symbol_address": 1185, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP2_FM4_Enable": { + "tag_name": "CFG_RP2_FM4_Enable", + "dim": 0, + "alias": true, + "instance_id": 103, + "symbol_address": 1186, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP2_Pond_Level_1_Enable": { + "tag_name": "CFG_RP2_Pond_Level_1_Enable", + "dim": 0, + "alias": true, + "instance_id": 104, + "symbol_address": 1187, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP2_Pond_Level_2_Enable": { + "tag_name": "CFG_RP2_Pond_Level_2_Enable", + "dim": 0, + "alias": true, + "instance_id": 105, + "symbol_address": 1188, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP3_FM1_Enable": { + "tag_name": "CFG_RP3_FM1_Enable", + "dim": 0, + "alias": true, + "instance_id": 106, + "symbol_address": 1189, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP3_FM2_Enable": { + "tag_name": "CFG_RP3_FM2_Enable", + "dim": 0, + "alias": true, + "instance_id": 107, + "symbol_address": 1190, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP3_FM3_Enable": { + "tag_name": "CFG_RP3_FM3_Enable", + "dim": 0, + "alias": true, + "instance_id": 108, + "symbol_address": 1191, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP3_FM4_Enable": { + "tag_name": "CFG_RP3_FM4_Enable", + "dim": 0, + "alias": true, + "instance_id": 109, + "symbol_address": 1192, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP3_Pond_Level_1_Enable": { + "tag_name": "CFG_RP3_Pond_Level_1_Enable", + "dim": 0, + "alias": true, + "instance_id": 110, + "symbol_address": 1193, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_RP3_Pond_Level_2_Enable": { + "tag_name": "CFG_RP3_Pond_Level_2_Enable", + "dim": 0, + "alias": true, + "instance_id": 111, + "symbol_address": 1194, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "CFG_Local_Meters_Enable": { + "tag_name": "CFG_Local_Meters_Enable", + "dim": 0, + "alias": true, + "instance_id": 112, + "symbol_address": 1195, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "BOOL", + "data_type_name": "BOOL", + "bit_position": 0, + "tag_type": "atomic" + }, + "SPT_WTP2_VFD_TimeOut": { + "tag_name": "SPT_WTP2_VFD_TimeOut", + "dim": 0, + "alias": true, + "instance_id": 113, + "symbol_address": 1198, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "USINT", + "data_type_name": "USINT", + "tag_type": "atomic" + }, + "SPT_WTP1_VFD_TimeOut": { + "tag_name": "SPT_WTP1_VFD_TimeOut", + "dim": 0, + "alias": true, + "instance_id": 114, + "symbol_address": 1199, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "USINT", + "data_type_name": "USINT", + "tag_type": "atomic" + }, + "WTP1_Alarm_Lockout": { + "tag_name": "WTP1_Alarm_Lockout", + "dim": 0, + "alias": true, + "instance_id": 115, + "symbol_address": 1200, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "INT", + "data_type_name": "INT", + "tag_type": "atomic" + }, + "WTP2_Alarm_Lockout": { + "tag_name": "WTP2_Alarm_Lockout", + "dim": 0, + "alias": true, + "instance_id": 116, + "symbol_address": 1202, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "INT", + "data_type_name": "INT", + "tag_type": "atomic" + }, + "SPT_TP1_Mode": { + "tag_name": "SPT_TP1_Mode", + "dim": 0, + "alias": true, + "instance_id": 117, + "symbol_address": 1204, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "INT", + "data_type_name": "INT", + "tag_type": "atomic" + }, + "SPT_WTP1_FM_Active": { + "tag_name": "SPT_WTP1_FM_Active", + "dim": 0, + "alias": true, + "instance_id": 118, + "symbol_address": 1206, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "INT", + "data_type_name": "INT", + "tag_type": "atomic" + }, + "SPT_TP2_Mode": { + "tag_name": "SPT_TP2_Mode", + "dim": 0, + "alias": true, + "instance_id": 119, + "symbol_address": 1208, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "INT", + "data_type_name": "INT", + "tag_type": "atomic" + }, + "SPT_WTP2_FM_Active": { + "tag_name": "SPT_WTP2_FM_Active", + "dim": 0, + "alias": true, + "instance_id": 120, + "symbol_address": 1210, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "INT", + "data_type_name": "INT", + "tag_type": "atomic" + }, + "FBK_WTP1_FaultCode": { + "tag_name": "FBK_WTP1_FaultCode", + "dim": 0, + "alias": true, + "instance_id": 121, + "symbol_address": 1214, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "UINT", + "data_type_name": "UINT", + "tag_type": "atomic" + }, + "FBK_WTP2_FaultCode": { + "tag_name": "FBK_WTP2_FaultCode", + "dim": 0, + "alias": true, + "instance_id": 122, + "symbol_address": 1216, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "UINT", + "data_type_name": "UINT", + "tag_type": "atomic" + }, + "WTP1_Speed_Ref": { + "tag_name": "WTP1_Speed_Ref", + "dim": 0, + "alias": true, + "instance_id": 123, + "symbol_address": 1224, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "WTP2_Speed_Ref": { + "tag_name": "WTP2_Speed_Ref", + "dim": 0, + "alias": true, + "instance_id": 124, + "symbol_address": 1228, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_Actual_Speed": { + "tag_name": "FBK_WTP1_VFD_Actual_Speed", + "dim": 0, + "alias": true, + "instance_id": 125, + "symbol_address": 1232, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_OutputVoltage": { + "tag_name": "FBK_WTP1_VFD_OutputVoltage", + "dim": 0, + "alias": true, + "instance_id": 126, + "symbol_address": 1236, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_DCBus": { + "tag_name": "FBK_WTP1_VFD_DCBus", + "dim": 0, + "alias": true, + "instance_id": 127, + "symbol_address": 1240, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_OutputCurrent": { + "tag_name": "FBK_WTP1_VFD_OutputCurrent", + "dim": 0, + "alias": true, + "instance_id": 128, + "symbol_address": 1244, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_CMD_Speed": { + "tag_name": "FBK_WTP1_VFD_CMD_Speed", + "dim": 0, + "alias": true, + "instance_id": 129, + "symbol_address": 1248, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_CMD_Speed": { + "tag_name": "FBK_WTP2_VFD_CMD_Speed", + "dim": 0, + "alias": true, + "instance_id": 130, + "symbol_address": 1252, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_Actual_Speed": { + "tag_name": "FBK_WTP2_VFD_Actual_Speed", + "dim": 0, + "alias": true, + "instance_id": 131, + "symbol_address": 1256, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_OutputCurrent": { + "tag_name": "FBK_WTP2_VFD_OutputCurrent", + "dim": 0, + "alias": true, + "instance_id": 132, + "symbol_address": 1260, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_DCBus": { + "tag_name": "FBK_WTP2_VFD_DCBus", + "dim": 0, + "alias": true, + "instance_id": 133, + "symbol_address": 1264, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_OutputVoltage": { + "tag_name": "FBK_WTP2_VFD_OutputVoltage", + "dim": 0, + "alias": true, + "instance_id": 134, + "symbol_address": 1268, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Raw_CP1_Disch_PSI": { + "tag_name": "Raw_CP1_Disch_PSI", + "dim": 0, + "alias": true, + "instance_id": 135, + "symbol_address": 1272, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Raw_WTP1_Discharge_PSI": { + "tag_name": "Raw_WTP1_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 136, + "symbol_address": 1276, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Raw_WTP2_Discharge_PSI": { + "tag_name": "Raw_WTP2_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 137, + "symbol_address": 1280, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_CP1_Disch_PSI": { + "tag_name": "Val_CP1_Disch_PSI", + "dim": 0, + "alias": true, + "instance_id": 138, + "symbol_address": 1284, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP1_Discharge_PSI": { + "tag_name": "Val_WTP1_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 139, + "symbol_address": 1288, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP2_Discharge_PSI": { + "tag_name": "Val_WTP2_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 140, + "symbol_address": 1292, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_CP1_Low_Discharge_PSI": { + "tag_name": "SPT_CP1_Low_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 141, + "symbol_address": 1296, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_WTP_System_Start": { + "tag_name": "SPT_WTP_System_Start", + "dim": 0, + "alias": true, + "instance_id": 142, + "symbol_address": 1300, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_WTP1_Low_Discharge_PSI": { + "tag_name": "SPT_WTP1_Low_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 143, + "symbol_address": 1304, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_WTP1_High_Discharge_PSI": { + "tag_name": "SPT_WTP1_High_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 144, + "symbol_address": 1308, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_WTP2_Low_Discharge_PSI": { + "tag_name": "SPT_WTP2_Low_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 145, + "symbol_address": 1312, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_WTP2_High_Discharge_PSI": { + "tag_name": "SPT_WTP2_High_Discharge_PSI", + "dim": 0, + "alias": true, + "instance_id": 146, + "symbol_address": 1316, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Raw_CP2_Disch_PSI": { + "tag_name": "Raw_CP2_Disch_PSI", + "dim": 0, + "alias": true, + "instance_id": 147, + "symbol_address": 1320, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_CP2_Disch_PSI": { + "tag_name": "Val_CP2_Disch_PSI", + "dim": 0, + "alias": true, + "instance_id": 148, + "symbol_address": 1324, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM1_FR": { + "tag_name": "Val_Pod1_FM1_FR", + "dim": 0, + "alias": true, + "instance_id": 149, + "symbol_address": 1328, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM1_T1": { + "tag_name": "Val_Pod1_FM1_T1", + "dim": 0, + "alias": true, + "instance_id": 150, + "symbol_address": 1332, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM1_T2": { + "tag_name": "Val_Pod1_FM1_T2", + "dim": 0, + "alias": true, + "instance_id": 151, + "symbol_address": 1336, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM1_T3": { + "tag_name": "Val_Pod1_FM1_T3", + "dim": 0, + "alias": true, + "instance_id": 152, + "symbol_address": 1340, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM2_FR": { + "tag_name": "Val_Pod1_FM2_FR", + "dim": 0, + "alias": true, + "instance_id": 153, + "symbol_address": 1344, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM2_T1": { + "tag_name": "Val_Pod1_FM2_T1", + "dim": 0, + "alias": true, + "instance_id": 154, + "symbol_address": 1348, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM2_T2": { + "tag_name": "Val_Pod1_FM2_T2", + "dim": 0, + "alias": true, + "instance_id": 155, + "symbol_address": 1352, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM2_T3": { + "tag_name": "Val_Pod1_FM2_T3", + "dim": 0, + "alias": true, + "instance_id": 156, + "symbol_address": 1356, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM3_FR": { + "tag_name": "Val_Pod1_FM3_FR", + "dim": 0, + "alias": true, + "instance_id": 157, + "symbol_address": 1360, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM3_T1": { + "tag_name": "Val_Pod1_FM3_T1", + "dim": 0, + "alias": true, + "instance_id": 158, + "symbol_address": 1364, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM3_T2": { + "tag_name": "Val_Pod1_FM3_T2", + "dim": 0, + "alias": true, + "instance_id": 159, + "symbol_address": 1368, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM3_T3": { + "tag_name": "Val_Pod1_FM3_T3", + "dim": 0, + "alias": true, + "instance_id": 160, + "symbol_address": 1372, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_Pond_Level_1": { + "tag_name": "Val_Pod1_Pond_Level_1", + "dim": 0, + "alias": true, + "instance_id": 161, + "symbol_address": 1376, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_Pond_Level_2": { + "tag_name": "Val_Pod1_Pond_Level_2", + "dim": 0, + "alias": true, + "instance_id": 162, + "symbol_address": 1380, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_Pond_Level_2": { + "tag_name": "Val_Pod2_Pond_Level_2", + "dim": 0, + "alias": true, + "instance_id": 163, + "symbol_address": 1384, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_Pond_Level_1": { + "tag_name": "Val_Pod2_Pond_Level_1", + "dim": 0, + "alias": true, + "instance_id": 164, + "symbol_address": 1388, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM3_T3": { + "tag_name": "Val_Pod2_FM3_T3", + "dim": 0, + "alias": true, + "instance_id": 165, + "symbol_address": 1392, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM3_T2": { + "tag_name": "Val_Pod2_FM3_T2", + "dim": 0, + "alias": true, + "instance_id": 166, + "symbol_address": 1396, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM3_T1": { + "tag_name": "Val_Pod2_FM3_T1", + "dim": 0, + "alias": true, + "instance_id": 167, + "symbol_address": 1400, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM3_FR": { + "tag_name": "Val_Pod2_FM3_FR", + "dim": 0, + "alias": true, + "instance_id": 168, + "symbol_address": 1404, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM2_T3": { + "tag_name": "Val_Pod2_FM2_T3", + "dim": 0, + "alias": true, + "instance_id": 169, + "symbol_address": 1408, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM2_T2": { + "tag_name": "Val_Pod2_FM2_T2", + "dim": 0, + "alias": true, + "instance_id": 170, + "symbol_address": 1412, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM2_T1": { + "tag_name": "Val_Pod2_FM2_T1", + "dim": 0, + "alias": true, + "instance_id": 171, + "symbol_address": 1416, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM2_FR": { + "tag_name": "Val_Pod2_FM2_FR", + "dim": 0, + "alias": true, + "instance_id": 172, + "symbol_address": 1420, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM1_T3": { + "tag_name": "Val_Pod2_FM1_T3", + "dim": 0, + "alias": true, + "instance_id": 173, + "symbol_address": 1424, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM1_T2": { + "tag_name": "Val_Pod2_FM1_T2", + "dim": 0, + "alias": true, + "instance_id": 174, + "symbol_address": 1428, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM1_T1": { + "tag_name": "Val_Pod2_FM1_T1", + "dim": 0, + "alias": true, + "instance_id": 175, + "symbol_address": 1432, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM1_FR": { + "tag_name": "Val_Pod2_FM1_FR", + "dim": 0, + "alias": true, + "instance_id": 176, + "symbol_address": 1436, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM4_T3": { + "tag_name": "Val_Pod1_FM4_T3", + "dim": 0, + "alias": true, + "instance_id": 177, + "symbol_address": 1440, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM4_T2": { + "tag_name": "Val_Pod1_FM4_T2", + "dim": 0, + "alias": true, + "instance_id": 178, + "symbol_address": 1444, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM4_T1": { + "tag_name": "Val_Pod1_FM4_T1", + "dim": 0, + "alias": true, + "instance_id": 179, + "symbol_address": 1448, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod1_FM4_FR": { + "tag_name": "Val_Pod1_FM4_FR", + "dim": 0, + "alias": true, + "instance_id": 180, + "symbol_address": 1452, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM4_T3": { + "tag_name": "Val_Pod2_FM4_T3", + "dim": 0, + "alias": true, + "instance_id": 181, + "symbol_address": 1456, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM4_T2": { + "tag_name": "Val_Pod2_FM4_T2", + "dim": 0, + "alias": true, + "instance_id": 182, + "symbol_address": 1460, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM4_T1": { + "tag_name": "Val_Pod2_FM4_T1", + "dim": 0, + "alias": true, + "instance_id": 183, + "symbol_address": 1464, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod2_FM4_FR": { + "tag_name": "Val_Pod2_FM4_FR", + "dim": 0, + "alias": true, + "instance_id": 184, + "symbol_address": 1468, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM1_FR": { + "tag_name": "Val_Pod3_FM1_FR", + "dim": 0, + "alias": true, + "instance_id": 185, + "symbol_address": 1472, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM1_T1": { + "tag_name": "Val_Pod3_FM1_T1", + "dim": 0, + "alias": true, + "instance_id": 186, + "symbol_address": 1476, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM1_T2": { + "tag_name": "Val_Pod3_FM1_T2", + "dim": 0, + "alias": true, + "instance_id": 187, + "symbol_address": 1480, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM1_T3": { + "tag_name": "Val_Pod3_FM1_T3", + "dim": 0, + "alias": true, + "instance_id": 188, + "symbol_address": 1484, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM2_FR": { + "tag_name": "Val_Pod3_FM2_FR", + "dim": 0, + "alias": true, + "instance_id": 189, + "symbol_address": 1488, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM2_T1": { + "tag_name": "Val_Pod3_FM2_T1", + "dim": 0, + "alias": true, + "instance_id": 190, + "symbol_address": 1492, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM2_T2": { + "tag_name": "Val_Pod3_FM2_T2", + "dim": 0, + "alias": true, + "instance_id": 191, + "symbol_address": 1496, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM2_T3": { + "tag_name": "Val_Pod3_FM2_T3", + "dim": 0, + "alias": true, + "instance_id": 192, + "symbol_address": 1500, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM3_FR": { + "tag_name": "Val_Pod3_FM3_FR", + "dim": 0, + "alias": true, + "instance_id": 193, + "symbol_address": 1504, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM3_T1": { + "tag_name": "Val_Pod3_FM3_T1", + "dim": 0, + "alias": true, + "instance_id": 194, + "symbol_address": 1508, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM3_T2": { + "tag_name": "Val_Pod3_FM3_T2", + "dim": 0, + "alias": true, + "instance_id": 195, + "symbol_address": 1512, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM3_T3": { + "tag_name": "Val_Pod3_FM3_T3", + "dim": 0, + "alias": true, + "instance_id": 196, + "symbol_address": 1516, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM4_FR": { + "tag_name": "Val_Pod3_FM4_FR", + "dim": 0, + "alias": true, + "instance_id": 197, + "symbol_address": 1520, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM4_T1": { + "tag_name": "Val_Pod3_FM4_T1", + "dim": 0, + "alias": true, + "instance_id": 198, + "symbol_address": 1524, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM4_T2": { + "tag_name": "Val_Pod3_FM4_T2", + "dim": 0, + "alias": true, + "instance_id": 199, + "symbol_address": 1528, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_FM4_T3": { + "tag_name": "Val_Pod3_FM4_T3", + "dim": 0, + "alias": true, + "instance_id": 200, + "symbol_address": 1532, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_Pond_Level_1": { + "tag_name": "Val_Pod3_Pond_Level_1", + "dim": 0, + "alias": true, + "instance_id": 201, + "symbol_address": 1536, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod3_Pond_Level_2": { + "tag_name": "Val_Pod3_Pond_Level_2", + "dim": 0, + "alias": true, + "instance_id": 202, + "symbol_address": 1540, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_TP1_PID_Manual_Speed": { + "tag_name": "SPT_TP1_PID_Manual_Speed", + "dim": 0, + "alias": true, + "instance_id": 203, + "symbol_address": 1544, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_TP1_PID_Setpoint": { + "tag_name": "SPT_TP1_PID_Setpoint", + "dim": 0, + "alias": true, + "instance_id": 204, + "symbol_address": 1548, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP1_FM1_FR": { + "tag_name": "Val_WTP1_FM1_FR", + "dim": 0, + "alias": true, + "instance_id": 205, + "symbol_address": 1552, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP1_FM1_T1": { + "tag_name": "Val_WTP1_FM1_T1", + "dim": 0, + "alias": true, + "instance_id": 206, + "symbol_address": 1556, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP1_FM1_T2": { + "tag_name": "Val_WTP1_FM1_T2", + "dim": 0, + "alias": true, + "instance_id": 207, + "symbol_address": 1560, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP1_FM1_T3": { + "tag_name": "Val_WTP1_FM1_T3", + "dim": 0, + "alias": true, + "instance_id": 208, + "symbol_address": 1564, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP1_FM2_FR": { + "tag_name": "Val_WTP1_FM2_FR", + "dim": 0, + "alias": true, + "instance_id": 209, + "symbol_address": 1568, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP1_FM2_T1": { + "tag_name": "Val_WTP1_FM2_T1", + "dim": 0, + "alias": true, + "instance_id": 210, + "symbol_address": 1572, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP1_FM2_T2": { + "tag_name": "Val_WTP1_FM2_T2", + "dim": 0, + "alias": true, + "instance_id": 211, + "symbol_address": 1576, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP1_FM2_T3": { + "tag_name": "Val_WTP1_FM2_T3", + "dim": 0, + "alias": true, + "instance_id": 212, + "symbol_address": 1580, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP2_FM1_FR": { + "tag_name": "Val_WTP2_FM1_FR", + "dim": 0, + "alias": true, + "instance_id": 213, + "symbol_address": 1584, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP2_FM1_T1": { + "tag_name": "Val_WTP2_FM1_T1", + "dim": 0, + "alias": true, + "instance_id": 214, + "symbol_address": 1588, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP2_FM1_T2": { + "tag_name": "Val_WTP2_FM1_T2", + "dim": 0, + "alias": true, + "instance_id": 215, + "symbol_address": 1592, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP2_FM1_T3": { + "tag_name": "Val_WTP2_FM1_T3", + "dim": 0, + "alias": true, + "instance_id": 216, + "symbol_address": 1596, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP2_FM2_FR": { + "tag_name": "Val_WTP2_FM2_FR", + "dim": 0, + "alias": true, + "instance_id": 217, + "symbol_address": 1600, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP2_FM2_T1": { + "tag_name": "Val_WTP2_FM2_T1", + "dim": 0, + "alias": true, + "instance_id": 218, + "symbol_address": 1604, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP2_FM2_T2": { + "tag_name": "Val_WTP2_FM2_T2", + "dim": 0, + "alias": true, + "instance_id": 219, + "symbol_address": 1608, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_WTP2_FM2_T3": { + "tag_name": "Val_WTP2_FM2_T3", + "dim": 0, + "alias": true, + "instance_id": 220, + "symbol_address": 1612, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "TP2_PID_Loop_PV": { + "tag_name": "TP2_PID_Loop_PV", + "dim": 0, + "alias": true, + "instance_id": 221, + "symbol_address": 1616, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_TP2_PID_Setpoint": { + "tag_name": "SPT_TP2_PID_Setpoint", + "dim": 0, + "alias": true, + "instance_id": 222, + "symbol_address": 1620, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "SPT_TP2_PID_Manual_Speed": { + "tag_name": "SPT_TP2_PID_Manual_Speed", + "dim": 0, + "alias": true, + "instance_id": 223, + "symbol_address": 1624, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_12in_T3": { + "tag_name": "Val_FM_12in_T3", + "dim": 0, + "alias": true, + "instance_id": 224, + "symbol_address": 1628, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_12in_T2": { + "tag_name": "Val_FM_12in_T2", + "dim": 0, + "alias": true, + "instance_id": 225, + "symbol_address": 1632, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_12in_T1": { + "tag_name": "Val_FM_12in_T1", + "dim": 0, + "alias": true, + "instance_id": 226, + "symbol_address": 1636, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_12in_FR": { + "tag_name": "Val_FM_12in_FR", + "dim": 0, + "alias": true, + "instance_id": 227, + "symbol_address": 1640, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_10in_T3": { + "tag_name": "Val_FM_10in_T3", + "dim": 0, + "alias": true, + "instance_id": 228, + "symbol_address": 1644, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_10in_T2": { + "tag_name": "Val_FM_10in_T2", + "dim": 0, + "alias": true, + "instance_id": 229, + "symbol_address": 1648, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_10in_T1": { + "tag_name": "Val_FM_10in_T1", + "dim": 0, + "alias": true, + "instance_id": 230, + "symbol_address": 1652, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_10in_FR": { + "tag_name": "Val_FM_10in_FR", + "dim": 0, + "alias": true, + "instance_id": 231, + "symbol_address": 1656, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod_1_Pond_Volume_1": { + "tag_name": "Val_Pod_1_Pond_Volume_1", + "dim": 0, + "alias": true, + "instance_id": 232, + "symbol_address": 1660, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod_1_Pond_Volume_2": { + "tag_name": "Val_Pod_1_Pond_Volume_2", + "dim": 0, + "alias": true, + "instance_id": 233, + "symbol_address": 1664, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod_3_Pond_Volume_2": { + "tag_name": "Val_Pod_3_Pond_Volume_2", + "dim": 0, + "alias": true, + "instance_id": 234, + "symbol_address": 1668, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod_3_Pond_Volume_1": { + "tag_name": "Val_Pod_3_Pond_Volume_1", + "dim": 0, + "alias": true, + "instance_id": 235, + "symbol_address": 1672, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod_2_Pond_Volume_2": { + "tag_name": "Val_Pod_2_Pond_Volume_2", + "dim": 0, + "alias": true, + "instance_id": 236, + "symbol_address": 1676, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_Pod_2_Pond_Volume_1": { + "tag_name": "Val_Pod_2_Pond_Volume_1", + "dim": 0, + "alias": true, + "instance_id": 237, + "symbol_address": 1680, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_B_12in_FR": { + "tag_name": "Val_FM_B_12in_FR", + "dim": 0, + "alias": true, + "instance_id": 238, + "symbol_address": 1716, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_B_12in_T1": { + "tag_name": "Val_FM_B_12in_T1", + "dim": 0, + "alias": true, + "instance_id": 239, + "symbol_address": 1720, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_B_12in_T2": { + "tag_name": "Val_FM_B_12in_T2", + "dim": 0, + "alias": true, + "instance_id": 240, + "symbol_address": 1724, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "Val_FM_B_12in_T3": { + "tag_name": "Val_FM_B_12in_T3", + "dim": 0, + "alias": true, + "instance_id": 241, + "symbol_address": 1728, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "REAL", + "data_type_name": "REAL", + "tag_type": "atomic" + }, + "CP1_Run_Permissive": { + "tag_name": "CP1_Run_Permissive", + "dim": 0, + "alias": true, + "instance_id": 242, + "symbol_address": 1736, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "DINT", + "data_type_name": "DINT", + "tag_type": "atomic" + }, + "WTP1_Run_Permissive": { + "tag_name": "WTP1_Run_Permissive", + "dim": 0, + "alias": true, + "instance_id": 243, + "symbol_address": 1740, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "DINT", + "data_type_name": "DINT", + "tag_type": "atomic" + }, + "WTP2_Run_Permissive": { + "tag_name": "WTP2_Run_Permissive", + "dim": 0, + "alias": true, + "instance_id": 244, + "symbol_address": 1744, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "DINT", + "data_type_name": "DINT", + "tag_type": "atomic" + }, + "FBK_WTP1_VFD_Type": { + "tag_name": "FBK_WTP1_VFD_Type", + "dim": 0, + "alias": true, + "instance_id": 245, + "symbol_address": 2013, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "SHORT_STRING", + "data_type_name": "SHORT_STRING", + "tag_type": "atomic" + }, + "FBK_WTP2_VFD_Type": { + "tag_name": "FBK_WTP2_VFD_Type", + "dim": 0, + "alias": true, + "instance_id": 246, + "symbol_address": 2032, + "symbol_object_address": 1077697664, + "software_control": 0, + "external_access": "Unknown", + "dimensions": [ + 0, + 0, + 0 + ], + "data_type": "SHORT_STRING", + "data_type_name": "SHORT_STRING", + "tag_type": "atomic" + } +} diff --git a/Pub_Sub/sp_pond/thingsboard/pub/sendData.py b/Pub_Sub/sp_pond/thingsboard/pub/sendData.py index d2da00b..7bac60f 100644 --- a/Pub_Sub/sp_pond/thingsboard/pub/sendData.py +++ b/Pub_Sub/sp_pond/thingsboard/pub/sendData.py @@ -200,7 +200,7 @@ def sendData(message): checkCredentialConfig() payload = {"ts": (round(dt.timestamp(dt.now())/600)*600)*1000, "values": {}} resetPayload = {"ts": "", "values": {}} - regexPattern = r"fm_\d{2}_t\d" + regexPattern = r"fm_\d{2}_\w*_t\d" pondLevels = {} for measure in message["measures"]: try: diff --git a/Pub_Sub/sp_pond/thingsboard/sp_pond_measures.csv b/Pub_Sub/sp_pond/thingsboard/sp_pond_measures.csv index efee03f..77337b0 100644 --- a/Pub_Sub/sp_pond/thingsboard/sp_pond_measures.csv +++ b/Pub_Sub/sp_pond/thingsboard/sp_pond_measures.csv @@ -1,185 +1,189 @@ -MeasuringPointName,ControllerName,GroupName,UploadType,DataType,EnableBit,BitIndex,reverseBit,Address,Decimal,Len,ReadWrite,Unit,Description,Transform Type,MaxValue,MinValue,MaxScale,MinScale,Gain,Offset,startBit,endBit,Pt,Ct,Mapping_table,TransDecimal,bitMap,msecSample,DataEndianReverse,ReadOffset,ReadLength,DataParseMethod,BitId,storageLwTSDB -cp_01_auto,sp_pond,default,periodic,BIT,,,0,FBK_Charge_Pump_Auto,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_auto_alm,sp_pond,default,periodic,BIT,,,0,AL0_CP1_Not_in_Auto,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_discharge_lo_alm,sp_pond,default,periodic,BIT,,,0,AL0_CP1_Discharge_PSI_Lo,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_discharge_lo_lockout_alm,sp_pond,default,periodic,BIT,,,0,AL0_CP1_Low_Disch_PSI_Lock_Out,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_discharge_lo_spt,sp_pond,default,periodic,FLOAT,,,,SPT_CP1_Low_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -cp_01_discharge_psi,sp_pond,default,periodic,FLOAT,,,,Val_CP1_Disch_PSI,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -cp_01_faulted,sp_pond,default,periodic,BIT,,,0,FBK_Charge_Pump_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_hand,sp_pond,default,periodic,BIT,,,0,FBK_Charge_Pump_Hand,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_hoa_alm,sp_pond,default,periodic,BIT,,,0,AL0_CP1_HOA_Off,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_in_hand_alm,sp_pond,default,periodic,BIT,,,0,AL0_Charge_Pump_In_Hand,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_lo_clear_cmd,sp_pond,default,periodic,BIT,,,0,CMD_CP1_LO_Clear,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_run_cmd,sp_pond,default,periodic,BIT,,,0,CMD_CP1_Run,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_01_run_permissive,sp_pond,default,periodic,DINT,0,,,CP1_Run_Permissive,,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -cp_01_running,sp_pond,default,periodic,BIT,,,0,FBK_Charge_Pump_Running,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -cp_02_discharge_psi,sp_pond,default,periodic,FLOAT,,,,Val_CP2_Disch_PSI,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -fm_10_fr,sp_pond,default,periodic,FLOAT,,,,Val_FM_10in_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -fm_10_t1,sp_pond,default,periodic,FLOAT,,,,Val_FM_10in_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -fm_10_t2,sp_pond,default,periodic,FLOAT,,,,Val_FM_10in_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -fm_10_t3,sp_pond,default,periodic,FLOAT,,,,Val_FM_10in_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -fm_12_fr,sp_pond,default,periodic,FLOAT,,,,Val_FM_12in_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -fm_12_t1,sp_pond,default,periodic,FLOAT,,,,Val_FM_12in_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -fm_12_t2,sp_pond,default,periodic,FLOAT,,,,Val_FM_12in_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -fm_12_t3,sp_pond,default,periodic,FLOAT,,,,Val_FM_12in_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -hmi_fault_clear_cmd,sp_pond,default,periodic,BIT,,,0,CMD_HMI_Fault_Clear,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -hmi_system_start_cmd,sp_pond,default,periodic,BIT,,,0,CMD_HMI_System_Start,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -hmi_system_stop_cmd,sp_pond,default,periodic,BIT,,,0,CMD_HMI_System_Stop,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -pod_01_enable,sp_pond,default,periodic,BIT,,,0,CFG_Remote_Pod_1_Enable,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -pod_01_fm_01_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_01_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_01_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_01_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_02_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_02_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_02_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_02_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_03_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM3_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_03_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM3_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_03_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM3_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_03_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM3_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_04_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM4_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_04_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM4_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_04_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM4_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_fm_04_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_FM4_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_pond_level_01,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_Pond_Level_1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_pond_level_02,sp_pond,default,periodic,FLOAT,,,,Val_Pod1_Pond_Level_2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_pond_volume_01,sp_pond,default,periodic,FLOAT,,,,Val_Pod_1_Pond_Volume_1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_01_pond_volume_02,sp_pond,default,periodic,FLOAT,,,,Val_Pod_1_Pond_Volume_2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_enable,sp_pond,default,periodic,BIT,,,0,CFG_Remote_Pod_2_Enable,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -pod_02_fm_01_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_01_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_01_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_01_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_02_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_02_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_02_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_02_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_03_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM3_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_03_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM3_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_03_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM3_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_03_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM3_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_04_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM4_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_04_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM4_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_04_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM4_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_fm_04_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_FM4_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_pond_level_01,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_Pond_Level_1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_pond_level_02,sp_pond,default,periodic,FLOAT,,,,Val_Pod2_Pond_Level_2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_pond_volume_01,sp_pond,default,periodic,FLOAT,,,,Val_Pod_2_Pond_Volume_1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_02_pond_volume_02,sp_pond,default,periodic,FLOAT,,,,Val_Pod_2_Pond_Volume_2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_enable,sp_pond,default,periodic,BIT,,,0,CFG_Remote_Pod_3_Enable,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -pod_03_fm_01_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_01_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_01_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_01_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_02_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_02_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_02_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_02_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_03_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM3_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_03_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM3_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_03_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM3_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_03_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM3_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_04_fr,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM4_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_04_t1,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM4_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_04_t2,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM4_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_fm_04_t3,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_FM4_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_pond_level_01,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_Pond_Level_1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_pond_level_02,sp_pond,default,periodic,FLOAT,,,,Val_Pod3_Pond_Level_2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_pond_volume_01,sp_pond,default,periodic,FLOAT,,,,Val_Pod_3_Pond_Volume_1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -pod_03_pond_volume_02,sp_pond,default,periodic,FLOAT,,,,Val_Pod_3_Pond_Volume_2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -power_supply_faulted,sp_pond,default,periodic,BIT,,,0,FBK_Power_Supply_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -power_suppy_faulted,sp_pond,default,periodic,BIT,,,0,AL0_PS_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -scada_fault_clear_cmd,sp_pond,default,periodic,BIT,,,0,cmd_Scada_clear,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -scada_start_cmd,sp_pond,default,periodic,BIT,,,0,CMD_Scada_Start,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -scada_stop_cmd,sp_pond,default,periodic,BIT,,,0,CMD_Scada_Stop,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -tp_01_discharge_hi_lockout,sp_pond,default,periodic,BIT,,,0,TP1_Lockout_Counter_Hi_Disch,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -tp_01_hi_clear_cmd,sp_pond,default,periodic,BIT,,,0,CMD_TP1_Hi_Clear,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -tp_01_lo_clear_cmd,sp_pond,default,periodic,BIT,,,0,CMD_TP1_Lo_Clear,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -tp_01_pid_manual_spt,sp_pond,default,periodic,FLOAT,,,,SPT_TP1_PID_Manual_Speed,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -tp_01_pid_mode_spt,sp_pond,default,periodic,INT,0,,,SPT_TP1_Mode,,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -tp_01_pid_spt,sp_pond,default,periodic,FLOAT,,,,SPT_TP1_PID_Setpoint,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -tp_02_hi_clear_cmd,sp_pond,default,periodic,BIT,,,0,CMD_TP2_Hi_Clear,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -tp_02_lo_clear_cmd,sp_pond,default,periodic,BIT,,,0,CMD_TP2_Lo_Clear,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -tp_02_pid_inverse_cmd,sp_pond,default,periodic,BIT,,,0,CMD_TP2_PID_Inverse,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -tp_02_pid_loop_pv,sp_pond,default,periodic,FLOAT,,,,TP2_PID_Loop_PV,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -tp_02_pid_manual_cmd,sp_pond,default,periodic,BIT,,,0,CMD_TP2_PID_Manual,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -tp_02_pid_manual_spt,sp_pond,default,periodic,FLOAT,,,,SPT_TP2_PID_Manual_Speed,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -tp_02_pid_mode_spt,sp_pond,default,periodic,INT,0,,,SPT_TP2_Mode,,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -tp_02_pid_spt,sp_pond,default,periodic,FLOAT,,,,SPT_TP2_PID_Setpoint,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -tp_vfds_faulted_alm,sp_pond,default,periodic,BIT,,,0,AL0_Both_TP_VFDs_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -ups_faulted,sp_pond,default,periodic,BIT,,,0,FBK_UPS_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -ups_faulted_alm,sp_pond,default,periodic,BIT,,,0,AL0_UPS_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_alarm_lockout,sp_pond,default,periodic,INT,0,,,WTP1_Alarm_Lockout,,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_discharge_hi_alm,sp_pond,default,periodic,BIT,,,0,AL0_WTP1_High_Discharge_PSI,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_discharge_hi_lockout_alm,sp_pond,default,periodic,BIT,,,0,AL0_WTP1_Hi_Disch_Lockout,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_discharge_hi_spt,sp_pond,default,periodic,FLOAT,,,,SPT_WTP1_High_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_discharge_lo_alm,sp_pond,default,periodic,BIT,,,0,AL0_WTP1_Low_Discharge_PSI,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_discharge_lo_lockout_alm,sp_pond,default,periodic,BIT,,,0,AL0_WTP1_Lo_Disch_Lockout,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_discharge_lo_spt,sp_pond,default,periodic,FLOAT,,,,SPT_WTP1_Low_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_discharge_psi,sp_pond,default,periodic,FLOAT,,,,Val_WTP1_Discharge_PSI,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fault_clear_cmd,sp_pond,default,periodic,BIT,,,0,CMD_WTP1_FaultClear,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_fault_code,sp_pond,default,periodic,INT,0,,,FBK_WTP1_FaultCode,,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fm_01_fr,sp_pond,default,periodic,FLOAT,,,,Val_WTP1_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fm_01_t1,sp_pond,default,periodic,FLOAT,,,,Val_WTP1_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fm_01_t2,sp_pond,default,periodic,FLOAT,,,,Val_WTP1_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fm_01_t3,sp_pond,default,periodic,FLOAT,,,,Val_WTP1_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fm_02_fr,sp_pond,default,periodic,FLOAT,,,,Val_WTP1_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fm_02_t1,sp_pond,default,periodic,FLOAT,,,,Val_WTP1_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fm_02_t2,sp_pond,default,periodic,FLOAT,,,,Val_WTP1_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fm_02_t3,sp_pond,default,periodic,FLOAT,,,,Val_WTP1_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_fm_active_spt,sp_pond,default,periodic,INT,0,,,SPT_WTP1_FM_Active,,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_jog_cmd,sp_pond,default,periodic,BIT,,,0,CMD_WTP1_Jog,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_run_permissive,sp_pond,default,periodic,DINT,0,,,WTP1_Run_Permissive,,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_speed_ref_cmd,sp_pond,default,periodic,FLOAT,,,,WTP1_Speed_Ref,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_start_cmd,sp_pond,default,periodic,BIT,,,0,CMD_WTP1_Start,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_stop_cmd,sp_pond,default,periodic,BIT,,,0,CMD_WTP1_Stop,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_vfd_actual_speed,sp_pond,default,periodic,FLOAT,,,,FBK_WTP1_VFD_Actual_Speed,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_vfd_cmd_speed,sp_pond,default,periodic,FLOAT,,,,FBK_WTP1_VFD_CMD_Speed,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_vfd_commsloss,sp_pond,default,periodic,BIT,,,0,FBK_WTP1_VFD_CommsLoss,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_vfd_dc_bus,sp_pond,default,periodic,FLOAT,,,,FBK_WTP1_VFD_DCBus,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_vfd_error,sp_pond,default,periodic,BIT,,,0,FBK_WTP1_VFD_Error,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_vfd_faulted,sp_pond,default,periodic,BIT,,,0,FBK_WTP1_VFD_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_vfd_output_current,sp_pond,default,periodic,FLOAT,,,,FBK_WTP1_VFD_OutputCurrent,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_vfd_output_voltage,sp_pond,default,periodic,FLOAT,,,,FBK_WTP1_VFD_OutputVoltage,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_vfd_ready,sp_pond,default,periodic,BIT,,,0,FBK_WTP1_VFD_Ready,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_vfd_running,sp_pond,default,periodic,BIT,,,0,FBK_WTP1_VFD_Running,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_01_vfd_timeout_spt,sp_pond,default,periodic,SINT,0,,,SPT_WTP1_VFD_TimeOut,,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_01_vfd_type,sp_pond,default,periodic,STRING,,,,FBK_WTP1_VFD_Type,,16,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_alarm_lockout,sp_pond,default,periodic,INT,0,,,WTP2_Alarm_Lockout,,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_discharge_hi_alm,sp_pond,default,periodic,BIT,,,0,AL0_WTP2_High_Discharge_PSI,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_discharge_hi_lockout_alm,sp_pond,default,periodic,BIT,,,0,AL0_WTP2_Hi_Disch_Lockout,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_discharge_hi_spt,sp_pond,default,periodic,FLOAT,,,,SPT_WTP2_High_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_discharge_lo_alm,sp_pond,default,periodic,BIT,,,0,AL0_WTP2_Low_Discharge_PSI,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_discharge_lo_lockout_alm,sp_pond,default,periodic,BIT,,,0,AL0_WTP2_Lo_Disch_Lockout,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_discharge_lo_spt,sp_pond,default,periodic,FLOAT,,,,SPT_WTP2_Low_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_discharge_psi,sp_pond,default,periodic,FLOAT,,,,Val_WTP2_Discharge_PSI,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fault_clear_cmd,sp_pond,default,periodic,BIT,,,0,CMD_WTP2_FaultClear,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_fault_code,sp_pond,default,periodic,INT,0,,,FBK_WTP2_FaultCode,,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fm_01_fr,sp_pond,default,periodic,FLOAT,,,,Val_WTP2_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fm_01_t1,sp_pond,default,periodic,FLOAT,,,,Val_WTP2_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fm_01_t2,sp_pond,default,periodic,FLOAT,,,,Val_WTP2_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fm_01_t3,sp_pond,default,periodic,FLOAT,,,,Val_WTP2_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fm_02_fr,sp_pond,default,periodic,FLOAT,,,,Val_WTP2_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fm_02_t1,sp_pond,default,periodic,FLOAT,,,,Val_WTP2_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fm_02_t2,sp_pond,default,periodic,FLOAT,,,,Val_WTP2_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fm_02_t3,sp_pond,default,periodic,FLOAT,,,,Val_WTP2_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_fm_active_spt,sp_pond,default,periodic,INT,0,,,SPT_WTP2_FM_Active,,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_jog_cmd,sp_pond,default,periodic,BIT,,,0,CMD_WTP2_Jog,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_run_permissive,sp_pond,default,periodic,DINT,0,,,WTP2_Run_Permissive,,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_speed_ref_cmd,sp_pond,default,periodic,FLOAT,,,,WTP2_Speed_Ref,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_start_cmd,sp_pond,default,periodic,BIT,,,0,CMD_WTP2_Start,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_stop_cmd,sp_pond,default,periodic,BIT,,,0,CMD_WTP2_Stop,,,rw,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_vfd_actual_speed,sp_pond,default,periodic,FLOAT,,,,FBK_WTP2_VFD_Actual_Speed,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_vfd_cmd_speed,sp_pond,default,periodic,FLOAT,,,,FBK_WTP2_VFD_CMD_Speed,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_vfd_commsloss,sp_pond,default,periodic,BIT,,,0,FBK_WTP2_VFD_CommsLoss,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_vfd_dc_bus,sp_pond,default,periodic,FLOAT,,,,FBK_WTP2_VFD_DCBus,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_vfd_error,sp_pond,default,periodic,BIT,,,0,FBK_WTP2_VFD_Error,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_vfd_faulted,sp_pond,default,periodic,BIT,,,0,FBK_WTP2_VFD_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_vfd_output_current,sp_pond,default,periodic,FLOAT,,,,FBK_WTP2_VFD_OutputCurrent,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_vfd_output_voltage,sp_pond,default,periodic,FLOAT,,,,FBK_WTP2_VFD_OutputVoltage,2,,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_vfd_ready,sp_pond,default,periodic,BIT,,,0,FBK_WTP2_VFD_Ready,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_vfd_running,sp_pond,default,periodic,BIT,,,0,FBK_WTP2_VFD_Running,,,ro,,,none,,,,,,,,,,,,,0,,,,,,,0 -wtp_02_vfd_timeout_spt,sp_pond,default,periodic,SINT,0,,,SPT_WTP2_VFD_TimeOut,,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_02_vfd_type,sp_pond,default,periodic,STRING,,,,FBK_WTP2_VFD_Type,,16,ro,,,none,,,,,,,,,,,,,,,,,,,,0 -wtp_system_start_spt,sp_pond,default,periodic,FLOAT,,,,SPT_WTP_System_Start,2,,rw,,,none,,,,,,,,,,,,,,,,,,,,0 \ No newline at end of file +MeasuringPointName,ControllerName,GroupName,UploadType,DeadZonePercent,DataType,ArrayIndex,EnableBit,BitIndex,reverseBit,Address,Decimal,Len,ReadWrite,Unit,Description,Transform Type,MaxValue,MinValue,MaxScale,MinScale,Gain,Offset,startBit,endBit,Pt,Ct,Mapping_table,TransDecimal,bitMap,msecSample,storageLwTSDB,DataEndianReverse,ReadOffset,ReadLength,WriteOffset,WriteLength,DataParseMethod,BitId +cp_01_auto,sp_pond,default,periodic,,BIT,,,,0,FBK_Charge_Pump_Auto,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_auto_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_CP1_Not_in_Auto,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_discharge_lo_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_CP1_Discharge_PSI_Lo,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_discharge_lo_lockout_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_CP1_Low_Disch_PSI_Lock_Out,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_discharge_lo_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_CP1_Low_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +cp_01_discharge_psi,sp_pond,default,periodic,,FLOAT,,,,,Val_CP1_Disch_PSI,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +cp_01_faulted,sp_pond,default,periodic,,BIT,,,,0,FBK_Charge_Pump_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_hand,sp_pond,default,periodic,,BIT,,,,0,FBK_Charge_Pump_Hand,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_hoa_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_CP1_HOA_Off,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_in_hand_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_Charge_Pump_In_Hand,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_lo_clear_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_CP1_LO_Clear,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_run_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_CP1_Run,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_01_run_permissive,sp_pond,default,periodic,,DINT,,0,,,CP1_Run_Permissive,,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +cp_01_running,sp_pond,default,periodic,,BIT,,,,0,FBK_Charge_Pump_Running,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +cp_02_discharge_psi,sp_pond,default,periodic,,FLOAT,,,,,Val_CP2_Disch_PSI,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_10_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_10in_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_10_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_10in_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_10_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_10in_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_10_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_10in_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_12_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_12in_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_12_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_12in_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_12_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_12in_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_12_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_12in_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_12_b_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_B_12in_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_12_b_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_B_12in_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_12_b_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_B_12in_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +fm_12_b_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_FM_B_12in_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +hmi_fault_clear_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_HMI_Fault_Clear,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +hmi_system_start_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_HMI_System_Start,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +hmi_system_stop_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_HMI_System_Stop,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +pod_01_enable,sp_pond,default,periodic,,BIT,,,,0,CFG_Remote_Pod_1_Enable,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +pod_01_fm_01_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_01_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_01_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_01_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_02_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_02_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_02_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_02_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_03_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM3_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_03_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM3_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_03_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM3_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_03_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM3_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_04_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM4_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_04_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM4_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_04_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM4_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_fm_04_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_FM4_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_pond_level_01,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_Pond_Level_1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_pond_level_02,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod1_Pond_Level_2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_pond_volume_01,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod_1_Pond_Volume_1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_01_pond_volume_02,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod_1_Pond_Volume_2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_enable,sp_pond,default,periodic,,BIT,,,,0,CFG_Remote_Pod_2_Enable,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +pod_02_fm_01_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_01_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_01_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_01_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_02_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_02_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_02_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_02_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_03_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM3_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_03_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM3_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_03_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM3_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_03_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM3_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_04_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM4_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_04_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM4_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_04_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM4_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_fm_04_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_FM4_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_pond_level_01,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_Pond_Level_1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_pond_level_02,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod2_Pond_Level_2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_pond_volume_01,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod_2_Pond_Volume_1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_02_pond_volume_02,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod_2_Pond_Volume_2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_enable,sp_pond,default,periodic,,BIT,,,,0,CFG_Remote_Pod_3_Enable,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +pod_03_fm_01_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_01_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_01_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_01_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_02_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_02_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_02_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_02_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_03_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM3_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_03_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM3_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_03_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM3_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_03_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM3_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_04_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM4_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_04_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM4_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_04_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM4_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_fm_04_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_FM4_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_pond_level_01,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_Pond_Level_1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_pond_level_02,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod3_Pond_Level_2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_pond_volume_01,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod_3_Pond_Volume_1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +pod_03_pond_volume_02,sp_pond,default,periodic,,FLOAT,,,,,Val_Pod_3_Pond_Volume_2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +power_supply_faulted,sp_pond,default,periodic,,BIT,,,,0,FBK_Power_Supply_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +power_suppy_faulted,sp_pond,default,periodic,,BIT,,,,0,AL0_PS_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +scada_fault_clear_cmd,sp_pond,default,periodic,,BIT,,,,0,cmd_Scada_clear,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +scada_start_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_Scada_Start,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +scada_stop_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_Scada_Stop,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +tp_01_discharge_hi_lockout,sp_pond,default,periodic,,BIT,,,,0,TP1_Lockout_Counter_Hi_Disch,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +tp_01_hi_clear_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_TP1_Hi_Clear,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +tp_01_lo_clear_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_TP1_Lo_Clear,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +tp_01_pid_manual_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_TP1_PID_Manual_Speed,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +tp_01_pid_mode_spt,sp_pond,default,periodic,,INT,,0,,,SPT_TP1_Mode,,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +tp_01_pid_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_TP1_PID_Setpoint,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +tp_02_hi_clear_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_TP2_Hi_Clear,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +tp_02_lo_clear_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_TP2_Lo_Clear,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +tp_02_pid_inverse_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_TP2_PID_Inverse,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +tp_02_pid_loop_pv,sp_pond,default,periodic,,FLOAT,,,,,TP2_PID_Loop_PV,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +tp_02_pid_manual_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_TP2_PID_Manual,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +tp_02_pid_manual_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_TP2_PID_Manual_Speed,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +tp_02_pid_mode_spt,sp_pond,default,periodic,,INT,,0,,,SPT_TP2_Mode,,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +tp_02_pid_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_TP2_PID_Setpoint,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +tp_vfds_faulted_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_Both_TP_VFDs_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +ups_faulted,sp_pond,default,periodic,,BIT,,,,0,FBK_UPS_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +ups_faulted_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_UPS_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_alarm_lockout,sp_pond,default,periodic,,INT,,0,,,WTP1_Alarm_Lockout,,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_discharge_hi_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_WTP1_High_Discharge_PSI,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_discharge_hi_lockout_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_WTP1_Hi_Disch_Lockout,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_discharge_hi_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_WTP1_High_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_discharge_lo_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_WTP1_Low_Discharge_PSI,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_discharge_lo_lockout_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_WTP1_Lo_Disch_Lockout,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_discharge_lo_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_WTP1_Low_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_discharge_psi,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP1_Discharge_PSI,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fault_clear_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_WTP1_FaultClear,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_fault_code,sp_pond,default,periodic,,INT,,0,,,FBK_WTP1_FaultCode,,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fm_01_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP1_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fm_01_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP1_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fm_01_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP1_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fm_01_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP1_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fm_02_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP1_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fm_02_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP1_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fm_02_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP1_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fm_02_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP1_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_fm_active_spt,sp_pond,default,periodic,,INT,,0,,,SPT_WTP1_FM_Active,,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_jog_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_WTP1_Jog,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_run_permissive,sp_pond,default,periodic,,DINT,,0,,,WTP1_Run_Permissive,,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_speed_ref_cmd,sp_pond,default,periodic,,FLOAT,,,,,WTP1_Speed_Ref,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_start_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_WTP1_Start,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_stop_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_WTP1_Stop,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_vfd_actual_speed,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP1_VFD_Actual_Speed,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_vfd_cmd_speed,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP1_VFD_CMD_Speed,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_vfd_commsloss,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP1_VFD_CommsLoss,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_vfd_dc_bus,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP1_VFD_DCBus,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_vfd_error,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP1_VFD_Error,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_vfd_faulted,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP1_VFD_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_vfd_output_current,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP1_VFD_OutputCurrent,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_vfd_output_voltage,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP1_VFD_OutputVoltage,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_vfd_ready,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP1_VFD_Ready,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_vfd_running,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP1_VFD_Running,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_01_vfd_timeout_spt,sp_pond,default,periodic,,SINT,,0,,,SPT_WTP1_VFD_TimeOut,,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_01_vfd_type,sp_pond,default,periodic,,STRING,,,,,FBK_WTP1_VFD_Type,,16,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_alarm_lockout,sp_pond,default,periodic,,INT,,0,,,WTP2_Alarm_Lockout,,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_discharge_hi_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_WTP2_High_Discharge_PSI,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_discharge_hi_lockout_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_WTP2_Hi_Disch_Lockout,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_discharge_hi_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_WTP2_High_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_discharge_lo_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_WTP2_Low_Discharge_PSI,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_discharge_lo_lockout_alm,sp_pond,default,periodic,,BIT,,,,0,AL0_WTP2_Lo_Disch_Lockout,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_discharge_lo_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_WTP2_Low_Discharge_PSI,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_discharge_psi,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP2_Discharge_PSI,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fault_clear_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_WTP2_FaultClear,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_fault_code,sp_pond,default,periodic,,INT,,0,,,FBK_WTP2_FaultCode,,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fm_01_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP2_FM1_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fm_01_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP2_FM1_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fm_01_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP2_FM1_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fm_01_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP2_FM1_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fm_02_fr,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP2_FM2_FR,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fm_02_t1,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP2_FM2_T1,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fm_02_t2,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP2_FM2_T2,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fm_02_t3,sp_pond,default,periodic,,FLOAT,,,,,Val_WTP2_FM2_T3,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_fm_active_spt,sp_pond,default,periodic,,INT,,0,,,SPT_WTP2_FM_Active,,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_jog_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_WTP2_Jog,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_run_permissive,sp_pond,default,periodic,,DINT,,0,,,WTP2_Run_Permissive,,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_speed_ref_cmd,sp_pond,default,periodic,,FLOAT,,,,,WTP2_Speed_Ref,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_start_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_WTP2_Start,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_stop_cmd,sp_pond,default,periodic,,BIT,,,,0,CMD_WTP2_Stop,,,rw,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_vfd_actual_speed,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP2_VFD_Actual_Speed,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_vfd_cmd_speed,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP2_VFD_CMD_Speed,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_vfd_commsloss,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP2_VFD_CommsLoss,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_vfd_dc_bus,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP2_VFD_DCBus,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_vfd_error,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP2_VFD_Error,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_vfd_faulted,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP2_VFD_Faulted,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_vfd_output_current,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP2_VFD_OutputCurrent,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_vfd_output_voltage,sp_pond,default,periodic,,FLOAT,,,,,FBK_WTP2_VFD_OutputVoltage,2,,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_vfd_ready,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP2_VFD_Ready,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_vfd_running,sp_pond,default,periodic,,BIT,,,,0,FBK_WTP2_VFD_Running,,,ro,,,none,,,,,,,,,,,,,0,,0,,,,,,, +wtp_02_vfd_timeout_spt,sp_pond,default,periodic,,SINT,,0,,,SPT_WTP2_VFD_TimeOut,,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_02_vfd_type,sp_pond,default,periodic,,STRING,,,,,FBK_WTP2_VFD_Type,,16,ro,,,none,,,,,,,,,,,,,,,0,,,,,,, +wtp_system_start_spt,sp_pond,default,periodic,,FLOAT,,,,,SPT_WTP_System_Start,2,,rw,,,none,,,,,,,,,,,,,,,0,,,,,,, \ No newline at end of file diff --git a/code snippets/basicSendTest.ipynb b/code snippets/basicSendTest.ipynb new file mode 100644 index 0000000..d0bed26 --- /dev/null +++ b/code snippets/basicSendTest.ipynb @@ -0,0 +1,97 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "from datetime import datetime as dt\n", + "import json, time\n", + "import random" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "# Helper function to split the payload into chunks\n", + "def chunk_payload(payload, chunk_size=20):\n", + " chunked_values = list(payload[\"values\"].items())\n", + " for i in range(0, len(chunked_values), chunk_size):\n", + " yield {\n", + " \"ts\": payload[\"ts\"],\n", + " \"values\": dict(chunked_values[i:i+chunk_size])\n", + " }\n", + "\n", + "def sendData(message):\n", + " payload = {}\n", + " payload[\"ts\"] = (round(dt.timestamp(dt.now())/600)*600)*1000\n", + " payload[\"values\"] = {}\n", + " \n", + " for measure in message[\"measures\"]:\n", + " try:\n", + " #print(measure)\n", + " if measure[\"health\"] == 1:\n", + " payload[\"values\"][measure[\"name\"]] = measure[\"value\"]\n", + " except Exception as e:\n", + " print(e)\n", + " for chunk in chunk_payload(payload=payload):\n", + " print(json.dumps(chunk, indent=4))\n", + " time.sleep(2)\n", + " print(\"v1/devices/me/attributes\", json.dumps({\"latestReportTime\": (round(dt.timestamp(dt.now())/600)*600)*1000},indent=4))" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "Input \u001b[0;32mIn [4]\u001b[0m, in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;28;01mwhile\u001b[39;00m \u001b[38;5;28;01mTrue\u001b[39;00m:\n\u001b[1;32m 2\u001b[0m message \u001b[38;5;241m=\u001b[39m {\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mmeasures\u001b[39m\u001b[38;5;124m\"\u001b[39m: [\n\u001b[1;32m 3\u001b[0m {\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mctrlName\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mplcpond\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mname\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mair_comp_spt\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mhealth\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mtimestamp\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1725973793\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mtimestampMsec\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1725973793190\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mvalue\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m40.0\u001b[39m},\n\u001b[0;32m----> 4\u001b[0m {\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mctrlName\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mplcpond\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mname\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mair_comp_val\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mhealth\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mtimestamp\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1725973793\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mtimestampMsec\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1725973793190\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mvalue\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m0.23999999999999999\u001b[39m},\n\u001b[1;32m 5\u001b[0m {\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mctrlName\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mplcpond\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mname\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mair_comp_low_alm\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mhealth\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mtimestamp\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1725973793\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mtimestampMsec\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1725973793190\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mvalue\u001b[39m\u001b[38;5;124m'\u001b[39m: \u001b[38;5;241m1\u001b[39m}] \n\u001b[1;32m 6\u001b[0m }\n\u001b[1;32m 7\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mint\u001b[39m(time\u001b[38;5;241m.\u001b[39mtime()) \u001b[38;5;241m%\u001b[39m \u001b[38;5;241m600\u001b[39m \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m0\u001b[39m:\n\u001b[1;32m 8\u001b[0m sendData(message)\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "while True:\n", + " message = {\"measures\": [\n", + " {'ctrlName': 'plcpond', 'name': 'air_comp_spt', 'health': 1, 'timestamp': 1725973793, 'timestampMsec': 1725973793190, 'value': 40.0},\n", + "{'ctrlName': 'plcpond', 'name': 'air_comp_val', 'health': 1, 'timestamp': 1725973793, 'timestampMsec': 1725973793190, 'value': -0.23999999999999999},\n", + "{'ctrlName': 'plcpond', 'name': 'air_comp_low_alm', 'health': 1, 'timestamp': 1725973793, 'timestampMsec': 1725973793190, 'value': 1}] \n", + " }\n", + " if int(time.time()) % 600 == 0:\n", + " sendData(message)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "base", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/code snippets/getPLCData.ipynb b/code snippets/getPLCData.ipynb index fb965cb..41384df 100644 --- a/code snippets/getPLCData.ipynb +++ b/code snippets/getPLCData.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 1, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -12,7 +12,7 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -20,338 +20,3178 @@ "output_type": "stream", "text": [ "{\n", - " \"_IO_EM_DO_00\": {\n", - " \"tag_name\": \"_IO_EM_DO_00\",\n", + " \"Local:1:C\": {\n", + " \"tag_name\": \"Local:1:C\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 1,\n", - " \"symbol_address\": 1044,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"_IO_EM_DO_01\": {\n", - " \"tag_name\": \"_IO_EM_DO_01\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 2,\n", - " \"symbol_address\": 1045,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"_IO_EM_DO_02\": {\n", - " \"tag_name\": \"_IO_EM_DO_02\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 3,\n", - " \"symbol_address\": 1046,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 91448,\n", + " \"symbol_object_address\": 905500,\n", + " \"software_control\": 201392133,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 1036,\n", + " \"data_type\": {\n", + " \"name\": \"AB:Embedded_DiscreteIO:C:0\",\n", + " \"internal_tags\": {\n", + " \"CfgSize\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"CfgIDNum\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt00FilterOffOn\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt00FilterOnOff\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt01FilterOffOn\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt01FilterOnOff\": {\n", + " \"offset\": 18,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt02FilterOffOn\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt02FilterOnOff\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt03FilterOffOn\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt03FilterOnOff\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt04FilterOffOn\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt04FilterOnOff\": {\n", + " \"offset\": 30,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt05FilterOffOn\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt05FilterOnOff\": {\n", + " \"offset\": 34,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt06FilterOffOn\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt06FilterOnOff\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt07FilterOffOn\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt07FilterOnOff\": {\n", + " \"offset\": 42,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt08FilterOffOn\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt08FilterOnOff\": {\n", + " \"offset\": 46,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt09FilterOffOn\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt09FilterOnOff\": {\n", + " \"offset\": 50,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt10FilterOffOn\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt10FilterOnOff\": {\n", + " \"offset\": 54,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt11FilterOffOn\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt11FilterOnOff\": {\n", + " \"offset\": 58,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt12FilterOffOn\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt12FilterOnOff\": {\n", + " \"offset\": 62,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt13FilterOffOn\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt13FilterOnOff\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt14FilterOffOn\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt14FilterOnOff\": {\n", + " \"offset\": 70,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt15FilterOffOn\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pt15FilterOnOff\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultMode\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultValue\": {\n", + " \"offset\": 78,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"ProgMode\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"ProgValue\": {\n", + " \"offset\": 82,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"COSOnOffEn\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"COSOffOnEn\": {\n", + " \"offset\": 86,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"CfgSize\",\n", + " \"CfgIDNum\",\n", + " \"Reserved\",\n", + " \"Pt00FilterOffOn\",\n", + " \"Pt00FilterOnOff\",\n", + " \"Pt01FilterOffOn\",\n", + " \"Pt01FilterOnOff\",\n", + " \"Pt02FilterOffOn\",\n", + " \"Pt02FilterOnOff\",\n", + " \"Pt03FilterOffOn\",\n", + " \"Pt03FilterOnOff\",\n", + " \"Pt04FilterOffOn\",\n", + " \"Pt04FilterOnOff\",\n", + " \"Pt05FilterOffOn\",\n", + " \"Pt05FilterOnOff\",\n", + " \"Pt06FilterOffOn\",\n", + " \"Pt06FilterOnOff\",\n", + " \"Pt07FilterOffOn\",\n", + " \"Pt07FilterOnOff\",\n", + " \"Pt08FilterOffOn\",\n", + " \"Pt08FilterOnOff\",\n", + " \"Pt09FilterOffOn\",\n", + " \"Pt09FilterOnOff\",\n", + " \"Pt10FilterOffOn\",\n", + " \"Pt10FilterOnOff\",\n", + " \"Pt11FilterOffOn\",\n", + " \"Pt11FilterOnOff\",\n", + " \"Pt12FilterOffOn\",\n", + " \"Pt12FilterOnOff\",\n", + " \"Pt13FilterOffOn\",\n", + " \"Pt13FilterOnOff\",\n", + " \"Pt14FilterOffOn\",\n", + " \"Pt14FilterOnOff\",\n", + " \"Pt15FilterOffOn\",\n", + " \"Pt15FilterOnOff\",\n", + " \"FaultMode\",\n", + " \"FaultValue\",\n", + " \"ProgMode\",\n", + " \"ProgValue\",\n", + " \"COSOnOffEn\",\n", + " \"COSOffOnEn\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 286,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 41,\n", + " \"structure_handle\": 29488\n", + " }\n", + " },\n", + " \"data_type_name\": \"AB:Embedded_DiscreteIO:C:0\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"_IO_EM_DO_03\": {\n", - " \"tag_name\": \"_IO_EM_DO_03\",\n", + " \"Local:1:I\": {\n", + " \"tag_name\": \"Local:1:I\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 4,\n", - " \"symbol_address\": 1047,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"_IO_EM_DO_04\": {\n", - " \"tag_name\": \"_IO_EM_DO_04\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 5,\n", - " \"symbol_address\": 1048,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63964664,\n", + " \"symbol_object_address\": 905580,\n", + " \"software_control\": 201392134,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 3295,\n", + " \"data_type\": {\n", + " \"name\": \"AB:Embedded_DiscreteIO:I:0\",\n", + " \"internal_tags\": {\n", + " \"Fault\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Data\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"Fault\",\n", + " \"Data\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 21,\n", + " \"structure_size\": 8,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 51616\n", + " }\n", + " },\n", + " \"data_type_name\": \"AB:Embedded_DiscreteIO:I:0\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"_IO_EM_DO_05\": {\n", - " \"tag_name\": \"_IO_EM_DO_05\",\n", + " \"Local:1:O\": {\n", + " \"tag_name\": \"Local:1:O\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 6,\n", - " \"symbol_address\": 1049,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63964576,\n", + " \"symbol_object_address\": 905620,\n", + " \"software_control\": 201392136,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 2118,\n", + " \"data_type\": {\n", + " \"name\": \"AB:Embedded_DiscreteIO:O:0\",\n", + " \"internal_tags\": {\n", + " \"Data\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"Data\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 4,\n", + " \"member_count\": 1,\n", + " \"structure_handle\": 50961\n", + " }\n", + " },\n", + " \"data_type_name\": \"AB:Embedded_DiscreteIO:O:0\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"_IO_EM_DO_06\": {\n", - " \"tag_name\": \"_IO_EM_DO_06\",\n", + " \"PowerFlex753_RunTime\": {\n", + " \"tag_name\": \"PowerFlex753_RunTime\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 7,\n", - " \"symbol_address\": 1050,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"_IO_EM_DI_00\": {\n", - " \"tag_name\": \"_IO_EM_DI_00\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 8,\n", - " \"symbol_address\": 1051,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 44352,\n", + " \"symbol_object_address\": 905700,\n", + " \"software_control\": 67174452,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 3688,\n", + " \"data_type\": {\n", + " \"name\": \"P_RunTime\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Starting\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Running\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_ClearStarts\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_ClearMaxHrs\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_ClearTotHrs\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"MCmd_ClearStarts\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"MCmd_ClearMaxHrs\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"MCmd_ClearTotHrs\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Val_Starts\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CurRunHrs\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MaxRunHrs\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_TotRunHrs\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"P_RunTime\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_CurHours\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_CurRunT\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_TotTenths\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Starts\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"COUNTER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"CU\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"CD\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OV\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"UN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"CU\",\n", + " \"CD\",\n", + " \"DN\",\n", + " \"OV\",\n", + " \"UN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 40,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 8,\n", + " \"structure_handle\": 3970\n", + " }\n", + " },\n", + " \"data_type_name\": \"COUNTER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_TotRunT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_MaxHours\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Label\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Desc\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 184,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_Starting\",\n", + " \"Inp_Running\",\n", + " \"Cfg_PCmdClear\",\n", + " \"PCmd_ClearStarts\",\n", + " \"PCmd_ClearMaxHrs\",\n", + " \"PCmd_ClearTotHrs\",\n", + " \"MCmd_ClearStarts\",\n", + " \"MCmd_ClearMaxHrs\",\n", + " \"MCmd_ClearTotHrs\",\n", + " \"Val_Starts\",\n", + " \"Val_CurRunHrs\",\n", + " \"Val_MaxRunHrs\",\n", + " \"Val_TotRunHrs\",\n", + " \"P_RunTime\",\n", + " \"Wrk_CurHours\",\n", + " \"Wrk_CurRunT\",\n", + " \"Wrk_TotTenths\",\n", + " \"Wrk_Starts\",\n", + " \"Wrk_TotRunT\",\n", + " \"Wrk_MaxHours\",\n", + " \"Inf_Tab\",\n", + " \"Inf_Type\",\n", + " \"Cfg_Label\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Desc\",\n", + " \"Inf_Lib\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 186,\n", + " \"structure_size\": 200,\n", + " \"member_count\": 29,\n", + " \"structure_handle\": 33151\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_RunTime\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"_IO_EM_DI_01\": {\n", - " \"tag_name\": \"_IO_EM_DI_01\",\n", + " \"Local:2:C\": {\n", + " \"tag_name\": \"Local:2:C\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 9,\n", - " \"symbol_address\": 1052,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"_IO_EM_DI_02\": {\n", - " \"tag_name\": \"_IO_EM_DI_02\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 10,\n", - " \"symbol_address\": 1053,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 91560,\n", + " \"symbol_object_address\": 905780,\n", + " \"software_control\": 201392132,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 3185,\n", + " \"data_type\": {\n", + " \"name\": \"AB:1734_IE4:C:0\",\n", + " \"internal_tags\": {\n", + " \"CfgSize\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"CfgIDNum\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0LowEngineering\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0HighEngineering\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0DigitalFilter\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0LAlarmLimit\": {\n", + " \"offset\": 18,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0HAlarmLimit\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0LLAlarmLimit\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0HHAlarmLimit\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0RangeType\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0LimitAlarmLatch\": {\n", + " \"offset\": 27,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0AlarmDisable\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pad0\": {\n", + " \"offset\": 29,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1LowEngineering\": {\n", + " \"offset\": 30,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1HighEngineering\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1DigitalFilter\": {\n", + " \"offset\": 34,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1LAlarmLimit\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1HAlarmLimit\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1LLAlarmLimit\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1HHAlarmLimit\": {\n", + " \"offset\": 42,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1RangeType\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1LimitAlarmLatch\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1AlarmDisable\": {\n", + " \"offset\": 46,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pad1\": {\n", + " \"offset\": 47,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2LowEngineering\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2HighEngineering\": {\n", + " \"offset\": 50,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2DigitalFilter\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2LAlarmLimit\": {\n", + " \"offset\": 54,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2HAlarmLimit\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2LLAlarmLimit\": {\n", + " \"offset\": 58,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2HHAlarmLimit\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2RangeType\": {\n", + " \"offset\": 62,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2LimitAlarmLatch\": {\n", + " \"offset\": 63,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2AlarmDisable\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Pad2\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3LowEngineering\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3HighEngineering\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3DigitalFilter\": {\n", + " \"offset\": 70,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3LAlarmLimit\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3HAlarmLimit\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3LLAlarmLimit\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3HHAlarmLimit\": {\n", + " \"offset\": 78,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3RangeType\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3LimitAlarmLatch\": {\n", + " \"offset\": 81,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3AlarmDisable\": {\n", + " \"offset\": 82,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"NotchFilter\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RealTimeSample\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"CfgSize\",\n", + " \"CfgIDNum\",\n", + " \"Reserved\",\n", + " \"Ch0LowEngineering\",\n", + " \"Ch0HighEngineering\",\n", + " \"Ch0DigitalFilter\",\n", + " \"Ch0LAlarmLimit\",\n", + " \"Ch0HAlarmLimit\",\n", + " \"Ch0LLAlarmLimit\",\n", + " \"Ch0HHAlarmLimit\",\n", + " \"Ch0RangeType\",\n", + " \"Ch0LimitAlarmLatch\",\n", + " \"Ch0AlarmDisable\",\n", + " \"Pad0\",\n", + " \"Ch1LowEngineering\",\n", + " \"Ch1HighEngineering\",\n", + " \"Ch1DigitalFilter\",\n", + " \"Ch1LAlarmLimit\",\n", + " \"Ch1HAlarmLimit\",\n", + " \"Ch1LLAlarmLimit\",\n", + " \"Ch1HHAlarmLimit\",\n", + " \"Ch1RangeType\",\n", + " \"Ch1LimitAlarmLatch\",\n", + " \"Ch1AlarmDisable\",\n", + " \"Pad1\",\n", + " \"Ch2LowEngineering\",\n", + " \"Ch2HighEngineering\",\n", + " \"Ch2DigitalFilter\",\n", + " \"Ch2LAlarmLimit\",\n", + " \"Ch2HAlarmLimit\",\n", + " \"Ch2LLAlarmLimit\",\n", + " \"Ch2HHAlarmLimit\",\n", + " \"Ch2RangeType\",\n", + " \"Ch2LimitAlarmLatch\",\n", + " \"Ch2AlarmDisable\",\n", + " \"Pad2\",\n", + " \"Ch3LowEngineering\",\n", + " \"Ch3HighEngineering\",\n", + " \"Ch3DigitalFilter\",\n", + " \"Ch3LAlarmLimit\",\n", + " \"Ch3HAlarmLimit\",\n", + " \"Ch3LLAlarmLimit\",\n", + " \"Ch3HHAlarmLimit\",\n", + " \"Ch3RangeType\",\n", + " \"Ch3LimitAlarmLatch\",\n", + " \"Ch3AlarmDisable\",\n", + " \"NotchFilter\",\n", + " \"RealTimeSample\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 335,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 48,\n", + " \"structure_handle\": 42968\n", + " }\n", + " },\n", + " \"data_type_name\": \"AB:1734_IE4:C:0\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"_IO_EM_DI_03\": {\n", - " \"tag_name\": \"_IO_EM_DI_03\",\n", + " \"Local:2:I\": {\n", + " \"tag_name\": \"Local:2:I\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 11,\n", - " \"symbol_address\": 1054,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"_IO_EM_DI_04\": {\n", - " \"tag_name\": \"_IO_EM_DI_04\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 12,\n", - " \"symbol_address\": 1055,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63963864,\n", + " \"symbol_object_address\": 905860,\n", + " \"software_control\": 201392193,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 2256,\n", + " \"data_type\": {\n", + " \"name\": \"AB:1734_IE4:I:0\",\n", + " \"internal_tags\": {\n", + " \"Fault\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0Data\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1Data\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2Data\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3Data\": {\n", + " \"offset\": 10,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0Status\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch0Fault\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ch0Calibration\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Ch0LAlarm\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Ch0HAlarm\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Ch0LLAlarm\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Ch0HHAlarm\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Ch0Underrange\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Ch0Overrange\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Ch1Status\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch1Fault\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ch1Calibration\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Ch1LAlarm\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Ch1HAlarm\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Ch1LLAlarm\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Ch1HHAlarm\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Ch1Underrange\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Ch1Overrange\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Ch2Status\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch2Fault\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ch2Calibration\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Ch2LAlarm\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Ch2HAlarm\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Ch2LLAlarm\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Ch2HHAlarm\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Ch2Underrange\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Ch2Overrange\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Ch3Status\": {\n", + " \"offset\": 15,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Ch3Fault\": {\n", + " \"offset\": 15,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ch3Calibration\": {\n", + " \"offset\": 15,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Ch3LAlarm\": {\n", + " \"offset\": 15,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Ch3HAlarm\": {\n", + " \"offset\": 15,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Ch3LLAlarm\": {\n", + " \"offset\": 15,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Ch3HHAlarm\": {\n", + " \"offset\": 15,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Ch3Underrange\": {\n", + " \"offset\": 15,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Ch3Overrange\": {\n", + " \"offset\": 15,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"Fault\",\n", + " \"Ch0Data\",\n", + " \"Ch1Data\",\n", + " \"Ch2Data\",\n", + " \"Ch3Data\",\n", + " \"Ch0Status\",\n", + " \"Ch0Fault\",\n", + " \"Ch0Calibration\",\n", + " \"Ch0LAlarm\",\n", + " \"Ch0HAlarm\",\n", + " \"Ch0LLAlarm\",\n", + " \"Ch0HHAlarm\",\n", + " \"Ch0Underrange\",\n", + " \"Ch0Overrange\",\n", + " \"Ch1Status\",\n", + " \"Ch1Fault\",\n", + " \"Ch1Calibration\",\n", + " \"Ch1LAlarm\",\n", + " \"Ch1HAlarm\",\n", + " \"Ch1LLAlarm\",\n", + " \"Ch1HHAlarm\",\n", + " \"Ch1Underrange\",\n", + " \"Ch1Overrange\",\n", + " \"Ch2Status\",\n", + " \"Ch2Fault\",\n", + " \"Ch2Calibration\",\n", + " \"Ch2LAlarm\",\n", + " \"Ch2HAlarm\",\n", + " \"Ch2LLAlarm\",\n", + " \"Ch2HHAlarm\",\n", + " \"Ch2Underrange\",\n", + " \"Ch2Overrange\",\n", + " \"Ch3Status\",\n", + " \"Ch3Fault\",\n", + " \"Ch3Calibration\",\n", + " \"Ch3LAlarm\",\n", + " \"Ch3HAlarm\",\n", + " \"Ch3LLAlarm\",\n", + " \"Ch3HHAlarm\",\n", + " \"Ch3Underrange\",\n", + " \"Ch3Overrange\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 245,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 41,\n", + " \"structure_handle\": 37890\n", + " }\n", + " },\n", + " \"data_type_name\": \"AB:1734_IE4:I:0\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"_IO_EM_DI_05\": {\n", - " \"tag_name\": \"_IO_EM_DI_05\",\n", + " \"VFD_755:I\": {\n", + " \"tag_name\": \"VFD_755:I\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 13,\n", - " \"symbol_address\": 1056,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"_IO_EM_DI_06\": {\n", - " \"tag_name\": \"_IO_EM_DI_06\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 14,\n", - " \"symbol_address\": 1057,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"_IO_EM_DI_07\": {\n", - " \"tag_name\": \"_IO_EM_DI_07\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 15,\n", - " \"symbol_address\": 1058,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63964432,\n", + " \"symbol_object_address\": 905980,\n", + " \"software_control\": 201392143,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 328,\n", + " \"data_type\": {\n", + " \"name\": \"AB:PowerFlex755_E_DD0FCA35:I:0\",\n", + " \"internal_tags\": {\n", + " \"pad\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus_Ready\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Active\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_CommandDir\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_ActualDir\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_Accelerating\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_Decelerating\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_Alarm\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Faulted\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus_AtSpeed\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Manual\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_SpdRefBit0\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_SpdRefBit1\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_SpdRefBit2\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_SpdRefBit3\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_SpdRefBit4\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Running\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Jogging\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_Stopping\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_DCBraking\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_DBActive\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_SpeedMode\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_PositionMode\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_TorqueMode\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus_AtZeroSpeed\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_AtHome\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_AtLimit\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_CurrLimit\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_BusFrqReg\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_EnableOn\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_MotorOL\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Regen\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Feedback\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"TorqueCurFdbk\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OutputCurrent\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OutputPower\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ElapsedMWH\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ElapsedRunTime\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SpeedUnits\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PredMaintSts\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PredMaintSts_HeatsinkFan\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PredMaintSts_InternalFan\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PredMaintSts_MtrBearing\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PredMaintSts_MtrLube\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PredMaintSts_MchBearing\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PredMaintSts_MchLube\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PredMaintSts_Reserved\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PredMaintSts_Reserved1\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PredMaintSts_Reserved2\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PredMaintSts_Reserved3\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PredMaintSts_Reserved4\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PredMaintSts_Reserved5\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PredMaintSts_Reserved6\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PredMaintSts_Reserved7\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PredMaintSts_Reserved8\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PredMaintSts_Master\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"StartInhibits\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"StartInhibits_Faulted\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits_Alarm\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"StartInhibits_Enable\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"StartInhibits_Precharge\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"StartInhibits_Stop\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"StartInhibits_Database\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"StartInhibits_Startup\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"StartInhibits_Safety\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"StartInhibits_Sleep\": {\n", + " \"offset\": 41,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits_Profiler\": {\n", + " \"offset\": 41,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"StartInhibits_CommutNotCfg\": {\n", + " \"offset\": 41,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus2_AutoRstrAct\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus2_AuRstrCntDwn\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus2_HSFanOn\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2_Reserved\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus2_FluxBraking\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus2_FdbkLossSwO\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus2_Reserved1\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus2_Reserved2\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus2_PrchrgClosed\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus2_Autotuning\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus2_PIDFBLoss\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2_AccelRate\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus2_DecelRate\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveOLCount\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveTempC\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"LastFaultCode\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusA\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusA_PowerLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusA_UnderVoltage\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusA_MotorOL\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusA_LoadLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusA_InPhaseLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusA_OutPhaseLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusA_DecelInhib\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusA_ShearPin1\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusA_ShearPin2\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusA_PriFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusA_AltFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusA_AuxFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusA_PosFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusA_ExtPrchrgErr\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusB_AuxInputFlt\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_OverVoltage\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_DriveOL\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_HeatsinkOT\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_TransistorOT\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_SinkUnderTmp\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_ExcessLoad\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusB_OverspdLmt\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusB_PrchrgOpen\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_SafetyBrdFlt\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_IRVoltsRange\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_FluxAmpsRang\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_IXOVoltRange\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_AuRstExhaust\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_SWOverCur\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusB_HWOverCur\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusB_TrqPrvSpdBnd\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_TPEnclsCfg\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_GroundFault\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_OWAlarmTO\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_OverTravel\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_TrvlLimCflct\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_EndLmtSw\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"ElapsedkWH\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"pad\",\n", + " \"DriveStatus\",\n", + " \"DriveStatus_Ready\",\n", + " \"DriveStatus_Active\",\n", + " \"DriveStatus_CommandDir\",\n", + " \"DriveStatus_ActualDir\",\n", + " \"DriveStatus_Accelerating\",\n", + " \"DriveStatus_Decelerating\",\n", + " \"DriveStatus_Alarm\",\n", + " \"DriveStatus_Faulted\",\n", + " \"DriveStatus_AtSpeed\",\n", + " \"DriveStatus_Manual\",\n", + " \"DriveStatus_SpdRefBit0\",\n", + " \"DriveStatus_SpdRefBit1\",\n", + " \"DriveStatus_SpdRefBit2\",\n", + " \"DriveStatus_SpdRefBit3\",\n", + " \"DriveStatus_SpdRefBit4\",\n", + " \"DriveStatus_Running\",\n", + " \"DriveStatus_Jogging\",\n", + " \"DriveStatus_Stopping\",\n", + " \"DriveStatus_DCBraking\",\n", + " \"DriveStatus_DBActive\",\n", + " \"DriveStatus_SpeedMode\",\n", + " \"DriveStatus_PositionMode\",\n", + " \"DriveStatus_TorqueMode\",\n", + " \"DriveStatus_AtZeroSpeed\",\n", + " \"DriveStatus_AtHome\",\n", + " \"DriveStatus_AtLimit\",\n", + " \"DriveStatus_CurrLimit\",\n", + " \"DriveStatus_BusFrqReg\",\n", + " \"DriveStatus_EnableOn\",\n", + " \"DriveStatus_MotorOL\",\n", + " \"DriveStatus_Regen\",\n", + " \"Feedback\",\n", + " \"TorqueCurFdbk\",\n", + " \"OutputCurrent\",\n", + " \"OutputPower\",\n", + " \"ElapsedMWH\",\n", + " \"ElapsedRunTime\",\n", + " \"SpeedUnits\",\n", + " \"PredMaintSts\",\n", + " \"PredMaintSts_HeatsinkFan\",\n", + " \"PredMaintSts_InternalFan\",\n", + " \"PredMaintSts_MtrBearing\",\n", + " \"PredMaintSts_MtrLube\",\n", + " \"PredMaintSts_MchBearing\",\n", + " \"PredMaintSts_MchLube\",\n", + " \"PredMaintSts_Reserved\",\n", + " \"PredMaintSts_Reserved1\",\n", + " \"PredMaintSts_Reserved2\",\n", + " \"PredMaintSts_Reserved3\",\n", + " \"PredMaintSts_Reserved4\",\n", + " \"PredMaintSts_Reserved5\",\n", + " \"PredMaintSts_Reserved6\",\n", + " \"PredMaintSts_Reserved7\",\n", + " \"PredMaintSts_Reserved8\",\n", + " \"PredMaintSts_Master\",\n", + " \"StartInhibits\",\n", + " \"StartInhibits_Faulted\",\n", + " \"StartInhibits_Alarm\",\n", + " \"StartInhibits_Enable\",\n", + " \"StartInhibits_Precharge\",\n", + " \"StartInhibits_Stop\",\n", + " \"StartInhibits_Database\",\n", + " \"StartInhibits_Startup\",\n", + " \"StartInhibits_Safety\",\n", + " \"StartInhibits_Sleep\",\n", + " \"StartInhibits_Profiler\",\n", + " \"StartInhibits_CommutNotCfg\",\n", + " \"DriveStatus2\",\n", + " \"DriveStatus2_AutoRstrAct\",\n", + " \"DriveStatus2_AuRstrCntDwn\",\n", + " \"DriveStatus2_HSFanOn\",\n", + " \"DriveStatus2_Reserved\",\n", + " \"DriveStatus2_FluxBraking\",\n", + " \"DriveStatus2_FdbkLossSwO\",\n", + " \"DriveStatus2_Reserved1\",\n", + " \"DriveStatus2_Reserved2\",\n", + " \"DriveStatus2_PrchrgClosed\",\n", + " \"DriveStatus2_Autotuning\",\n", + " \"DriveStatus2_PIDFBLoss\",\n", + " \"DriveStatus2_AccelRate\",\n", + " \"DriveStatus2_DecelRate\",\n", + " \"DriveOLCount\",\n", + " \"DriveTempC\",\n", + " \"LastFaultCode\",\n", + " \"FaultStatusA\",\n", + " \"FaultStatusA_PowerLoss\",\n", + " \"FaultStatusA_UnderVoltage\",\n", + " \"FaultStatusA_MotorOL\",\n", + " \"FaultStatusA_LoadLoss\",\n", + " \"FaultStatusA_InPhaseLoss\",\n", + " \"FaultStatusA_OutPhaseLoss\",\n", + " \"FaultStatusA_DecelInhib\",\n", + " \"FaultStatusA_ShearPin1\",\n", + " \"FaultStatusA_ShearPin2\",\n", + " \"FaultStatusA_PriFdbkLoss\",\n", + " \"FaultStatusA_AltFdbkLoss\",\n", + " \"FaultStatusA_AuxFdbkLoss\",\n", + " \"FaultStatusA_PosFdbkLoss\",\n", + " \"FaultStatusA_ExtPrchrgErr\",\n", + " \"FaultStatusB\",\n", + " \"FaultStatusB_AuxInputFlt\",\n", + " \"FaultStatusB_OverVoltage\",\n", + " \"FaultStatusB_DriveOL\",\n", + " \"FaultStatusB_HeatsinkOT\",\n", + " \"FaultStatusB_TransistorOT\",\n", + " \"FaultStatusB_SinkUnderTmp\",\n", + " \"FaultStatusB_ExcessLoad\",\n", + " \"FaultStatusB_OverspdLmt\",\n", + " \"FaultStatusB_PrchrgOpen\",\n", + " \"FaultStatusB_SafetyBrdFlt\",\n", + " \"FaultStatusB_IRVoltsRange\",\n", + " \"FaultStatusB_FluxAmpsRang\",\n", + " \"FaultStatusB_IXOVoltRange\",\n", + " \"FaultStatusB_AuRstExhaust\",\n", + " \"FaultStatusB_SWOverCur\",\n", + " \"FaultStatusB_HWOverCur\",\n", + " \"FaultStatusB_TrqPrvSpdBnd\",\n", + " \"FaultStatusB_TPEnclsCfg\",\n", + " \"FaultStatusB_GroundFault\",\n", + " \"FaultStatusB_OWAlarmTO\",\n", + " \"FaultStatusB_OverTravel\",\n", + " \"FaultStatusB_TrvlLimCflct\",\n", + " \"FaultStatusB_EndLmtSw\",\n", + " \"ElapsedkWH\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1067,\n", + " \"structure_size\": 72,\n", + " \"member_count\": 126,\n", + " \"structure_handle\": 47828\n", + " }\n", + " },\n", + " \"data_type_name\": \"AB:PowerFlex755_E_DD0FCA35:I:0\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"_IO_EM_DI_08\": {\n", - " \"tag_name\": \"_IO_EM_DI_08\",\n", + " \"VFD_755:O\": {\n", + " \"tag_name\": \"VFD_755:O\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 16,\n", - " \"symbol_address\": 1059,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63964104,\n", + " \"symbol_object_address\": 906020,\n", + " \"software_control\": 201392145,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 1978,\n", + " \"data_type\": {\n", + " \"name\": \"AB:PowerFlex755_E_54376CB2:O:0\",\n", + " \"internal_tags\": {\n", + " \"LogicCommand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"LogicCommand_Stop\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_Start\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_Jog1\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_ClearFaults\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LogicCommand_Forward\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"LogicCommand_Reverse\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"LogicCommand_Manual\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"LogicCommand_AccelTime1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_AccelTime2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_DecelTime1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_DecelTime2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LogicCommand_SpdRefSel0\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"LogicCommand_SpdRefSel1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"LogicCommand_SpdRefSel2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"LogicCommand_CoastStop\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_CLimitStop\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_Run\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_Jog2\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Reference\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPVolts\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPAmps\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPHertz\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPRPM\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPPower\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MtrOLFactor\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorPoles\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"MinFwdSpeed\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MaxFwdSpeed\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PWMFrequency\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ResetMeters\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"CurrentLimit1\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LogicCommand\",\n", + " \"LogicCommand_Stop\",\n", + " \"LogicCommand_Start\",\n", + " \"LogicCommand_Jog1\",\n", + " \"LogicCommand_ClearFaults\",\n", + " \"LogicCommand_Forward\",\n", + " \"LogicCommand_Reverse\",\n", + " \"LogicCommand_Manual\",\n", + " \"LogicCommand_AccelTime1\",\n", + " \"LogicCommand_AccelTime2\",\n", + " \"LogicCommand_DecelTime1\",\n", + " \"LogicCommand_DecelTime2\",\n", + " \"LogicCommand_SpdRefSel0\",\n", + " \"LogicCommand_SpdRefSel1\",\n", + " \"LogicCommand_SpdRefSel2\",\n", + " \"LogicCommand_CoastStop\",\n", + " \"LogicCommand_CLimitStop\",\n", + " \"LogicCommand_Run\",\n", + " \"LogicCommand_Jog2\",\n", + " \"Reference\",\n", + " \"MotorNPVolts\",\n", + " \"MotorNPAmps\",\n", + " \"MotorNPHertz\",\n", + " \"MotorNPRPM\",\n", + " \"MotorNPPower\",\n", + " \"MtrOLFactor\",\n", + " \"MotorPoles\",\n", + " \"MinFwdSpeed\",\n", + " \"MaxFwdSpeed\",\n", + " \"PWMFrequency\",\n", + " \"ResetMeters\",\n", + " \"CurrentLimit1\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 250,\n", + " \"structure_size\": 56,\n", + " \"member_count\": 32,\n", + " \"structure_handle\": 6549\n", + " }\n", + " },\n", + " \"data_type_name\": \"AB:PowerFlex755_E_54376CB2:O:0\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"_IO_EM_DI_09\": {\n", - " \"tag_name\": \"_IO_EM_DI_09\",\n", + " \"in_Analog_Flowmeter\": {\n", + " \"tag_name\": \"in_Analog_Flowmeter\",\n", " \"dim\": 0,\n", " \"alias\": true,\n", " \"instance_id\": 17,\n", - " \"symbol_address\": 1060,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63963870,\n", + " \"symbol_object_address\": 906060,\n", + " \"software_control\": 1073807372,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"_IO_EM_DI_10\": {\n", - " \"tag_name\": \"_IO_EM_DI_10\",\n", + " \"rp_ALL\": {\n", + " \"tag_name\": \"rp_ALL\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 18,\n", - " \"symbol_address\": 1061,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 64800,\n", + " \"symbol_object_address\": 906100,\n", + " \"software_control\": 1140916250,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -362,15 +3202,15 @@ " \"bit_position\": 0,\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"_IO_EM_DI_11\": {\n", - " \"tag_name\": \"_IO_EM_DI_11\",\n", + " \"sp_ALL\": {\n", + " \"tag_name\": \"sp_ALL\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 19,\n", - " \"symbol_address\": 1062,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 64704,\n", + " \"symbol_object_address\": 906140,\n", + " \"software_control\": 1140916253,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -381,105 +3221,89 @@ " \"bit_position\": 0,\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"_IO_EM_AI_00\": {\n", - " \"tag_name\": \"_IO_EM_AI_00\",\n", + " \"VFD_Starts\": {\n", + " \"tag_name\": \"VFD_Starts\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 20,\n", - " \"symbol_address\": 1064,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 44320,\n", + " \"symbol_object_address\": 906180,\n", + " \"software_control\": 1140916277,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"UINT\",\n", - " \"data_type_name\": \"UINT\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"_IO_EM_AI_01\": {\n", - " \"tag_name\": \"_IO_EM_AI_01\",\n", + " \"in_Analog_DischargePressure\": {\n", + " \"tag_name\": \"in_Analog_DischargePressure\",\n", " \"dim\": 0,\n", " \"alias\": true,\n", " \"instance_id\": 21,\n", - " \"symbol_address\": 1066,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63963868,\n", + " \"symbol_object_address\": 906220,\n", + " \"software_control\": 1073807372,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"UINT\",\n", - " \"data_type_name\": \"UINT\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"_IO_EM_AI_02\": {\n", - " \"tag_name\": \"_IO_EM_AI_02\",\n", + " \"rp_DischargePressure\": {\n", + " \"tag_name\": \"rp_DischargePressure\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 22,\n", - " \"symbol_address\": 1068,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"UINT\",\n", - " \"data_type_name\": \"UINT\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"_IO_EM_AI_03\": {\n", - " \"tag_name\": \"_IO_EM_AI_03\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 23,\n", - " \"symbol_address\": 1070,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 64144,\n", + " \"symbol_object_address\": 906300,\n", + " \"software_control\": 1140916255,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"UINT\",\n", - " \"data_type_name\": \"UINT\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"_IO_EM_AO_00\": {\n", - " \"tag_name\": \"_IO_EM_AO_00\",\n", + " \"mode_Auto\": {\n", + " \"tag_name\": \"mode_Auto\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 24,\n", - " \"symbol_address\": 1072,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 91672,\n", + " \"symbol_object_address\": 906340,\n", + " \"software_control\": 1140916227,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"UINT\",\n", - " \"data_type_name\": \"UINT\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Pump_Run\": {\n", - " \"tag_name\": \"Pump_Run\",\n", + " \"rp_Flowmeter\": {\n", + " \"tag_name\": \"rp_Flowmeter\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 25,\n", - " \"symbol_address\": 1108,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 64080,\n", + " \"symbol_object_address\": 906380,\n", + " \"software_control\": 1140916257,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -490,72 +3314,12186 @@ " \"bit_position\": 0,\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Raw_Hand_Input\": {\n", - " \"tag_name\": \"Raw_Hand_Input\",\n", + " \"FIC01_FlowRate\": {\n", + " \"tag_name\": \"FIC01_FlowRate\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 26,\n", - " \"symbol_address\": 1109,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 64832,\n", + " \"symbol_object_address\": 906420,\n", + " \"software_control\": 67174425,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 2310,\n", + " \"data_type\": {\n", + " \"name\": \"P_PIDE\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_PV\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_CascSP\": {\n", + " \"offset\": 196,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_FF\": {\n", + " \"offset\": 264,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_FFPrev\": {\n", + " \"offset\": 268,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_CVInitVal\": {\n", + " \"offset\": 224,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_CVPrev\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_PVSrcQ\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdCmd\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdRatio\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdSP\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdCV\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_HandFdbk\": {\n", + " \"offset\": 272,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_PVBad\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_PVUncertain\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_CVIOFault\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_UseFFPrev\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Inp_UseCVInitVal\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_UseCVPrev\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Inp_WindupHi\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Inp_WindupLo\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_HandFdbkBad\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Inp_IntlkOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Inp_NBIntlkOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Inp_HiHiDevGate\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_HiDevGate\": {\n", + " \"offset\": 1596,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_LoDevGate\": {\n", + " \"offset\": 980,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_LoLoDevGate\": {\n", + " \"offset\": 684,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HasRatio\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_HasCasc\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_PVTrack\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_CtrlAction\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_Depend\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_DerivSmooth\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_ZCOff\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_LimitManCV\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_InitToMan\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_PropSPAct\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_DerivSPAct\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_PwrupLM\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SetTrack\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_SetTrackOvrdHand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_HasIntlkObj\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_HasCascSPNav\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_HasPVNav\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_HasCVNav\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_OvrdIntlk\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HasHiHiDevAlm\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasHiDevAlm\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasLoDevAlm\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasLoLoDevAlm\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasIntlkTripAlm\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasFailAlm\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HiHiDevResetReqd\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_HiDevResetReqd\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_LoDevResetReqd\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_LoLoDevResetReqd\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_IntlkTripResetReqd\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_FailResetReqd\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_HiHiDevAckReqd\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HiDevAckReqd\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_LoDevAckReqd\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_LoLoDevAckReqd\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_IntlkTripAckReqd\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_FailAckReqd\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HiHiDevSeverity\": {\n", + " \"offset\": 1444,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDevSeverity\": {\n", + " \"offset\": 1740,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDevSeverity\": {\n", + " \"offset\": 1124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDevSeverity\": {\n", + " \"offset\": 828,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IntlkTripSeverity\": {\n", + " \"offset\": 1948,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailSeverity\": {\n", + " \"offset\": 2104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MinRatio\": {\n", + " \"offset\": 220,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxRatio\": {\n", + " \"offset\": 216,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MinSP\": {\n", + " \"offset\": 204,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxSP\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEUMin\": {\n", + " \"offset\": 184,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEUMax\": {\n", + " \"offset\": 180,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVEUMin\": {\n", + " \"offset\": 248,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVEUMax\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVRoCLim\": {\n", + " \"offset\": 260,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PGain\": {\n", + " \"offset\": 276,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IGain\": {\n", + " \"offset\": 280,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_DGain\": {\n", + " \"offset\": 284,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_ZCDB\": {\n", + " \"offset\": 288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MinCV\": {\n", + " \"offset\": 256,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxCV\": {\n", + " \"offset\": 252,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxInactiveCV\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IntlkCV\": {\n", + " \"offset\": 236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_DevDB\": {\n", + " \"offset\": 340,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PwrupSP\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PwrupCV\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiDevOnDly\": {\n", + " \"offset\": 1308,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiDevOffDly\": {\n", + " \"offset\": 1312,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiDevGateDly\": {\n", + " \"offset\": 1304,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDevOnDly\": {\n", + " \"offset\": 1604,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDevOffDly\": {\n", + " \"offset\": 1608,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDevGateDly\": {\n", + " \"offset\": 1600,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDevOnDly\": {\n", + " \"offset\": 988,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDevOffDly\": {\n", + " \"offset\": 992,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDevGateDly\": {\n", + " \"offset\": 984,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDevOnDly\": {\n", + " \"offset\": 692,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDevOffDly\": {\n", + " \"offset\": 696,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDevGateDly\": {\n", + " \"offset\": 688,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_Ratio\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_SP\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_CV\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_HiHiDevLim\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_HiDevLim\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_LoDevLim\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_LoLoDevLim\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_Owner\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_Ratio\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_SP\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_CV\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_HiHiDevLim\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_HiDevLim\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_LoDevLim\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_LoLoDevLim\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PCmd_Casc\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Auto\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Man\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_HiHiDevAck\": {\n", + " \"offset\": 1441,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_HiHiDevSuppress\": {\n", + " \"offset\": 1441,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_HiHiDevUnsuppress\": {\n", + " \"offset\": 1441,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_HiHiDevUnshelve\": {\n", + " \"offset\": 1441,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_HiDevAck\": {\n", + " \"offset\": 1737,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_HiDevSuppress\": {\n", + " \"offset\": 1737,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_HiDevUnsuppress\": {\n", + " \"offset\": 1737,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_HiDevUnshelve\": {\n", + " \"offset\": 1737,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_LoDevAck\": {\n", + " \"offset\": 1121,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_LoDevSuppress\": {\n", + " \"offset\": 1121,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_LoDevUnsuppress\": {\n", + " \"offset\": 1121,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_LoDevUnshelve\": {\n", + " \"offset\": 1121,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_LoLoDevAck\": {\n", + " \"offset\": 825,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_LoLoDevSuppress\": {\n", + " \"offset\": 825,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_LoLoDevUnsuppress\": {\n", + " \"offset\": 825,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_LoLoDevUnshelve\": {\n", + " \"offset\": 825,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_IntlkTripAck\": {\n", + " \"offset\": 1945,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_IntlkTripSuppress\": {\n", + " \"offset\": 1945,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_IntlkTripUnsuppress\": {\n", + " \"offset\": 1945,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_IntlkTripUnshelve\": {\n", + " \"offset\": 1945,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_FailAck\": {\n", + " \"offset\": 2101,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_FailSuppress\": {\n", + " \"offset\": 2101,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_FailUnsuppress\": {\n", + " \"offset\": 2101,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_FailUnshelve\": {\n", + " \"offset\": 2101,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Casc\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Auto\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"OCmd_Man\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_Bypass\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Check\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Unlock\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_ResetAckAll\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Out_CV\": {\n", + " \"offset\": 372,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PV\": {\n", + " \"offset\": 96,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Ratio\": {\n", + " \"offset\": 400,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SPSet\": {\n", + " \"offset\": 100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SP\": {\n", + " \"offset\": 380,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_E\": {\n", + " \"offset\": 392,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CVSet\": {\n", + " \"offset\": 104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CVOut\": {\n", + " \"offset\": 376,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVPercent\": {\n", + " \"offset\": 388,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SPPercent\": {\n", + " \"offset\": 384,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_EPercent\": {\n", + " \"offset\": 396,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_ActExecT\": {\n", + " \"offset\": 404,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Init\": {\n", + " \"offset\": 108,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVEUMin\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVEUMax\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CVEUMin\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CVEUMax\": {\n", + " \"offset\": 124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ_IO\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ\": {\n", + " \"offset\": 129,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Sts\": {\n", + " \"offset\": 130,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Fault\": {\n", + " \"offset\": 131,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_State\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Mode\": {\n", + " \"offset\": 1896,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Owner\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_HiHiDevLim\": {\n", + " \"offset\": 324,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_HiDevLim\": {\n", + " \"offset\": 328,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LoDevLim\": {\n", + " \"offset\": 144,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LoLoDevLim\": {\n", + " \"offset\": 148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_InstrFaults1\": {\n", + " \"offset\": 152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_InstrFaults2\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Casc\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_Auto\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Man\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Initializing\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_InitReq\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_WindupHi\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_WindupLo\": {\n", + " \"offset\": 369,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_ZCDBOn\": {\n", + " \"offset\": 369,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_RatioClamped\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_SPBad\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_SPClamped\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_PVBad\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_PVUncertain\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_FFBad\": {\n", + " \"offset\": 414,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FFPrevBad\": {\n", + " \"offset\": 414,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_CVBad\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_CVPrevBad\": {\n", + " \"offset\": 413,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_CVInitValBad\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HandFdbkBad\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_IntlkCV\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_CVClamped\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_CVRamping\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_Active\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Available\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Bypass\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_BypActive\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Disabled\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_NotRdy\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Nrdy_Disabled\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Nrdy_CfgErr\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Nrdy_Intlk\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Nrdy_Init\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Nrdy_IOFault\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Nrdy_NoMode\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_MaintByp\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Err_RatioLim\": {\n", + " \"offset\": 413,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Err_SPLim\": {\n", + " \"offset\": 413,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_PVEU\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Err_CVLim\": {\n", + " \"offset\": 414,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_CVEU\": {\n", + " \"offset\": 414,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Err_DB\": {\n", + " \"offset\": 415,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Alarm\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_HiHiDevCmp\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_HiHiDevGate\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_HiHiDev\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_HiHiDev\": {\n", + " \"offset\": 1506,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_HiHiDev\": {\n", + " \"offset\": 1506,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiHiDevDisabled\": {\n", + " \"offset\": 1507,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiHiDevShelved\": {\n", + " \"offset\": 1506,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_HiHiDevSuppressed\": {\n", + " \"offset\": 1506,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_HiDevCmp\": {\n", + " \"offset\": 1596,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_HiDevGate\": {\n", + " \"offset\": 1596,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_HiDev\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_HiDev\": {\n", + " \"offset\": 1802,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_HiDev\": {\n", + " \"offset\": 1802,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiDevDisabled\": {\n", + " \"offset\": 1803,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiDevShelved\": {\n", + " \"offset\": 1802,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_HiDevSuppressed\": {\n", + " \"offset\": 1802,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_LoDevCmp\": {\n", + " \"offset\": 980,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_LoDevGate\": {\n", + " \"offset\": 980,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_LoDev\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_LoDev\": {\n", + " \"offset\": 1186,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_LoDev\": {\n", + " \"offset\": 1186,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoDevDisabled\": {\n", + " \"offset\": 1187,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoDevShelved\": {\n", + " \"offset\": 1186,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_LoDevSuppressed\": {\n", + " \"offset\": 1186,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_LoLoDevCmp\": {\n", + " \"offset\": 684,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_LoLoDevGate\": {\n", + " \"offset\": 684,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_LoLoDev\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_LoLoDev\": {\n", + " \"offset\": 890,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_LoLoDev\": {\n", + " \"offset\": 890,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoLoDevDisabled\": {\n", + " \"offset\": 891,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoLoDevShelved\": {\n", + " \"offset\": 890,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_LoLoDevSuppressed\": {\n", + " \"offset\": 890,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_IntlkTrip\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_IntlkTrip\": {\n", + " \"offset\": 2010,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_IntlkTrip\": {\n", + " \"offset\": 2010,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IntlkTripDisabled\": {\n", + " \"offset\": 2011,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IntlkTripShelved\": {\n", + " \"offset\": 2010,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_IntlkTripSuppressed\": {\n", + " \"offset\": 2010,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_Fail\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_Fail\": {\n", + " \"offset\": 2166,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_Fail\": {\n", + " \"offset\": 2166,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailDisabled\": {\n", + " \"offset\": 2167,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailShelved\": {\n", + " \"offset\": 2166,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FailSuppressed\": {\n", + " \"offset\": 2166,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Casc\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Auto\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Man\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_Bypass\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Check\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_ResetAckAll\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Ratio\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_SP\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost02\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_CV\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_OSet\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_PIDE\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_PIDE\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"PID_ENHANCED\",\n", + " \"internal_tags\": {\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ulBoolInput1\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PV\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVFault\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVEUMax\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVEUMin\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPProg\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPOper\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPCascade\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPHLimit\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPLLimit\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"UseRatio\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"RatioProg\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RatioOper\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RatioHLimit\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RatioLLimit\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVFault\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"CVInitReq\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"CVInitValue\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVProg\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVOper\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVOverride\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVPrevious\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVSetPrevious\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"CVManLimiting\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"CVEUMax\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVEUMin\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVHLimit\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVLLimit\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVROCLimit\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"FF\": {\n", + " \"offset\": 96,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"FFPrevious\": {\n", + " \"offset\": 100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"FFSetPrevious\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"HandFB\": {\n", + " \"offset\": 104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"HandFBFault\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"WindupHIn\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"WindupLIn\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ControlAction\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DependIndepend\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PGain\": {\n", + " \"offset\": 108,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"IGain\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DGain\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVEProportional\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PVEDerivative\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DSmoothing\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PVTracking\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"ZCDeadband\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ZCOff\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVHHLimit\": {\n", + " \"offset\": 124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVHLimit\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVLLimit\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVLLLimit\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVDeadband\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVROCPosLimit\": {\n", + " \"offset\": 144,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVROCNegLimit\": {\n", + " \"offset\": 148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVROCPeriod\": {\n", + " \"offset\": 152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevHHLimit\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevHLimit\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevLLimit\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevLLLimit\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevDeadband\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"AllowCasRat\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ManualAfterInit\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"ProgProgReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"ProgOperReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"ProgCasRatReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"ProgAutoReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"ProgManualReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"ProgOverrideReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ProgHandReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OperProgReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OperOperReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"OperCasRatReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OperAutoReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OperManualReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"ProgValueReset\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TimingMode\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"OversampleDT\": {\n", + " \"offset\": 180,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RTSTime\": {\n", + " \"offset\": 184,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RTSTimeStamp\": {\n", + " \"offset\": 188,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ulBoolInput2\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"AtuneAcquire\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"AtuneStart\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"AtuneUseGains\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"AtuneAbort\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"AtuneUnacquire\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 196,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ulBoolOutput1\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"CVEU\": {\n", + " \"offset\": 204,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CV\": {\n", + " \"offset\": 208,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVInitializing\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"CVHAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"CVLAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"CVROCAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"SP\": {\n", + " \"offset\": 212,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPPercent\": {\n", + " \"offset\": 216,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPHAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"SPLAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PVPercent\": {\n", + " \"offset\": 220,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"E\": {\n", + " \"offset\": 224,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"EPercent\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"InitPrimary\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"WindupHOut\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"WindupLOut\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ratio\": {\n", + " \"offset\": 232,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RatioHAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"RatioLAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"ZCDeadbandOn\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PVHHAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PVHAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PVLAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PVLLAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PVROCPosAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVROCNegAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DevHHAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DevHAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DevLAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DevLLAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"ProgOper\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"CasRat\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Auto\": {\n", + " \"offset\": 203,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Manual\": {\n", + " \"offset\": 203,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Override\": {\n", + " \"offset\": 203,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Hand\": {\n", + " \"offset\": 203,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DeltaT\": {\n", + " \"offset\": 236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ulBoolOutput2\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"AtuneReady\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"AtuneOn\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"AtuneDone\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"AtuneAborted\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"AtuneBusy\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Status1\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Status2\": {\n", + " \"offset\": 248,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"InstructFault\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVFaulted\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"CVFaulted\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"HandFBFaulted\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PVSpanInv\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"SPProgInv\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"SPOperInv\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"SPCascadeInv\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"SPLimitsInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"RatioProgInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"RatioOperInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"RatioLimitsInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"CVProgInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"CVOperInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"CVOverrideInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"CVPreviousInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"CVEUSpanInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"CVLimitsInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"CVROCLimitInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FFInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FFPreviousInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"HandFBInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PGainInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"IGainInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DGainInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ZCDeadbandInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PVDeadbandInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PVROCLimitsInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DevHLLimitsInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DevDeadbandInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"AtuneDataInv\": {\n", + " \"offset\": 248,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"TimingModeInv\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"RTSMissed\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"RTSTimeInv\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"RTSTimeStampInv\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DeltaTInv\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PIDE_HiddenFloat1\": {\n", + " \"offset\": 252,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat2\": {\n", + " \"offset\": 256,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat3\": {\n", + " \"offset\": 260,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat4\": {\n", + " \"offset\": 264,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat5\": {\n", + " \"offset\": 268,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat6\": {\n", + " \"offset\": 272,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat7\": {\n", + " \"offset\": 276,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat8\": {\n", + " \"offset\": 280,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat9\": {\n", + " \"offset\": 284,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat10\": {\n", + " \"offset\": 288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat11\": {\n", + " \"offset\": 292,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat12\": {\n", + " \"offset\": 296,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat13\": {\n", + " \"offset\": 300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat14\": {\n", + " \"offset\": 304,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat15\": {\n", + " \"offset\": 308,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat16\": {\n", + " \"offset\": 312,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat17\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat18\": {\n", + " \"offset\": 320,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat19\": {\n", + " \"offset\": 324,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat20\": {\n", + " \"offset\": 328,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat21\": {\n", + " \"offset\": 332,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat22\": {\n", + " \"offset\": 336,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat23\": {\n", + " \"offset\": 340,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat24\": {\n", + " \"offset\": 344,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat25\": {\n", + " \"offset\": 348,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat26\": {\n", + " \"offset\": 352,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat27\": {\n", + " \"offset\": 356,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat28\": {\n", + " \"offset\": 360,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat29\": {\n", + " \"offset\": 364,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat30\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat31\": {\n", + " \"offset\": 372,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat32\": {\n", + " \"offset\": 376,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat33\": {\n", + " \"offset\": 380,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat34\": {\n", + " \"offset\": 384,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat35\": {\n", + " \"offset\": 388,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat36\": {\n", + " \"offset\": 392,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat37\": {\n", + " \"offset\": 396,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"ulBoolInput1\",\n", + " \"PV\",\n", + " \"PVFault\",\n", + " \"PVEUMax\",\n", + " \"PVEUMin\",\n", + " \"SPProg\",\n", + " \"SPOper\",\n", + " \"SPCascade\",\n", + " \"SPHLimit\",\n", + " \"SPLLimit\",\n", + " \"UseRatio\",\n", + " \"RatioProg\",\n", + " \"RatioOper\",\n", + " \"RatioHLimit\",\n", + " \"RatioLLimit\",\n", + " \"CVFault\",\n", + " \"CVInitReq\",\n", + " \"CVInitValue\",\n", + " \"CVProg\",\n", + " \"CVOper\",\n", + " \"CVOverride\",\n", + " \"CVPrevious\",\n", + " \"CVSetPrevious\",\n", + " \"CVManLimiting\",\n", + " \"CVEUMax\",\n", + " \"CVEUMin\",\n", + " \"CVHLimit\",\n", + " \"CVLLimit\",\n", + " \"CVROCLimit\",\n", + " \"FF\",\n", + " \"FFPrevious\",\n", + " \"FFSetPrevious\",\n", + " \"HandFB\",\n", + " \"HandFBFault\",\n", + " \"WindupHIn\",\n", + " \"WindupLIn\",\n", + " \"ControlAction\",\n", + " \"DependIndepend\",\n", + " \"PGain\",\n", + " \"IGain\",\n", + " \"DGain\",\n", + " \"PVEProportional\",\n", + " \"PVEDerivative\",\n", + " \"DSmoothing\",\n", + " \"PVTracking\",\n", + " \"ZCDeadband\",\n", + " \"ZCOff\",\n", + " \"PVHHLimit\",\n", + " \"PVHLimit\",\n", + " \"PVLLimit\",\n", + " \"PVLLLimit\",\n", + " \"PVDeadband\",\n", + " \"PVROCPosLimit\",\n", + " \"PVROCNegLimit\",\n", + " \"PVROCPeriod\",\n", + " \"DevHHLimit\",\n", + " \"DevHLimit\",\n", + " \"DevLLimit\",\n", + " \"DevLLLimit\",\n", + " \"DevDeadband\",\n", + " \"AllowCasRat\",\n", + " \"ManualAfterInit\",\n", + " \"ProgProgReq\",\n", + " \"ProgOperReq\",\n", + " \"ProgCasRatReq\",\n", + " \"ProgAutoReq\",\n", + " \"ProgManualReq\",\n", + " \"ProgOverrideReq\",\n", + " \"ProgHandReq\",\n", + " \"OperProgReq\",\n", + " \"OperOperReq\",\n", + " \"OperCasRatReq\",\n", + " \"OperAutoReq\",\n", + " \"OperManualReq\",\n", + " \"ProgValueReset\",\n", + " \"TimingMode\",\n", + " \"OversampleDT\",\n", + " \"RTSTime\",\n", + " \"RTSTimeStamp\",\n", + " \"ulBoolInput2\",\n", + " \"AtuneAcquire\",\n", + " \"AtuneStart\",\n", + " \"AtuneUseGains\",\n", + " \"AtuneAbort\",\n", + " \"AtuneUnacquire\",\n", + " \"EnableOut\",\n", + " \"ulBoolOutput1\",\n", + " \"CVEU\",\n", + " \"CV\",\n", + " \"CVInitializing\",\n", + " \"CVHAlarm\",\n", + " \"CVLAlarm\",\n", + " \"CVROCAlarm\",\n", + " \"SP\",\n", + " \"SPPercent\",\n", + " \"SPHAlarm\",\n", + " \"SPLAlarm\",\n", + " \"PVPercent\",\n", + " \"E\",\n", + " \"EPercent\",\n", + " \"InitPrimary\",\n", + " \"WindupHOut\",\n", + " \"WindupLOut\",\n", + " \"Ratio\",\n", + " \"RatioHAlarm\",\n", + " \"RatioLAlarm\",\n", + " \"ZCDeadbandOn\",\n", + " \"PVHHAlarm\",\n", + " \"PVHAlarm\",\n", + " \"PVLAlarm\",\n", + " \"PVLLAlarm\",\n", + " \"PVROCPosAlarm\",\n", + " \"PVROCNegAlarm\",\n", + " \"DevHHAlarm\",\n", + " \"DevHAlarm\",\n", + " \"DevLAlarm\",\n", + " \"DevLLAlarm\",\n", + " \"ProgOper\",\n", + " \"CasRat\",\n", + " \"Auto\",\n", + " \"Manual\",\n", + " \"Override\",\n", + " \"Hand\",\n", + " \"DeltaT\",\n", + " \"ulBoolOutput2\",\n", + " \"AtuneReady\",\n", + " \"AtuneOn\",\n", + " \"AtuneDone\",\n", + " \"AtuneAborted\",\n", + " \"AtuneBusy\",\n", + " \"Status1\",\n", + " \"Status2\",\n", + " \"InstructFault\",\n", + " \"PVFaulted\",\n", + " \"CVFaulted\",\n", + " \"HandFBFaulted\",\n", + " \"PVSpanInv\",\n", + " \"SPProgInv\",\n", + " \"SPOperInv\",\n", + " \"SPCascadeInv\",\n", + " \"SPLimitsInv\",\n", + " \"RatioProgInv\",\n", + " \"RatioOperInv\",\n", + " \"RatioLimitsInv\",\n", + " \"CVProgInv\",\n", + " \"CVOperInv\",\n", + " \"CVOverrideInv\",\n", + " \"CVPreviousInv\",\n", + " \"CVEUSpanInv\",\n", + " \"CVLimitsInv\",\n", + " \"CVROCLimitInv\",\n", + " \"FFInv\",\n", + " \"FFPreviousInv\",\n", + " \"HandFBInv\",\n", + " \"PGainInv\",\n", + " \"IGainInv\",\n", + " \"DGainInv\",\n", + " \"ZCDeadbandInv\",\n", + " \"PVDeadbandInv\",\n", + " \"PVROCLimitsInv\",\n", + " \"DevHLLimitsInv\",\n", + " \"DevDeadbandInv\",\n", + " \"AtuneDataInv\",\n", + " \"TimingModeInv\",\n", + " \"RTSMissed\",\n", + " \"RTSTimeInv\",\n", + " \"RTSTimeStampInv\",\n", + " \"DeltaTInv\",\n", + " \"PIDE_HiddenFloat1\",\n", + " \"PIDE_HiddenFloat2\",\n", + " \"PIDE_HiddenFloat3\",\n", + " \"PIDE_HiddenFloat4\",\n", + " \"PIDE_HiddenFloat5\",\n", + " \"PIDE_HiddenFloat6\",\n", + " \"PIDE_HiddenFloat7\",\n", + " \"PIDE_HiddenFloat8\",\n", + " \"PIDE_HiddenFloat9\",\n", + " \"PIDE_HiddenFloat10\",\n", + " \"PIDE_HiddenFloat11\",\n", + " \"PIDE_HiddenFloat12\",\n", + " \"PIDE_HiddenFloat13\",\n", + " \"PIDE_HiddenFloat14\",\n", + " \"PIDE_HiddenFloat15\",\n", + " \"PIDE_HiddenFloat16\",\n", + " \"PIDE_HiddenFloat17\",\n", + " \"PIDE_HiddenFloat18\",\n", + " \"PIDE_HiddenFloat19\",\n", + " \"PIDE_HiddenFloat20\",\n", + " \"PIDE_HiddenFloat21\",\n", + " \"PIDE_HiddenFloat22\",\n", + " \"PIDE_HiddenFloat23\",\n", + " \"PIDE_HiddenFloat24\",\n", + " \"PIDE_HiddenFloat25\",\n", + " \"PIDE_HiddenFloat26\",\n", + " \"PIDE_HiddenFloat27\",\n", + " \"PIDE_HiddenFloat28\",\n", + " \"PIDE_HiddenFloat29\",\n", + " \"PIDE_HiddenFloat30\",\n", + " \"PIDE_HiddenFloat31\",\n", + " \"PIDE_HiddenFloat32\",\n", + " \"PIDE_HiddenFloat33\",\n", + " \"PIDE_HiddenFloat34\",\n", + " \"PIDE_HiddenFloat35\",\n", + " \"PIDE_HiddenFloat36\",\n", + " \"PIDE_HiddenFloat37\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1253,\n", + " \"structure_size\": 400,\n", + " \"member_count\": 206,\n", + " \"structure_handle\": 3988\n", + " }\n", + " },\n", + " \"data_type_name\": \"PID_ENHANCED\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 568,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEU\": {\n", + " \"offset\": 592,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Label\": {\n", + " \"offset\": 604,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Desc\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVEU\": {\n", + " \"offset\": 672,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"LoLoDevGate\": {\n", + " \"offset\": 684,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"LoLoDev\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"LoDevGate\": {\n", + " \"offset\": 980,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"LoDev\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 1276,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 1296,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SrcQ\": {\n", + " \"offset\": 1297,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"HiHiDevGate\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"HiHiDev\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"HiDevGate\": {\n", + " \"offset\": 1596,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"HiDev\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Mode\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Mode\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_OvrdOverLock\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_UnlockRel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_ProgOperSel\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_MAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_MRel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_OAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_OLock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_OUnlock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_ORel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"P_Mode\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_Locked\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Prog\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_Maint\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_Hand\",\n", + " \"Inp_Ovrd\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_OvrdOverLock\",\n", + " \"Cfg_ProgDefault\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_UnlockRel\",\n", + " \"Val\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_ProgOperSel\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Rdy_MAcq\",\n", + " \"Rdy_MRel\",\n", + " \"Rdy_OAcq\",\n", + " \"Rdy_OLock\",\n", + " \"Rdy_OUnlock\",\n", + " \"Rdy_ORel\",\n", + " \"P_Mode\",\n", + " \"Wrk_Locked\",\n", + " \"Wrk_Prog\",\n", + " \"Wrk_Maint\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 228,\n", + " \"structure_size\": 48,\n", + " \"member_count\": 39,\n", + " \"structure_handle\": 16800\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Mode\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Notify\": {\n", + " \"offset\": 1940,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"IntlkTrip\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_IntlkOK\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Disabled\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_Bypass\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Wrk_Reset\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_ManCmd\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Wrk_AutoCmd\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_CascCmd\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Wrk_Casc\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Auto\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Man\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Fail\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVNavTag\": {\n", + " \"offset\": 2256,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVNavTag\": {\n", + " \"offset\": 2280,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CascSPNavTag\": {\n", + " \"offset\": 2304,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 2328,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Autotune\": {\n", + " \"offset\": 2344,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"PIDE_AUTOTUNE\",\n", + " \"internal_tags\": {\n", + " \"ProcessType\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ResponseSpeed\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"TestLength\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVTuneLimit\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"StepSize\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"TuneFlags\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"TunedGood\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"TunedUncertain\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ATuneAcquired\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"UsedProcessType\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Gain\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"TimeConstant\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DeadTime\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PGainTunedFast\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"IGainTunedFast\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DGainTunedFast\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PGainTunedMed\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"IGainTunedMed\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DGainTunedMed\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PGainTunedSlow\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"IGainTunedSlow\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DGainTunedSlow\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"StepSizeUsed\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"AtuneStatus\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ATuneFault\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVOutOfLimit\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ModeInv\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"CVWindupFault\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"StepSizeZero\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"CVLimitsFault\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"CVInitFault\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"EUSpanChanged\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"CVChanged\": {\n", + " \"offset\": 81,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ATuneTimedOut\": {\n", + " \"offset\": 81,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PVNotSettled\": {\n", + " \"offset\": 81,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PVChangeTooSmall\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"StepSizeTooSmall\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"GainTooLarge\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"GainTooSmall\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"LongDeadTime\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"HiddenWords\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 222\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"ProcessType\",\n", + " \"ResponseSpeed\",\n", + " \"TestLength\",\n", + " \"PVTuneLimit\",\n", + " \"StepSize\",\n", + " \"TuneFlags\",\n", + " \"TunedGood\",\n", + " \"TunedUncertain\",\n", + " \"ATuneAcquired\",\n", + " \"UsedProcessType\",\n", + " \"Gain\",\n", + " \"TimeConstant\",\n", + " \"DeadTime\",\n", + " \"PGainTunedFast\",\n", + " \"IGainTunedFast\",\n", + " \"DGainTunedFast\",\n", + " \"PGainTunedMed\",\n", + " \"IGainTunedMed\",\n", + " \"DGainTunedMed\",\n", + " \"PGainTunedSlow\",\n", + " \"IGainTunedSlow\",\n", + " \"DGainTunedSlow\",\n", + " \"StepSizeUsed\",\n", + " \"AtuneStatus\",\n", + " \"ATuneFault\",\n", + " \"PVOutOfLimit\",\n", + " \"ModeInv\",\n", + " \"CVWindupFault\",\n", + " \"StepSizeZero\",\n", + " \"CVLimitsFault\",\n", + " \"CVInitFault\",\n", + " \"EUSpanChanged\",\n", + " \"CVChanged\",\n", + " \"ATuneTimedOut\",\n", + " \"PVNotSettled\",\n", + " \"PVChangeTooSmall\",\n", + " \"StepSizeTooSmall\",\n", + " \"GainTooLarge\",\n", + " \"GainTooSmall\",\n", + " \"LongDeadTime\",\n", + " \"HiddenWords\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 264,\n", + " \"structure_size\": 972,\n", + " \"member_count\": 41,\n", + " \"structure_handle\": 4022\n", + " }\n", + " },\n", + " \"data_type_name\": \"PIDE_AUTOTUNE\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_PIDE_only\": {\n", + " \"offset\": 3316,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_PIDE_only\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 26,\n", + " \"structure_size\": 4,\n", + " \"member_count\": 3,\n", + " \"structure_handle\": 38846\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PIDE_only\",\n", + " \"array\": 0\n", + " },\n", + " \"HMI_HasAutotune\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_PV\",\n", + " \"Inp_CascSP\",\n", + " \"Inp_FF\",\n", + " \"Inp_FFPrev\",\n", + " \"Inp_CVInitVal\",\n", + " \"Inp_CVPrev\",\n", + " \"Inp_PVSrcQ\",\n", + " \"Inp_OvrdCmd\",\n", + " \"Inp_OvrdRatio\",\n", + " \"Inp_OvrdSP\",\n", + " \"Inp_OvrdCV\",\n", + " \"Inp_HandFdbk\",\n", + " \"Inp_PVBad\",\n", + " \"Inp_PVUncertain\",\n", + " \"Inp_CVIOFault\",\n", + " \"Inp_UseFFPrev\",\n", + " \"Inp_UseCVInitVal\",\n", + " \"Inp_UseCVPrev\",\n", + " \"Inp_WindupHi\",\n", + " \"Inp_WindupLo\",\n", + " \"Inp_Ovrd\",\n", + " \"Inp_Hand\",\n", + " \"Inp_HandFdbkBad\",\n", + " \"Inp_IntlkOK\",\n", + " \"Inp_NBIntlkOK\",\n", + " \"Inp_HiHiDevGate\",\n", + " \"Inp_HiDevGate\",\n", + " \"Inp_LoDevGate\",\n", + " \"Inp_LoLoDevGate\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_HasRatio\",\n", + " \"Cfg_HasCasc\",\n", + " \"Cfg_PVTrack\",\n", + " \"Cfg_CtrlAction\",\n", + " \"Cfg_Depend\",\n", + " \"Cfg_DerivSmooth\",\n", + " \"Cfg_ZCOff\",\n", + " \"Cfg_LimitManCV\",\n", + " \"Cfg_InitToMan\",\n", + " \"Cfg_PropSPAct\",\n", + " \"Cfg_DerivSPAct\",\n", + " \"Cfg_PwrupLM\",\n", + " \"Cfg_SetTrack\",\n", + " \"Cfg_SetTrackOvrdHand\",\n", + " \"Cfg_HasIntlkObj\",\n", + " \"Cfg_HasCascSPNav\",\n", + " \"Cfg_HasPVNav\",\n", + " \"Cfg_HasCVNav\",\n", + " \"Cfg_OvrdIntlk\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_ProgDefault\",\n", + " \"Cfg_HasHiHiDevAlm\",\n", + " \"Cfg_HasHiDevAlm\",\n", + " \"Cfg_HasLoDevAlm\",\n", + " \"Cfg_HasLoLoDevAlm\",\n", + " \"Cfg_HasIntlkTripAlm\",\n", + " \"Cfg_HasFailAlm\",\n", + " \"Cfg_HiHiDevResetReqd\",\n", + " \"Cfg_HiDevResetReqd\",\n", + " \"Cfg_LoDevResetReqd\",\n", + " \"Cfg_LoLoDevResetReqd\",\n", + " \"Cfg_IntlkTripResetReqd\",\n", + " \"Cfg_FailResetReqd\",\n", + " \"Cfg_HiHiDevAckReqd\",\n", + " \"Cfg_HiDevAckReqd\",\n", + " \"Cfg_LoDevAckReqd\",\n", + " \"Cfg_LoLoDevAckReqd\",\n", + " \"Cfg_IntlkTripAckReqd\",\n", + " \"Cfg_FailAckReqd\",\n", + " \"Cfg_HiHiDevSeverity\",\n", + " \"Cfg_HiDevSeverity\",\n", + " \"Cfg_LoDevSeverity\",\n", + " \"Cfg_LoLoDevSeverity\",\n", + " \"Cfg_IntlkTripSeverity\",\n", + " \"Cfg_FailSeverity\",\n", + " \"Cfg_MinRatio\",\n", + " \"Cfg_MaxRatio\",\n", + " \"Cfg_MinSP\",\n", + " \"Cfg_MaxSP\",\n", + " \"Cfg_PVEUMin\",\n", + " \"Cfg_PVEUMax\",\n", + " \"Cfg_CVEUMin\",\n", + " \"Cfg_CVEUMax\",\n", + " \"Cfg_CVRoCLim\",\n", + " \"Cfg_PGain\",\n", + " \"Cfg_IGain\",\n", + " \"Cfg_DGain\",\n", + " \"Cfg_ZCDB\",\n", + " \"Cfg_MinCV\",\n", + " \"Cfg_MaxCV\",\n", + " \"Cfg_MaxInactiveCV\",\n", + " \"Cfg_IntlkCV\",\n", + " \"Cfg_DevDB\",\n", + " \"Cfg_PwrupSP\",\n", + " \"Cfg_PwrupCV\",\n", + " \"Cfg_HiHiDevOnDly\",\n", + " \"Cfg_HiHiDevOffDly\",\n", + " \"Cfg_HiHiDevGateDly\",\n", + " \"Cfg_HiDevOnDly\",\n", + " \"Cfg_HiDevOffDly\",\n", + " \"Cfg_HiDevGateDly\",\n", + " \"Cfg_LoDevOnDly\",\n", + " \"Cfg_LoDevOffDly\",\n", + " \"Cfg_LoDevGateDly\",\n", + " \"Cfg_LoLoDevOnDly\",\n", + " \"Cfg_LoLoDevOffDly\",\n", + " \"Cfg_LoLoDevGateDly\",\n", + " \"PSet_Ratio\",\n", + " \"PSet_SP\",\n", + " \"PSet_CV\",\n", + " \"PSet_HiHiDevLim\",\n", + " \"PSet_HiDevLim\",\n", + " \"PSet_LoDevLim\",\n", + " \"PSet_LoLoDevLim\",\n", + " \"PSet_Owner\",\n", + " \"OSet_Ratio\",\n", + " \"OSet_SP\",\n", + " \"OSet_CV\",\n", + " \"OSet_HiHiDevLim\",\n", + " \"OSet_HiDevLim\",\n", + " \"OSet_LoDevLim\",\n", + " \"OSet_LoLoDevLim\",\n", + " \"PCmd_Casc\",\n", + " \"PCmd_Auto\",\n", + " \"PCmd_Man\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_HiHiDevAck\",\n", + " \"PCmd_HiHiDevSuppress\",\n", + " \"PCmd_HiHiDevUnsuppress\",\n", + " \"PCmd_HiHiDevUnshelve\",\n", + " \"PCmd_HiDevAck\",\n", + " \"PCmd_HiDevSuppress\",\n", + " \"PCmd_HiDevUnsuppress\",\n", + " \"PCmd_HiDevUnshelve\",\n", + " \"PCmd_LoDevAck\",\n", + " \"PCmd_LoDevSuppress\",\n", + " \"PCmd_LoDevUnsuppress\",\n", + " \"PCmd_LoDevUnshelve\",\n", + " \"PCmd_LoLoDevAck\",\n", + " \"PCmd_LoLoDevSuppress\",\n", + " \"PCmd_LoLoDevUnsuppress\",\n", + " \"PCmd_LoLoDevUnshelve\",\n", + " \"PCmd_IntlkTripAck\",\n", + " \"PCmd_IntlkTripSuppress\",\n", + " \"PCmd_IntlkTripUnsuppress\",\n", + " \"PCmd_IntlkTripUnshelve\",\n", + " \"PCmd_FailAck\",\n", + " \"PCmd_FailSuppress\",\n", + " \"PCmd_FailUnsuppress\",\n", + " \"PCmd_FailUnshelve\",\n", + " \"OCmd_Casc\",\n", + " \"OCmd_Auto\",\n", + " \"OCmd_Man\",\n", + " \"OCmd_Bypass\",\n", + " \"OCmd_Check\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_Unlock\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_ResetAckAll\",\n", + " \"Out_CV\",\n", + " \"Val_PV\",\n", + " \"Val_Ratio\",\n", + " \"Val_SPSet\",\n", + " \"Val_SP\",\n", + " \"Val_E\",\n", + " \"Val_CVSet\",\n", + " \"Val_CVOut\",\n", + " \"Val_PVPercent\",\n", + " \"Val_SPPercent\",\n", + " \"Val_EPercent\",\n", + " \"Val_ActExecT\",\n", + " \"Val_Init\",\n", + " \"Val_PVEUMin\",\n", + " \"Val_PVEUMax\",\n", + " \"Val_CVEUMin\",\n", + " \"Val_CVEUMax\",\n", + " \"SrcQ_IO\",\n", + " \"SrcQ\",\n", + " \"Val_Sts\",\n", + " \"Val_Fault\",\n", + " \"Val_State\",\n", + " \"Val_Mode\",\n", + " \"Val_Owner\",\n", + " \"Val_Notify\",\n", + " \"Val_HiHiDevLim\",\n", + " \"Val_HiDevLim\",\n", + " \"Val_LoDevLim\",\n", + " \"Val_LoLoDevLim\",\n", + " \"Sts_InstrFaults1\",\n", + " \"Sts_InstrFaults2\",\n", + " \"Sts_Casc\",\n", + " \"Sts_Auto\",\n", + " \"Sts_Man\",\n", + " \"Sts_Initializing\",\n", + " \"Sts_InitReq\",\n", + " \"Sts_WindupHi\",\n", + " \"Sts_WindupLo\",\n", + " \"Sts_ZCDBOn\",\n", + " \"Sts_RatioClamped\",\n", + " \"Sts_SPBad\",\n", + " \"Sts_SPClamped\",\n", + " \"Sts_PVBad\",\n", + " \"Sts_PVUncertain\",\n", + " \"Sts_FFBad\",\n", + " \"Sts_FFPrevBad\",\n", + " \"Sts_CVBad\",\n", + " \"Sts_CVPrevBad\",\n", + " \"Sts_CVInitValBad\",\n", + " \"Sts_HandFdbkBad\",\n", + " \"Sts_IntlkCV\",\n", + " \"Sts_CVClamped\",\n", + " \"Sts_CVRamping\",\n", + " \"Sts_Active\",\n", + " \"Sts_Available\",\n", + " \"Sts_Bypass\",\n", + " \"Sts_BypActive\",\n", + " \"Sts_Disabled\",\n", + " \"Sts_NotRdy\",\n", + " \"Nrdy_Disabled\",\n", + " \"Nrdy_CfgErr\",\n", + " \"Nrdy_Intlk\",\n", + " \"Nrdy_Init\",\n", + " \"Nrdy_IOFault\",\n", + " \"Nrdy_NoMode\",\n", + " \"Sts_MaintByp\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_RatioLim\",\n", + " \"Err_SPLim\",\n", + " \"Err_PVEU\",\n", + " \"Err_CVLim\",\n", + " \"Err_CVEU\",\n", + " \"Err_Timer\",\n", + " \"Err_DB\",\n", + " \"Err_Alarm\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Sts_HiHiDevCmp\",\n", + " \"Sts_HiHiDevGate\",\n", + " \"Sts_HiHiDev\",\n", + " \"Alm_HiHiDev\",\n", + " \"Ack_HiHiDev\",\n", + " \"Sts_HiHiDevDisabled\",\n", + " \"Sts_HiHiDevShelved\",\n", + " \"Sts_HiHiDevSuppressed\",\n", + " \"Sts_HiDevCmp\",\n", + " \"Sts_HiDevGate\",\n", + " \"Sts_HiDev\",\n", + " \"Alm_HiDev\",\n", + " \"Ack_HiDev\",\n", + " \"Sts_HiDevDisabled\",\n", + " \"Sts_HiDevShelved\",\n", + " \"Sts_HiDevSuppressed\",\n", + " \"Sts_LoDevCmp\",\n", + " \"Sts_LoDevGate\",\n", + " \"Sts_LoDev\",\n", + " \"Alm_LoDev\",\n", + " \"Ack_LoDev\",\n", + " \"Sts_LoDevDisabled\",\n", + " \"Sts_LoDevShelved\",\n", + " \"Sts_LoDevSuppressed\",\n", + " \"Sts_LoLoDevCmp\",\n", + " \"Sts_LoLoDevGate\",\n", + " \"Sts_LoLoDev\",\n", + " \"Alm_LoLoDev\",\n", + " \"Ack_LoLoDev\",\n", + " \"Sts_LoLoDevDisabled\",\n", + " \"Sts_LoLoDevShelved\",\n", + " \"Sts_LoLoDevSuppressed\",\n", + " \"Sts_IntlkTrip\",\n", + " \"Alm_IntlkTrip\",\n", + " \"Ack_IntlkTrip\",\n", + " \"Sts_IntlkTripDisabled\",\n", + " \"Sts_IntlkTripShelved\",\n", + " \"Sts_IntlkTripSuppressed\",\n", + " \"Sts_Fail\",\n", + " \"Alm_Fail\",\n", + " \"Ack_Fail\",\n", + " \"Sts_FailDisabled\",\n", + " \"Sts_FailShelved\",\n", + " \"Sts_FailSuppressed\",\n", + " \"Rdy_Casc\",\n", + " \"Rdy_Auto\",\n", + " \"Rdy_Man\",\n", + " \"Rdy_Bypass\",\n", + " \"Rdy_Check\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_ResetAckAll\",\n", + " \"Rdy_Ratio\",\n", + " \"Rdy_SP\",\n", + " \"Rdy_CV\",\n", + " \"Rdy_OSet\",\n", + " \"P_PIDE\",\n", + " \"Wrk_PIDE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_PVEU\",\n", + " \"Cfg_Label\",\n", + " \"Cfg_Desc\",\n", + " \"Cfg_CVEU\",\n", + " \"LoLoDevGate\",\n", + " \"LoLoDev\",\n", + " \"LoDevGate\",\n", + " \"LoDev\",\n", + " \"Inf_Type\",\n", + " \"Inf_Tab\",\n", + " \"Wrk_SrcQ\",\n", + " \"HiHiDevGate\",\n", + " \"HiHiDev\",\n", + " \"HiDevGate\",\n", + " \"HiDev\",\n", + " \"Mode\",\n", + " \"Wrk_Notify\",\n", + " \"IntlkTrip\",\n", + " \"Wrk_IntlkOK\",\n", + " \"Wrk_Disabled\",\n", + " \"Wrk_Bypass\",\n", + " \"Wrk_Reset\",\n", + " \"Wrk_ManCmd\",\n", + " \"Wrk_AutoCmd\",\n", + " \"Wrk_CascCmd\",\n", + " \"Wrk_Casc\",\n", + " \"Wrk_Auto\",\n", + " \"Wrk_Man\",\n", + " \"Fail\",\n", + " \"Cfg_CVNavTag\",\n", + " \"Cfg_PVNavTag\",\n", + " \"Cfg_CascSPNavTag\",\n", + " \"Inf_Lib\",\n", + " \"Wrk_Autotune\",\n", + " \"Wrk_PIDE_only\",\n", + " \"HMI_HasAutotune\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 2223,\n", + " \"structure_size\": 3320,\n", + " \"member_count\": 352,\n", + " \"structure_handle\": 61053\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PIDE\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"Raw_Auto_Input\": {\n", - " \"tag_name\": \"Raw_Auto_Input\",\n", + " \"HoursSinceMidnight\": {\n", + " \"tag_name\": \"HoursSinceMidnight\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 27,\n", - " \"symbol_address\": 1110,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 64048,\n", + " \"symbol_object_address\": 906460,\n", + " \"software_control\": 1946222626,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Raw_Run_Status\": {\n", - " \"tag_name\": \"Raw_Run_Status\",\n", + " \"controlMode\": {\n", + " \"tag_name\": \"controlMode\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 28,\n", - " \"symbol_address\": 1111,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 64016,\n", + " \"symbol_object_address\": 906500,\n", + " \"software_control\": 1140916259,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Raw_Run_Indication\": {\n", - " \"tag_name\": \"Raw_Run_Indication\",\n", + " \"cmd_Restart\": {\n", + " \"tag_name\": \"cmd_Restart\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 29,\n", - " \"symbol_address\": 1112,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63952,\n", + " \"symbol_object_address\": 906540,\n", + " \"software_control\": 1140916261,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -566,224 +15504,8855 @@ " \"bit_position\": 0,\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Raw_Local_Start\": {\n", - " \"tag_name\": \"Raw_Local_Start\",\n", + " \"const_controlMode_Pressure\": {\n", + " \"tag_name\": \"const_controlMode_Pressure\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 30,\n", - " \"symbol_address\": 1113,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63984,\n", + " \"symbol_object_address\": 906580,\n", + " \"software_control\": 1140916260,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"CMD_Cloud_Control\": {\n", - " \"tag_name\": \"CMD_Cloud_Control\",\n", + " \"val_DischargePressure\": {\n", + " \"tag_name\": \"val_DischargePressure\",\n", " \"dim\": 0,\n", " \"alias\": true,\n", " \"instance_id\": 31,\n", - " \"symbol_address\": 1114,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 44680,\n", + " \"symbol_object_address\": 906620,\n", + " \"software_control\": 1879113775,\n", + " \"external_access\": \"Read Only\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Daily_GOP\": {\n", - " \"tag_name\": \"Daily_GOP\",\n", + " \"PowerFlex755\": {\n", + " \"tag_name\": \"PowerFlex755\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 32,\n", - " \"symbol_address\": 1115,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Monthly_GOP\": {\n", - " \"tag_name\": \"Monthly_GOP\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 33,\n", - " \"symbol_address\": 1116,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"SPT_Flow_Meter_Unit\": {\n", - " \"tag_name\": \"SPT_Flow_Meter_Unit\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 34,\n", - " \"symbol_address\": 1117,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Raw_Overload_Status\": {\n", - " \"tag_name\": \"Raw_Overload_Status\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 35,\n", - " \"symbol_address\": 1118,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Test_GOP\": {\n", - " \"tag_name\": \"Test_GOP\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 36,\n", - " \"symbol_address\": 1119,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Pump_Signal_Run\": {\n", - " \"tag_name\": \"Pump_Signal_Run\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 37,\n", - " \"symbol_address\": 1120,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Test_Daily_GOP\": {\n", - " \"tag_name\": \"Test_Daily_GOP\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 38,\n", - " \"symbol_address\": 1121,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"FlowRateSel\": {\n", - " \"tag_name\": \"FlowRateSel\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 39,\n", - " \"symbol_address\": 1122,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"FlowRateSwitch\": {\n", - " \"tag_name\": \"FlowRateSwitch\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 40,\n", - " \"symbol_address\": 1123,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"BOOL\",\n", - " \"data_type_name\": \"BOOL\",\n", - " \"bit_position\": 0,\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"MasterTotalizerReset\": {\n", - " \"tag_name\": \"MasterTotalizerReset\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 41,\n", - " \"symbol_address\": 1124,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 56872,\n", + " \"symbol_object_address\": 907020,\n", + " \"software_control\": 67174445,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 2764,\n", + " \"data_type\": {\n", + " \"name\": \"P_PF755\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_FwdPermOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_FwdNBPermOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_RevPermOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Inp_RevNBPermOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Inp_IntlkOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Inp_NBIntlkOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Inp_IOFault\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Inp_Sim\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_OvrdCmd\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdSpeed\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_HasReverse\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasJog\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AllowLocal\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HasFwdPermObj\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_HasRevPermObj\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_HasIntlkObj\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_HasResInhObj\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_HasRunTimeObj\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_SetTrack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_SetTrackOvrdHand\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_OperStopPrio\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_OCmdResets\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_OvrdPermIntlk\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_ShedOnFailToStart\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_ShedOnIOFault\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_HasFailToStartAlm\": {\n", + " \"offset\": 688,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasFailToStopAlm\": {\n", + " \"offset\": 532,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasIntlkTripAlm\": {\n", + " \"offset\": 376,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasDriveFaultAlm\": {\n", + " \"offset\": 968,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasIOFaultAlm\": {\n", + " \"offset\": 220,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_FailToStartResetReqd\": {\n", + " \"offset\": 688,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_FailToStopResetReqd\": {\n", + " \"offset\": 532,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_IntlkTripResetReqd\": {\n", + " \"offset\": 376,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_DriveFaultResetReqd\": {\n", + " \"offset\": 968,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_IOFaultResetReqd\": {\n", + " \"offset\": 220,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_FailToStartAckReqd\": {\n", + " \"offset\": 688,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_FailToStopAckReqd\": {\n", + " \"offset\": 532,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_IntlkTripAckReqd\": {\n", + " \"offset\": 376,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_DriveFaultAckReqd\": {\n", + " \"offset\": 968,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_IOFaultAckReqd\": {\n", + " \"offset\": 220,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_FailToStartSeverity\": {\n", + " \"offset\": 692,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailToStopSeverity\": {\n", + " \"offset\": 536,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IntlkTripSeverity\": {\n", + " \"offset\": 380,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_DriveFaultSeverity\": {\n", + " \"offset\": 972,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IOFaultSeverity\": {\n", + " \"offset\": 224,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MinSpdRef\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxSpdRef\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedEUMin\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedEUMax\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedRawMin\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedRawMax\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SimRampT\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailToStartT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailToStopT\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_ResetPulseT\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxJogT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OperKeep\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_ProgKeep\": {\n", + " \"offset\": 57,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_SpeedRef\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_Owner\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_SpeedRef\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PCmd_Start\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Stop\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Fwd\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Rev\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_FailToStartAck\": {\n", + " \"offset\": 689,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_FailToStartSuppress\": {\n", + " \"offset\": 689,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_FailToStartUnsuppress\": {\n", + " \"offset\": 689,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_FailToStartUnshelve\": {\n", + " \"offset\": 689,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_FailToStopAck\": {\n", + " \"offset\": 533,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_FailToStopSuppress\": {\n", + " \"offset\": 533,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_FailToStopUnsuppress\": {\n", + " \"offset\": 533,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_FailToStopUnshelve\": {\n", + " \"offset\": 533,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_IntlkTripAck\": {\n", + " \"offset\": 377,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_IntlkTripSuppress\": {\n", + " \"offset\": 377,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_IntlkTripUnsuppress\": {\n", + " \"offset\": 377,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_IntlkTripUnshelve\": {\n", + " \"offset\": 377,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_DriveFaultAck\": {\n", + " \"offset\": 969,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_DriveFaultSuppress\": {\n", + " \"offset\": 969,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_DriveFaultUnsuppress\": {\n", + " \"offset\": 969,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_DriveFaultUnshelve\": {\n", + " \"offset\": 969,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_IOFaultAck\": {\n", + " \"offset\": 221,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_IOFaultSuppress\": {\n", + " \"offset\": 221,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_IOFaultUnsuppress\": {\n", + " \"offset\": 221,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_IOFaultUnshelve\": {\n", + " \"offset\": 221,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"OCmd_Start\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Stop\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Jog\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Fwd\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"OCmd_Rev\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_Bypass\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Check\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 73,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Unlock\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 73,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_ResetAckAll\": {\n", + " \"offset\": 73,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Val_SpeedRef\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedFdbk\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_OutCurrent\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_TorqCurrFdbk\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_OutPower\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_OvldC\": {\n", + " \"offset\": 96,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Temp\": {\n", + " \"offset\": 100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_ElapsedMWHr\": {\n", + " \"offset\": 104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_ElapsedRunT\": {\n", + " \"offset\": 108,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedRefSrc\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedEUMin\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedEUMax\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LastFaultCode\": {\n", + " \"offset\": 124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ_IO\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ\": {\n", + " \"offset\": 129,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Cmd\": {\n", + " \"offset\": 130,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Fdbk\": {\n", + " \"offset\": 131,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Sts\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Fault\": {\n", + " \"offset\": 133,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Mode\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Owner\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Stopped\": {\n", + " \"offset\": 73,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_Starting\": {\n", + " \"offset\": 73,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Running\": {\n", + " \"offset\": 73,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Stopping\": {\n", + " \"offset\": 73,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_Jogging\": {\n", + " \"offset\": 73,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_CommandDir\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_ActualDir\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Accel\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Decel\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_NotReady\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Alarm\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_AtSpeed\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_SpeedLimited\": {\n", + " \"offset\": 74,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_DriveSts1\": {\n", + " \"offset\": 144,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_DriveSts2\": {\n", + " \"offset\": 148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_FaultStsA\": {\n", + " \"offset\": 152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_FaultStsB\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_PMSts\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_StartInhibits\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Available\": {\n", + " \"offset\": 75,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Bypass\": {\n", + " \"offset\": 75,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_BypActive\": {\n", + " \"offset\": 75,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Disabled\": {\n", + " \"offset\": 75,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_NotRdy\": {\n", + " \"offset\": 75,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Nrdy_Disabled\": {\n", + " \"offset\": 75,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Nrdy_CfgErr\": {\n", + " \"offset\": 75,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Nrdy_Intlk\": {\n", + " \"offset\": 75,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost02\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Nrdy_Perm\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Nrdy_OperPrio\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Nrdy_Fail\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Nrdy_IOFault\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Nrdy_Trip\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Nrdy_DriveNR\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Nrdy_NoMode\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MaintByp\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 169,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 169,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 169,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Err_Sim\": {\n", + " \"offset\": 169,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Err_Alarm\": {\n", + " \"offset\": 169,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Err_EU\": {\n", + " \"offset\": 169,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Err_Raw\": {\n", + " \"offset\": 169,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_RefLim\": {\n", + " \"offset\": 169,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_FailToStart\": {\n", + " \"offset\": 688,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_FailToStart\": {\n", + " \"offset\": 754,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_FailToStart\": {\n", + " \"offset\": 754,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailToStartDisabled\": {\n", + " \"offset\": 755,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailToStartShelved\": {\n", + " \"offset\": 754,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FailToStartSuppressed\": {\n", + " \"offset\": 754,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_FailToStop\": {\n", + " \"offset\": 532,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_FailToStop\": {\n", + " \"offset\": 598,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_FailToStop\": {\n", + " \"offset\": 598,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailToStopDisabled\": {\n", + " \"offset\": 599,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailToStopShelved\": {\n", + " \"offset\": 598,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FailToStopSuppressed\": {\n", + " \"offset\": 598,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_IntlkTrip\": {\n", + " \"offset\": 376,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_IntlkTrip\": {\n", + " \"offset\": 442,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_IntlkTrip\": {\n", + " \"offset\": 442,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IntlkTripDisabled\": {\n", + " \"offset\": 443,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IntlkTripShelved\": {\n", + " \"offset\": 442,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_IntlkTripSuppressed\": {\n", + " \"offset\": 442,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_DriveFault\": {\n", + " \"offset\": 968,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_DriveFault\": {\n", + " \"offset\": 1034,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_DriveFault\": {\n", + " \"offset\": 1034,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_DriveFaultDisabled\": {\n", + " \"offset\": 1035,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_DriveFaultShelved\": {\n", + " \"offset\": 1034,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_DriveFaultSuppressed\": {\n", + " \"offset\": 1034,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_IOFault\": {\n", + " \"offset\": 220,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_IOFault\": {\n", + " \"offset\": 286,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_IOFault\": {\n", + " \"offset\": 286,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IOFaultDisabled\": {\n", + " \"offset\": 287,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IOFaultShelved\": {\n", + " \"offset\": 286,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_IOFaultSuppressed\": {\n", + " \"offset\": 286,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Start\": {\n", + " \"offset\": 170,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Stop\": {\n", + " \"offset\": 170,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_Jog\": {\n", + " \"offset\": 170,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Fwd\": {\n", + " \"offset\": 170,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Rev\": {\n", + " \"offset\": 170,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Bypass\": {\n", + " \"offset\": 170,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Check\": {\n", + " \"offset\": 170,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 170,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 171,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 171,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_ResetAckAll\": {\n", + " \"offset\": 171,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_SpeedRef\": {\n", + " \"offset\": 171,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"P_PF755\": {\n", + " \"offset\": 171,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Mode\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Mode\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_OvrdOverLock\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_UnlockRel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_ProgOperSel\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_MAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_MRel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_OAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_OLock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_OUnlock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_ORel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"P_Mode\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_Locked\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Prog\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_Maint\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_Hand\",\n", + " \"Inp_Ovrd\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_OvrdOverLock\",\n", + " \"Cfg_ProgDefault\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_UnlockRel\",\n", + " \"Val\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_ProgOperSel\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Rdy_MAcq\",\n", + " \"Rdy_MRel\",\n", + " \"Rdy_OAcq\",\n", + " \"Rdy_OLock\",\n", + " \"Rdy_OUnlock\",\n", + " \"Rdy_ORel\",\n", + " \"P_Mode\",\n", + " \"Wrk_Locked\",\n", + " \"Wrk_Prog\",\n", + " \"Wrk_Maint\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 228,\n", + " \"structure_size\": 48,\n", + " \"member_count\": 39,\n", + " \"structure_handle\": 16800\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Mode\",\n", + " \"array\": 0\n", + " },\n", + " \"IOFault\": {\n", + " \"offset\": 220,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"IntlkTrip\": {\n", + " \"offset\": 376,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"FailToStop\": {\n", + " \"offset\": 532,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"FailToStart\": {\n", + " \"offset\": 688,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 844,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Label\": {\n", + " \"offset\": 868,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Desc\": {\n", + " \"offset\": 892,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Run\": {\n", + " \"offset\": 171,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Wrk_StartRetrigT\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_StopRetrigT\": {\n", + " \"offset\": 948,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_RunFdbk\": {\n", + " \"offset\": 171,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_Notify\": {\n", + " \"offset\": 960,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Bypass\": {\n", + " \"offset\": 171,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost03\": {\n", + " \"offset\": 964,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Disabled\": {\n", + " \"offset\": 964,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveFault\": {\n", + " \"offset\": 968,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_DriveEU\": {\n", + " \"offset\": 1124,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SpeedRef\": {\n", + " \"offset\": 1136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Rev\": {\n", + " \"offset\": 964,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Wrk_Jog\": {\n", + " \"offset\": 964,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_ResetT\": {\n", + " \"offset\": 1140,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ResetONS\": {\n", + " \"offset\": 964,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_SpeedFdbkEU\": {\n", + " \"offset\": 1152,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_RevText\": {\n", + " \"offset\": 1164,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FwdText\": {\n", + " \"offset\": 1184,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_StopT\": {\n", + " \"offset\": 1204,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_StartT\": {\n", + " \"offset\": 1216,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 1228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Cmd\": {\n", + " \"offset\": 1229,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Sts\": {\n", + " \"offset\": 1230,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Fault\": {\n", + " \"offset\": 1231,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Retrigger\": {\n", + " \"offset\": 964,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_Step\": {\n", + " \"offset\": 1232,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ScanTime\": {\n", + " \"offset\": 1236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ScanT\": {\n", + " \"offset\": 1240,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SimFdbkTgt\": {\n", + " \"offset\": 1252,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 1256,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_JogT\": {\n", + " \"offset\": 1276,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_FaultDescFSC\": {\n", + " \"offset\": 1288,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"CONTROL\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"LEN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"POS\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"EU\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"EM\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"ER\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"UL\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"IN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FD\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"POS\",\n", + " \"EN\",\n", + " \"EU\",\n", + " \"DN\",\n", + " \"EM\",\n", + " \"ER\",\n", + " \"UL\",\n", + " \"IN\",\n", + " \"FD\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 51,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 11,\n", + " \"structure_handle\": 3969\n", + " }\n", + " },\n", + " \"data_type_name\": \"CONTROL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_FaultDesc\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ProgKeep2ONS\": {\n", + " \"offset\": 964,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Wrk_ProgKeep1ONS\": {\n", + " \"offset\": 964,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_ProgKeep0ONS\": {\n", + " \"offset\": 964,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Wrk_OperKeep2ONS\": {\n", + " \"offset\": 965,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OperKeep1ONS\": {\n", + " \"offset\": 965,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Wrk_OperKeep0ONS\": {\n", + " \"offset\": 965,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 1344,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SrcQ\": {\n", + " \"offset\": 1360,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_NotRdyONS\": {\n", + " \"offset\": 965,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_NotRdy\": {\n", + " \"offset\": 965,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_StartInhT\": {\n", + " \"offset\": 1364,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_StopInhT\": {\n", + " \"offset\": 1376,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_FwdPermOK\",\n", + " \"Inp_FwdNBPermOK\",\n", + " \"Inp_RevPermOK\",\n", + " \"Inp_RevNBPermOK\",\n", + " \"Inp_IntlkOK\",\n", + " \"Inp_NBIntlkOK\",\n", + " \"Inp_IOFault\",\n", + " \"Inp_Sim\",\n", + " \"Inp_Hand\",\n", + " \"Inp_Ovrd\",\n", + " \"Inp_OvrdCmd\",\n", + " \"Inp_OvrdSpeed\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_HasReverse\",\n", + " \"Cfg_HasJog\",\n", + " \"Cfg_AllowLocal\",\n", + " \"Cfg_HasFwdPermObj\",\n", + " \"Cfg_HasRevPermObj\",\n", + " \"Cfg_HasIntlkObj\",\n", + " \"Cfg_HasResInhObj\",\n", + " \"Cfg_HasRunTimeObj\",\n", + " \"Cfg_SetTrack\",\n", + " \"Cfg_SetTrackOvrdHand\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_ProgDefault\",\n", + " \"Cfg_OperStopPrio\",\n", + " \"Cfg_OCmdResets\",\n", + " \"Cfg_OvrdPermIntlk\",\n", + " \"Cfg_ShedOnFailToStart\",\n", + " \"Cfg_ShedOnIOFault\",\n", + " \"Cfg_HasFailToStartAlm\",\n", + " \"Cfg_HasFailToStopAlm\",\n", + " \"Cfg_HasIntlkTripAlm\",\n", + " \"Cfg_HasDriveFaultAlm\",\n", + " \"Cfg_HasIOFaultAlm\",\n", + " \"Cfg_FailToStartResetReqd\",\n", + " \"Cfg_FailToStopResetReqd\",\n", + " \"Cfg_IntlkTripResetReqd\",\n", + " \"Cfg_DriveFaultResetReqd\",\n", + " \"Cfg_IOFaultResetReqd\",\n", + " \"Cfg_FailToStartAckReqd\",\n", + " \"Cfg_FailToStopAckReqd\",\n", + " \"Cfg_IntlkTripAckReqd\",\n", + " \"Cfg_DriveFaultAckReqd\",\n", + " \"Cfg_IOFaultAckReqd\",\n", + " \"Cfg_FailToStartSeverity\",\n", + " \"Cfg_FailToStopSeverity\",\n", + " \"Cfg_IntlkTripSeverity\",\n", + " \"Cfg_DriveFaultSeverity\",\n", + " \"Cfg_IOFaultSeverity\",\n", + " \"Cfg_MinSpdRef\",\n", + " \"Cfg_MaxSpdRef\",\n", + " \"Cfg_SpeedEUMin\",\n", + " \"Cfg_SpeedEUMax\",\n", + " \"Cfg_SpeedRawMin\",\n", + " \"Cfg_SpeedRawMax\",\n", + " \"Cfg_SimRampT\",\n", + " \"Cfg_FailToStartT\",\n", + " \"Cfg_FailToStopT\",\n", + " \"Cfg_ResetPulseT\",\n", + " \"Cfg_MaxJogT\",\n", + " \"Cfg_OperKeep\",\n", + " \"Cfg_ProgKeep\",\n", + " \"PSet_SpeedRef\",\n", + " \"PSet_Owner\",\n", + " \"OSet_SpeedRef\",\n", + " \"PCmd_Start\",\n", + " \"PCmd_Stop\",\n", + " \"PCmd_Fwd\",\n", + " \"PCmd_Rev\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_FailToStartAck\",\n", + " \"PCmd_FailToStartSuppress\",\n", + " \"PCmd_FailToStartUnsuppress\",\n", + " \"PCmd_FailToStartUnshelve\",\n", + " \"PCmd_FailToStopAck\",\n", + " \"PCmd_FailToStopSuppress\",\n", + " \"PCmd_FailToStopUnsuppress\",\n", + " \"PCmd_FailToStopUnshelve\",\n", + " \"PCmd_IntlkTripAck\",\n", + " \"PCmd_IntlkTripSuppress\",\n", + " \"PCmd_IntlkTripUnsuppress\",\n", + " \"PCmd_IntlkTripUnshelve\",\n", + " \"PCmd_DriveFaultAck\",\n", + " \"PCmd_DriveFaultSuppress\",\n", + " \"PCmd_DriveFaultUnsuppress\",\n", + " \"PCmd_DriveFaultUnshelve\",\n", + " \"PCmd_IOFaultAck\",\n", + " \"PCmd_IOFaultSuppress\",\n", + " \"PCmd_IOFaultUnsuppress\",\n", + " \"PCmd_IOFaultUnshelve\",\n", + " \"OCmd_Start\",\n", + " \"OCmd_Stop\",\n", + " \"OCmd_Jog\",\n", + " \"OCmd_Fwd\",\n", + " \"OCmd_Rev\",\n", + " \"OCmd_Bypass\",\n", + " \"OCmd_Check\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_Unlock\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_ResetAckAll\",\n", + " \"Val_SpeedRef\",\n", + " \"Val_SpeedFdbk\",\n", + " \"Val_OutCurrent\",\n", + " \"Val_TorqCurrFdbk\",\n", + " \"Val_OutPower\",\n", + " \"Val_OvldC\",\n", + " \"Val_Temp\",\n", + " \"Val_ElapsedMWHr\",\n", + " \"Val_ElapsedRunT\",\n", + " \"Val_SpeedRefSrc\",\n", + " \"Val_SpeedEUMin\",\n", + " \"Val_SpeedEUMax\",\n", + " \"Val_LastFaultCode\",\n", + " \"SrcQ_IO\",\n", + " \"SrcQ\",\n", + " \"Val_Cmd\",\n", + " \"Val_Fdbk\",\n", + " \"Val_Sts\",\n", + " \"Val_Fault\",\n", + " \"Val_Mode\",\n", + " \"Val_Owner\",\n", + " \"Val_Notify\",\n", + " \"Sts_Stopped\",\n", + " \"Sts_Starting\",\n", + " \"Sts_Running\",\n", + " \"Sts_Stopping\",\n", + " \"Sts_Jogging\",\n", + " \"Sts_CommandDir\",\n", + " \"Sts_ActualDir\",\n", + " \"Sts_Accel\",\n", + " \"Sts_Decel\",\n", + " \"Sts_NotReady\",\n", + " \"Sts_Alarm\",\n", + " \"Sts_AtSpeed\",\n", + " \"Sts_SpeedLimited\",\n", + " \"Sts_DriveSts1\",\n", + " \"Sts_DriveSts2\",\n", + " \"Sts_FaultStsA\",\n", + " \"Sts_FaultStsB\",\n", + " \"Sts_PMSts\",\n", + " \"Sts_StartInhibits\",\n", + " \"Sts_Available\",\n", + " \"Sts_Bypass\",\n", + " \"Sts_BypActive\",\n", + " \"Sts_Disabled\",\n", + " \"Sts_NotRdy\",\n", + " \"Nrdy_Disabled\",\n", + " \"Nrdy_CfgErr\",\n", + " \"Nrdy_Intlk\",\n", + " \"Nrdy_Perm\",\n", + " \"Nrdy_OperPrio\",\n", + " \"Nrdy_Fail\",\n", + " \"Nrdy_IOFault\",\n", + " \"Nrdy_Trip\",\n", + " \"Nrdy_DriveNR\",\n", + " \"Nrdy_NoMode\",\n", + " \"Sts_MaintByp\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Sim\",\n", + " \"Err_Alarm\",\n", + " \"Err_EU\",\n", + " \"Err_Raw\",\n", + " \"Err_RefLim\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Sts_FailToStart\",\n", + " \"Alm_FailToStart\",\n", + " \"Ack_FailToStart\",\n", + " \"Sts_FailToStartDisabled\",\n", + " \"Sts_FailToStartShelved\",\n", + " \"Sts_FailToStartSuppressed\",\n", + " \"Sts_FailToStop\",\n", + " \"Alm_FailToStop\",\n", + " \"Ack_FailToStop\",\n", + " \"Sts_FailToStopDisabled\",\n", + " \"Sts_FailToStopShelved\",\n", + " \"Sts_FailToStopSuppressed\",\n", + " \"Sts_IntlkTrip\",\n", + " \"Alm_IntlkTrip\",\n", + " \"Ack_IntlkTrip\",\n", + " \"Sts_IntlkTripDisabled\",\n", + " \"Sts_IntlkTripShelved\",\n", + " \"Sts_IntlkTripSuppressed\",\n", + " \"Sts_DriveFault\",\n", + " \"Alm_DriveFault\",\n", + " \"Ack_DriveFault\",\n", + " \"Sts_DriveFaultDisabled\",\n", + " \"Sts_DriveFaultShelved\",\n", + " \"Sts_DriveFaultSuppressed\",\n", + " \"Sts_IOFault\",\n", + " \"Alm_IOFault\",\n", + " \"Ack_IOFault\",\n", + " \"Sts_IOFaultDisabled\",\n", + " \"Sts_IOFaultShelved\",\n", + " \"Sts_IOFaultSuppressed\",\n", + " \"Rdy_Start\",\n", + " \"Rdy_Stop\",\n", + " \"Rdy_Jog\",\n", + " \"Rdy_Fwd\",\n", + " \"Rdy_Rev\",\n", + " \"Rdy_Bypass\",\n", + " \"Rdy_Check\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_ResetAckAll\",\n", + " \"Rdy_SpeedRef\",\n", + " \"P_PF755\",\n", + " \"Mode\",\n", + " \"IOFault\",\n", + " \"IntlkTrip\",\n", + " \"FailToStop\",\n", + " \"FailToStart\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Label\",\n", + " \"Cfg_Desc\",\n", + " \"Wrk_Run\",\n", + " \"Wrk_StartRetrigT\",\n", + " \"Wrk_StopRetrigT\",\n", + " \"Wrk_RunFdbk\",\n", + " \"Wrk_Notify\",\n", + " \"Wrk_Bypass\",\n", + " \"Wrk_Disabled\",\n", + " \"DriveFault\",\n", + " \"Val_DriveEU\",\n", + " \"Wrk_SpeedRef\",\n", + " \"Wrk_Rev\",\n", + " \"Wrk_Jog\",\n", + " \"Wrk_ResetT\",\n", + " \"Wrk_ResetONS\",\n", + " \"Cfg_SpeedFdbkEU\",\n", + " \"Cfg_RevText\",\n", + " \"Cfg_FwdText\",\n", + " \"Wrk_StopT\",\n", + " \"Wrk_StartT\",\n", + " \"Inf_Tab\",\n", + " \"Wrk_Cmd\",\n", + " \"Wrk_Sts\",\n", + " \"Wrk_Fault\",\n", + " \"Wrk_Retrigger\",\n", + " \"Wrk_Step\",\n", + " \"Wrk_ScanTime\",\n", + " \"Wrk_ScanT\",\n", + " \"Wrk_SimFdbkTgt\",\n", + " \"Inf_Type\",\n", + " \"Wrk_JogT\",\n", + " \"Wrk_FaultDescFSC\",\n", + " \"Val_FaultDesc\",\n", + " \"Wrk_ProgKeep2ONS\",\n", + " \"Wrk_ProgKeep1ONS\",\n", + " \"Wrk_ProgKeep0ONS\",\n", + " \"Wrk_OperKeep2ONS\",\n", + " \"Wrk_OperKeep1ONS\",\n", + " \"Wrk_OperKeep0ONS\",\n", + " \"Inf_Lib\",\n", + " \"Wrk_SrcQ\",\n", + " \"Wrk_NotRdyONS\",\n", + " \"Wrk_NotRdy\",\n", + " \"Wrk_StartInhT\",\n", + " \"Wrk_StopInhT\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1874,\n", + " \"structure_size\": 1388,\n", + " \"member_count\": 284,\n", + " \"structure_handle\": 43630\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PF755\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"PF755_I\": {\n", + " \"tag_name\": \"PF755_I\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 42,\n", + " \"symbol_address\": 56776,\n", + " \"symbol_object_address\": 907060,\n", + " \"software_control\": 67174446,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 1122,\n", + " \"data_type\": {\n", + " \"name\": \"P_PF755_Inp\",\n", + " \"internal_tags\": {\n", + " \"ZZZZZZZZZP_PF755_Inp_00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus_Ready\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Active\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_CommandDir\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_ActualDir\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_Accelerating\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_Decelerating\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_Alarm\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Faulted\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus_AtSpeed\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Manual\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_SpdRefBit0\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_spdRefBit1\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_SpdRefBit2\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_SpdRefBit3\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_SpdRefBit4\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Running\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Jogging\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_Stopping\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_DCBraking\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_DBActive\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_SpeedMode\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_PositionMode\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_TorqueMode\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus_AtZeroSpeed\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_AtHome\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_AtLimit\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_CurrLimit\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_BusFrqReg\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_EnableOn\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_MotorOL\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Regen\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Feedback\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"TorqueCurFdbk\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OutputCurrent\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OutputPower\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ElapsedMWH\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ElapsedRunTime\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SpeedUnits\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PredMaintSts\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PredMaintSts_HeatskinkFan\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PredMaintSts_InternalFan\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PredMaintSts_MtrBearing\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PredMaintSts_MtrLube\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PredMaintSts_MchBearing\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PredMaintSts_MchLube\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PredMaintSts_Reserved\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PredMaintSts_Reserved1\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PredMaintSts_Reserved2\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PredMaintSts_Reserved3\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PredMaintSts_Reserved4\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PredMaintSts_Reserved5\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PredMaintSts_Reserved6\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PredMaintSts_Reserved7\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PredMaintSts_Reserved8\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PredMaintSts_Master\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"StartInhibits_Faulted\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits_Alarm\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"StartInhibits_Enable\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"StartInhibits_Precharge\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"StartInhibits_Stop\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"StartInhibits_Database\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"StartInhibits_Startup\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"StartInhibits_Safety\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"StartInhibits_Sleep\": {\n", + " \"offset\": 41,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits_Profiler\": {\n", + " \"offset\": 41,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"StartInhibits_CommutNotCfg\": {\n", + " \"offset\": 41,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus2_AutoRstrAct\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus2_AuRstrCntDwn\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus2_HSFanOn\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2_Reserved\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus2_FluxBraking\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus2_FdbkLossSwO\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus2_Reserved1\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus2_Reserved2\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus2_PrchrgClosed\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus2_Autotuning\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus2_PIDFBLoss\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2_AccelRate\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus2_DecelRate\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveOLCount\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveTempC\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"LastFaultCode\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusA\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusA_PowerLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusA_UnderVoltage\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusA_MotorOL\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusA_LoalLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusA_InPhaseLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusA_OutPhaseLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusA_DecelInhib\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusA_ShearPin1\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusA_ShearPin2\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusA_PriFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusA_AltFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusA_AuxFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusA_PosFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusA_ExtPrchrgErr\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusB_AuxInputFlt\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_OverVoltage\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_DriveOL\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_HeatsinkOT\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_TransistorOT\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_SinkUnderTemp\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_ExcessLoad\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusB_OverspdLmt\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusB_PrchrgOpen\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_SafetyBrdFlt\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_IRVoltsRange\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_FluxAmpsRang\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_IXOVlotRange\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_AuRstExhaust\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_SWOverCur\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusB_HWOverCur\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusB_TrqPrvSpdBnd\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_TPEnclsCfg\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_GroundFault\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_OWAlarmTO\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_OverTravel\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_TrvlLimCflct\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"ZZZZZZZZZP_PF755_Inp_00\",\n", + " \"DriveStatus\",\n", + " \"DriveStatus_Ready\",\n", + " \"DriveStatus_Active\",\n", + " \"DriveStatus_CommandDir\",\n", + " \"DriveStatus_ActualDir\",\n", + " \"DriveStatus_Accelerating\",\n", + " \"DriveStatus_Decelerating\",\n", + " \"DriveStatus_Alarm\",\n", + " \"DriveStatus_Faulted\",\n", + " \"DriveStatus_AtSpeed\",\n", + " \"DriveStatus_Manual\",\n", + " \"DriveStatus_SpdRefBit0\",\n", + " \"DriveStatus_spdRefBit1\",\n", + " \"DriveStatus_SpdRefBit2\",\n", + " \"DriveStatus_SpdRefBit3\",\n", + " \"DriveStatus_SpdRefBit4\",\n", + " \"DriveStatus_Running\",\n", + " \"DriveStatus_Jogging\",\n", + " \"DriveStatus_Stopping\",\n", + " \"DriveStatus_DCBraking\",\n", + " \"DriveStatus_DBActive\",\n", + " \"DriveStatus_SpeedMode\",\n", + " \"DriveStatus_PositionMode\",\n", + " \"DriveStatus_TorqueMode\",\n", + " \"DriveStatus_AtZeroSpeed\",\n", + " \"DriveStatus_AtHome\",\n", + " \"DriveStatus_AtLimit\",\n", + " \"DriveStatus_CurrLimit\",\n", + " \"DriveStatus_BusFrqReg\",\n", + " \"DriveStatus_EnableOn\",\n", + " \"DriveStatus_MotorOL\",\n", + " \"DriveStatus_Regen\",\n", + " \"Feedback\",\n", + " \"TorqueCurFdbk\",\n", + " \"OutputCurrent\",\n", + " \"OutputPower\",\n", + " \"ElapsedMWH\",\n", + " \"ElapsedRunTime\",\n", + " \"SpeedUnits\",\n", + " \"PredMaintSts\",\n", + " \"PredMaintSts_HeatskinkFan\",\n", + " \"PredMaintSts_InternalFan\",\n", + " \"PredMaintSts_MtrBearing\",\n", + " \"PredMaintSts_MtrLube\",\n", + " \"PredMaintSts_MchBearing\",\n", + " \"PredMaintSts_MchLube\",\n", + " \"PredMaintSts_Reserved\",\n", + " \"PredMaintSts_Reserved1\",\n", + " \"PredMaintSts_Reserved2\",\n", + " \"PredMaintSts_Reserved3\",\n", + " \"PredMaintSts_Reserved4\",\n", + " \"PredMaintSts_Reserved5\",\n", + " \"PredMaintSts_Reserved6\",\n", + " \"PredMaintSts_Reserved7\",\n", + " \"PredMaintSts_Reserved8\",\n", + " \"PredMaintSts_Master\",\n", + " \"StartInhibits\",\n", + " \"StartInhibits_Faulted\",\n", + " \"StartInhibits_Alarm\",\n", + " \"StartInhibits_Enable\",\n", + " \"StartInhibits_Precharge\",\n", + " \"StartInhibits_Stop\",\n", + " \"StartInhibits_Database\",\n", + " \"StartInhibits_Startup\",\n", + " \"StartInhibits_Safety\",\n", + " \"StartInhibits_Sleep\",\n", + " \"StartInhibits_Profiler\",\n", + " \"StartInhibits_CommutNotCfg\",\n", + " \"DriveStatus2\",\n", + " \"DriveStatus2_AutoRstrAct\",\n", + " \"DriveStatus2_AuRstrCntDwn\",\n", + " \"DriveStatus2_HSFanOn\",\n", + " \"DriveStatus2_Reserved\",\n", + " \"DriveStatus2_FluxBraking\",\n", + " \"DriveStatus2_FdbkLossSwO\",\n", + " \"DriveStatus2_Reserved1\",\n", + " \"DriveStatus2_Reserved2\",\n", + " \"DriveStatus2_PrchrgClosed\",\n", + " \"DriveStatus2_Autotuning\",\n", + " \"DriveStatus2_PIDFBLoss\",\n", + " \"DriveStatus2_AccelRate\",\n", + " \"DriveStatus2_DecelRate\",\n", + " \"DriveOLCount\",\n", + " \"DriveTempC\",\n", + " \"LastFaultCode\",\n", + " \"FaultStatusA\",\n", + " \"FaultStatusA_PowerLoss\",\n", + " \"FaultStatusA_UnderVoltage\",\n", + " \"FaultStatusA_MotorOL\",\n", + " \"FaultStatusA_LoalLoss\",\n", + " \"FaultStatusA_InPhaseLoss\",\n", + " \"FaultStatusA_OutPhaseLoss\",\n", + " \"FaultStatusA_DecelInhib\",\n", + " \"FaultStatusA_ShearPin1\",\n", + " \"FaultStatusA_ShearPin2\",\n", + " \"FaultStatusA_PriFdbkLoss\",\n", + " \"FaultStatusA_AltFdbkLoss\",\n", + " \"FaultStatusA_AuxFdbkLoss\",\n", + " \"FaultStatusA_PosFdbkLoss\",\n", + " \"FaultStatusA_ExtPrchrgErr\",\n", + " \"FaultStatusB\",\n", + " \"FaultStatusB_AuxInputFlt\",\n", + " \"FaultStatusB_OverVoltage\",\n", + " \"FaultStatusB_DriveOL\",\n", + " \"FaultStatusB_HeatsinkOT\",\n", + " \"FaultStatusB_TransistorOT\",\n", + " \"FaultStatusB_SinkUnderTemp\",\n", + " \"FaultStatusB_ExcessLoad\",\n", + " \"FaultStatusB_OverspdLmt\",\n", + " \"FaultStatusB_PrchrgOpen\",\n", + " \"FaultStatusB_SafetyBrdFlt\",\n", + " \"FaultStatusB_IRVoltsRange\",\n", + " \"FaultStatusB_FluxAmpsRang\",\n", + " \"FaultStatusB_IXOVlotRange\",\n", + " \"FaultStatusB_AuRstExhaust\",\n", + " \"FaultStatusB_SWOverCur\",\n", + " \"FaultStatusB_HWOverCur\",\n", + " \"FaultStatusB_TrqPrvSpdBnd\",\n", + " \"FaultStatusB_TPEnclsCfg\",\n", + " \"FaultStatusB_GroundFault\",\n", + " \"FaultStatusB_OWAlarmTO\",\n", + " \"FaultStatusB_OverTravel\",\n", + " \"FaultStatusB_TrvlLimCflct\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1054,\n", + " \"structure_size\": 68,\n", + " \"member_count\": 124,\n", + " \"structure_handle\": 5216\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PF755_Inp\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"PF755_O\": {\n", + " \"tag_name\": \"PF755_O\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 43,\n", + " \"symbol_address\": 56744,\n", + " \"symbol_object_address\": 907100,\n", + " \"software_control\": 67174447,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 925,\n", + " \"data_type\": {\n", + " \"name\": \"P_PF755_Out\",\n", + " \"internal_tags\": {\n", + " \"LogicCommand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"LogicCommand_Stop\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_Start\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_Jog1\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_ClearFaults\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LogicCommand_Forward\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"LogicCommand_Reverse\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"LogicCommand_Manual\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"LogicCommand_AccelTime1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_AccelTime2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_DecelTime1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_DecelTime2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LogicCommand_SpdRefSel0\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"LogicCommand_SpdRefSel1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"LogicCommand_SpdRefSel2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"LogicCommand_CoastStop\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_CLimitStop\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_Run\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_Jog2\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Reference\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LogicCommand\",\n", + " \"LogicCommand_Stop\",\n", + " \"LogicCommand_Start\",\n", + " \"LogicCommand_Jog1\",\n", + " \"LogicCommand_ClearFaults\",\n", + " \"LogicCommand_Forward\",\n", + " \"LogicCommand_Reverse\",\n", + " \"LogicCommand_Manual\",\n", + " \"LogicCommand_AccelTime1\",\n", + " \"LogicCommand_AccelTime2\",\n", + " \"LogicCommand_DecelTime1\",\n", + " \"LogicCommand_DecelTime2\",\n", + " \"LogicCommand_SpdRefSel0\",\n", + " \"LogicCommand_SpdRefSel1\",\n", + " \"LogicCommand_SpdRefSel2\",\n", + " \"LogicCommand_CoastStop\",\n", + " \"LogicCommand_CLimitStop\",\n", + " \"LogicCommand_Run\",\n", + " \"LogicCommand_Jog2\",\n", + " \"Reference\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 173,\n", + " \"structure_size\": 8,\n", + " \"member_count\": 20,\n", + " \"structure_handle\": 2087\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PF755_Out\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"PF75x_FaultCodeList\": {\n", + " \"tag_name\": \"PF75x_FaultCodeList\",\n", + " \"dim\": 1,\n", + " \"alias\": false,\n", + " \"instance_id\": 44,\n", + " \"symbol_address\": 46520,\n", + " \"symbol_object_address\": 907140,\n", + " \"software_control\": 67174448,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 212,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 3243,\n", + " \"data_type\": {\n", + " \"name\": \"P_DescList\",\n", + " \"internal_tags\": {\n", + " \"Code\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Desc\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"Code\",\n", + " \"Desc\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 48,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 19556\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_DescList\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"cmd_Stop\": {\n", + " \"tag_name\": \"cmd_Stop\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 45,\n", + " \"symbol_address\": 46504,\n", + " \"symbol_object_address\": 907180,\n", + " \"software_control\": 1140916273,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -794,141 +24363,17596 @@ " \"bit_position\": 0,\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Raw_Flow_Meter\": {\n", - " \"tag_name\": \"Raw_Flow_Meter\",\n", + " \"cmd_Start\": {\n", + " \"tag_name\": \"cmd_Start\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 42,\n", - " \"symbol_address\": 1126,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"UINT\",\n", - " \"data_type_name\": \"UINT\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Raw_Pressure_Transducer\": {\n", - " \"tag_name\": \"Raw_Pressure_Transducer\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 43,\n", - " \"symbol_address\": 1128,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"UINT\",\n", - " \"data_type_name\": \"UINT\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"MB_BatteyStatus\": {\n", - " \"tag_name\": \"MB_BatteyStatus\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 44,\n", - " \"symbol_address\": 1130,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"UINT\",\n", - " \"data_type_name\": \"UINT\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Zero\": {\n", - " \"tag_name\": \"Zero\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 45,\n", - " \"symbol_address\": 1136,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Scaled_Flow_Meter\": {\n", - " \"tag_name\": \"Scaled_Flow_Meter\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 46,\n", - " \"symbol_address\": 1140,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 46472,\n", + " \"symbol_object_address\": 907220,\n", + " \"software_control\": 1140916274,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Scaled_Pressure_Transducer\": {\n", - " \"tag_name\": \"Scaled_Pressure_Transducer\",\n", + " \"PT01_DischargePressure\": {\n", + " \"tag_name\": \"PT01_DischargePressure\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 47,\n", - " \"symbol_address\": 1144,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 44576,\n", + " \"symbol_object_address\": 907260,\n", + " \"software_control\": 67174451,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 1864,\n", + " \"data_type\": {\n", + " \"name\": \"P_AIn\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_PV\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_PVSrcQ\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_PVBad\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_PVUncertain\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_Sim\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Inp_HiHiGate\": {\n", + " \"offset\": 1568,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_HiGate\": {\n", + " \"offset\": 1708,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_LoGate\": {\n", + " \"offset\": 1428,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_LoLoGate\": {\n", + " \"offset\": 1288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_FailGate\": {\n", + " \"offset\": 1148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_NoSubstPV\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_SetTrack\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_HasChanObj\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_UseChanSrcQ\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 784,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 784,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HasHiHiAlm\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasHiAlm\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasLoAlm\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasLoLoAlm\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasFailAlm\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HiHiResetReqd\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_HiResetReqd\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_LoResetReqd\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_LoLoResetReqd\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_FailResetReqd\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_HiHiAckReqd\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HiAckReqd\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_LoAckReqd\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_LoLoAckReqd\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_FailAckReqd\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HiHiSeverity\": {\n", + " \"offset\": 632,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiSeverity\": {\n", + " \"offset\": 476,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoSeverity\": {\n", + " \"offset\": 320,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoSeverity\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailSeverity\": {\n", + " \"offset\": 940,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpRawMin\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpRawMax\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEUMin\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEUMax\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FiltTC\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiDB\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiOnDly\": {\n", + " \"offset\": 1576,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiOffDly\": {\n", + " \"offset\": 1580,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiGateDly\": {\n", + " \"offset\": 1572,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDB\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiOnDly\": {\n", + " \"offset\": 1716,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiOffDly\": {\n", + " \"offset\": 1720,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiGateDly\": {\n", + " \"offset\": 1712,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDB\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoOnDly\": {\n", + " \"offset\": 1436,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoOffDly\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoGateDly\": {\n", + " \"offset\": 1432,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDB\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoOnDly\": {\n", + " \"offset\": 1296,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoOffDly\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoGateDly\": {\n", + " \"offset\": 1292,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailHiLim\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailLoLim\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailDB\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailOnDly\": {\n", + " \"offset\": 1156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailOffDly\": {\n", + " \"offset\": 1160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailGateDly\": {\n", + " \"offset\": 1152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_Owner\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_HiHiLim\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_HiLim\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_LoLim\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_LoLoLim\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MSet_SubstPV\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_HiHiLim\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_HiLim\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_LoLim\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_LoLoLim\": {\n", + " \"offset\": 96,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Set_SimPV\": {\n", + " \"offset\": 100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PCmd_ClearCapt\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 784,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_HiHiAck\": {\n", + " \"offset\": 629,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_HiHiSuppress\": {\n", + " \"offset\": 629,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_HiHiUnsuppress\": {\n", + " \"offset\": 629,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_HiHiUnshelve\": {\n", + " \"offset\": 629,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_HiAck\": {\n", + " \"offset\": 473,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_HiSuppress\": {\n", + " \"offset\": 473,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_HiUnsuppress\": {\n", + " \"offset\": 473,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_HiUnshelve\": {\n", + " \"offset\": 473,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_LoAck\": {\n", + " \"offset\": 317,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_LoSuppress\": {\n", + " \"offset\": 317,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_LoUnsuppress\": {\n", + " \"offset\": 317,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_LoUnshelve\": {\n", + " \"offset\": 317,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_LoLoAck\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_LoLoSuppress\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_LoLoUnsuppress\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_LoLoUnshelve\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_FailAck\": {\n", + " \"offset\": 937,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_FailSuppress\": {\n", + " \"offset\": 937,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_FailUnsuppress\": {\n", + " \"offset\": 937,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_FailUnshelve\": {\n", + " \"offset\": 937,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"MCmd_SubstPV\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_InpPV\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_ClearCapt\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Unlock\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_ResetAckAll\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Val\": {\n", + " \"offset\": 104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_InpPV\": {\n", + " \"offset\": 108,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVMinCapt\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVMaxCapt\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVEUMin\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVEUMax\": {\n", + " \"offset\": 124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ_IO\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ\": {\n", + " \"offset\": 129,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Fault\": {\n", + " \"offset\": 130,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Mode\": {\n", + " \"offset\": 788,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Owner\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_HiHiLim\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_HiLim\": {\n", + " \"offset\": 144,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LoLim\": {\n", + " \"offset\": 148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LoLoLim\": {\n", + " \"offset\": 152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_SubstPV\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_InpPV\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_PVBad\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_PVUncertain\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_MaintByp\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Err_Raw\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_EU\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Err_Filt\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Err_DB\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Err_Alarm\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_HiHiCmp\": {\n", + " \"offset\": 1568,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_HiHiGate\": {\n", + " \"offset\": 1568,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_HiHi\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_HiHi\": {\n", + " \"offset\": 694,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_HiHi\": {\n", + " \"offset\": 694,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiHiDisabled\": {\n", + " \"offset\": 695,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiHiSuppressed\": {\n", + " \"offset\": 694,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_HiHiShelved\": {\n", + " \"offset\": 694,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_HiCmp\": {\n", + " \"offset\": 1708,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_HiGate\": {\n", + " \"offset\": 1708,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Hi\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_Hi\": {\n", + " \"offset\": 538,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_Hi\": {\n", + " \"offset\": 538,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiDisabled\": {\n", + " \"offset\": 539,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiSuppressed\": {\n", + " \"offset\": 538,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_HiShelved\": {\n", + " \"offset\": 538,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_LoCmp\": {\n", + " \"offset\": 1428,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_LoGate\": {\n", + " \"offset\": 1428,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Lo\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_Lo\": {\n", + " \"offset\": 382,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_Lo\": {\n", + " \"offset\": 382,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoDisabled\": {\n", + " \"offset\": 383,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoSuppressed\": {\n", + " \"offset\": 382,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_LoShelved\": {\n", + " \"offset\": 382,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_LoLoCmp\": {\n", + " \"offset\": 1288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_LoLoGate\": {\n", + " \"offset\": 1288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_LoLo\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_LoLo\": {\n", + " \"offset\": 226,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_LoLo\": {\n", + " \"offset\": 226,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoLoDisabled\": {\n", + " \"offset\": 227,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoLoSuppressed\": {\n", + " \"offset\": 226,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_LoLoShelved\": {\n", + " \"offset\": 226,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FailCmp\": {\n", + " \"offset\": 1148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_FailGate\": {\n", + " \"offset\": 1148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Fail\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_Fail\": {\n", + " \"offset\": 1002,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_Fail\": {\n", + " \"offset\": 1002,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailDisabled\": {\n", + " \"offset\": 1003,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailSuppressed\": {\n", + " \"offset\": 1002,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_FailShelved\": {\n", + " \"offset\": 1002,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_SubstPV\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_InpPV\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_ResetAckAll\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_OSet\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"P_AIn\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LoLo\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Lo\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Hi\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"HiHi\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Mode\": {\n", + " \"offset\": 784,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Mode\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_OvrdOverLock\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_UnlockRel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_ProgOperSel\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_MAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_MRel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_OAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_OLock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_OUnlock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_ORel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"P_Mode\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_Locked\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Prog\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_Maint\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_Hand\",\n", + " \"Inp_Ovrd\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_OvrdOverLock\",\n", + " \"Cfg_ProgDefault\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_UnlockRel\",\n", + " \"Val\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_ProgOperSel\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Rdy_MAcq\",\n", + " \"Rdy_MRel\",\n", + " \"Rdy_OAcq\",\n", + " \"Rdy_OLock\",\n", + " \"Rdy_OUnlock\",\n", + " \"Rdy_ORel\",\n", + " \"P_Mode\",\n", + " \"Wrk_Locked\",\n", + " \"Wrk_Prog\",\n", + " \"Wrk_Maint\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 228,\n", + " \"structure_size\": 48,\n", + " \"member_count\": 39,\n", + " \"structure_handle\": 16800\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Mode\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_EU\": {\n", + " \"offset\": 832,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 844,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Label\": {\n", + " \"offset\": 868,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Desc\": {\n", + " \"offset\": 892,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Fail\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Notify\": {\n", + " \"offset\": 1092,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 1093,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Fault\": {\n", + " \"offset\": 1094,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SrcQ\": {\n", + " \"offset\": 1095,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SubstPV\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_UnfiltPV\": {\n", + " \"offset\": 1096,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Alpha\": {\n", + " \"offset\": 1100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ScanT\": {\n", + " \"offset\": 1104,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ScanTime\": {\n", + " \"offset\": 1116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_FiltPV\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ValidONS\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Wrk_SelPVDINT\": {\n", + " \"offset\": 1124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SelPVInfNaN\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 1128,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Fail\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Wrk_LoLo\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_Lo\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Wrk_Hi\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_HiHi\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FailGate\": {\n", + " \"offset\": 1148,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"LoLoGate\": {\n", + " \"offset\": 1288,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"LoGate\": {\n", + " \"offset\": 1428,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"HiHiGate\": {\n", + " \"offset\": 1568,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"HiGate\": {\n", + " \"offset\": 1708,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_InpInfNaN\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_InpDINT\": {\n", + " \"offset\": 1848,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 1852,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_InpFail\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_PV\",\n", + " \"Inp_PVSrcQ\",\n", + " \"Inp_PVBad\",\n", + " \"Inp_PVUncertain\",\n", + " \"Inp_Sim\",\n", + " \"Inp_HiHiGate\",\n", + " \"Inp_HiGate\",\n", + " \"Inp_LoGate\",\n", + " \"Inp_LoLoGate\",\n", + " \"Inp_FailGate\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_NoSubstPV\",\n", + " \"Cfg_SetTrack\",\n", + " \"Cfg_HasChanObj\",\n", + " \"Cfg_UseChanSrcQ\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_ProgDefault\",\n", + " \"Cfg_HasHiHiAlm\",\n", + " \"Cfg_HasHiAlm\",\n", + " \"Cfg_HasLoAlm\",\n", + " \"Cfg_HasLoLoAlm\",\n", + " \"Cfg_HasFailAlm\",\n", + " \"Cfg_HiHiResetReqd\",\n", + " \"Cfg_HiResetReqd\",\n", + " \"Cfg_LoResetReqd\",\n", + " \"Cfg_LoLoResetReqd\",\n", + " \"Cfg_FailResetReqd\",\n", + " \"Cfg_HiHiAckReqd\",\n", + " \"Cfg_HiAckReqd\",\n", + " \"Cfg_LoAckReqd\",\n", + " \"Cfg_LoLoAckReqd\",\n", + " \"Cfg_FailAckReqd\",\n", + " \"Cfg_HiHiSeverity\",\n", + " \"Cfg_HiSeverity\",\n", + " \"Cfg_LoSeverity\",\n", + " \"Cfg_LoLoSeverity\",\n", + " \"Cfg_FailSeverity\",\n", + " \"Cfg_InpRawMin\",\n", + " \"Cfg_InpRawMax\",\n", + " \"Cfg_PVEUMin\",\n", + " \"Cfg_PVEUMax\",\n", + " \"Cfg_FiltTC\",\n", + " \"Cfg_HiHiDB\",\n", + " \"Cfg_HiHiOnDly\",\n", + " \"Cfg_HiHiOffDly\",\n", + " \"Cfg_HiHiGateDly\",\n", + " \"Cfg_HiDB\",\n", + " \"Cfg_HiOnDly\",\n", + " \"Cfg_HiOffDly\",\n", + " \"Cfg_HiGateDly\",\n", + " \"Cfg_LoDB\",\n", + " \"Cfg_LoOnDly\",\n", + " \"Cfg_LoOffDly\",\n", + " \"Cfg_LoGateDly\",\n", + " \"Cfg_LoLoDB\",\n", + " \"Cfg_LoLoOnDly\",\n", + " \"Cfg_LoLoOffDly\",\n", + " \"Cfg_LoLoGateDly\",\n", + " \"Cfg_FailHiLim\",\n", + " \"Cfg_FailLoLim\",\n", + " \"Cfg_FailDB\",\n", + " \"Cfg_FailOnDly\",\n", + " \"Cfg_FailOffDly\",\n", + " \"Cfg_FailGateDly\",\n", + " \"PSet_Owner\",\n", + " \"PSet_HiHiLim\",\n", + " \"PSet_HiLim\",\n", + " \"PSet_LoLim\",\n", + " \"PSet_LoLoLim\",\n", + " \"MSet_SubstPV\",\n", + " \"OSet_HiHiLim\",\n", + " \"OSet_HiLim\",\n", + " \"OSet_LoLim\",\n", + " \"OSet_LoLoLim\",\n", + " \"Set_SimPV\",\n", + " \"PCmd_ClearCapt\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_HiHiAck\",\n", + " \"PCmd_HiHiSuppress\",\n", + " \"PCmd_HiHiUnsuppress\",\n", + " \"PCmd_HiHiUnshelve\",\n", + " \"PCmd_HiAck\",\n", + " \"PCmd_HiSuppress\",\n", + " \"PCmd_HiUnsuppress\",\n", + " \"PCmd_HiUnshelve\",\n", + " \"PCmd_LoAck\",\n", + " \"PCmd_LoSuppress\",\n", + " \"PCmd_LoUnsuppress\",\n", + " \"PCmd_LoUnshelve\",\n", + " \"PCmd_LoLoAck\",\n", + " \"PCmd_LoLoSuppress\",\n", + " \"PCmd_LoLoUnsuppress\",\n", + " \"PCmd_LoLoUnshelve\",\n", + " \"PCmd_FailAck\",\n", + " \"PCmd_FailSuppress\",\n", + " \"PCmd_FailUnsuppress\",\n", + " \"PCmd_FailUnshelve\",\n", + " \"MCmd_SubstPV\",\n", + " \"MCmd_InpPV\",\n", + " \"OCmd_ClearCapt\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_Unlock\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_ResetAckAll\",\n", + " \"Val\",\n", + " \"Val_InpPV\",\n", + " \"Val_PVMinCapt\",\n", + " \"Val_PVMaxCapt\",\n", + " \"Val_PVEUMin\",\n", + " \"Val_PVEUMax\",\n", + " \"SrcQ_IO\",\n", + " \"SrcQ\",\n", + " \"Val_Fault\",\n", + " \"Val_Mode\",\n", + " \"Val_Owner\",\n", + " \"Val_Notify\",\n", + " \"Val_HiHiLim\",\n", + " \"Val_HiLim\",\n", + " \"Val_LoLim\",\n", + " \"Val_LoLoLim\",\n", + " \"Sts_SubstPV\",\n", + " \"Sts_InpPV\",\n", + " \"Sts_PVBad\",\n", + " \"Sts_PVUncertain\",\n", + " \"Sts_MaintByp\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Raw\",\n", + " \"Err_EU\",\n", + " \"Err_Timer\",\n", + " \"Err_Filt\",\n", + " \"Err_DB\",\n", + " \"Err_Alarm\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Sts_HiHiCmp\",\n", + " \"Sts_HiHiGate\",\n", + " \"Sts_HiHi\",\n", + " \"Alm_HiHi\",\n", + " \"Ack_HiHi\",\n", + " \"Sts_HiHiDisabled\",\n", + " \"Sts_HiHiSuppressed\",\n", + " \"Sts_HiHiShelved\",\n", + " \"Sts_HiCmp\",\n", + " \"Sts_HiGate\",\n", + " \"Sts_Hi\",\n", + " \"Alm_Hi\",\n", + " \"Ack_Hi\",\n", + " \"Sts_HiDisabled\",\n", + " \"Sts_HiSuppressed\",\n", + " \"Sts_HiShelved\",\n", + " \"Sts_LoCmp\",\n", + " \"Sts_LoGate\",\n", + " \"Sts_Lo\",\n", + " \"Alm_Lo\",\n", + " \"Ack_Lo\",\n", + " \"Sts_LoDisabled\",\n", + " \"Sts_LoSuppressed\",\n", + " \"Sts_LoShelved\",\n", + " \"Sts_LoLoCmp\",\n", + " \"Sts_LoLoGate\",\n", + " \"Sts_LoLo\",\n", + " \"Alm_LoLo\",\n", + " \"Ack_LoLo\",\n", + " \"Sts_LoLoDisabled\",\n", + " \"Sts_LoLoSuppressed\",\n", + " \"Sts_LoLoShelved\",\n", + " \"Sts_FailCmp\",\n", + " \"Sts_FailGate\",\n", + " \"Sts_Fail\",\n", + " \"Alm_Fail\",\n", + " \"Ack_Fail\",\n", + " \"Sts_FailDisabled\",\n", + " \"Sts_FailSuppressed\",\n", + " \"Sts_FailShelved\",\n", + " \"Rdy_SubstPV\",\n", + " \"Rdy_InpPV\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_ResetAckAll\",\n", + " \"Rdy_OSet\",\n", + " \"P_AIn\",\n", + " \"LoLo\",\n", + " \"Lo\",\n", + " \"Hi\",\n", + " \"HiHi\",\n", + " \"Mode\",\n", + " \"Cfg_EU\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Label\",\n", + " \"Cfg_Desc\",\n", + " \"Fail\",\n", + " \"Wrk_Notify\",\n", + " \"Inf_Tab\",\n", + " \"Wrk_Fault\",\n", + " \"Wrk_SrcQ\",\n", + " \"Wrk_SubstPV\",\n", + " \"Wrk_UnfiltPV\",\n", + " \"Wrk_Alpha\",\n", + " \"Wrk_ScanT\",\n", + " \"Wrk_ScanTime\",\n", + " \"Wrk_FiltPV\",\n", + " \"Wrk_ValidONS\",\n", + " \"Wrk_SelPVDINT\",\n", + " \"Wrk_SelPVInfNaN\",\n", + " \"Inf_Type\",\n", + " \"Wrk_Fail\",\n", + " \"Wrk_LoLo\",\n", + " \"Wrk_Lo\",\n", + " \"Wrk_Hi\",\n", + " \"Wrk_HiHi\",\n", + " \"FailGate\",\n", + " \"LoLoGate\",\n", + " \"LoGate\",\n", + " \"HiHiGate\",\n", + " \"HiGate\",\n", + " \"Wrk_InpInfNaN\",\n", + " \"Wrk_InpDINT\",\n", + " \"Inf_Lib\",\n", + " \"Wrk_InpFail\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1411,\n", + " \"structure_size\": 1868,\n", + " \"member_count\": 233,\n", + " \"structure_handle\": 13998\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_AIn\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"Lifetime_Flow_Meter_Gal\": {\n", - " \"tag_name\": \"Lifetime_Flow_Meter_Gal\",\n", + " \"FT01_FlowRate\": {\n", + " \"tag_name\": \"FT01_FlowRate\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 48,\n", - " \"symbol_address\": 1148,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 62024,\n", + " \"symbol_object_address\": 907300,\n", + " \"software_control\": 67174439,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 1864,\n", + " \"data_type\": {\n", + " \"name\": \"P_AIn\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_PV\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_PVSrcQ\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_PVBad\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_PVUncertain\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_Sim\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Inp_HiHiGate\": {\n", + " \"offset\": 1568,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_HiGate\": {\n", + " \"offset\": 1708,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_LoGate\": {\n", + " \"offset\": 1428,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_LoLoGate\": {\n", + " \"offset\": 1288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_FailGate\": {\n", + " \"offset\": 1148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_NoSubstPV\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_SetTrack\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_HasChanObj\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_UseChanSrcQ\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 784,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 784,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HasHiHiAlm\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasHiAlm\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasLoAlm\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasLoLoAlm\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasFailAlm\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HiHiResetReqd\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_HiResetReqd\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_LoResetReqd\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_LoLoResetReqd\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_FailResetReqd\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_HiHiAckReqd\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HiAckReqd\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_LoAckReqd\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_LoLoAckReqd\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_FailAckReqd\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HiHiSeverity\": {\n", + " \"offset\": 632,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiSeverity\": {\n", + " \"offset\": 476,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoSeverity\": {\n", + " \"offset\": 320,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoSeverity\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailSeverity\": {\n", + " \"offset\": 940,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpRawMin\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpRawMax\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEUMin\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEUMax\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FiltTC\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiDB\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiOnDly\": {\n", + " \"offset\": 1576,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiOffDly\": {\n", + " \"offset\": 1580,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiGateDly\": {\n", + " \"offset\": 1572,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDB\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiOnDly\": {\n", + " \"offset\": 1716,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiOffDly\": {\n", + " \"offset\": 1720,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiGateDly\": {\n", + " \"offset\": 1712,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDB\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoOnDly\": {\n", + " \"offset\": 1436,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoOffDly\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoGateDly\": {\n", + " \"offset\": 1432,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDB\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoOnDly\": {\n", + " \"offset\": 1296,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoOffDly\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoGateDly\": {\n", + " \"offset\": 1292,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailHiLim\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailLoLim\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailDB\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailOnDly\": {\n", + " \"offset\": 1156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailOffDly\": {\n", + " \"offset\": 1160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailGateDly\": {\n", + " \"offset\": 1152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_Owner\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_HiHiLim\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_HiLim\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_LoLim\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_LoLoLim\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MSet_SubstPV\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_HiHiLim\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_HiLim\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_LoLim\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_LoLoLim\": {\n", + " \"offset\": 96,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Set_SimPV\": {\n", + " \"offset\": 100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PCmd_ClearCapt\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 784,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_HiHiAck\": {\n", + " \"offset\": 629,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_HiHiSuppress\": {\n", + " \"offset\": 629,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_HiHiUnsuppress\": {\n", + " \"offset\": 629,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_HiHiUnshelve\": {\n", + " \"offset\": 629,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_HiAck\": {\n", + " \"offset\": 473,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_HiSuppress\": {\n", + " \"offset\": 473,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_HiUnsuppress\": {\n", + " \"offset\": 473,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_HiUnshelve\": {\n", + " \"offset\": 473,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_LoAck\": {\n", + " \"offset\": 317,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_LoSuppress\": {\n", + " \"offset\": 317,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_LoUnsuppress\": {\n", + " \"offset\": 317,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_LoUnshelve\": {\n", + " \"offset\": 317,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_LoLoAck\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_LoLoSuppress\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_LoLoUnsuppress\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_LoLoUnshelve\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_FailAck\": {\n", + " \"offset\": 937,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_FailSuppress\": {\n", + " \"offset\": 937,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_FailUnsuppress\": {\n", + " \"offset\": 937,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_FailUnshelve\": {\n", + " \"offset\": 937,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"MCmd_SubstPV\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_InpPV\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_ClearCapt\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Unlock\": {\n", + " \"offset\": 785,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_ResetAckAll\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Val\": {\n", + " \"offset\": 104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_InpPV\": {\n", + " \"offset\": 108,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVMinCapt\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVMaxCapt\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVEUMin\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVEUMax\": {\n", + " \"offset\": 124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ_IO\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ\": {\n", + " \"offset\": 129,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Fault\": {\n", + " \"offset\": 130,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Mode\": {\n", + " \"offset\": 788,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Owner\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_HiHiLim\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_HiLim\": {\n", + " \"offset\": 144,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LoLim\": {\n", + " \"offset\": 148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LoLoLim\": {\n", + " \"offset\": 152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_SubstPV\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_InpPV\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_PVBad\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_PVUncertain\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_MaintByp\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Err_Raw\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_EU\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Err_Filt\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Err_DB\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Err_Alarm\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 786,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_HiHiCmp\": {\n", + " \"offset\": 1568,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_HiHiGate\": {\n", + " \"offset\": 1568,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_HiHi\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_HiHi\": {\n", + " \"offset\": 694,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_HiHi\": {\n", + " \"offset\": 694,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiHiDisabled\": {\n", + " \"offset\": 695,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiHiSuppressed\": {\n", + " \"offset\": 694,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_HiHiShelved\": {\n", + " \"offset\": 694,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_HiCmp\": {\n", + " \"offset\": 1708,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_HiGate\": {\n", + " \"offset\": 1708,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Hi\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_Hi\": {\n", + " \"offset\": 538,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_Hi\": {\n", + " \"offset\": 538,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiDisabled\": {\n", + " \"offset\": 539,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiSuppressed\": {\n", + " \"offset\": 538,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_HiShelved\": {\n", + " \"offset\": 538,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_LoCmp\": {\n", + " \"offset\": 1428,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_LoGate\": {\n", + " \"offset\": 1428,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Lo\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_Lo\": {\n", + " \"offset\": 382,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_Lo\": {\n", + " \"offset\": 382,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoDisabled\": {\n", + " \"offset\": 383,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoSuppressed\": {\n", + " \"offset\": 382,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_LoShelved\": {\n", + " \"offset\": 382,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_LoLoCmp\": {\n", + " \"offset\": 1288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_LoLoGate\": {\n", + " \"offset\": 1288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_LoLo\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_LoLo\": {\n", + " \"offset\": 226,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_LoLo\": {\n", + " \"offset\": 226,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoLoDisabled\": {\n", + " \"offset\": 227,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoLoSuppressed\": {\n", + " \"offset\": 226,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_LoLoShelved\": {\n", + " \"offset\": 226,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FailCmp\": {\n", + " \"offset\": 1148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_FailGate\": {\n", + " \"offset\": 1148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Fail\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_Fail\": {\n", + " \"offset\": 1002,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_Fail\": {\n", + " \"offset\": 1002,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailDisabled\": {\n", + " \"offset\": 1003,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailSuppressed\": {\n", + " \"offset\": 1002,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_FailShelved\": {\n", + " \"offset\": 1002,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_SubstPV\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_InpPV\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_ResetAckAll\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_OSet\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"P_AIn\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LoLo\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Lo\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Hi\": {\n", + " \"offset\": 472,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"HiHi\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Mode\": {\n", + " \"offset\": 784,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Mode\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_OvrdOverLock\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_UnlockRel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_ProgOperSel\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_MAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_MRel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_OAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_OLock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_OUnlock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_ORel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"P_Mode\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_Locked\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Prog\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_Maint\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_Hand\",\n", + " \"Inp_Ovrd\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_OvrdOverLock\",\n", + " \"Cfg_ProgDefault\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_UnlockRel\",\n", + " \"Val\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_ProgOperSel\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Rdy_MAcq\",\n", + " \"Rdy_MRel\",\n", + " \"Rdy_OAcq\",\n", + " \"Rdy_OLock\",\n", + " \"Rdy_OUnlock\",\n", + " \"Rdy_ORel\",\n", + " \"P_Mode\",\n", + " \"Wrk_Locked\",\n", + " \"Wrk_Prog\",\n", + " \"Wrk_Maint\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 228,\n", + " \"structure_size\": 48,\n", + " \"member_count\": 39,\n", + " \"structure_handle\": 16800\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Mode\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_EU\": {\n", + " \"offset\": 832,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 844,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Label\": {\n", + " \"offset\": 868,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Desc\": {\n", + " \"offset\": 892,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Fail\": {\n", + " \"offset\": 936,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Notify\": {\n", + " \"offset\": 1092,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 1093,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Fault\": {\n", + " \"offset\": 1094,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SrcQ\": {\n", + " \"offset\": 1095,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SubstPV\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_UnfiltPV\": {\n", + " \"offset\": 1096,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Alpha\": {\n", + " \"offset\": 1100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ScanT\": {\n", + " \"offset\": 1104,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ScanTime\": {\n", + " \"offset\": 1116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_FiltPV\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ValidONS\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Wrk_SelPVDINT\": {\n", + " \"offset\": 1124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SelPVInfNaN\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 1128,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Fail\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Wrk_LoLo\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_Lo\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Wrk_Hi\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_HiHi\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FailGate\": {\n", + " \"offset\": 1148,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"LoLoGate\": {\n", + " \"offset\": 1288,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"LoGate\": {\n", + " \"offset\": 1428,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"HiHiGate\": {\n", + " \"offset\": 1568,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"HiGate\": {\n", + " \"offset\": 1708,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_InpInfNaN\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_InpDINT\": {\n", + " \"offset\": 1848,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 1852,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_InpFail\": {\n", + " \"offset\": 157,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_PV\",\n", + " \"Inp_PVSrcQ\",\n", + " \"Inp_PVBad\",\n", + " \"Inp_PVUncertain\",\n", + " \"Inp_Sim\",\n", + " \"Inp_HiHiGate\",\n", + " \"Inp_HiGate\",\n", + " \"Inp_LoGate\",\n", + " \"Inp_LoLoGate\",\n", + " \"Inp_FailGate\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_NoSubstPV\",\n", + " \"Cfg_SetTrack\",\n", + " \"Cfg_HasChanObj\",\n", + " \"Cfg_UseChanSrcQ\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_ProgDefault\",\n", + " \"Cfg_HasHiHiAlm\",\n", + " \"Cfg_HasHiAlm\",\n", + " \"Cfg_HasLoAlm\",\n", + " \"Cfg_HasLoLoAlm\",\n", + " \"Cfg_HasFailAlm\",\n", + " \"Cfg_HiHiResetReqd\",\n", + " \"Cfg_HiResetReqd\",\n", + " \"Cfg_LoResetReqd\",\n", + " \"Cfg_LoLoResetReqd\",\n", + " \"Cfg_FailResetReqd\",\n", + " \"Cfg_HiHiAckReqd\",\n", + " \"Cfg_HiAckReqd\",\n", + " \"Cfg_LoAckReqd\",\n", + " \"Cfg_LoLoAckReqd\",\n", + " \"Cfg_FailAckReqd\",\n", + " \"Cfg_HiHiSeverity\",\n", + " \"Cfg_HiSeverity\",\n", + " \"Cfg_LoSeverity\",\n", + " \"Cfg_LoLoSeverity\",\n", + " \"Cfg_FailSeverity\",\n", + " \"Cfg_InpRawMin\",\n", + " \"Cfg_InpRawMax\",\n", + " \"Cfg_PVEUMin\",\n", + " \"Cfg_PVEUMax\",\n", + " \"Cfg_FiltTC\",\n", + " \"Cfg_HiHiDB\",\n", + " \"Cfg_HiHiOnDly\",\n", + " \"Cfg_HiHiOffDly\",\n", + " \"Cfg_HiHiGateDly\",\n", + " \"Cfg_HiDB\",\n", + " \"Cfg_HiOnDly\",\n", + " \"Cfg_HiOffDly\",\n", + " \"Cfg_HiGateDly\",\n", + " \"Cfg_LoDB\",\n", + " \"Cfg_LoOnDly\",\n", + " \"Cfg_LoOffDly\",\n", + " \"Cfg_LoGateDly\",\n", + " \"Cfg_LoLoDB\",\n", + " \"Cfg_LoLoOnDly\",\n", + " \"Cfg_LoLoOffDly\",\n", + " \"Cfg_LoLoGateDly\",\n", + " \"Cfg_FailHiLim\",\n", + " \"Cfg_FailLoLim\",\n", + " \"Cfg_FailDB\",\n", + " \"Cfg_FailOnDly\",\n", + " \"Cfg_FailOffDly\",\n", + " \"Cfg_FailGateDly\",\n", + " \"PSet_Owner\",\n", + " \"PSet_HiHiLim\",\n", + " \"PSet_HiLim\",\n", + " \"PSet_LoLim\",\n", + " \"PSet_LoLoLim\",\n", + " \"MSet_SubstPV\",\n", + " \"OSet_HiHiLim\",\n", + " \"OSet_HiLim\",\n", + " \"OSet_LoLim\",\n", + " \"OSet_LoLoLim\",\n", + " \"Set_SimPV\",\n", + " \"PCmd_ClearCapt\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_HiHiAck\",\n", + " \"PCmd_HiHiSuppress\",\n", + " \"PCmd_HiHiUnsuppress\",\n", + " \"PCmd_HiHiUnshelve\",\n", + " \"PCmd_HiAck\",\n", + " \"PCmd_HiSuppress\",\n", + " \"PCmd_HiUnsuppress\",\n", + " \"PCmd_HiUnshelve\",\n", + " \"PCmd_LoAck\",\n", + " \"PCmd_LoSuppress\",\n", + " \"PCmd_LoUnsuppress\",\n", + " \"PCmd_LoUnshelve\",\n", + " \"PCmd_LoLoAck\",\n", + " \"PCmd_LoLoSuppress\",\n", + " \"PCmd_LoLoUnsuppress\",\n", + " \"PCmd_LoLoUnshelve\",\n", + " \"PCmd_FailAck\",\n", + " \"PCmd_FailSuppress\",\n", + " \"PCmd_FailUnsuppress\",\n", + " \"PCmd_FailUnshelve\",\n", + " \"MCmd_SubstPV\",\n", + " \"MCmd_InpPV\",\n", + " \"OCmd_ClearCapt\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_Unlock\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_ResetAckAll\",\n", + " \"Val\",\n", + " \"Val_InpPV\",\n", + " \"Val_PVMinCapt\",\n", + " \"Val_PVMaxCapt\",\n", + " \"Val_PVEUMin\",\n", + " \"Val_PVEUMax\",\n", + " \"SrcQ_IO\",\n", + " \"SrcQ\",\n", + " \"Val_Fault\",\n", + " \"Val_Mode\",\n", + " \"Val_Owner\",\n", + " \"Val_Notify\",\n", + " \"Val_HiHiLim\",\n", + " \"Val_HiLim\",\n", + " \"Val_LoLim\",\n", + " \"Val_LoLoLim\",\n", + " \"Sts_SubstPV\",\n", + " \"Sts_InpPV\",\n", + " \"Sts_PVBad\",\n", + " \"Sts_PVUncertain\",\n", + " \"Sts_MaintByp\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Raw\",\n", + " \"Err_EU\",\n", + " \"Err_Timer\",\n", + " \"Err_Filt\",\n", + " \"Err_DB\",\n", + " \"Err_Alarm\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Sts_HiHiCmp\",\n", + " \"Sts_HiHiGate\",\n", + " \"Sts_HiHi\",\n", + " \"Alm_HiHi\",\n", + " \"Ack_HiHi\",\n", + " \"Sts_HiHiDisabled\",\n", + " \"Sts_HiHiSuppressed\",\n", + " \"Sts_HiHiShelved\",\n", + " \"Sts_HiCmp\",\n", + " \"Sts_HiGate\",\n", + " \"Sts_Hi\",\n", + " \"Alm_Hi\",\n", + " \"Ack_Hi\",\n", + " \"Sts_HiDisabled\",\n", + " \"Sts_HiSuppressed\",\n", + " \"Sts_HiShelved\",\n", + " \"Sts_LoCmp\",\n", + " \"Sts_LoGate\",\n", + " \"Sts_Lo\",\n", + " \"Alm_Lo\",\n", + " \"Ack_Lo\",\n", + " \"Sts_LoDisabled\",\n", + " \"Sts_LoSuppressed\",\n", + " \"Sts_LoShelved\",\n", + " \"Sts_LoLoCmp\",\n", + " \"Sts_LoLoGate\",\n", + " \"Sts_LoLo\",\n", + " \"Alm_LoLo\",\n", + " \"Ack_LoLo\",\n", + " \"Sts_LoLoDisabled\",\n", + " \"Sts_LoLoSuppressed\",\n", + " \"Sts_LoLoShelved\",\n", + " \"Sts_FailCmp\",\n", + " \"Sts_FailGate\",\n", + " \"Sts_Fail\",\n", + " \"Alm_Fail\",\n", + " \"Ack_Fail\",\n", + " \"Sts_FailDisabled\",\n", + " \"Sts_FailSuppressed\",\n", + " \"Sts_FailShelved\",\n", + " \"Rdy_SubstPV\",\n", + " \"Rdy_InpPV\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_ResetAckAll\",\n", + " \"Rdy_OSet\",\n", + " \"P_AIn\",\n", + " \"LoLo\",\n", + " \"Lo\",\n", + " \"Hi\",\n", + " \"HiHi\",\n", + " \"Mode\",\n", + " \"Cfg_EU\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Label\",\n", + " \"Cfg_Desc\",\n", + " \"Fail\",\n", + " \"Wrk_Notify\",\n", + " \"Inf_Tab\",\n", + " \"Wrk_Fault\",\n", + " \"Wrk_SrcQ\",\n", + " \"Wrk_SubstPV\",\n", + " \"Wrk_UnfiltPV\",\n", + " \"Wrk_Alpha\",\n", + " \"Wrk_ScanT\",\n", + " \"Wrk_ScanTime\",\n", + " \"Wrk_FiltPV\",\n", + " \"Wrk_ValidONS\",\n", + " \"Wrk_SelPVDINT\",\n", + " \"Wrk_SelPVInfNaN\",\n", + " \"Inf_Type\",\n", + " \"Wrk_Fail\",\n", + " \"Wrk_LoLo\",\n", + " \"Wrk_Lo\",\n", + " \"Wrk_Hi\",\n", + " \"Wrk_HiHi\",\n", + " \"FailGate\",\n", + " \"LoLoGate\",\n", + " \"LoGate\",\n", + " \"HiHiGate\",\n", + " \"HiGate\",\n", + " \"Wrk_InpInfNaN\",\n", + " \"Wrk_InpDINT\",\n", + " \"Inf_Lib\",\n", + " \"Wrk_InpFail\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1411,\n", + " \"structure_size\": 1868,\n", + " \"member_count\": 233,\n", + " \"structure_handle\": 13998\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_AIn\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"Totalizer_FM_Yesterday_Total_Gal\": {\n", - " \"tag_name\": \"Totalizer_FM_Yesterday_Total_Gal\",\n", + " \"val_Flowmeter\": {\n", + " \"tag_name\": \"val_Flowmeter\",\n", " \"dim\": 0,\n", " \"alias\": true,\n", " \"instance_id\": 49,\n", - " \"symbol_address\": 1152,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 62128,\n", + " \"symbol_object_address\": 907340,\n", + " \"software_control\": 1879113776,\n", + " \"external_access\": \"Read Only\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -938,15 +41962,15 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Totalizer_FM_Current_Day_Total_Gal\": {\n", - " \"tag_name\": \"Totalizer_FM_Current_Day_Total_Gal\",\n", + " \"VFD_CurRunHrs\": {\n", + " \"tag_name\": \"VFD_CurRunHrs\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 50,\n", - " \"symbol_address\": 1156,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 44288,\n", + " \"symbol_object_address\": 907380,\n", + " \"software_control\": 1946222646,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -956,15 +41980,15 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Totalizer_FM_Last_Month_Gal\": {\n", - " \"tag_name\": \"Totalizer_FM_Last_Month_Gal\",\n", + " \"VFD_MaxRunHrs\": {\n", + " \"tag_name\": \"VFD_MaxRunHrs\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 51,\n", - " \"symbol_address\": 1160,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 44256,\n", + " \"symbol_object_address\": 907420,\n", + " \"software_control\": 1946222647,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -974,33 +41998,33 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Totalizer_FM_Current_Month_Gal\": {\n", - " \"tag_name\": \"Totalizer_FM_Current_Month_Gal\",\n", + " \"const_controlMode_Flow\": {\n", + " \"tag_name\": \"const_controlMode_Flow\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 52,\n", - " \"symbol_address\": 1164,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 63920,\n", + " \"symbol_object_address\": 907460,\n", + " \"software_control\": 1140916262,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Totalizer_FM_Yesterday_Total_BBLs\": {\n", - " \"tag_name\": \"Totalizer_FM_Yesterday_Total_BBLs\",\n", + " \"GAL_PER_BBL\": {\n", + " \"tag_name\": \"GAL_PER_BBL\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 53,\n", - " \"symbol_address\": 1168,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 64768,\n", + " \"symbol_object_address\": 907500,\n", + " \"software_control\": 1946222619,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -1010,15 +42034,15 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Totalizer_FM_Current_Day_Total_BBLs\": {\n", - " \"tag_name\": \"Totalizer_FM_Current_Day_Total_BBLs\",\n", + " \"VFD_TotRunHrs\": {\n", + " \"tag_name\": \"VFD_TotRunHrs\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 54,\n", - " \"symbol_address\": 1172,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 44224,\n", + " \"symbol_object_address\": 907540,\n", + " \"software_control\": 1946222648,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -1028,141 +42052,12768 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Totalizer_FM_Last_Month_BBLs\": {\n", - " \"tag_name\": \"Totalizer_FM_Last_Month_BBLs\",\n", + " \"PowerFlex755_RunTime\": {\n", + " \"tag_name\": \"PowerFlex755_RunTime\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 55,\n", - " \"symbol_address\": 1176,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 37216,\n", + " \"symbol_object_address\": 907580,\n", + " \"software_control\": 67174462,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 3688,\n", + " \"data_type\": {\n", + " \"name\": \"P_RunTime\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Starting\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Running\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_ClearStarts\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_ClearMaxHrs\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_ClearTotHrs\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"MCmd_ClearStarts\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"MCmd_ClearMaxHrs\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"MCmd_ClearTotHrs\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Val_Starts\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CurRunHrs\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MaxRunHrs\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_TotRunHrs\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"P_RunTime\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_CurHours\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_CurRunT\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_TotTenths\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Starts\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"COUNTER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"CU\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"CD\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OV\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"UN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"CU\",\n", + " \"CD\",\n", + " \"DN\",\n", + " \"OV\",\n", + " \"UN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 40,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 8,\n", + " \"structure_handle\": 3970\n", + " }\n", + " },\n", + " \"data_type_name\": \"COUNTER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_TotRunT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_MaxHours\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Label\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Desc\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 184,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_Starting\",\n", + " \"Inp_Running\",\n", + " \"Cfg_PCmdClear\",\n", + " \"PCmd_ClearStarts\",\n", + " \"PCmd_ClearMaxHrs\",\n", + " \"PCmd_ClearTotHrs\",\n", + " \"MCmd_ClearStarts\",\n", + " \"MCmd_ClearMaxHrs\",\n", + " \"MCmd_ClearTotHrs\",\n", + " \"Val_Starts\",\n", + " \"Val_CurRunHrs\",\n", + " \"Val_MaxRunHrs\",\n", + " \"Val_TotRunHrs\",\n", + " \"P_RunTime\",\n", + " \"Wrk_CurHours\",\n", + " \"Wrk_CurRunT\",\n", + " \"Wrk_TotTenths\",\n", + " \"Wrk_Starts\",\n", + " \"Wrk_TotRunT\",\n", + " \"Wrk_MaxHours\",\n", + " \"Inf_Tab\",\n", + " \"Inf_Type\",\n", + " \"Cfg_Label\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Desc\",\n", + " \"Inf_Lib\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 186,\n", + " \"structure_size\": 200,\n", + " \"member_count\": 29,\n", + " \"structure_handle\": 33151\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_RunTime\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"Today_Total\": {\n", - " \"tag_name\": \"Today_Total\",\n", + " \"watchdog_INT\": {\n", + " \"tag_name\": \"watchdog_INT\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 56,\n", - " \"symbol_address\": 1180,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 64112,\n", + " \"symbol_object_address\": 907620,\n", + " \"software_control\": 1140916256,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Totalizer_FM_Current_Month_BBLs\": {\n", - " \"tag_name\": \"Totalizer_FM_Current_Month_BBLs\",\n", + " \"PIC01_DischargePressure\": {\n", + " \"tag_name\": \"PIC01_DischargePressure\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 57,\n", - " \"symbol_address\": 1184,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Prev_Day_Total\": {\n", - " \"tag_name\": \"Prev_Day_Total\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 58,\n", - " \"symbol_address\": 1188,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Month_Total\": {\n", - " \"tag_name\": \"Month_Total\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 59,\n", - " \"symbol_address\": 1192,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Lifetime_Flow_Meter_BBLS\": {\n", - " \"tag_name\": \"Lifetime_Flow_Meter_BBLS\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 60,\n", - " \"symbol_address\": 1196,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Prev_Month_Total\": {\n", - " \"tag_name\": \"Prev_Month_Total\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 61,\n", - " \"symbol_address\": 1200,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 37504,\n", + " \"symbol_object_address\": 907820,\n", + " \"software_control\": 67174459,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 2310,\n", + " \"data_type\": {\n", + " \"name\": \"P_PIDE\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_PV\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_CascSP\": {\n", + " \"offset\": 196,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_FF\": {\n", + " \"offset\": 264,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_FFPrev\": {\n", + " \"offset\": 268,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_CVInitVal\": {\n", + " \"offset\": 224,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_CVPrev\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_PVSrcQ\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdCmd\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdRatio\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdSP\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdCV\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_HandFdbk\": {\n", + " \"offset\": 272,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_PVBad\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_PVUncertain\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_CVIOFault\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_UseFFPrev\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Inp_UseCVInitVal\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_UseCVPrev\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Inp_WindupHi\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Inp_WindupLo\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_HandFdbkBad\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Inp_IntlkOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Inp_NBIntlkOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Inp_HiHiDevGate\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_HiDevGate\": {\n", + " \"offset\": 1596,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_LoDevGate\": {\n", + " \"offset\": 980,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_LoLoDevGate\": {\n", + " \"offset\": 684,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HasRatio\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_HasCasc\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_PVTrack\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_CtrlAction\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_Depend\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_DerivSmooth\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_ZCOff\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_LimitManCV\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_InitToMan\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_PropSPAct\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_DerivSPAct\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_PwrupLM\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SetTrack\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_SetTrackOvrdHand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_HasIntlkObj\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_HasCascSPNav\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_HasPVNav\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_HasCVNav\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_OvrdIntlk\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HasHiHiDevAlm\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasHiDevAlm\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasLoDevAlm\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasLoLoDevAlm\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasIntlkTripAlm\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasFailAlm\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HiHiDevResetReqd\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_HiDevResetReqd\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_LoDevResetReqd\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_LoLoDevResetReqd\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_IntlkTripResetReqd\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_FailResetReqd\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_HiHiDevAckReqd\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HiDevAckReqd\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_LoDevAckReqd\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_LoLoDevAckReqd\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_IntlkTripAckReqd\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_FailAckReqd\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HiHiDevSeverity\": {\n", + " \"offset\": 1444,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDevSeverity\": {\n", + " \"offset\": 1740,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDevSeverity\": {\n", + " \"offset\": 1124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDevSeverity\": {\n", + " \"offset\": 828,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IntlkTripSeverity\": {\n", + " \"offset\": 1948,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailSeverity\": {\n", + " \"offset\": 2104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MinRatio\": {\n", + " \"offset\": 220,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxRatio\": {\n", + " \"offset\": 216,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MinSP\": {\n", + " \"offset\": 204,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxSP\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEUMin\": {\n", + " \"offset\": 184,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEUMax\": {\n", + " \"offset\": 180,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVEUMin\": {\n", + " \"offset\": 248,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVEUMax\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVRoCLim\": {\n", + " \"offset\": 260,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PGain\": {\n", + " \"offset\": 276,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IGain\": {\n", + " \"offset\": 280,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_DGain\": {\n", + " \"offset\": 284,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_ZCDB\": {\n", + " \"offset\": 288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MinCV\": {\n", + " \"offset\": 256,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxCV\": {\n", + " \"offset\": 252,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxInactiveCV\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IntlkCV\": {\n", + " \"offset\": 236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_DevDB\": {\n", + " \"offset\": 340,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PwrupSP\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PwrupCV\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiDevOnDly\": {\n", + " \"offset\": 1308,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiDevOffDly\": {\n", + " \"offset\": 1312,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiHiDevGateDly\": {\n", + " \"offset\": 1304,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDevOnDly\": {\n", + " \"offset\": 1604,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDevOffDly\": {\n", + " \"offset\": 1608,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_HiDevGateDly\": {\n", + " \"offset\": 1600,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDevOnDly\": {\n", + " \"offset\": 988,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDevOffDly\": {\n", + " \"offset\": 992,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoDevGateDly\": {\n", + " \"offset\": 984,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDevOnDly\": {\n", + " \"offset\": 692,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDevOffDly\": {\n", + " \"offset\": 696,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_LoLoDevGateDly\": {\n", + " \"offset\": 688,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_Ratio\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_SP\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_CV\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_HiHiDevLim\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_HiDevLim\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_LoDevLim\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_LoLoDevLim\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_Owner\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_Ratio\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_SP\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_CV\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_HiHiDevLim\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_HiDevLim\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_LoDevLim\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_LoLoDevLim\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PCmd_Casc\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Auto\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Man\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_HiHiDevAck\": {\n", + " \"offset\": 1441,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_HiHiDevSuppress\": {\n", + " \"offset\": 1441,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_HiHiDevUnsuppress\": {\n", + " \"offset\": 1441,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_HiHiDevUnshelve\": {\n", + " \"offset\": 1441,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_HiDevAck\": {\n", + " \"offset\": 1737,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_HiDevSuppress\": {\n", + " \"offset\": 1737,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_HiDevUnsuppress\": {\n", + " \"offset\": 1737,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_HiDevUnshelve\": {\n", + " \"offset\": 1737,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_LoDevAck\": {\n", + " \"offset\": 1121,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_LoDevSuppress\": {\n", + " \"offset\": 1121,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_LoDevUnsuppress\": {\n", + " \"offset\": 1121,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_LoDevUnshelve\": {\n", + " \"offset\": 1121,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_LoLoDevAck\": {\n", + " \"offset\": 825,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_LoLoDevSuppress\": {\n", + " \"offset\": 825,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_LoLoDevUnsuppress\": {\n", + " \"offset\": 825,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_LoLoDevUnshelve\": {\n", + " \"offset\": 825,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_IntlkTripAck\": {\n", + " \"offset\": 1945,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_IntlkTripSuppress\": {\n", + " \"offset\": 1945,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_IntlkTripUnsuppress\": {\n", + " \"offset\": 1945,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_IntlkTripUnshelve\": {\n", + " \"offset\": 1945,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_FailAck\": {\n", + " \"offset\": 2101,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_FailSuppress\": {\n", + " \"offset\": 2101,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_FailUnsuppress\": {\n", + " \"offset\": 2101,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_FailUnshelve\": {\n", + " \"offset\": 2101,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Casc\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Auto\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"OCmd_Man\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_Bypass\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Check\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Unlock\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_ResetAckAll\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Out_CV\": {\n", + " \"offset\": 372,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PV\": {\n", + " \"offset\": 96,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Ratio\": {\n", + " \"offset\": 400,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SPSet\": {\n", + " \"offset\": 100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SP\": {\n", + " \"offset\": 380,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_E\": {\n", + " \"offset\": 392,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CVSet\": {\n", + " \"offset\": 104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CVOut\": {\n", + " \"offset\": 376,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVPercent\": {\n", + " \"offset\": 388,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SPPercent\": {\n", + " \"offset\": 384,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_EPercent\": {\n", + " \"offset\": 396,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_ActExecT\": {\n", + " \"offset\": 404,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Init\": {\n", + " \"offset\": 108,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVEUMin\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_PVEUMax\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CVEUMin\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_CVEUMax\": {\n", + " \"offset\": 124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ_IO\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ\": {\n", + " \"offset\": 129,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Sts\": {\n", + " \"offset\": 130,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Fault\": {\n", + " \"offset\": 131,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_State\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Mode\": {\n", + " \"offset\": 1896,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Owner\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_HiHiDevLim\": {\n", + " \"offset\": 324,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_HiDevLim\": {\n", + " \"offset\": 328,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LoDevLim\": {\n", + " \"offset\": 144,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LoLoDevLim\": {\n", + " \"offset\": 148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_InstrFaults1\": {\n", + " \"offset\": 152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_InstrFaults2\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Casc\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_Auto\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Man\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Initializing\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_InitReq\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_WindupHi\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_WindupLo\": {\n", + " \"offset\": 369,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_ZCDBOn\": {\n", + " \"offset\": 369,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_RatioClamped\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_SPBad\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_SPClamped\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_PVBad\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_PVUncertain\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_FFBad\": {\n", + " \"offset\": 414,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FFPrevBad\": {\n", + " \"offset\": 414,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_CVBad\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_CVPrevBad\": {\n", + " \"offset\": 413,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_CVInitValBad\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HandFdbkBad\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_IntlkCV\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_CVClamped\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_CVRamping\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_Active\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Available\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Bypass\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_BypActive\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Disabled\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_NotRdy\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Nrdy_Disabled\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Nrdy_CfgErr\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Nrdy_Intlk\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Nrdy_Init\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Nrdy_IOFault\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Nrdy_NoMode\": {\n", + " \"offset\": 161,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_MaintByp\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Err_RatioLim\": {\n", + " \"offset\": 413,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Err_SPLim\": {\n", + " \"offset\": 413,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_PVEU\": {\n", + " \"offset\": 412,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Err_CVLim\": {\n", + " \"offset\": 414,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_CVEU\": {\n", + " \"offset\": 414,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Err_DB\": {\n", + " \"offset\": 415,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Alarm\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 1893,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 1894,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_HiHiDevCmp\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_HiHiDevGate\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_HiHiDev\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_HiHiDev\": {\n", + " \"offset\": 1506,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_HiHiDev\": {\n", + " \"offset\": 1506,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiHiDevDisabled\": {\n", + " \"offset\": 1507,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiHiDevShelved\": {\n", + " \"offset\": 1506,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_HiHiDevSuppressed\": {\n", + " \"offset\": 1506,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_HiDevCmp\": {\n", + " \"offset\": 1596,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_HiDevGate\": {\n", + " \"offset\": 1596,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_HiDev\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_HiDev\": {\n", + " \"offset\": 1802,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_HiDev\": {\n", + " \"offset\": 1802,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiDevDisabled\": {\n", + " \"offset\": 1803,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_HiDevShelved\": {\n", + " \"offset\": 1802,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_HiDevSuppressed\": {\n", + " \"offset\": 1802,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_LoDevCmp\": {\n", + " \"offset\": 980,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_LoDevGate\": {\n", + " \"offset\": 980,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_LoDev\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_LoDev\": {\n", + " \"offset\": 1186,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_LoDev\": {\n", + " \"offset\": 1186,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoDevDisabled\": {\n", + " \"offset\": 1187,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoDevShelved\": {\n", + " \"offset\": 1186,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_LoDevSuppressed\": {\n", + " \"offset\": 1186,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_LoLoDevCmp\": {\n", + " \"offset\": 684,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_LoLoDevGate\": {\n", + " \"offset\": 684,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_LoLoDev\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_LoLoDev\": {\n", + " \"offset\": 890,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_LoLoDev\": {\n", + " \"offset\": 890,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoLoDevDisabled\": {\n", + " \"offset\": 891,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_LoLoDevShelved\": {\n", + " \"offset\": 890,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_LoLoDevSuppressed\": {\n", + " \"offset\": 890,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_IntlkTrip\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_IntlkTrip\": {\n", + " \"offset\": 2010,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_IntlkTrip\": {\n", + " \"offset\": 2010,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IntlkTripDisabled\": {\n", + " \"offset\": 2011,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IntlkTripShelved\": {\n", + " \"offset\": 2010,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_IntlkTripSuppressed\": {\n", + " \"offset\": 2010,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_Fail\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_Fail\": {\n", + " \"offset\": 2166,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_Fail\": {\n", + " \"offset\": 2166,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailDisabled\": {\n", + " \"offset\": 2167,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailShelved\": {\n", + " \"offset\": 2166,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FailSuppressed\": {\n", + " \"offset\": 2166,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Casc\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Auto\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Man\": {\n", + " \"offset\": 162,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_Bypass\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Check\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_ResetAckAll\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Ratio\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_SP\": {\n", + " \"offset\": 163,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost02\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_CV\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_OSet\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_PIDE\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_PIDE\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"PID_ENHANCED\",\n", + " \"internal_tags\": {\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ulBoolInput1\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PV\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVFault\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVEUMax\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVEUMin\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPProg\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPOper\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPCascade\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPHLimit\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPLLimit\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"UseRatio\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"RatioProg\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RatioOper\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RatioHLimit\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RatioLLimit\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVFault\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"CVInitReq\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"CVInitValue\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVProg\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVOper\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVOverride\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVPrevious\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVSetPrevious\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"CVManLimiting\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"CVEUMax\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVEUMin\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVHLimit\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVLLimit\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVROCLimit\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"FF\": {\n", + " \"offset\": 96,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"FFPrevious\": {\n", + " \"offset\": 100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"FFSetPrevious\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"HandFB\": {\n", + " \"offset\": 104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"HandFBFault\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"WindupHIn\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"WindupLIn\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ControlAction\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DependIndepend\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PGain\": {\n", + " \"offset\": 108,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"IGain\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DGain\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVEProportional\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PVEDerivative\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DSmoothing\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PVTracking\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"ZCDeadband\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ZCOff\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVHHLimit\": {\n", + " \"offset\": 124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVHLimit\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVLLimit\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVLLLimit\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVDeadband\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVROCPosLimit\": {\n", + " \"offset\": 144,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVROCNegLimit\": {\n", + " \"offset\": 148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVROCPeriod\": {\n", + " \"offset\": 152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevHHLimit\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevHLimit\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevLLimit\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevLLLimit\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DevDeadband\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"AllowCasRat\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ManualAfterInit\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"ProgProgReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"ProgOperReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"ProgCasRatReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"ProgAutoReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"ProgManualReq\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"ProgOverrideReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ProgHandReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OperProgReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OperOperReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"OperCasRatReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OperAutoReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OperManualReq\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"ProgValueReset\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TimingMode\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"OversampleDT\": {\n", + " \"offset\": 180,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RTSTime\": {\n", + " \"offset\": 184,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RTSTimeStamp\": {\n", + " \"offset\": 188,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ulBoolInput2\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"AtuneAcquire\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"AtuneStart\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"AtuneUseGains\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"AtuneAbort\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"AtuneUnacquire\": {\n", + " \"offset\": 192,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 196,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ulBoolOutput1\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"CVEU\": {\n", + " \"offset\": 204,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CV\": {\n", + " \"offset\": 208,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"CVInitializing\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"CVHAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"CVLAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"CVROCAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"SP\": {\n", + " \"offset\": 212,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPPercent\": {\n", + " \"offset\": 216,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SPHAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"SPLAlarm\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PVPercent\": {\n", + " \"offset\": 220,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"E\": {\n", + " \"offset\": 224,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"EPercent\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"InitPrimary\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"WindupHOut\": {\n", + " \"offset\": 200,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"WindupLOut\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ratio\": {\n", + " \"offset\": 232,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"RatioHAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"RatioLAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"ZCDeadbandOn\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PVHHAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PVHAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PVLAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PVLLAlarm\": {\n", + " \"offset\": 201,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PVROCPosAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVROCNegAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DevHHAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DevHAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DevLAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DevLLAlarm\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"ProgOper\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"CasRat\": {\n", + " \"offset\": 202,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Auto\": {\n", + " \"offset\": 203,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Manual\": {\n", + " \"offset\": 203,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Override\": {\n", + " \"offset\": 203,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Hand\": {\n", + " \"offset\": 203,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DeltaT\": {\n", + " \"offset\": 236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ulBoolOutput2\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"AtuneReady\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"AtuneOn\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"AtuneDone\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"AtuneAborted\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"AtuneBusy\": {\n", + " \"offset\": 240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Status1\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Status2\": {\n", + " \"offset\": 248,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"InstructFault\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVFaulted\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"CVFaulted\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"HandFBFaulted\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PVSpanInv\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"SPProgInv\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"SPOperInv\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"SPCascadeInv\": {\n", + " \"offset\": 244,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"SPLimitsInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"RatioProgInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"RatioOperInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"RatioLimitsInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"CVProgInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"CVOperInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"CVOverrideInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"CVPreviousInv\": {\n", + " \"offset\": 245,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"CVEUSpanInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"CVLimitsInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"CVROCLimitInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FFInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FFPreviousInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"HandFBInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PGainInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"IGainInv\": {\n", + " \"offset\": 246,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DGainInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ZCDeadbandInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PVDeadbandInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PVROCLimitsInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DevHLLimitsInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DevDeadbandInv\": {\n", + " \"offset\": 247,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"AtuneDataInv\": {\n", + " \"offset\": 248,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"TimingModeInv\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"RTSMissed\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"RTSTimeInv\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"RTSTimeStampInv\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DeltaTInv\": {\n", + " \"offset\": 251,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PIDE_HiddenFloat1\": {\n", + " \"offset\": 252,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat2\": {\n", + " \"offset\": 256,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat3\": {\n", + " \"offset\": 260,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat4\": {\n", + " \"offset\": 264,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat5\": {\n", + " \"offset\": 268,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat6\": {\n", + " \"offset\": 272,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat7\": {\n", + " \"offset\": 276,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat8\": {\n", + " \"offset\": 280,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat9\": {\n", + " \"offset\": 284,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat10\": {\n", + " \"offset\": 288,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat11\": {\n", + " \"offset\": 292,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat12\": {\n", + " \"offset\": 296,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat13\": {\n", + " \"offset\": 300,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat14\": {\n", + " \"offset\": 304,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat15\": {\n", + " \"offset\": 308,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat16\": {\n", + " \"offset\": 312,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat17\": {\n", + " \"offset\": 316,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat18\": {\n", + " \"offset\": 320,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat19\": {\n", + " \"offset\": 324,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat20\": {\n", + " \"offset\": 328,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat21\": {\n", + " \"offset\": 332,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat22\": {\n", + " \"offset\": 336,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat23\": {\n", + " \"offset\": 340,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat24\": {\n", + " \"offset\": 344,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat25\": {\n", + " \"offset\": 348,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat26\": {\n", + " \"offset\": 352,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat27\": {\n", + " \"offset\": 356,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat28\": {\n", + " \"offset\": 360,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat29\": {\n", + " \"offset\": 364,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat30\": {\n", + " \"offset\": 368,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat31\": {\n", + " \"offset\": 372,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat32\": {\n", + " \"offset\": 376,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat33\": {\n", + " \"offset\": 380,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat34\": {\n", + " \"offset\": 384,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat35\": {\n", + " \"offset\": 388,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat36\": {\n", + " \"offset\": 392,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PIDE_HiddenFloat37\": {\n", + " \"offset\": 396,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"ulBoolInput1\",\n", + " \"PV\",\n", + " \"PVFault\",\n", + " \"PVEUMax\",\n", + " \"PVEUMin\",\n", + " \"SPProg\",\n", + " \"SPOper\",\n", + " \"SPCascade\",\n", + " \"SPHLimit\",\n", + " \"SPLLimit\",\n", + " \"UseRatio\",\n", + " \"RatioProg\",\n", + " \"RatioOper\",\n", + " \"RatioHLimit\",\n", + " \"RatioLLimit\",\n", + " \"CVFault\",\n", + " \"CVInitReq\",\n", + " \"CVInitValue\",\n", + " \"CVProg\",\n", + " \"CVOper\",\n", + " \"CVOverride\",\n", + " \"CVPrevious\",\n", + " \"CVSetPrevious\",\n", + " \"CVManLimiting\",\n", + " \"CVEUMax\",\n", + " \"CVEUMin\",\n", + " \"CVHLimit\",\n", + " \"CVLLimit\",\n", + " \"CVROCLimit\",\n", + " \"FF\",\n", + " \"FFPrevious\",\n", + " \"FFSetPrevious\",\n", + " \"HandFB\",\n", + " \"HandFBFault\",\n", + " \"WindupHIn\",\n", + " \"WindupLIn\",\n", + " \"ControlAction\",\n", + " \"DependIndepend\",\n", + " \"PGain\",\n", + " \"IGain\",\n", + " \"DGain\",\n", + " \"PVEProportional\",\n", + " \"PVEDerivative\",\n", + " \"DSmoothing\",\n", + " \"PVTracking\",\n", + " \"ZCDeadband\",\n", + " \"ZCOff\",\n", + " \"PVHHLimit\",\n", + " \"PVHLimit\",\n", + " \"PVLLimit\",\n", + " \"PVLLLimit\",\n", + " \"PVDeadband\",\n", + " \"PVROCPosLimit\",\n", + " \"PVROCNegLimit\",\n", + " \"PVROCPeriod\",\n", + " \"DevHHLimit\",\n", + " \"DevHLimit\",\n", + " \"DevLLimit\",\n", + " \"DevLLLimit\",\n", + " \"DevDeadband\",\n", + " \"AllowCasRat\",\n", + " \"ManualAfterInit\",\n", + " \"ProgProgReq\",\n", + " \"ProgOperReq\",\n", + " \"ProgCasRatReq\",\n", + " \"ProgAutoReq\",\n", + " \"ProgManualReq\",\n", + " \"ProgOverrideReq\",\n", + " \"ProgHandReq\",\n", + " \"OperProgReq\",\n", + " \"OperOperReq\",\n", + " \"OperCasRatReq\",\n", + " \"OperAutoReq\",\n", + " \"OperManualReq\",\n", + " \"ProgValueReset\",\n", + " \"TimingMode\",\n", + " \"OversampleDT\",\n", + " \"RTSTime\",\n", + " \"RTSTimeStamp\",\n", + " \"ulBoolInput2\",\n", + " \"AtuneAcquire\",\n", + " \"AtuneStart\",\n", + " \"AtuneUseGains\",\n", + " \"AtuneAbort\",\n", + " \"AtuneUnacquire\",\n", + " \"EnableOut\",\n", + " \"ulBoolOutput1\",\n", + " \"CVEU\",\n", + " \"CV\",\n", + " \"CVInitializing\",\n", + " \"CVHAlarm\",\n", + " \"CVLAlarm\",\n", + " \"CVROCAlarm\",\n", + " \"SP\",\n", + " \"SPPercent\",\n", + " \"SPHAlarm\",\n", + " \"SPLAlarm\",\n", + " \"PVPercent\",\n", + " \"E\",\n", + " \"EPercent\",\n", + " \"InitPrimary\",\n", + " \"WindupHOut\",\n", + " \"WindupLOut\",\n", + " \"Ratio\",\n", + " \"RatioHAlarm\",\n", + " \"RatioLAlarm\",\n", + " \"ZCDeadbandOn\",\n", + " \"PVHHAlarm\",\n", + " \"PVHAlarm\",\n", + " \"PVLAlarm\",\n", + " \"PVLLAlarm\",\n", + " \"PVROCPosAlarm\",\n", + " \"PVROCNegAlarm\",\n", + " \"DevHHAlarm\",\n", + " \"DevHAlarm\",\n", + " \"DevLAlarm\",\n", + " \"DevLLAlarm\",\n", + " \"ProgOper\",\n", + " \"CasRat\",\n", + " \"Auto\",\n", + " \"Manual\",\n", + " \"Override\",\n", + " \"Hand\",\n", + " \"DeltaT\",\n", + " \"ulBoolOutput2\",\n", + " \"AtuneReady\",\n", + " \"AtuneOn\",\n", + " \"AtuneDone\",\n", + " \"AtuneAborted\",\n", + " \"AtuneBusy\",\n", + " \"Status1\",\n", + " \"Status2\",\n", + " \"InstructFault\",\n", + " \"PVFaulted\",\n", + " \"CVFaulted\",\n", + " \"HandFBFaulted\",\n", + " \"PVSpanInv\",\n", + " \"SPProgInv\",\n", + " \"SPOperInv\",\n", + " \"SPCascadeInv\",\n", + " \"SPLimitsInv\",\n", + " \"RatioProgInv\",\n", + " \"RatioOperInv\",\n", + " \"RatioLimitsInv\",\n", + " \"CVProgInv\",\n", + " \"CVOperInv\",\n", + " \"CVOverrideInv\",\n", + " \"CVPreviousInv\",\n", + " \"CVEUSpanInv\",\n", + " \"CVLimitsInv\",\n", + " \"CVROCLimitInv\",\n", + " \"FFInv\",\n", + " \"FFPreviousInv\",\n", + " \"HandFBInv\",\n", + " \"PGainInv\",\n", + " \"IGainInv\",\n", + " \"DGainInv\",\n", + " \"ZCDeadbandInv\",\n", + " \"PVDeadbandInv\",\n", + " \"PVROCLimitsInv\",\n", + " \"DevHLLimitsInv\",\n", + " \"DevDeadbandInv\",\n", + " \"AtuneDataInv\",\n", + " \"TimingModeInv\",\n", + " \"RTSMissed\",\n", + " \"RTSTimeInv\",\n", + " \"RTSTimeStampInv\",\n", + " \"DeltaTInv\",\n", + " \"PIDE_HiddenFloat1\",\n", + " \"PIDE_HiddenFloat2\",\n", + " \"PIDE_HiddenFloat3\",\n", + " \"PIDE_HiddenFloat4\",\n", + " \"PIDE_HiddenFloat5\",\n", + " \"PIDE_HiddenFloat6\",\n", + " \"PIDE_HiddenFloat7\",\n", + " \"PIDE_HiddenFloat8\",\n", + " \"PIDE_HiddenFloat9\",\n", + " \"PIDE_HiddenFloat10\",\n", + " \"PIDE_HiddenFloat11\",\n", + " \"PIDE_HiddenFloat12\",\n", + " \"PIDE_HiddenFloat13\",\n", + " \"PIDE_HiddenFloat14\",\n", + " \"PIDE_HiddenFloat15\",\n", + " \"PIDE_HiddenFloat16\",\n", + " \"PIDE_HiddenFloat17\",\n", + " \"PIDE_HiddenFloat18\",\n", + " \"PIDE_HiddenFloat19\",\n", + " \"PIDE_HiddenFloat20\",\n", + " \"PIDE_HiddenFloat21\",\n", + " \"PIDE_HiddenFloat22\",\n", + " \"PIDE_HiddenFloat23\",\n", + " \"PIDE_HiddenFloat24\",\n", + " \"PIDE_HiddenFloat25\",\n", + " \"PIDE_HiddenFloat26\",\n", + " \"PIDE_HiddenFloat27\",\n", + " \"PIDE_HiddenFloat28\",\n", + " \"PIDE_HiddenFloat29\",\n", + " \"PIDE_HiddenFloat30\",\n", + " \"PIDE_HiddenFloat31\",\n", + " \"PIDE_HiddenFloat32\",\n", + " \"PIDE_HiddenFloat33\",\n", + " \"PIDE_HiddenFloat34\",\n", + " \"PIDE_HiddenFloat35\",\n", + " \"PIDE_HiddenFloat36\",\n", + " \"PIDE_HiddenFloat37\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1253,\n", + " \"structure_size\": 400,\n", + " \"member_count\": 206,\n", + " \"structure_handle\": 3988\n", + " }\n", + " },\n", + " \"data_type_name\": \"PID_ENHANCED\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 568,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVEU\": {\n", + " \"offset\": 592,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Label\": {\n", + " \"offset\": 604,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Desc\": {\n", + " \"offset\": 628,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVEU\": {\n", + " \"offset\": 672,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"LoLoDevGate\": {\n", + " \"offset\": 684,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"LoLoDev\": {\n", + " \"offset\": 824,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"LoDevGate\": {\n", + " \"offset\": 980,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"LoDev\": {\n", + " \"offset\": 1120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 1276,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 1296,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SrcQ\": {\n", + " \"offset\": 1297,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"HiHiDevGate\": {\n", + " \"offset\": 1300,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"HiHiDev\": {\n", + " \"offset\": 1440,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"HiDevGate\": {\n", + " \"offset\": 1596,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Gate\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_GateDly\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OnDly\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OffDly\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Out\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Gate\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"P_Gate\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_OffDlyT\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_OnDlyT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_GateT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_InpCond\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_GateCond\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Gate\",\n", + " \"Cfg_GateDly\",\n", + " \"Cfg_OnDly\",\n", + " \"Cfg_OffDly\",\n", + " \"Out\",\n", + " \"Sts_Gate\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"P_Gate\",\n", + " \"Wrk_OffDlyT\",\n", + " \"Wrk_OnDlyT\",\n", + " \"Wrk_GateT\",\n", + " \"Cfg_InpCond\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\",\n", + " \"Cfg_GateCond\",\n", + " \"Inf_Tab\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 120,\n", + " \"structure_size\": 140,\n", + " \"member_count\": 21,\n", + " \"structure_handle\": 20019\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Gate\",\n", + " \"array\": 0\n", + " },\n", + " \"HiDev\": {\n", + " \"offset\": 1736,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Mode\": {\n", + " \"offset\": 1892,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Mode\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_OvrdOverLock\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_UnlockRel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_ProgOperSel\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_MAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_MRel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_OAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_OLock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_OUnlock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_ORel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"P_Mode\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_Locked\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Prog\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_Maint\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_Hand\",\n", + " \"Inp_Ovrd\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_OvrdOverLock\",\n", + " \"Cfg_ProgDefault\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_UnlockRel\",\n", + " \"Val\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_ProgOperSel\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Rdy_MAcq\",\n", + " \"Rdy_MRel\",\n", + " \"Rdy_OAcq\",\n", + " \"Rdy_OLock\",\n", + " \"Rdy_OUnlock\",\n", + " \"Rdy_ORel\",\n", + " \"P_Mode\",\n", + " \"Wrk_Locked\",\n", + " \"Wrk_Prog\",\n", + " \"Wrk_Maint\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 228,\n", + " \"structure_size\": 48,\n", + " \"member_count\": 39,\n", + " \"structure_handle\": 16800\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Mode\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Notify\": {\n", + " \"offset\": 1940,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"IntlkTrip\": {\n", + " \"offset\": 1944,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_IntlkOK\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Disabled\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_Bypass\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Wrk_Reset\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_ManCmd\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Wrk_AutoCmd\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_CascCmd\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Wrk_Casc\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Auto\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Man\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Fail\": {\n", + " \"offset\": 2100,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CVNavTag\": {\n", + " \"offset\": 2256,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_PVNavTag\": {\n", + " \"offset\": 2280,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_CascSPNavTag\": {\n", + " \"offset\": 2304,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 2328,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Autotune\": {\n", + " \"offset\": 2344,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"PIDE_AUTOTUNE\",\n", + " \"internal_tags\": {\n", + " \"ProcessType\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ResponseSpeed\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"TestLength\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PVTuneLimit\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"StepSize\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"TuneFlags\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"TunedGood\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"TunedUncertain\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ATuneAcquired\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"UsedProcessType\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Gain\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"TimeConstant\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DeadTime\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PGainTunedFast\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"IGainTunedFast\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DGainTunedFast\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PGainTunedMed\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"IGainTunedMed\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DGainTunedMed\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PGainTunedSlow\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"IGainTunedSlow\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DGainTunedSlow\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"StepSizeUsed\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"AtuneStatus\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ATuneFault\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PVOutOfLimit\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ModeInv\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"CVWindupFault\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"StepSizeZero\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"CVLimitsFault\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"CVInitFault\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"EUSpanChanged\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"CVChanged\": {\n", + " \"offset\": 81,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ATuneTimedOut\": {\n", + " \"offset\": 81,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PVNotSettled\": {\n", + " \"offset\": 81,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PVChangeTooSmall\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"StepSizeTooSmall\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"GainTooLarge\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"GainTooSmall\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"LongDeadTime\": {\n", + " \"offset\": 83,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"HiddenWords\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 222\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"ProcessType\",\n", + " \"ResponseSpeed\",\n", + " \"TestLength\",\n", + " \"PVTuneLimit\",\n", + " \"StepSize\",\n", + " \"TuneFlags\",\n", + " \"TunedGood\",\n", + " \"TunedUncertain\",\n", + " \"ATuneAcquired\",\n", + " \"UsedProcessType\",\n", + " \"Gain\",\n", + " \"TimeConstant\",\n", + " \"DeadTime\",\n", + " \"PGainTunedFast\",\n", + " \"IGainTunedFast\",\n", + " \"DGainTunedFast\",\n", + " \"PGainTunedMed\",\n", + " \"IGainTunedMed\",\n", + " \"DGainTunedMed\",\n", + " \"PGainTunedSlow\",\n", + " \"IGainTunedSlow\",\n", + " \"DGainTunedSlow\",\n", + " \"StepSizeUsed\",\n", + " \"AtuneStatus\",\n", + " \"ATuneFault\",\n", + " \"PVOutOfLimit\",\n", + " \"ModeInv\",\n", + " \"CVWindupFault\",\n", + " \"StepSizeZero\",\n", + " \"CVLimitsFault\",\n", + " \"CVInitFault\",\n", + " \"EUSpanChanged\",\n", + " \"CVChanged\",\n", + " \"ATuneTimedOut\",\n", + " \"PVNotSettled\",\n", + " \"PVChangeTooSmall\",\n", + " \"StepSizeTooSmall\",\n", + " \"GainTooLarge\",\n", + " \"GainTooSmall\",\n", + " \"LongDeadTime\",\n", + " \"HiddenWords\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 264,\n", + " \"structure_size\": 972,\n", + " \"member_count\": 41,\n", + " \"structure_handle\": 4022\n", + " }\n", + " },\n", + " \"data_type_name\": \"PIDE_AUTOTUNE\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_PIDE_only\": {\n", + " \"offset\": 3316,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_PIDE_only\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 26,\n", + " \"structure_size\": 4,\n", + " \"member_count\": 3,\n", + " \"structure_handle\": 38846\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PIDE_only\",\n", + " \"array\": 0\n", + " },\n", + " \"HMI_HasAutotune\": {\n", + " \"offset\": 165,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_PV\",\n", + " \"Inp_CascSP\",\n", + " \"Inp_FF\",\n", + " \"Inp_FFPrev\",\n", + " \"Inp_CVInitVal\",\n", + " \"Inp_CVPrev\",\n", + " \"Inp_PVSrcQ\",\n", + " \"Inp_OvrdCmd\",\n", + " \"Inp_OvrdRatio\",\n", + " \"Inp_OvrdSP\",\n", + " \"Inp_OvrdCV\",\n", + " \"Inp_HandFdbk\",\n", + " \"Inp_PVBad\",\n", + " \"Inp_PVUncertain\",\n", + " \"Inp_CVIOFault\",\n", + " \"Inp_UseFFPrev\",\n", + " \"Inp_UseCVInitVal\",\n", + " \"Inp_UseCVPrev\",\n", + " \"Inp_WindupHi\",\n", + " \"Inp_WindupLo\",\n", + " \"Inp_Ovrd\",\n", + " \"Inp_Hand\",\n", + " \"Inp_HandFdbkBad\",\n", + " \"Inp_IntlkOK\",\n", + " \"Inp_NBIntlkOK\",\n", + " \"Inp_HiHiDevGate\",\n", + " \"Inp_HiDevGate\",\n", + " \"Inp_LoDevGate\",\n", + " \"Inp_LoLoDevGate\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_HasRatio\",\n", + " \"Cfg_HasCasc\",\n", + " \"Cfg_PVTrack\",\n", + " \"Cfg_CtrlAction\",\n", + " \"Cfg_Depend\",\n", + " \"Cfg_DerivSmooth\",\n", + " \"Cfg_ZCOff\",\n", + " \"Cfg_LimitManCV\",\n", + " \"Cfg_InitToMan\",\n", + " \"Cfg_PropSPAct\",\n", + " \"Cfg_DerivSPAct\",\n", + " \"Cfg_PwrupLM\",\n", + " \"Cfg_SetTrack\",\n", + " \"Cfg_SetTrackOvrdHand\",\n", + " \"Cfg_HasIntlkObj\",\n", + " \"Cfg_HasCascSPNav\",\n", + " \"Cfg_HasPVNav\",\n", + " \"Cfg_HasCVNav\",\n", + " \"Cfg_OvrdIntlk\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_ProgDefault\",\n", + " \"Cfg_HasHiHiDevAlm\",\n", + " \"Cfg_HasHiDevAlm\",\n", + " \"Cfg_HasLoDevAlm\",\n", + " \"Cfg_HasLoLoDevAlm\",\n", + " \"Cfg_HasIntlkTripAlm\",\n", + " \"Cfg_HasFailAlm\",\n", + " \"Cfg_HiHiDevResetReqd\",\n", + " \"Cfg_HiDevResetReqd\",\n", + " \"Cfg_LoDevResetReqd\",\n", + " \"Cfg_LoLoDevResetReqd\",\n", + " \"Cfg_IntlkTripResetReqd\",\n", + " \"Cfg_FailResetReqd\",\n", + " \"Cfg_HiHiDevAckReqd\",\n", + " \"Cfg_HiDevAckReqd\",\n", + " \"Cfg_LoDevAckReqd\",\n", + " \"Cfg_LoLoDevAckReqd\",\n", + " \"Cfg_IntlkTripAckReqd\",\n", + " \"Cfg_FailAckReqd\",\n", + " \"Cfg_HiHiDevSeverity\",\n", + " \"Cfg_HiDevSeverity\",\n", + " \"Cfg_LoDevSeverity\",\n", + " \"Cfg_LoLoDevSeverity\",\n", + " \"Cfg_IntlkTripSeverity\",\n", + " \"Cfg_FailSeverity\",\n", + " \"Cfg_MinRatio\",\n", + " \"Cfg_MaxRatio\",\n", + " \"Cfg_MinSP\",\n", + " \"Cfg_MaxSP\",\n", + " \"Cfg_PVEUMin\",\n", + " \"Cfg_PVEUMax\",\n", + " \"Cfg_CVEUMin\",\n", + " \"Cfg_CVEUMax\",\n", + " \"Cfg_CVRoCLim\",\n", + " \"Cfg_PGain\",\n", + " \"Cfg_IGain\",\n", + " \"Cfg_DGain\",\n", + " \"Cfg_ZCDB\",\n", + " \"Cfg_MinCV\",\n", + " \"Cfg_MaxCV\",\n", + " \"Cfg_MaxInactiveCV\",\n", + " \"Cfg_IntlkCV\",\n", + " \"Cfg_DevDB\",\n", + " \"Cfg_PwrupSP\",\n", + " \"Cfg_PwrupCV\",\n", + " \"Cfg_HiHiDevOnDly\",\n", + " \"Cfg_HiHiDevOffDly\",\n", + " \"Cfg_HiHiDevGateDly\",\n", + " \"Cfg_HiDevOnDly\",\n", + " \"Cfg_HiDevOffDly\",\n", + " \"Cfg_HiDevGateDly\",\n", + " \"Cfg_LoDevOnDly\",\n", + " \"Cfg_LoDevOffDly\",\n", + " \"Cfg_LoDevGateDly\",\n", + " \"Cfg_LoLoDevOnDly\",\n", + " \"Cfg_LoLoDevOffDly\",\n", + " \"Cfg_LoLoDevGateDly\",\n", + " \"PSet_Ratio\",\n", + " \"PSet_SP\",\n", + " \"PSet_CV\",\n", + " \"PSet_HiHiDevLim\",\n", + " \"PSet_HiDevLim\",\n", + " \"PSet_LoDevLim\",\n", + " \"PSet_LoLoDevLim\",\n", + " \"PSet_Owner\",\n", + " \"OSet_Ratio\",\n", + " \"OSet_SP\",\n", + " \"OSet_CV\",\n", + " \"OSet_HiHiDevLim\",\n", + " \"OSet_HiDevLim\",\n", + " \"OSet_LoDevLim\",\n", + " \"OSet_LoLoDevLim\",\n", + " \"PCmd_Casc\",\n", + " \"PCmd_Auto\",\n", + " \"PCmd_Man\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_HiHiDevAck\",\n", + " \"PCmd_HiHiDevSuppress\",\n", + " \"PCmd_HiHiDevUnsuppress\",\n", + " \"PCmd_HiHiDevUnshelve\",\n", + " \"PCmd_HiDevAck\",\n", + " \"PCmd_HiDevSuppress\",\n", + " \"PCmd_HiDevUnsuppress\",\n", + " \"PCmd_HiDevUnshelve\",\n", + " \"PCmd_LoDevAck\",\n", + " \"PCmd_LoDevSuppress\",\n", + " \"PCmd_LoDevUnsuppress\",\n", + " \"PCmd_LoDevUnshelve\",\n", + " \"PCmd_LoLoDevAck\",\n", + " \"PCmd_LoLoDevSuppress\",\n", + " \"PCmd_LoLoDevUnsuppress\",\n", + " \"PCmd_LoLoDevUnshelve\",\n", + " \"PCmd_IntlkTripAck\",\n", + " \"PCmd_IntlkTripSuppress\",\n", + " \"PCmd_IntlkTripUnsuppress\",\n", + " \"PCmd_IntlkTripUnshelve\",\n", + " \"PCmd_FailAck\",\n", + " \"PCmd_FailSuppress\",\n", + " \"PCmd_FailUnsuppress\",\n", + " \"PCmd_FailUnshelve\",\n", + " \"OCmd_Casc\",\n", + " \"OCmd_Auto\",\n", + " \"OCmd_Man\",\n", + " \"OCmd_Bypass\",\n", + " \"OCmd_Check\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_Unlock\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_ResetAckAll\",\n", + " \"Out_CV\",\n", + " \"Val_PV\",\n", + " \"Val_Ratio\",\n", + " \"Val_SPSet\",\n", + " \"Val_SP\",\n", + " \"Val_E\",\n", + " \"Val_CVSet\",\n", + " \"Val_CVOut\",\n", + " \"Val_PVPercent\",\n", + " \"Val_SPPercent\",\n", + " \"Val_EPercent\",\n", + " \"Val_ActExecT\",\n", + " \"Val_Init\",\n", + " \"Val_PVEUMin\",\n", + " \"Val_PVEUMax\",\n", + " \"Val_CVEUMin\",\n", + " \"Val_CVEUMax\",\n", + " \"SrcQ_IO\",\n", + " \"SrcQ\",\n", + " \"Val_Sts\",\n", + " \"Val_Fault\",\n", + " \"Val_State\",\n", + " \"Val_Mode\",\n", + " \"Val_Owner\",\n", + " \"Val_Notify\",\n", + " \"Val_HiHiDevLim\",\n", + " \"Val_HiDevLim\",\n", + " \"Val_LoDevLim\",\n", + " \"Val_LoLoDevLim\",\n", + " \"Sts_InstrFaults1\",\n", + " \"Sts_InstrFaults2\",\n", + " \"Sts_Casc\",\n", + " \"Sts_Auto\",\n", + " \"Sts_Man\",\n", + " \"Sts_Initializing\",\n", + " \"Sts_InitReq\",\n", + " \"Sts_WindupHi\",\n", + " \"Sts_WindupLo\",\n", + " \"Sts_ZCDBOn\",\n", + " \"Sts_RatioClamped\",\n", + " \"Sts_SPBad\",\n", + " \"Sts_SPClamped\",\n", + " \"Sts_PVBad\",\n", + " \"Sts_PVUncertain\",\n", + " \"Sts_FFBad\",\n", + " \"Sts_FFPrevBad\",\n", + " \"Sts_CVBad\",\n", + " \"Sts_CVPrevBad\",\n", + " \"Sts_CVInitValBad\",\n", + " \"Sts_HandFdbkBad\",\n", + " \"Sts_IntlkCV\",\n", + " \"Sts_CVClamped\",\n", + " \"Sts_CVRamping\",\n", + " \"Sts_Active\",\n", + " \"Sts_Available\",\n", + " \"Sts_Bypass\",\n", + " \"Sts_BypActive\",\n", + " \"Sts_Disabled\",\n", + " \"Sts_NotRdy\",\n", + " \"Nrdy_Disabled\",\n", + " \"Nrdy_CfgErr\",\n", + " \"Nrdy_Intlk\",\n", + " \"Nrdy_Init\",\n", + " \"Nrdy_IOFault\",\n", + " \"Nrdy_NoMode\",\n", + " \"Sts_MaintByp\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_RatioLim\",\n", + " \"Err_SPLim\",\n", + " \"Err_PVEU\",\n", + " \"Err_CVLim\",\n", + " \"Err_CVEU\",\n", + " \"Err_Timer\",\n", + " \"Err_DB\",\n", + " \"Err_Alarm\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Sts_HiHiDevCmp\",\n", + " \"Sts_HiHiDevGate\",\n", + " \"Sts_HiHiDev\",\n", + " \"Alm_HiHiDev\",\n", + " \"Ack_HiHiDev\",\n", + " \"Sts_HiHiDevDisabled\",\n", + " \"Sts_HiHiDevShelved\",\n", + " \"Sts_HiHiDevSuppressed\",\n", + " \"Sts_HiDevCmp\",\n", + " \"Sts_HiDevGate\",\n", + " \"Sts_HiDev\",\n", + " \"Alm_HiDev\",\n", + " \"Ack_HiDev\",\n", + " \"Sts_HiDevDisabled\",\n", + " \"Sts_HiDevShelved\",\n", + " \"Sts_HiDevSuppressed\",\n", + " \"Sts_LoDevCmp\",\n", + " \"Sts_LoDevGate\",\n", + " \"Sts_LoDev\",\n", + " \"Alm_LoDev\",\n", + " \"Ack_LoDev\",\n", + " \"Sts_LoDevDisabled\",\n", + " \"Sts_LoDevShelved\",\n", + " \"Sts_LoDevSuppressed\",\n", + " \"Sts_LoLoDevCmp\",\n", + " \"Sts_LoLoDevGate\",\n", + " \"Sts_LoLoDev\",\n", + " \"Alm_LoLoDev\",\n", + " \"Ack_LoLoDev\",\n", + " \"Sts_LoLoDevDisabled\",\n", + " \"Sts_LoLoDevShelved\",\n", + " \"Sts_LoLoDevSuppressed\",\n", + " \"Sts_IntlkTrip\",\n", + " \"Alm_IntlkTrip\",\n", + " \"Ack_IntlkTrip\",\n", + " \"Sts_IntlkTripDisabled\",\n", + " \"Sts_IntlkTripShelved\",\n", + " \"Sts_IntlkTripSuppressed\",\n", + " \"Sts_Fail\",\n", + " \"Alm_Fail\",\n", + " \"Ack_Fail\",\n", + " \"Sts_FailDisabled\",\n", + " \"Sts_FailShelved\",\n", + " \"Sts_FailSuppressed\",\n", + " \"Rdy_Casc\",\n", + " \"Rdy_Auto\",\n", + " \"Rdy_Man\",\n", + " \"Rdy_Bypass\",\n", + " \"Rdy_Check\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_ResetAckAll\",\n", + " \"Rdy_Ratio\",\n", + " \"Rdy_SP\",\n", + " \"Rdy_CV\",\n", + " \"Rdy_OSet\",\n", + " \"P_PIDE\",\n", + " \"Wrk_PIDE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_PVEU\",\n", + " \"Cfg_Label\",\n", + " \"Cfg_Desc\",\n", + " \"Cfg_CVEU\",\n", + " \"LoLoDevGate\",\n", + " \"LoLoDev\",\n", + " \"LoDevGate\",\n", + " \"LoDev\",\n", + " \"Inf_Type\",\n", + " \"Inf_Tab\",\n", + " \"Wrk_SrcQ\",\n", + " \"HiHiDevGate\",\n", + " \"HiHiDev\",\n", + " \"HiDevGate\",\n", + " \"HiDev\",\n", + " \"Mode\",\n", + " \"Wrk_Notify\",\n", + " \"IntlkTrip\",\n", + " \"Wrk_IntlkOK\",\n", + " \"Wrk_Disabled\",\n", + " \"Wrk_Bypass\",\n", + " \"Wrk_Reset\",\n", + " \"Wrk_ManCmd\",\n", + " \"Wrk_AutoCmd\",\n", + " \"Wrk_CascCmd\",\n", + " \"Wrk_Casc\",\n", + " \"Wrk_Auto\",\n", + " \"Wrk_Man\",\n", + " \"Fail\",\n", + " \"Cfg_CVNavTag\",\n", + " \"Cfg_PVNavTag\",\n", + " \"Cfg_CascSPNavTag\",\n", + " \"Inf_Lib\",\n", + " \"Wrk_Autotune\",\n", + " \"Wrk_PIDE_only\",\n", + " \"HMI_HasAutotune\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 2223,\n", + " \"structure_size\": 3320,\n", + " \"member_count\": 352,\n", + " \"structure_handle\": 61053\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PIDE\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"Today_Total_Gallons\": {\n", - " \"tag_name\": \"Today_Total_Gallons\",\n", + " \"cfg_PID_FlowSP\": {\n", + " \"tag_name\": \"cfg_PID_FlowSP\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 62,\n", - " \"symbol_address\": 1204,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 37472,\n", + " \"symbol_object_address\": 907860,\n", + " \"software_control\": 1946222652,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -1172,15 +54823,15 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Low_Flow_Cutoff\": {\n", - " \"tag_name\": \"Low_Flow_Cutoff\",\n", + " \"cfg_PID_DischargePressureSP\": {\n", + " \"tag_name\": \"cfg_PID_DischargePressureSP\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 63,\n", - " \"symbol_address\": 1208,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 37440,\n", + " \"symbol_object_address\": 907900,\n", + " \"software_control\": 1946222653,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -1190,249 +54841,720 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Seconds_Per_Minute\": {\n", - " \"tag_name\": \"Seconds_Per_Minute\",\n", + " \"watchdog_INT_last\": {\n", + " \"tag_name\": \"watchdog_INT_last\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 64,\n", - " \"symbol_address\": 1212,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 36752,\n", + " \"symbol_object_address\": 907940,\n", + " \"software_control\": 1140916296,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Today_Total_BBLs\": {\n", - " \"tag_name\": \"Today_Total_BBLs\",\n", + " \"mode_AutoManual\": {\n", + " \"tag_name\": \"mode_AutoManual\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 65,\n", - " \"symbol_address\": 1216,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 36720,\n", + " \"symbol_object_address\": 907980,\n", + " \"software_control\": 1140916297,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Prev_Day_Total_Gals\": {\n", - " \"tag_name\": \"Prev_Day_Total_Gals\",\n", + " \"const_AutoMode\": {\n", + " \"tag_name\": \"const_AutoMode\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 66,\n", - " \"symbol_address\": 1220,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 36656,\n", + " \"symbol_object_address\": 908020,\n", + " \"software_control\": 1140916299,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Prev_Day_Total_BBLs\": {\n", - " \"tag_name\": \"Prev_Day_Total_BBLs\",\n", + " \"RigPump\": {\n", + " \"tag_name\": \"RigPump\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 67,\n", - " \"symbol_address\": 1224,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Month_Total_Gallons\": {\n", - " \"tag_name\": \"Month_Total_Gallons\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 68,\n", - " \"symbol_address\": 1228,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Prev_Month_Total_Gallons\": {\n", - " \"tag_name\": \"Prev_Month_Total_Gallons\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 69,\n", - " \"symbol_address\": 1232,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Month_Total_Barrels\": {\n", - " \"tag_name\": \"Month_Total_Barrels\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 70,\n", - " \"symbol_address\": 1236,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Prev_Month_Total_Barrels\": {\n", - " \"tag_name\": \"Prev_Month_Total_Barrels\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 71,\n", - " \"symbol_address\": 1240,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 68176,\n", + " \"symbol_object_address\": 908220,\n", + " \"software_control\": 100728856,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", + " \"template_instance_id\": 3959,\n", + " \"data_type\": {\n", + " \"name\": \"PHASE\",\n", + " \"internal_tags\": {\n", + " \"State\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Running\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Holding\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Restarting\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Stopping\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Aborting\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Resetting\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Idle\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Held\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Complete\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Stopped\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Aborted\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PauseControl\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PauseEnabled\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Paused\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"AutoPauseEnabled\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"StepIndex\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Failure\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"UnitID\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Owner\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PendingRequest\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DownloadInputParameters\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DownloadInputParametersSubset\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"UploadOutputParameters\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"UploadOutputParametersSubset\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DownloadOutputParameterLimits\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"AcquireResources\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"ReleaseResources\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"SendMessageToLinkedPhase\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"SendMessageToLinkedPhaseAndWait\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"ReceiveMessageFromLinkedPhase\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"CancelMessageToLinkedPhase\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"SendMessageToOperator\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"ClearMessageToOperator\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"GenerateESignature\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DownloadBatchData\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DownloadMaterialTrackDataContainerInUse\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DownloadContainerBindingPriority\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DownloadSufficientMaterial\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DownloadMaterialTrackDatabaseData\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"UploadMaterialTrackDataContainerInUse\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"UploadContainerBindingPriority\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"UploadMaterialTrackDatabaseData\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"AbortingRequest\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Misc\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"NewInputParameters\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Producing\": {\n", + " \"offset\": 29,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Standby\": {\n", + " \"offset\": 29,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"State\",\n", + " \"Running\",\n", + " \"Holding\",\n", + " \"Restarting\",\n", + " \"Stopping\",\n", + " \"Aborting\",\n", + " \"Resetting\",\n", + " \"Idle\",\n", + " \"Held\",\n", + " \"Complete\",\n", + " \"Stopped\",\n", + " \"Aborted\",\n", + " \"PauseControl\",\n", + " \"PauseEnabled\",\n", + " \"Paused\",\n", + " \"AutoPauseEnabled\",\n", + " \"StepIndex\",\n", + " \"Failure\",\n", + " \"UnitID\",\n", + " \"Owner\",\n", + " \"PendingRequest\",\n", + " \"DownloadInputParameters\",\n", + " \"DownloadInputParametersSubset\",\n", + " \"UploadOutputParameters\",\n", + " \"UploadOutputParametersSubset\",\n", + " \"DownloadOutputParameterLimits\",\n", + " \"AcquireResources\",\n", + " \"ReleaseResources\",\n", + " \"SendMessageToLinkedPhase\",\n", + " \"SendMessageToLinkedPhaseAndWait\",\n", + " \"ReceiveMessageFromLinkedPhase\",\n", + " \"CancelMessageToLinkedPhase\",\n", + " \"SendMessageToOperator\",\n", + " \"ClearMessageToOperator\",\n", + " \"GenerateESignature\",\n", + " \"DownloadBatchData\",\n", + " \"DownloadMaterialTrackDataContainerInUse\",\n", + " \"DownloadContainerBindingPriority\",\n", + " \"DownloadSufficientMaterial\",\n", + " \"DownloadMaterialTrackDatabaseData\",\n", + " \"UploadMaterialTrackDataContainerInUse\",\n", + " \"UploadContainerBindingPriority\",\n", + " \"UploadMaterialTrackDatabaseData\",\n", + " \"AbortingRequest\",\n", + " \"Misc\",\n", + " \"NewInputParameters\",\n", + " \"Producing\",\n", + " \"Standby\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 364,\n", + " \"structure_size\": 32,\n", + " \"member_count\": 48,\n", + " \"structure_handle\": 3959\n", + " }\n", + " },\n", + " \"data_type_name\": \"PHASE\",\n", + " \"tag_type\": \"struct\"\n", " },\n", - " \"Sec_Per_Min\": {\n", - " \"tag_name\": \"Sec_Per_Min\",\n", + " \"sts_PF753_Mode\": {\n", + " \"tag_name\": \"sts_PF753_Mode\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 72,\n", - " \"symbol_address\": 1244,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 36880,\n", + " \"symbol_object_address\": 908260,\n", + " \"software_control\": 1140916292,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"MB_FlowRate\": {\n", - " \"tag_name\": \"MB_FlowRate\",\n", + " \"const_ManualMode\": {\n", + " \"tag_name\": \"const_ManualMode\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 73,\n", - " \"symbol_address\": 1248,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"Val_Flow_Rate\": {\n", - " \"tag_name\": \"Val_Flow_Rate\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 74,\n", - " \"symbol_address\": 1252,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"MB_PrevDayTotal\": {\n", - " \"tag_name\": \"MB_PrevDayTotal\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 75,\n", - " \"symbol_address\": 1256,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"MB_CurrentDayTotal\": {\n", - " \"tag_name\": \"MB_CurrentDayTotal\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 76,\n", - " \"symbol_address\": 1260,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", - " \"dimensions\": [\n", - " 0,\n", - " 0,\n", - " 0\n", - " ],\n", - " \"data_type\": \"REAL\",\n", - " \"data_type_name\": \"REAL\",\n", - " \"tag_type\": \"atomic\"\n", - " },\n", - " \"MB_Total\": {\n", - " \"tag_name\": \"MB_Total\",\n", - " \"dim\": 0,\n", - " \"alias\": true,\n", + " \"alias\": false,\n", " \"instance_id\": 77,\n", - " \"symbol_address\": 1264,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"symbol_address\": 36624,\n", + " \"symbol_object_address\": 908460,\n", + " \"software_control\": 1140916300,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"Mode_Simulation\": {\n", + " \"tag_name\": \"Mode_Simulation\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 81,\n", + " \"symbol_address\": 92136,\n", + " \"symbol_object_address\": 908500,\n", + " \"software_control\": 1140916225,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"rp_VFD\": {\n", + " \"tag_name\": \"rp_VFD\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 83,\n", + " \"symbol_address\": 35736,\n", + " \"symbol_object_address\": 908540,\n", + " \"software_control\": 1140916307,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"Flow_Total\": {\n", + " \"tag_name\": \"Flow_Total\",\n", + " \"dim\": 1,\n", + " \"alias\": false,\n", + " \"instance_id\": 84,\n", + " \"symbol_address\": 35752,\n", + " \"symbol_object_address\": 908580,\n", + " \"software_control\": 1946222674,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 30,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sp_VFD\": {\n", + " \"tag_name\": \"sp_VFD\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 85,\n", + " \"symbol_address\": 35672,\n", + " \"symbol_object_address\": 908620,\n", + " \"software_control\": 1140916310,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"Clear_Flow_Total\": {\n", + " \"tag_name\": \"Clear_Flow_Total\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 86,\n", + " \"symbol_address\": 35704,\n", + " \"symbol_object_address\": 908660,\n", + " \"software_control\": 1140916308,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"alarm_VFD\": {\n", + " \"tag_name\": \"alarm_VFD\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 88,\n", + " \"symbol_address\": 34792,\n", + " \"symbol_object_address\": 908700,\n", + " \"software_control\": 1140916341,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"Current_DateTime\": {\n", + " \"tag_name\": \"Current_DateTime\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 89,\n", + " \"symbol_address\": 35616,\n", + " \"symbol_object_address\": 908740,\n", + " \"software_control\": 67174487,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 1231,\n", + " \"data_type\": {\n", + " \"name\": \"datetime\",\n", + " \"internal_tags\": {\n", + " \"Year\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Month\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Day\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Hour\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Minute\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Second\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Microsecond\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"Year\",\n", + " \"Month\",\n", + " \"Day\",\n", + " \"Hour\",\n", + " \"Minute\",\n", + " \"Second\",\n", + " \"Microsecond\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 41,\n", + " \"structure_size\": 28,\n", + " \"member_count\": 7,\n", + " \"structure_handle\": 42619\n", + " }\n", + " },\n", + " \"data_type_name\": \"datetime\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"VFD_MotorNPVolts\": {\n", + " \"tag_name\": \"VFD_MotorNPVolts\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 95,\n", + " \"symbol_address\": 64736,\n", + " \"symbol_object_address\": 908780,\n", + " \"software_control\": 1946222620,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -1442,15 +55564,15 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"MB_AccumlatedTotal\": {\n", - " \"tag_name\": \"MB_AccumlatedTotal\",\n", + " \"VFD_MotorNPAmps\": {\n", + " \"tag_name\": \"VFD_MotorNPAmps\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 78,\n", - " \"symbol_address\": 1268,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"alias\": false,\n", + " \"instance_id\": 96,\n", + " \"symbol_address\": 35552,\n", + " \"symbol_object_address\": 908820,\n", + " \"software_control\": 1946222686,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -1460,15 +55582,15 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"TempMB_FlowRate\": {\n", - " \"tag_name\": \"TempMB_FlowRate\",\n", + " \"VFD_MotorNPHertz\": {\n", + " \"tag_name\": \"VFD_MotorNPHertz\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 79,\n", - " \"symbol_address\": 1272,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"alias\": false,\n", + " \"instance_id\": 97,\n", + " \"symbol_address\": 35520,\n", + " \"symbol_object_address\": 908860,\n", + " \"software_control\": 1946222687,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", @@ -1478,22 +55600,12626 @@ " \"data_type_name\": \"REAL\",\n", " \"tag_type\": \"atomic\"\n", " },\n", - " \"Sample_Period\": {\n", - " \"tag_name\": \"Sample_Period\",\n", + " \"VFD_MotorNPRPM\": {\n", + " \"tag_name\": \"VFD_MotorNPRPM\",\n", " \"dim\": 0,\n", - " \"alias\": true,\n", - " \"instance_id\": 80,\n", - " \"symbol_address\": 1360,\n", - " \"symbol_object_address\": 1077552652,\n", - " \"software_control\": 0,\n", - " \"external_access\": \"Unknown\",\n", + " \"alias\": false,\n", + " \"instance_id\": 98,\n", + " \"symbol_address\": 35488,\n", + " \"symbol_object_address\": 908900,\n", + " \"software_control\": 1946222688,\n", + " \"external_access\": \"Read/Write\",\n", " \"dimensions\": [\n", " 0,\n", " 0,\n", " 0\n", " ],\n", - " \"data_type\": \"UDINT\",\n", - " \"data_type_name\": \"UDINT\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_MotorNPHorsepower\": {\n", + " \"tag_name\": \"VFD_MotorNPHorsepower\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 99,\n", + " \"symbol_address\": 35456,\n", + " \"symbol_object_address\": 908940,\n", + " \"software_control\": 1946222689,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_MotorNPOLFactor\": {\n", + " \"tag_name\": \"VFD_MotorNPOLFactor\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 100,\n", + " \"symbol_address\": 35424,\n", + " \"symbol_object_address\": 908980,\n", + " \"software_control\": 1946222690,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_MotorPoles\": {\n", + " \"tag_name\": \"VFD_MotorPoles\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 101,\n", + " \"symbol_address\": 35392,\n", + " \"symbol_object_address\": 909020,\n", + " \"software_control\": 1140916323,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sp_DischargePressure\": {\n", + " \"tag_name\": \"sp_DischargePressure\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 102,\n", + " \"symbol_address\": 35584,\n", + " \"symbol_object_address\": 909060,\n", + " \"software_control\": 1140916317,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"alarm_DischargePressure\": {\n", + " \"tag_name\": \"alarm_DischargePressure\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 105,\n", + " \"symbol_address\": 35328,\n", + " \"symbol_object_address\": 909100,\n", + " \"software_control\": 1140916327,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"alarm_Flowmeter\": {\n", + " \"tag_name\": \"alarm_Flowmeter\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 106,\n", + " \"symbol_address\": 35296,\n", + " \"symbol_object_address\": 909212,\n", + " \"software_control\": 1140916328,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"cmd_ResetAlarms\": {\n", + " \"tag_name\": \"cmd_ResetAlarms\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 107,\n", + " \"symbol_address\": 35264,\n", + " \"symbol_object_address\": 909252,\n", + " \"software_control\": 1140916329,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sts_NoAlarms\": {\n", + " \"tag_name\": \"sts_NoAlarms\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 108,\n", + " \"symbol_address\": 35232,\n", + " \"symbol_object_address\": 909292,\n", + " \"software_control\": 1140916330,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sts_RestartAllowed\": {\n", + " \"tag_name\": \"sts_RestartAllowed\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 109,\n", + " \"symbol_address\": 35200,\n", + " \"symbol_object_address\": 909332,\n", + " \"software_control\": 1140916331,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sp_Flowmeter\": {\n", + " \"tag_name\": \"sp_Flowmeter\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 110,\n", + " \"symbol_address\": 35168,\n", + " \"symbol_object_address\": 909372,\n", + " \"software_control\": 1140916332,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sts_WaitingToRestart\": {\n", + " \"tag_name\": \"sts_WaitingToRestart\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 111,\n", + " \"symbol_address\": 35136,\n", + " \"symbol_object_address\": 909412,\n", + " \"software_control\": 1140916333,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"time_TotalSecondsUntilStartup\": {\n", + " \"tag_name\": \"time_TotalSecondsUntilStartup\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 112,\n", + " \"symbol_address\": 35104,\n", + " \"symbol_object_address\": 909452,\n", + " \"software_control\": 1140916334,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"time_MinutesUntilStartup\": {\n", + " \"tag_name\": \"time_MinutesUntilStartup\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 113,\n", + " \"symbol_address\": 35072,\n", + " \"symbol_object_address\": 909492,\n", + " \"software_control\": 1140916335,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"time_SecondsUntilStartup\": {\n", + " \"tag_name\": \"time_SecondsUntilStartup\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 114,\n", + " \"symbol_address\": 35040,\n", + " \"symbol_object_address\": 909532,\n", + " \"software_control\": 1140916336,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"cfg_PID_ManualSP\": {\n", + " \"tag_name\": \"cfg_PID_ManualSP\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 116,\n", + " \"symbol_address\": 35008,\n", + " \"symbol_object_address\": 909572,\n", + " \"software_control\": 1946222706,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"Clear_Energy_Total\": {\n", + " \"tag_name\": \"Clear_Energy_Total\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 117,\n", + " \"symbol_address\": 34976,\n", + " \"symbol_object_address\": 909612,\n", + " \"software_control\": 1140916339,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"Energy_Total\": {\n", + " \"tag_name\": \"Energy_Total\",\n", + " \"dim\": 1,\n", + " \"alias\": false,\n", + " \"instance_id\": 118,\n", + " \"symbol_address\": 34808,\n", + " \"symbol_object_address\": 909652,\n", + " \"software_control\": 1946222708,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 30,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"cfg_AlarmLockoutLimit\": {\n", + " \"tag_name\": \"cfg_AlarmLockoutLimit\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 119,\n", + " \"symbol_address\": 34760,\n", + " \"symbol_object_address\": 909692,\n", + " \"software_control\": 1140916342,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"alarm_Lockout\": {\n", + " \"tag_name\": \"alarm_Lockout\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 120,\n", + " \"symbol_address\": 34728,\n", + " \"symbol_object_address\": 909732,\n", + " \"software_control\": 1140916343,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"cfg_AlarmRecoverSeconds\": {\n", + " \"tag_name\": \"cfg_AlarmRecoverSeconds\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 121,\n", + " \"symbol_address\": 34696,\n", + " \"symbol_object_address\": 909772,\n", + " \"software_control\": 1140916344,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"alarm_Count\": {\n", + " \"tag_name\": \"alarm_Count\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 122,\n", + " \"symbol_address\": 34664,\n", + " \"symbol_object_address\": 909812,\n", + " \"software_control\": 1140916345,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sts_TrueAlarm\": {\n", + " \"tag_name\": \"sts_TrueAlarm\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 123,\n", + " \"symbol_address\": 34632,\n", + " \"symbol_object_address\": 909852,\n", + " \"software_control\": 1140916346,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sts_PumpOff\": {\n", + " \"tag_name\": \"sts_PumpOff\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 124,\n", + " \"symbol_address\": 34600,\n", + " \"symbol_object_address\": 909892,\n", + " \"software_control\": 1140916347,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"cfg_AlarmDowntimeSec\": {\n", + " \"tag_name\": \"cfg_AlarmDowntimeSec\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 125,\n", + " \"symbol_address\": 34568,\n", + " \"symbol_object_address\": 909932,\n", + " \"software_control\": 1140916348,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"cfg_PumpOffDowntimeSec\": {\n", + " \"tag_name\": \"cfg_PumpOffDowntimeSec\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 126,\n", + " \"symbol_address\": 34536,\n", + " \"symbol_object_address\": 909972,\n", + " \"software_control\": 1140916349,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"MSG_GetDriveDutyRating755\": {\n", + " \"tag_name\": \"MSG_GetDriveDutyRating755\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 127,\n", + " \"symbol_address\": 92864,\n", + " \"symbol_object_address\": 910012,\n", + " \"software_control\": 67236007,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 4095,\n", + " \"data_type\": {\n", + " \"name\": \"MESSAGE\",\n", + " \"internal_tags\": {\n", + " \"offsettodata\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Flags\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"EW\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"ER\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"ST\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TO\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EN_CC\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ERR\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"EXERR\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"exerrlength\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ERR_SRC\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DN_LEN\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"REQ_LEN\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"DestinationLink\": {\n", + " \"offset\": 18,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"DestinationNode\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"SourceLink\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Class\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Attribute\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Instance\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"LocalIndex\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Channel\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rack\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Group\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Slot\": {\n", + " \"offset\": 39,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Path\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 82\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 4046\n", + " },\n", + " \"string\": 82\n", + " },\n", + " \"data_type_name\": \"STRING\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved1\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RemoteIndex\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RemoteElement\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 82\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 4046\n", + " },\n", + " \"string\": 82\n", + " },\n", + " \"data_type_name\": \"STRING\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved2\": {\n", + " \"offset\": 224,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"UnconnectedTimeout\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ConnectionRate\": {\n", + " \"offset\": 232,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"TimeoutMultiplier\": {\n", + " \"offset\": 236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"offsettodata\",\n", + " \"Flags\",\n", + " \"EW\",\n", + " \"ER\",\n", + " \"DN\",\n", + " \"ST\",\n", + " \"EN\",\n", + " \"TO\",\n", + " \"EN_CC\",\n", + " \"ERR\",\n", + " \"EXERR\",\n", + " \"exerrlength\",\n", + " \"ERR_SRC\",\n", + " \"DN_LEN\",\n", + " \"REQ_LEN\",\n", + " \"DestinationLink\",\n", + " \"DestinationNode\",\n", + " \"SourceLink\",\n", + " \"Class\",\n", + " \"Attribute\",\n", + " \"Instance\",\n", + " \"LocalIndex\",\n", + " \"Channel\",\n", + " \"Rack\",\n", + " \"Group\",\n", + " \"Slot\",\n", + " \"Path\",\n", + " \"Reserved1\",\n", + " \"RemoteIndex\",\n", + " \"RemoteElement\",\n", + " \"Reserved2\",\n", + " \"UnconnectedTimeout\",\n", + " \"ConnectionRate\",\n", + " \"TimeoutMultiplier\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 183,\n", + " \"structure_size\": 240,\n", + " \"member_count\": 34,\n", + " \"structure_handle\": 4095\n", + " }\n", + " },\n", + " \"data_type_name\": \"MESSAGE\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"MSG_SetDriveDutyRating755\": {\n", + " \"tag_name\": \"MSG_SetDriveDutyRating755\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 128,\n", + " \"symbol_address\": 93576,\n", + " \"symbol_object_address\": 910052,\n", + " \"software_control\": 67219950,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 4095,\n", + " \"data_type\": {\n", + " \"name\": \"MESSAGE\",\n", + " \"internal_tags\": {\n", + " \"offsettodata\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Flags\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"EW\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"ER\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"ST\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TO\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EN_CC\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ERR\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"EXERR\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"exerrlength\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ERR_SRC\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DN_LEN\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"REQ_LEN\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"DestinationLink\": {\n", + " \"offset\": 18,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"DestinationNode\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"SourceLink\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Class\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Attribute\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Instance\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"LocalIndex\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Channel\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rack\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Group\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Slot\": {\n", + " \"offset\": 39,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Path\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 82\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 4046\n", + " },\n", + " \"string\": 82\n", + " },\n", + " \"data_type_name\": \"STRING\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved1\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RemoteIndex\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RemoteElement\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 82\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 4046\n", + " },\n", + " \"string\": 82\n", + " },\n", + " \"data_type_name\": \"STRING\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved2\": {\n", + " \"offset\": 224,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"UnconnectedTimeout\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ConnectionRate\": {\n", + " \"offset\": 232,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"TimeoutMultiplier\": {\n", + " \"offset\": 236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"offsettodata\",\n", + " \"Flags\",\n", + " \"EW\",\n", + " \"ER\",\n", + " \"DN\",\n", + " \"ST\",\n", + " \"EN\",\n", + " \"TO\",\n", + " \"EN_CC\",\n", + " \"ERR\",\n", + " \"EXERR\",\n", + " \"exerrlength\",\n", + " \"ERR_SRC\",\n", + " \"DN_LEN\",\n", + " \"REQ_LEN\",\n", + " \"DestinationLink\",\n", + " \"DestinationNode\",\n", + " \"SourceLink\",\n", + " \"Class\",\n", + " \"Attribute\",\n", + " \"Instance\",\n", + " \"LocalIndex\",\n", + " \"Channel\",\n", + " \"Rack\",\n", + " \"Group\",\n", + " \"Slot\",\n", + " \"Path\",\n", + " \"Reserved1\",\n", + " \"RemoteIndex\",\n", + " \"RemoteElement\",\n", + " \"Reserved2\",\n", + " \"UnconnectedTimeout\",\n", + " \"ConnectionRate\",\n", + " \"TimeoutMultiplier\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 183,\n", + " \"structure_size\": 240,\n", + " \"member_count\": 34,\n", + " \"structure_handle\": 4095\n", + " }\n", + " },\n", + " \"data_type_name\": \"MESSAGE\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"sts_DriveDutyRating\": {\n", + " \"tag_name\": \"sts_DriveDutyRating\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 129,\n", + " \"symbol_address\": 34504,\n", + " \"symbol_object_address\": 910092,\n", + " \"software_control\": 1140916350,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"set_DriveDutyRating\": {\n", + " \"tag_name\": \"set_DriveDutyRating\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 130,\n", + " \"symbol_address\": 34472,\n", + " \"symbol_object_address\": 910132,\n", + " \"software_control\": 1140916351,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"cfg_CostPerkWh\": {\n", + " \"tag_name\": \"cfg_CostPerkWh\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 131,\n", + " \"symbol_address\": 35920,\n", + " \"symbol_object_address\": 910172,\n", + " \"software_control\": 1946222671,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"Energy_Cost\": {\n", + " \"tag_name\": \"Energy_Cost\",\n", + " \"dim\": 1,\n", + " \"alias\": false,\n", + " \"instance_id\": 132,\n", + " \"symbol_address\": 34240,\n", + " \"symbol_object_address\": 910212,\n", + " \"software_control\": 1946222729,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 30,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_PWMFrequency\": {\n", + " \"tag_name\": \"VFD_PWMFrequency\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 133,\n", + " \"symbol_address\": 34224,\n", + " \"symbol_object_address\": 910252,\n", + " \"software_control\": 1946222730,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"Run_Permissive_INT\": {\n", + " \"tag_name\": \"Run_Permissive_INT\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 139,\n", + " \"symbol_address\": 34440,\n", + " \"symbol_object_address\": 910292,\n", + " \"software_control\": 1140916356,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"Start_Permissive_INT\": {\n", + " \"tag_name\": \"Start_Permissive_INT\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 140,\n", + " \"symbol_address\": 34408,\n", + " \"symbol_object_address\": 910332,\n", + " \"software_control\": 1140916357,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"PowerFlex755_EStopped\": {\n", + " \"tag_name\": \"PowerFlex755_EStopped\",\n", + " \"dim\": 0,\n", + " \"alias\": true,\n", + " \"instance_id\": 141,\n", + " \"symbol_address\": 57036,\n", + " \"symbol_object_address\": 910372,\n", + " \"software_control\": 1073807401,\n", + " \"external_access\": \"Read Only\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 2,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"alarm_ESTOP\": {\n", + " \"tag_name\": \"alarm_ESTOP\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 142,\n", + " \"symbol_address\": 68232,\n", + " \"symbol_object_address\": 910412,\n", + " \"software_control\": 1140916247,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"SP_Time\": {\n", + " \"tag_name\": \"SP_Time\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 144,\n", + " \"symbol_address\": 35360,\n", + " \"symbol_object_address\": 910452,\n", + " \"software_control\": 1140916324,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"val_Flowmeter_BarrelsPerMinute\": {\n", + " \"tag_name\": \"val_Flowmeter_BarrelsPerMinute\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 148,\n", + " \"symbol_address\": 68264,\n", + " \"symbol_object_address\": 910492,\n", + " \"software_control\": 1946222614,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"val_Flowmeter_BarrelsPerDay\": {\n", + " \"tag_name\": \"val_Flowmeter_BarrelsPerDay\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 169,\n", + " \"symbol_address\": 34120,\n", + " \"symbol_object_address\": 910572,\n", + " \"software_control\": 1946222751,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"ControllerFault\": {\n", + " \"tag_name\": \"ControllerFault\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 171,\n", + " \"symbol_address\": 34152,\n", + " \"symbol_object_address\": 910612,\n", + " \"software_control\": 67174558,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 1459,\n", + " \"data_type\": {\n", + " \"name\": \"FAULTRECORD\",\n", + " \"internal_tags\": {\n", + " \"Time_Low\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Time_High\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Type\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Code\": {\n", + " \"offset\": 10,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Info\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"Time_Low\",\n", + " \"Time_High\",\n", + " \"Type\",\n", + " \"Code\",\n", + " \"Info\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 5,\n", + " \"structure_handle\": 3581\n", + " }\n", + " },\n", + " \"data_type_name\": \"FAULTRECORD\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"ControllerFault_IO\": {\n", + " \"tag_name\": \"ControllerFault_IO\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 176,\n", + " \"symbol_address\": 34088,\n", + " \"symbol_object_address\": 910732,\n", + " \"software_control\": 1140916385,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"ControllerFault_Program\": {\n", + " \"tag_name\": \"ControllerFault_Program\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 177,\n", + " \"symbol_address\": 33832,\n", + " \"symbol_object_address\": 910772,\n", + " \"software_control\": 1140916389,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"ControllerFault_ClearAttempts\": {\n", + " \"tag_name\": \"ControllerFault_ClearAttempts\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 178,\n", + " \"symbol_address\": 33800,\n", + " \"symbol_object_address\": 910812,\n", + " \"software_control\": 1140916390,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"cfg_CurrentLimitMultiplier\": {\n", + " \"tag_name\": \"cfg_CurrentLimitMultiplier\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 181,\n", + " \"symbol_address\": 33768,\n", + " \"symbol_object_address\": 910852,\n", + " \"software_control\": 1946222761,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sts_CurrentVFDFaultCode\": {\n", + " \"tag_name\": \"sts_CurrentVFDFaultCode\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 184,\n", + " \"symbol_address\": 33736,\n", + " \"symbol_object_address\": 910892,\n", + " \"software_control\": 1140916396,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_753:I\": {\n", + " \"tag_name\": \"VFD_753:I\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 187,\n", + " \"symbol_address\": 63963688,\n", + " \"symbol_object_address\": 911012,\n", + " \"software_control\": 201392304,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 1047,\n", + " \"data_type\": {\n", + " \"name\": \"AB:PowerFlex753_R_286F774E:I:0\",\n", + " \"internal_tags\": {\n", + " \"pad\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus_Ready\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Active\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_CommandDir\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_ActualDir\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_Accelerating\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_Decelerating\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_Alarm\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Faulted\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus_AtSpeed\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Manual\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_SpdRefBit0\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_SpdRefBit1\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_SpdRefBit2\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_SpdRefBit3\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_SpdRefBit4\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Running\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Jogging\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_Stopping\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_DCBraking\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_DBActive\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_SpeedMode\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_PositionMode\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_TorqueMode\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus_AtZeroSpeed\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_AtHome\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_AtLimit\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_CurrLimit\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_BusFrqReg\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_EnableOn\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_MotorOL\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Regen\": {\n", + " \"offset\": 7,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Feedback\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"TorqueCurFdbk\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OutputCurrent\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"OutputPower\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ElapsedMWH\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ElapsedRunTime\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"SpeedUnits\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PredMaintSts\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PredMaintSts_HeatsinkFan\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PredMaintSts_InternalFan\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PredMaintSts_MtrBearing\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PredMaintSts_MtrLube\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PredMaintSts_MchBearing\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PredMaintSts_MchLube\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PredMaintSts_Reserved\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PredMaintSts_Reserved1\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PredMaintSts_Reserved2\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PredMaintSts_Reserved3\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PredMaintSts_Reserved4\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PredMaintSts_Reserved5\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PredMaintSts_Reserved6\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PredMaintSts_Reserved7\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PredMaintSts_Reserved8\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PredMaintSts_Master\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"StartInhibits\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"StartInhibits_Faulted\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits_Alarm\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"StartInhibits_Enable\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"StartInhibits_Precharge\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"StartInhibits_Stop\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"StartInhibits_Database\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"StartInhibits_Startup\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"StartInhibits_Safety\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"StartInhibits_Sleep\": {\n", + " \"offset\": 41,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits_Profiler\": {\n", + " \"offset\": 41,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus2\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus2_AutoRstrAct\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus2_AuRstrCntDwn\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus2_HSFanOn\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2_Reserved\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus2_FluxBraking\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus2_FdbkLossSwO\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus2_Reserved1\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus2_AdjVltgMode\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus2_PrchrgClosed\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus2_Autotuning\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus2_PIDFBLoss\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2_AccelRate\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus2_DecelRate\": {\n", + " \"offset\": 45,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveOLCount\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveTempC\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"LastFaultCode\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusA\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusA_PowerLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusA_UnderVoltage\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusA_MotorOL\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusA_LoadLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusA_InPhaseLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusA_OutPhaseLoss\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusA_DecelInhib\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusA_ShearPin1\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusA_ShearPin2\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusA_PriFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusA_AltFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusA_AuxFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusA_PosFdbkLoss\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusA_ExtPrchrgErr\": {\n", + " \"offset\": 61,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusB_AuxInputFlt\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_OverVoltage\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_DriveOL\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_HeatsinkOT\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_TransistorOT\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_SinkUnderTmp\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_ExcessLoad\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusB_OverspdLmt\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusB_PrchrgOpen\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_SafetyBrdFlt\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_IRVoltsRange\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_FluxAmpsRang\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_IXOVoltRange\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_AuRstExhaust\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_SWOverCur\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusB_HWOverCur\": {\n", + " \"offset\": 65,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusB_Reserved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_Reserved1\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_GroundFault\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_OWAlarmTO\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_OverTravel\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_TrvlLimCflct\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_EndLmtSw\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"ElapsedkWH\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"pad\",\n", + " \"DriveStatus\",\n", + " \"DriveStatus_Ready\",\n", + " \"DriveStatus_Active\",\n", + " \"DriveStatus_CommandDir\",\n", + " \"DriveStatus_ActualDir\",\n", + " \"DriveStatus_Accelerating\",\n", + " \"DriveStatus_Decelerating\",\n", + " \"DriveStatus_Alarm\",\n", + " \"DriveStatus_Faulted\",\n", + " \"DriveStatus_AtSpeed\",\n", + " \"DriveStatus_Manual\",\n", + " \"DriveStatus_SpdRefBit0\",\n", + " \"DriveStatus_SpdRefBit1\",\n", + " \"DriveStatus_SpdRefBit2\",\n", + " \"DriveStatus_SpdRefBit3\",\n", + " \"DriveStatus_SpdRefBit4\",\n", + " \"DriveStatus_Running\",\n", + " \"DriveStatus_Jogging\",\n", + " \"DriveStatus_Stopping\",\n", + " \"DriveStatus_DCBraking\",\n", + " \"DriveStatus_DBActive\",\n", + " \"DriveStatus_SpeedMode\",\n", + " \"DriveStatus_PositionMode\",\n", + " \"DriveStatus_TorqueMode\",\n", + " \"DriveStatus_AtZeroSpeed\",\n", + " \"DriveStatus_AtHome\",\n", + " \"DriveStatus_AtLimit\",\n", + " \"DriveStatus_CurrLimit\",\n", + " \"DriveStatus_BusFrqReg\",\n", + " \"DriveStatus_EnableOn\",\n", + " \"DriveStatus_MotorOL\",\n", + " \"DriveStatus_Regen\",\n", + " \"Feedback\",\n", + " \"TorqueCurFdbk\",\n", + " \"OutputCurrent\",\n", + " \"OutputPower\",\n", + " \"ElapsedMWH\",\n", + " \"ElapsedRunTime\",\n", + " \"SpeedUnits\",\n", + " \"PredMaintSts\",\n", + " \"PredMaintSts_HeatsinkFan\",\n", + " \"PredMaintSts_InternalFan\",\n", + " \"PredMaintSts_MtrBearing\",\n", + " \"PredMaintSts_MtrLube\",\n", + " \"PredMaintSts_MchBearing\",\n", + " \"PredMaintSts_MchLube\",\n", + " \"PredMaintSts_Reserved\",\n", + " \"PredMaintSts_Reserved1\",\n", + " \"PredMaintSts_Reserved2\",\n", + " \"PredMaintSts_Reserved3\",\n", + " \"PredMaintSts_Reserved4\",\n", + " \"PredMaintSts_Reserved5\",\n", + " \"PredMaintSts_Reserved6\",\n", + " \"PredMaintSts_Reserved7\",\n", + " \"PredMaintSts_Reserved8\",\n", + " \"PredMaintSts_Master\",\n", + " \"StartInhibits\",\n", + " \"StartInhibits_Faulted\",\n", + " \"StartInhibits_Alarm\",\n", + " \"StartInhibits_Enable\",\n", + " \"StartInhibits_Precharge\",\n", + " \"StartInhibits_Stop\",\n", + " \"StartInhibits_Database\",\n", + " \"StartInhibits_Startup\",\n", + " \"StartInhibits_Safety\",\n", + " \"StartInhibits_Sleep\",\n", + " \"StartInhibits_Profiler\",\n", + " \"DriveStatus2\",\n", + " \"DriveStatus2_AutoRstrAct\",\n", + " \"DriveStatus2_AuRstrCntDwn\",\n", + " \"DriveStatus2_HSFanOn\",\n", + " \"DriveStatus2_Reserved\",\n", + " \"DriveStatus2_FluxBraking\",\n", + " \"DriveStatus2_FdbkLossSwO\",\n", + " \"DriveStatus2_Reserved1\",\n", + " \"DriveStatus2_AdjVltgMode\",\n", + " \"DriveStatus2_PrchrgClosed\",\n", + " \"DriveStatus2_Autotuning\",\n", + " \"DriveStatus2_PIDFBLoss\",\n", + " \"DriveStatus2_AccelRate\",\n", + " \"DriveStatus2_DecelRate\",\n", + " \"DriveOLCount\",\n", + " \"DriveTempC\",\n", + " \"LastFaultCode\",\n", + " \"FaultStatusA\",\n", + " \"FaultStatusA_PowerLoss\",\n", + " \"FaultStatusA_UnderVoltage\",\n", + " \"FaultStatusA_MotorOL\",\n", + " \"FaultStatusA_LoadLoss\",\n", + " \"FaultStatusA_InPhaseLoss\",\n", + " \"FaultStatusA_OutPhaseLoss\",\n", + " \"FaultStatusA_DecelInhib\",\n", + " \"FaultStatusA_ShearPin1\",\n", + " \"FaultStatusA_ShearPin2\",\n", + " \"FaultStatusA_PriFdbkLoss\",\n", + " \"FaultStatusA_AltFdbkLoss\",\n", + " \"FaultStatusA_AuxFdbkLoss\",\n", + " \"FaultStatusA_PosFdbkLoss\",\n", + " \"FaultStatusA_ExtPrchrgErr\",\n", + " \"FaultStatusB\",\n", + " \"FaultStatusB_AuxInputFlt\",\n", + " \"FaultStatusB_OverVoltage\",\n", + " \"FaultStatusB_DriveOL\",\n", + " \"FaultStatusB_HeatsinkOT\",\n", + " \"FaultStatusB_TransistorOT\",\n", + " \"FaultStatusB_SinkUnderTmp\",\n", + " \"FaultStatusB_ExcessLoad\",\n", + " \"FaultStatusB_OverspdLmt\",\n", + " \"FaultStatusB_PrchrgOpen\",\n", + " \"FaultStatusB_SafetyBrdFlt\",\n", + " \"FaultStatusB_IRVoltsRange\",\n", + " \"FaultStatusB_FluxAmpsRang\",\n", + " \"FaultStatusB_IXOVoltRange\",\n", + " \"FaultStatusB_AuRstExhaust\",\n", + " \"FaultStatusB_SWOverCur\",\n", + " \"FaultStatusB_HWOverCur\",\n", + " \"FaultStatusB_Reserved\",\n", + " \"FaultStatusB_Reserved1\",\n", + " \"FaultStatusB_GroundFault\",\n", + " \"FaultStatusB_OWAlarmTO\",\n", + " \"FaultStatusB_OverTravel\",\n", + " \"FaultStatusB_TrvlLimCflct\",\n", + " \"FaultStatusB_EndLmtSw\",\n", + " \"ElapsedkWH\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1057,\n", + " \"structure_size\": 72,\n", + " \"member_count\": 125,\n", + " \"structure_handle\": 10955\n", + " }\n", + " },\n", + " \"data_type_name\": \"AB:PowerFlex753_R_286F774E:I:0\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"VFD_753:O\": {\n", + " \"tag_name\": \"VFD_753:O\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 188,\n", + " \"symbol_address\": 63963360,\n", + " \"symbol_object_address\": 911052,\n", + " \"software_control\": 201392306,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 3358,\n", + " \"data_type\": {\n", + " \"name\": \"AB:PowerFlex753_R_54376CB2:O:0\",\n", + " \"internal_tags\": {\n", + " \"LogicCommand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"LogicCommand_Stop\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_Start\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_Jog1\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_ClearFaults\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LogicCommand_Forward\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"LogicCommand_Reverse\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"LogicCommand_Manual\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"LogicCommand_AccelTime1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_AccelTime2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_DecelTime1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_DecelTime2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LogicCommand_SpdRefSel0\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"LogicCommand_SpdRefSel1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"LogicCommand_SpdRefSel2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"LogicCommand_CoastStop\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_CLimitStop\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_Run\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_Jog2\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Reference\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPVolts\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPAmps\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPHertz\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPRPM\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorNPPower\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MtrOLFactor\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MotorPoles\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"MinFwdSpeed\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"MaxFwdSpeed\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PWMFrequency\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"ResetMeters\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"CurrentLimit1\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LogicCommand\",\n", + " \"LogicCommand_Stop\",\n", + " \"LogicCommand_Start\",\n", + " \"LogicCommand_Jog1\",\n", + " \"LogicCommand_ClearFaults\",\n", + " \"LogicCommand_Forward\",\n", + " \"LogicCommand_Reverse\",\n", + " \"LogicCommand_Manual\",\n", + " \"LogicCommand_AccelTime1\",\n", + " \"LogicCommand_AccelTime2\",\n", + " \"LogicCommand_DecelTime1\",\n", + " \"LogicCommand_DecelTime2\",\n", + " \"LogicCommand_SpdRefSel0\",\n", + " \"LogicCommand_SpdRefSel1\",\n", + " \"LogicCommand_SpdRefSel2\",\n", + " \"LogicCommand_CoastStop\",\n", + " \"LogicCommand_CLimitStop\",\n", + " \"LogicCommand_Run\",\n", + " \"LogicCommand_Jog2\",\n", + " \"Reference\",\n", + " \"MotorNPVolts\",\n", + " \"MotorNPAmps\",\n", + " \"MotorNPHertz\",\n", + " \"MotorNPRPM\",\n", + " \"MotorNPPower\",\n", + " \"MtrOLFactor\",\n", + " \"MotorPoles\",\n", + " \"MinFwdSpeed\",\n", + " \"MaxFwdSpeed\",\n", + " \"PWMFrequency\",\n", + " \"ResetMeters\",\n", + " \"CurrentLimit1\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 250,\n", + " \"structure_size\": 56,\n", + " \"member_count\": 32,\n", + " \"structure_handle\": 18175\n", + " }\n", + " },\n", + " \"data_type_name\": \"AB:PowerFlex753_R_54376CB2:O:0\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"PowerFlex753\": {\n", + " \"tag_name\": \"PowerFlex753\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 191,\n", + " \"symbol_address\": 24504,\n", + " \"symbol_object_address\": 911172,\n", + " \"software_control\": 67174587,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 3019,\n", + " \"data_type\": {\n", + " \"name\": \"P_PF753\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_FwdPermOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_FwdNBPermOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_RevPermOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Inp_RevNBPermOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Inp_IntlkOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Inp_NBIntlkOK\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Inp_IOFault\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Inp_Sim\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 180,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Inp_OvrdCmd\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_OvrdSpeed\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_HasReverse\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasJog\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AllowLocal\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_HasFwdPermObj\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_HasRevPermObj\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_HasIntlkObj\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_HasResInhObj\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_HasRunTimeObj\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_SetTrack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_SetTrackOvrdHand\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 180,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 180,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_OperStopPrio\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_OCmdResets\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_OvrdPermIntlk\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_ShedOnFailToStart\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_ShedOnIOFault\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Cfg_SimScaleEU\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_SimScaleRaw\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasFailToStartAlm\": {\n", + " \"offset\": 696,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasFailToStopAlm\": {\n", + " \"offset\": 540,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasIntlkTripAlm\": {\n", + " \"offset\": 384,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasDriveFaultAlm\": {\n", + " \"offset\": 972,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_HasIOFaultAlm\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_FailToStartResetReqd\": {\n", + " \"offset\": 696,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_FailToStopResetReqd\": {\n", + " \"offset\": 540,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_IntlkTripResetReqd\": {\n", + " \"offset\": 384,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_DriveFaultResetReqd\": {\n", + " \"offset\": 972,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_IOFaultResetReqd\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_FailToStartAckReqd\": {\n", + " \"offset\": 696,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_FailToStopAckReqd\": {\n", + " \"offset\": 540,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_IntlkTripAckReqd\": {\n", + " \"offset\": 384,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_DriveFaultAckReqd\": {\n", + " \"offset\": 972,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_IOFaultAckReqd\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_FailToStartSeverity\": {\n", + " \"offset\": 700,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailToStopSeverity\": {\n", + " \"offset\": 544,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IntlkTripSeverity\": {\n", + " \"offset\": 388,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_DriveFaultSeverity\": {\n", + " \"offset\": 976,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_IOFaultSeverity\": {\n", + " \"offset\": 232,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MinSpdRef\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxSpdRef\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedRefRawMin\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedRefRawMax\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedRefEUMin\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedRefEUMax\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedFdbkRawMin\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedFdbkRawMax\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedFdbkEUMin\": {\n", + " \"offset\": 44,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedFdbkEUMax\": {\n", + " \"offset\": 48,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SimRampT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailToStartT\": {\n", + " \"offset\": 56,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FailToStopT\": {\n", + " \"offset\": 60,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_ResetPulseT\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxJogT\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_OperKeep\": {\n", + " \"offset\": 72,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_ProgKeep\": {\n", + " \"offset\": 73,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_SpeedRef\": {\n", + " \"offset\": 76,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PSet_Owner\": {\n", + " \"offset\": 80,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"OSet_SpeedRef\": {\n", + " \"offset\": 84,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"PCmd_Start\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Stop\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Fwd\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCmd_Rev\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 180,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 181,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 181,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 181,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_FailToStartAck\": {\n", + " \"offset\": 697,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_FailToStartSuppress\": {\n", + " \"offset\": 697,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_FailToStartUnsuppress\": {\n", + " \"offset\": 697,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_FailToStartUnshelve\": {\n", + " \"offset\": 697,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_FailToStopAck\": {\n", + " \"offset\": 541,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_FailToStopSuppress\": {\n", + " \"offset\": 541,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_FailToStopUnsuppress\": {\n", + " \"offset\": 541,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_FailToStopUnshelve\": {\n", + " \"offset\": 541,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_IntlkTripAck\": {\n", + " \"offset\": 385,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_IntlkTripSuppress\": {\n", + " \"offset\": 385,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_IntlkTripUnsuppress\": {\n", + " \"offset\": 385,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_IntlkTripUnshelve\": {\n", + " \"offset\": 385,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_DriveFaultAck\": {\n", + " \"offset\": 973,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_DriveFaultSuppress\": {\n", + " \"offset\": 973,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_DriveFaultUnsuppress\": {\n", + " \"offset\": 973,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_DriveFaultUnshelve\": {\n", + " \"offset\": 973,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_IOFaultAck\": {\n", + " \"offset\": 229,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_IOFaultSuppress\": {\n", + " \"offset\": 229,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_IOFaultUnsuppress\": {\n", + " \"offset\": 229,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_IOFaultUnshelve\": {\n", + " \"offset\": 229,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Start\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Stop\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"OCmd_Jog\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_Fwd\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Rev\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"OCmd_Bypass\": {\n", + " \"offset\": 88,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Check\": {\n", + " \"offset\": 89,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 89,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 89,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 181,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 181,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 181,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_Unlock\": {\n", + " \"offset\": 181,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 89,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"OCmd_ResetAckAll\": {\n", + " \"offset\": 89,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Val_SpeedRef\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedFdbk\": {\n", + " \"offset\": 96,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedRefSrc\": {\n", + " \"offset\": 100,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedRefRaw\": {\n", + " \"offset\": 104,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedFdbkRaw\": {\n", + " \"offset\": 108,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedRefEUMin\": {\n", + " \"offset\": 112,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedRefEUMax\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedFdbkEUMin\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SpeedFdbkEUMax\": {\n", + " \"offset\": 124,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_LastFaultCode\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ_IO\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"SrcQ\": {\n", + " \"offset\": 133,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Cmd\": {\n", + " \"offset\": 134,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Fdbk\": {\n", + " \"offset\": 135,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Sts\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Fault\": {\n", + " \"offset\": 137,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Mode\": {\n", + " \"offset\": 184,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Owner\": {\n", + " \"offset\": 140,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 144,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Stopped\": {\n", + " \"offset\": 89,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_Starting\": {\n", + " \"offset\": 89,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_Running\": {\n", + " \"offset\": 89,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Stopping\": {\n", + " \"offset\": 90,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Jogging\": {\n", + " \"offset\": 90,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_CommandDir\": {\n", + " \"offset\": 90,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_ActualDir\": {\n", + " \"offset\": 90,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_Accel\": {\n", + " \"offset\": 90,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Decel\": {\n", + " \"offset\": 90,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_NotReady\": {\n", + " \"offset\": 90,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_Alarm\": {\n", + " \"offset\": 90,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_AtSpeed\": {\n", + " \"offset\": 91,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_SpeedLimited\": {\n", + " \"offset\": 91,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_DriveSts1\": {\n", + " \"offset\": 148,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_DriveSts2\": {\n", + " \"offset\": 152,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_FaultStsA\": {\n", + " \"offset\": 156,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_FaultStsB\": {\n", + " \"offset\": 160,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_PMSts\": {\n", + " \"offset\": 164,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_StartInhibits\": {\n", + " \"offset\": 168,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Available\": {\n", + " \"offset\": 91,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Bypass\": {\n", + " \"offset\": 91,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_BypActive\": {\n", + " \"offset\": 91,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_Disabled\": {\n", + " \"offset\": 91,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_NotRdy\": {\n", + " \"offset\": 91,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Nrdy_Disabled\": {\n", + " \"offset\": 91,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost02\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Nrdy_CfgErr\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Nrdy_Intlk\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Nrdy_Perm\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Nrdy_OperPrio\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Nrdy_Fail\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Nrdy_IOFault\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Nrdy_Trip\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Nrdy_DriveNR\": {\n", + " \"offset\": 172,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Nrdy_NoMode\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_MaintByp\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Err_Sim\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Err_Alarm\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Err_FdbkRaw\": {\n", + " \"offset\": 173,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Err_FdbkEU\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_RefLim\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_RefEU\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Err_RefRaw\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 181,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 182,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 182,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 182,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 182,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 182,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 182,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 182,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_FailToStart\": {\n", + " \"offset\": 696,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_FailToStart\": {\n", + " \"offset\": 762,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_FailToStart\": {\n", + " \"offset\": 762,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailToStartDisabled\": {\n", + " \"offset\": 763,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailToStartShelved\": {\n", + " \"offset\": 762,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FailToStartSuppressed\": {\n", + " \"offset\": 762,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_FailToStop\": {\n", + " \"offset\": 540,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_FailToStop\": {\n", + " \"offset\": 606,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_FailToStop\": {\n", + " \"offset\": 606,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailToStopDisabled\": {\n", + " \"offset\": 607,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_FailToStopShelved\": {\n", + " \"offset\": 606,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_FailToStopSuppressed\": {\n", + " \"offset\": 606,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_IntlkTrip\": {\n", + " \"offset\": 384,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_IntlkTrip\": {\n", + " \"offset\": 450,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_IntlkTrip\": {\n", + " \"offset\": 450,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IntlkTripDisabled\": {\n", + " \"offset\": 451,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IntlkTripShelved\": {\n", + " \"offset\": 450,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_IntlkTripSuppressed\": {\n", + " \"offset\": 450,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_DriveFault\": {\n", + " \"offset\": 972,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_DriveFault\": {\n", + " \"offset\": 1038,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_DriveFault\": {\n", + " \"offset\": 1038,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_DriveFaultDisabled\": {\n", + " \"offset\": 1039,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_DriveFaultShelved\": {\n", + " \"offset\": 1038,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_DriveFaultSuppressed\": {\n", + " \"offset\": 1038,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_IOFault\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Alm_IOFault\": {\n", + " \"offset\": 294,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack_IOFault\": {\n", + " \"offset\": 294,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IOFaultDisabled\": {\n", + " \"offset\": 295,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_IOFaultShelved\": {\n", + " \"offset\": 294,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_IOFaultSuppressed\": {\n", + " \"offset\": 294,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Start\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Stop\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Jog\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Fwd\": {\n", + " \"offset\": 174,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_Rev\": {\n", + " \"offset\": 175,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Bypass\": {\n", + " \"offset\": 175,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_Check\": {\n", + " \"offset\": 175,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 175,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 175,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 175,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_ResetAckAll\": {\n", + " \"offset\": 175,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_SpeedRef\": {\n", + " \"offset\": 175,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost03\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"P_PF753\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Mode\": {\n", + " \"offset\": 180,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Mode\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp_Hand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Ovrd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_OvrdOverLock\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_ProgDefault\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Acq\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PCmd_Lock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PCmd_Unlock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"MCmd_Acq\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Rel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"OCmd_AcqLock\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"OCmd_UnlockRel\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Sts_Hand\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Maint\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Sts_Ovrd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_Prog\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Sts_Oper\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Sts_ProgOperLock\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Sts_ProgOperSel\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Sts_NoMode\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Sts_MAcqRcvd\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Rdy_MAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_MRel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Rdy_OAcq\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_OLock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_OUnlock\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_ORel\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"P_Mode\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_Locked\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Prog\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_Maint\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_Hand\",\n", + " \"Inp_Ovrd\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_OvrdOverLock\",\n", + " \"Cfg_ProgDefault\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_UnlockRel\",\n", + " \"Val\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_ProgOperSel\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Rdy_MAcq\",\n", + " \"Rdy_MRel\",\n", + " \"Rdy_OAcq\",\n", + " \"Rdy_OLock\",\n", + " \"Rdy_OUnlock\",\n", + " \"Rdy_ORel\",\n", + " \"P_Mode\",\n", + " \"Wrk_Locked\",\n", + " \"Wrk_Prog\",\n", + " \"Wrk_Maint\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 228,\n", + " \"structure_size\": 48,\n", + " \"member_count\": 39,\n", + " \"structure_handle\": 16800\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Mode\",\n", + " \"array\": 0\n", + " },\n", + " \"IOFault\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"IntlkTrip\": {\n", + " \"offset\": 384,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"FailToStop\": {\n", + " \"offset\": 540,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"FailToStart\": {\n", + " \"offset\": 696,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 852,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Label\": {\n", + " \"offset\": 876,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Desc\": {\n", + " \"offset\": 900,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Run\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Wrk_StartRetrigT\": {\n", + " \"offset\": 944,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_StopRetrigT\": {\n", + " \"offset\": 956,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_RunFdbk\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Notify\": {\n", + " \"offset\": 968,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Bypass\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Disabled\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveFault\": {\n", + " \"offset\": 972,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"P_Alarm\",\n", + " \"internal_tags\": {\n", + " \"__BitHost00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EnableIn\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EnableOut\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Inp\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Inp_Reset\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Cfg_Exists\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Cfg_ResetReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Cfg_AckReqd\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Cfg_AllowShelve\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_AllowDisable\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Cfg_PCmdClear\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Cfg_Severity\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_AlmMinOnT\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_MaxShelfT\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"PCfg_AllowExist\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PCmd_Reset\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PCmd_Ack\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PCmd_Suppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PCmd_Unsuppress\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PCmd_Unshelve\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"OCmd_Reset\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"OCmd_Ack\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"OCmd_Shelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"OCmd_Unshelve\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"MCmd_Disable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"MCmd_Enable\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"MCmd_Test\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Val_Notify\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_MinToUnshelve\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_SecToUnshelve\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Alm\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Ack\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Shelved\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Suppressed\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Disabled\": {\n", + " \"offset\": 67,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Sts_AlmInh\": {\n", + " \"offset\": 2,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Sts_Err\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Err_Timer\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Err_Severity\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Rdy_Reset\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Rdy_Ack\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Rdy_Shelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Rdy_Unshelve\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Rdy_Disable\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"__BitHost01\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rdy_Enable\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Rdy_Test\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"P_Alarm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_Alm\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_Suppressed\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_AlmMinOnT\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_AutoAckT\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ShelfT\": {\n", + " \"offset\": 52,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 64,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Com_AE\": {\n", + " \"offset\": 66,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Tag\": {\n", + " \"offset\": 68,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_Cond\": {\n", + " \"offset\": 92,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_20\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 20\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 24,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 56972\n", + " },\n", + " \"string\": 20\n", + " },\n", + " \"data_type_name\": \"STRING_20\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SecToUnshelve\": {\n", + " \"offset\": 116,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 120,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_Exists\",\n", + " \"Cfg_ResetReqd\",\n", + " \"Cfg_AckReqd\",\n", + " \"Cfg_AllowShelve\",\n", + " \"Cfg_AllowDisable\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_Severity\",\n", + " \"Cfg_AlmMinOnT\",\n", + " \"Cfg_MaxShelfT\",\n", + " \"PCfg_AllowExist\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_Ack\",\n", + " \"PCmd_Suppress\",\n", + " \"PCmd_Unsuppress\",\n", + " \"PCmd_Unshelve\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_Ack\",\n", + " \"OCmd_Shelve\",\n", + " \"OCmd_Unshelve\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Test\",\n", + " \"Val_Notify\",\n", + " \"Val_MinToUnshelve\",\n", + " \"Val_SecToUnshelve\",\n", + " \"Alm\",\n", + " \"Ack\",\n", + " \"Shelved\",\n", + " \"Suppressed\",\n", + " \"Disabled\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Severity\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_Ack\",\n", + " \"Rdy_Shelve\",\n", + " \"Rdy_Unshelve\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Test\",\n", + " \"P_Alarm\",\n", + " \"Wrk_Alm\",\n", + " \"Wrk_Suppressed\",\n", + " \"Wrk_AlmMinOnT\",\n", + " \"Wrk_AutoAckT\",\n", + " \"Wrk_ShelfT\",\n", + " \"Inf_Tab\",\n", + " \"Com_AE\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Cond\",\n", + " \"Wrk_SecToUnshelve\",\n", + " \"Inf_Lib\",\n", + " \"Inf_Type\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 357,\n", + " \"structure_size\": 156,\n", + " \"member_count\": 60,\n", + " \"structure_handle\": 27647\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_Alarm\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_SpeedRefEU\": {\n", + " \"offset\": 1128,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SpeedRef\": {\n", + " \"offset\": 1140,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Rev\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Wrk_Jog\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Wrk_ResetT\": {\n", + " \"offset\": 1144,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ResetONS\": {\n", + " \"offset\": 176,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Cfg_SpeedFdbkEU\": {\n", + " \"offset\": 1156,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_8\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 8\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 54208\n", + " },\n", + " \"string\": 8\n", + " },\n", + " \"data_type_name\": \"STRING_8\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_RevText\": {\n", + " \"offset\": 1168,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Cfg_FwdText\": {\n", + " \"offset\": 1188,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_StopT\": {\n", + " \"offset\": 1208,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_StartT\": {\n", + " \"offset\": 1220,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Tab\": {\n", + " \"offset\": 1232,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Cmd\": {\n", + " \"offset\": 1233,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Sts\": {\n", + " \"offset\": 1234,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Fault\": {\n", + " \"offset\": 1235,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_Retrigger\": {\n", + " \"offset\": 177,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_Step\": {\n", + " \"offset\": 1236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ScanTime\": {\n", + " \"offset\": 1240,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ScanT\": {\n", + " \"offset\": 1244,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SimFdbkTgt\": {\n", + " \"offset\": 1256,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"array\": 0\n", + " },\n", + " \"Inf_Type\": {\n", + " \"offset\": 1260,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_16\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 16\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 20,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 36281\n", + " },\n", + " \"string\": 16\n", + " },\n", + " \"data_type_name\": \"STRING_16\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_JogT\": {\n", + " \"offset\": 1280,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_FaultDescFSC\": {\n", + " \"offset\": 1292,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"CONTROL\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"LEN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"POS\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"EU\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"EM\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"ER\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"UL\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"IN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FD\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"POS\",\n", + " \"EN\",\n", + " \"EU\",\n", + " \"DN\",\n", + " \"EM\",\n", + " \"ER\",\n", + " \"UL\",\n", + " \"IN\",\n", + " \"FD\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 51,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 11,\n", + " \"structure_handle\": 3969\n", + " }\n", + " },\n", + " \"data_type_name\": \"CONTROL\",\n", + " \"array\": 0\n", + " },\n", + " \"Val_FaultDesc\": {\n", + " \"offset\": 1304,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_40\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 40\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 44,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 32239\n", + " },\n", + " \"string\": 40\n", + " },\n", + " \"data_type_name\": \"STRING_40\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_ProgKeep2ONS\": {\n", + " \"offset\": 177,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Wrk_ProgKeep1ONS\": {\n", + " \"offset\": 177,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"Wrk_ProgKeep0ONS\": {\n", + " \"offset\": 177,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"Wrk_OperKeep2ONS\": {\n", + " \"offset\": 177,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"Wrk_OperKeep1ONS\": {\n", + " \"offset\": 177,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"Wrk_OperKeep0ONS\": {\n", + " \"offset\": 177,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Inf_Lib\": {\n", + " \"offset\": 1348,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING_12\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 12\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 17,\n", + " \"structure_size\": 16,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 20159\n", + " },\n", + " \"string\": 12\n", + " },\n", + " \"data_type_name\": \"STRING_12\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_SrcQ\": {\n", + " \"offset\": 1364,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_NotRdyONS\": {\n", + " \"offset\": 177,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"Wrk_NotRdy\": {\n", + " \"offset\": 178,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"Wrk_StartInhT\": {\n", + " \"offset\": 1368,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_StopInhT\": {\n", + " \"offset\": 1380,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"TIMER\",\n", + " \"internal_tags\": {\n", + " \"Control\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PRE\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ACC\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TT\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 3,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"PRE\",\n", + " \"ACC\",\n", + " \"EN\",\n", + " \"TT\",\n", + " \"DN\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 32,\n", + " \"structure_size\": 12,\n", + " \"member_count\": 6,\n", + " \"structure_handle\": 3971\n", + " }\n", + " },\n", + " \"data_type_name\": \"TIMER\",\n", + " \"array\": 0\n", + " },\n", + " \"Wrk_NoLongerSim\": {\n", + " \"offset\": 178,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"Wrk_Hand\": {\n", + " \"offset\": 178,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"EnableIn\",\n", + " \"EnableOut\",\n", + " \"Inp_FwdPermOK\",\n", + " \"Inp_FwdNBPermOK\",\n", + " \"Inp_RevPermOK\",\n", + " \"Inp_RevNBPermOK\",\n", + " \"Inp_IntlkOK\",\n", + " \"Inp_NBIntlkOK\",\n", + " \"Inp_IOFault\",\n", + " \"Inp_Sim\",\n", + " \"Inp_Hand\",\n", + " \"Inp_Ovrd\",\n", + " \"Inp_OvrdCmd\",\n", + " \"Inp_OvrdSpeed\",\n", + " \"Inp_Reset\",\n", + " \"Cfg_HasReverse\",\n", + " \"Cfg_HasJog\",\n", + " \"Cfg_AllowLocal\",\n", + " \"Cfg_HasFwdPermObj\",\n", + " \"Cfg_HasRevPermObj\",\n", + " \"Cfg_HasIntlkObj\",\n", + " \"Cfg_HasResInhObj\",\n", + " \"Cfg_HasRunTimeObj\",\n", + " \"Cfg_SetTrack\",\n", + " \"Cfg_SetTrackOvrdHand\",\n", + " \"Cfg_PCmdClear\",\n", + " \"Cfg_ProgDefault\",\n", + " \"Cfg_OperStopPrio\",\n", + " \"Cfg_OCmdResets\",\n", + " \"Cfg_OvrdPermIntlk\",\n", + " \"Cfg_ShedOnFailToStart\",\n", + " \"Cfg_ShedOnIOFault\",\n", + " \"Cfg_SimScaleEU\",\n", + " \"Cfg_SimScaleRaw\",\n", + " \"Cfg_HasFailToStartAlm\",\n", + " \"Cfg_HasFailToStopAlm\",\n", + " \"Cfg_HasIntlkTripAlm\",\n", + " \"Cfg_HasDriveFaultAlm\",\n", + " \"Cfg_HasIOFaultAlm\",\n", + " \"Cfg_FailToStartResetReqd\",\n", + " \"Cfg_FailToStopResetReqd\",\n", + " \"Cfg_IntlkTripResetReqd\",\n", + " \"Cfg_DriveFaultResetReqd\",\n", + " \"Cfg_IOFaultResetReqd\",\n", + " \"Cfg_FailToStartAckReqd\",\n", + " \"Cfg_FailToStopAckReqd\",\n", + " \"Cfg_IntlkTripAckReqd\",\n", + " \"Cfg_DriveFaultAckReqd\",\n", + " \"Cfg_IOFaultAckReqd\",\n", + " \"Cfg_FailToStartSeverity\",\n", + " \"Cfg_FailToStopSeverity\",\n", + " \"Cfg_IntlkTripSeverity\",\n", + " \"Cfg_DriveFaultSeverity\",\n", + " \"Cfg_IOFaultSeverity\",\n", + " \"Cfg_MinSpdRef\",\n", + " \"Cfg_MaxSpdRef\",\n", + " \"Cfg_SpeedRefRawMin\",\n", + " \"Cfg_SpeedRefRawMax\",\n", + " \"Cfg_SpeedRefEUMin\",\n", + " \"Cfg_SpeedRefEUMax\",\n", + " \"Cfg_SpeedFdbkRawMin\",\n", + " \"Cfg_SpeedFdbkRawMax\",\n", + " \"Cfg_SpeedFdbkEUMin\",\n", + " \"Cfg_SpeedFdbkEUMax\",\n", + " \"Cfg_SimRampT\",\n", + " \"Cfg_FailToStartT\",\n", + " \"Cfg_FailToStopT\",\n", + " \"Cfg_ResetPulseT\",\n", + " \"Cfg_MaxJogT\",\n", + " \"Cfg_OperKeep\",\n", + " \"Cfg_ProgKeep\",\n", + " \"PSet_SpeedRef\",\n", + " \"PSet_Owner\",\n", + " \"OSet_SpeedRef\",\n", + " \"PCmd_Start\",\n", + " \"PCmd_Stop\",\n", + " \"PCmd_Fwd\",\n", + " \"PCmd_Rev\",\n", + " \"PCmd_Acq\",\n", + " \"PCmd_Rel\",\n", + " \"PCmd_Lock\",\n", + " \"PCmd_Unlock\",\n", + " \"PCmd_Reset\",\n", + " \"PCmd_FailToStartAck\",\n", + " \"PCmd_FailToStartSuppress\",\n", + " \"PCmd_FailToStartUnsuppress\",\n", + " \"PCmd_FailToStartUnshelve\",\n", + " \"PCmd_FailToStopAck\",\n", + " \"PCmd_FailToStopSuppress\",\n", + " \"PCmd_FailToStopUnsuppress\",\n", + " \"PCmd_FailToStopUnshelve\",\n", + " \"PCmd_IntlkTripAck\",\n", + " \"PCmd_IntlkTripSuppress\",\n", + " \"PCmd_IntlkTripUnsuppress\",\n", + " \"PCmd_IntlkTripUnshelve\",\n", + " \"PCmd_DriveFaultAck\",\n", + " \"PCmd_DriveFaultSuppress\",\n", + " \"PCmd_DriveFaultUnsuppress\",\n", + " \"PCmd_DriveFaultUnshelve\",\n", + " \"PCmd_IOFaultAck\",\n", + " \"PCmd_IOFaultSuppress\",\n", + " \"PCmd_IOFaultUnsuppress\",\n", + " \"PCmd_IOFaultUnshelve\",\n", + " \"OCmd_Start\",\n", + " \"OCmd_Stop\",\n", + " \"OCmd_Jog\",\n", + " \"OCmd_Fwd\",\n", + " \"OCmd_Rev\",\n", + " \"OCmd_Bypass\",\n", + " \"OCmd_Check\",\n", + " \"MCmd_Disable\",\n", + " \"MCmd_Enable\",\n", + " \"MCmd_Acq\",\n", + " \"MCmd_Rel\",\n", + " \"OCmd_AcqLock\",\n", + " \"OCmd_Unlock\",\n", + " \"OCmd_Reset\",\n", + " \"OCmd_ResetAckAll\",\n", + " \"Val_SpeedRef\",\n", + " \"Val_SpeedFdbk\",\n", + " \"Val_SpeedRefSrc\",\n", + " \"Val_SpeedRefRaw\",\n", + " \"Val_SpeedFdbkRaw\",\n", + " \"Val_SpeedRefEUMin\",\n", + " \"Val_SpeedRefEUMax\",\n", + " \"Val_SpeedFdbkEUMin\",\n", + " \"Val_SpeedFdbkEUMax\",\n", + " \"Val_LastFaultCode\",\n", + " \"SrcQ_IO\",\n", + " \"SrcQ\",\n", + " \"Val_Cmd\",\n", + " \"Val_Fdbk\",\n", + " \"Val_Sts\",\n", + " \"Val_Fault\",\n", + " \"Val_Mode\",\n", + " \"Val_Owner\",\n", + " \"Val_Notify\",\n", + " \"Sts_Stopped\",\n", + " \"Sts_Starting\",\n", + " \"Sts_Running\",\n", + " \"Sts_Stopping\",\n", + " \"Sts_Jogging\",\n", + " \"Sts_CommandDir\",\n", + " \"Sts_ActualDir\",\n", + " \"Sts_Accel\",\n", + " \"Sts_Decel\",\n", + " \"Sts_NotReady\",\n", + " \"Sts_Alarm\",\n", + " \"Sts_AtSpeed\",\n", + " \"Sts_SpeedLimited\",\n", + " \"Sts_DriveSts1\",\n", + " \"Sts_DriveSts2\",\n", + " \"Sts_FaultStsA\",\n", + " \"Sts_FaultStsB\",\n", + " \"Sts_PMSts\",\n", + " \"Sts_StartInhibits\",\n", + " \"Sts_Available\",\n", + " \"Sts_Bypass\",\n", + " \"Sts_BypActive\",\n", + " \"Sts_Disabled\",\n", + " \"Sts_NotRdy\",\n", + " \"Nrdy_Disabled\",\n", + " \"Nrdy_CfgErr\",\n", + " \"Nrdy_Intlk\",\n", + " \"Nrdy_Perm\",\n", + " \"Nrdy_OperPrio\",\n", + " \"Nrdy_Fail\",\n", + " \"Nrdy_IOFault\",\n", + " \"Nrdy_Trip\",\n", + " \"Nrdy_DriveNR\",\n", + " \"Nrdy_NoMode\",\n", + " \"Sts_MaintByp\",\n", + " \"Sts_AlmInh\",\n", + " \"Sts_Err\",\n", + " \"Err_Timer\",\n", + " \"Err_Sim\",\n", + " \"Err_Alarm\",\n", + " \"Err_FdbkRaw\",\n", + " \"Err_FdbkEU\",\n", + " \"Err_RefLim\",\n", + " \"Err_RefEU\",\n", + " \"Err_RefRaw\",\n", + " \"Sts_Hand\",\n", + " \"Sts_Maint\",\n", + " \"Sts_Ovrd\",\n", + " \"Sts_Prog\",\n", + " \"Sts_Oper\",\n", + " \"Sts_ProgOperLock\",\n", + " \"Sts_NoMode\",\n", + " \"Sts_MAcqRcvd\",\n", + " \"Sts_FailToStart\",\n", + " \"Alm_FailToStart\",\n", + " \"Ack_FailToStart\",\n", + " \"Sts_FailToStartDisabled\",\n", + " \"Sts_FailToStartShelved\",\n", + " \"Sts_FailToStartSuppressed\",\n", + " \"Sts_FailToStop\",\n", + " \"Alm_FailToStop\",\n", + " \"Ack_FailToStop\",\n", + " \"Sts_FailToStopDisabled\",\n", + " \"Sts_FailToStopShelved\",\n", + " \"Sts_FailToStopSuppressed\",\n", + " \"Sts_IntlkTrip\",\n", + " \"Alm_IntlkTrip\",\n", + " \"Ack_IntlkTrip\",\n", + " \"Sts_IntlkTripDisabled\",\n", + " \"Sts_IntlkTripShelved\",\n", + " \"Sts_IntlkTripSuppressed\",\n", + " \"Sts_DriveFault\",\n", + " \"Alm_DriveFault\",\n", + " \"Ack_DriveFault\",\n", + " \"Sts_DriveFaultDisabled\",\n", + " \"Sts_DriveFaultShelved\",\n", + " \"Sts_DriveFaultSuppressed\",\n", + " \"Sts_IOFault\",\n", + " \"Alm_IOFault\",\n", + " \"Ack_IOFault\",\n", + " \"Sts_IOFaultDisabled\",\n", + " \"Sts_IOFaultShelved\",\n", + " \"Sts_IOFaultSuppressed\",\n", + " \"Rdy_Start\",\n", + " \"Rdy_Stop\",\n", + " \"Rdy_Jog\",\n", + " \"Rdy_Fwd\",\n", + " \"Rdy_Rev\",\n", + " \"Rdy_Bypass\",\n", + " \"Rdy_Check\",\n", + " \"Rdy_Disable\",\n", + " \"Rdy_Enable\",\n", + " \"Rdy_Reset\",\n", + " \"Rdy_ResetAckAll\",\n", + " \"Rdy_SpeedRef\",\n", + " \"P_PF753\",\n", + " \"Mode\",\n", + " \"IOFault\",\n", + " \"IntlkTrip\",\n", + " \"FailToStop\",\n", + " \"FailToStart\",\n", + " \"Cfg_Tag\",\n", + " \"Cfg_Label\",\n", + " \"Cfg_Desc\",\n", + " \"Wrk_Run\",\n", + " \"Wrk_StartRetrigT\",\n", + " \"Wrk_StopRetrigT\",\n", + " \"Wrk_RunFdbk\",\n", + " \"Wrk_Notify\",\n", + " \"Wrk_Bypass\",\n", + " \"Wrk_Disabled\",\n", + " \"DriveFault\",\n", + " \"Cfg_SpeedRefEU\",\n", + " \"Wrk_SpeedRef\",\n", + " \"Wrk_Rev\",\n", + " \"Wrk_Jog\",\n", + " \"Wrk_ResetT\",\n", + " \"Wrk_ResetONS\",\n", + " \"Cfg_SpeedFdbkEU\",\n", + " \"Cfg_RevText\",\n", + " \"Cfg_FwdText\",\n", + " \"Wrk_StopT\",\n", + " \"Wrk_StartT\",\n", + " \"Inf_Tab\",\n", + " \"Wrk_Cmd\",\n", + " \"Wrk_Sts\",\n", + " \"Wrk_Fault\",\n", + " \"Wrk_Retrigger\",\n", + " \"Wrk_Step\",\n", + " \"Wrk_ScanTime\",\n", + " \"Wrk_ScanT\",\n", + " \"Wrk_SimFdbkTgt\",\n", + " \"Inf_Type\",\n", + " \"Wrk_JogT\",\n", + " \"Wrk_FaultDescFSC\",\n", + " \"Val_FaultDesc\",\n", + " \"Wrk_ProgKeep2ONS\",\n", + " \"Wrk_ProgKeep1ONS\",\n", + " \"Wrk_ProgKeep0ONS\",\n", + " \"Wrk_OperKeep2ONS\",\n", + " \"Wrk_OperKeep1ONS\",\n", + " \"Wrk_OperKeep0ONS\",\n", + " \"Inf_Lib\",\n", + " \"Wrk_SrcQ\",\n", + " \"Wrk_NotRdyONS\",\n", + " \"Wrk_NotRdy\",\n", + " \"Wrk_StartInhT\",\n", + " \"Wrk_StopInhT\",\n", + " \"Wrk_NoLongerSim\",\n", + " \"Wrk_Hand\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1935,\n", + " \"structure_size\": 1392,\n", + " \"member_count\": 291,\n", + " \"structure_handle\": 48428\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PF753\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"VFD_753_I\": {\n", + " \"tag_name\": \"VFD_753_I\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 192,\n", + " \"symbol_address\": 24440,\n", + " \"symbol_object_address\": 911212,\n", + " \"software_control\": 67174588,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 2921,\n", + " \"data_type\": {\n", + " \"name\": \"P_PF753_Inp\",\n", + " \"internal_tags\": {\n", + " \"ZZZZZZZZZP_PF753_Inp_00\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus_Ready\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Active\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_CommandDir\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_ActualDir\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_Accelerating\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_Decelerating\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_Alarm\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus_Faulted\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus_AtSpeed\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus_Manual\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus_SpdRefBit0\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus_spdRefBit1\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus_SpdRefBit2\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus_SpdRefBit3\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus_SpdRefBit4\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Feedback\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PredMaintSts\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"PredMaintSts_HeatskinkFan\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PredMaintSts_InternalFan\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PredMaintSts_MtrBearing\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PredMaintSts_MtrLube\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PredMaintSts_MchBearing\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PredMaintSts_MchLube\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PredMaintSts_Reserved\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PredMaintSts_Reserved1\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"PredMaintSts_Reserved2\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"PredMaintSts_Reserved3\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"PredMaintSts_Reserved4\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"PredMaintSts_Reserved5\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"PredMaintSts_Reserved6\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"PredMaintSts_Reserved7\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"PredMaintSts_Reserved8\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"PredMaintSts_Master\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"StartInhibits_Faulted\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits_Alarm\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"StartInhibits_Enable\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"StartInhibits_Precharge\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"StartInhibits_Stop\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"StartInhibits_Database\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"StartInhibits_Startup\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"StartInhibits_Safety\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"StartInhibits_Sleep\": {\n", + " \"offset\": 17,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"StartInhibits_Profiler\": {\n", + " \"offset\": 17,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"StartInhibits_CommutNotCfg\": {\n", + " \"offset\": 17,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus1\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus1_Ready\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus1_Active\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus1_CommandDir\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus1_ActualDir\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus1_Accelerating\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus1_Decelerating\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus1_Alarm\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus1_Faulted\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus1_AtSpeed\": {\n", + " \"offset\": 21,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus1_Manual\": {\n", + " \"offset\": 21,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus1_SpdRefBit0\": {\n", + " \"offset\": 21,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus1_spdRefBit1\": {\n", + " \"offset\": 21,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus1_SpdRefBit2\": {\n", + " \"offset\": 21,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus1_SpdRefBit3\": {\n", + " \"offset\": 21,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus1_SpdRefBit4\": {\n", + " \"offset\": 21,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus1_Running\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus1_Jogging\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus1_Stopping\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus1_DCBraking\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus1_DBActive\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus1_SpeedMode\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus1_PositionMode\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus1_TorqueMode\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus1_AtZeroSpeed\": {\n", + " \"offset\": 23,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus1_AtHome\": {\n", + " \"offset\": 23,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus1_AtLimit\": {\n", + " \"offset\": 23,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus1_CurrLimit\": {\n", + " \"offset\": 23,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus1_BusFrqReg\": {\n", + " \"offset\": 23,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus1_EnableOn\": {\n", + " \"offset\": 23,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus1_MotorOL\": {\n", + " \"offset\": 23,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus1_Regen\": {\n", + " \"offset\": 23,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus2\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DriveStatus2_AutoRstrAct\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus2_AuRstrCntDwn\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus2_HSFanOn\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2_Reserved\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus2_FluxBraking\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DriveStatus2_FdbkLossSwO\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"DriveStatus2_Reserved1\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"DriveStatus2_Reserved2\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"DriveStatus2_PrchrgClosed\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"DriveStatus2_Autotuning\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"DriveStatus2_PIDFBLoss\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"DriveStatus2_AccelRate\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"DriveStatus2_DecelRate\": {\n", + " \"offset\": 25,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"LastFaultCode\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusA\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusA_PowerLoss\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusA_UnderVoltage\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusA_MotorOL\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusA_LoalLoss\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusA_InPhaseLoss\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusA_OutPhaseLoss\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusA_DecelInhib\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusA_ShearPin1\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusA_ShearPin2\": {\n", + " \"offset\": 33,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusA_PriFdbkLoss\": {\n", + " \"offset\": 33,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusA_AltFdbkLoss\": {\n", + " \"offset\": 33,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusA_AuxFdbkLoss\": {\n", + " \"offset\": 33,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusA_PosFdbkLoss\": {\n", + " \"offset\": 33,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusA_ExtPrchrgErr\": {\n", + " \"offset\": 33,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"FaultStatusB_AuxInputFlt\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_OverVoltage\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_DriveOL\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_HeatsinkOT\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_TransistorOT\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_SinkUnderTemp\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_ExcessLoad\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusB_OverspdLmt\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusB_PrchrgOpen\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_SafetyBrdFlt\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_IRVoltsRange\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_FluxAmpsRang\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_IXOVlotRange\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_AuRstExhaust\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"FaultStatusB_SWOverCur\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"FaultStatusB_HWOverCur\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"FaultStatusB_TrqPrvSpdBnd\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"FaultStatusB_TPEnclsCfg\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"FaultStatusB_GroundFault\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"FaultStatusB_OWAlarmTO\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"FaultStatusB_OverTravel\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"FaultStatusB_TrvlLimCflct\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"ZZZZZZZZZP_PF753_Inp_00\",\n", + " \"DriveStatus\",\n", + " \"DriveStatus_Ready\",\n", + " \"DriveStatus_Active\",\n", + " \"DriveStatus_CommandDir\",\n", + " \"DriveStatus_ActualDir\",\n", + " \"DriveStatus_Accelerating\",\n", + " \"DriveStatus_Decelerating\",\n", + " \"DriveStatus_Alarm\",\n", + " \"DriveStatus_Faulted\",\n", + " \"DriveStatus_AtSpeed\",\n", + " \"DriveStatus_Manual\",\n", + " \"DriveStatus_SpdRefBit0\",\n", + " \"DriveStatus_spdRefBit1\",\n", + " \"DriveStatus_SpdRefBit2\",\n", + " \"DriveStatus_SpdRefBit3\",\n", + " \"DriveStatus_SpdRefBit4\",\n", + " \"Feedback\",\n", + " \"PredMaintSts\",\n", + " \"PredMaintSts_HeatskinkFan\",\n", + " \"PredMaintSts_InternalFan\",\n", + " \"PredMaintSts_MtrBearing\",\n", + " \"PredMaintSts_MtrLube\",\n", + " \"PredMaintSts_MchBearing\",\n", + " \"PredMaintSts_MchLube\",\n", + " \"PredMaintSts_Reserved\",\n", + " \"PredMaintSts_Reserved1\",\n", + " \"PredMaintSts_Reserved2\",\n", + " \"PredMaintSts_Reserved3\",\n", + " \"PredMaintSts_Reserved4\",\n", + " \"PredMaintSts_Reserved5\",\n", + " \"PredMaintSts_Reserved6\",\n", + " \"PredMaintSts_Reserved7\",\n", + " \"PredMaintSts_Reserved8\",\n", + " \"PredMaintSts_Master\",\n", + " \"StartInhibits\",\n", + " \"StartInhibits_Faulted\",\n", + " \"StartInhibits_Alarm\",\n", + " \"StartInhibits_Enable\",\n", + " \"StartInhibits_Precharge\",\n", + " \"StartInhibits_Stop\",\n", + " \"StartInhibits_Database\",\n", + " \"StartInhibits_Startup\",\n", + " \"StartInhibits_Safety\",\n", + " \"StartInhibits_Sleep\",\n", + " \"StartInhibits_Profiler\",\n", + " \"StartInhibits_CommutNotCfg\",\n", + " \"DriveStatus1\",\n", + " \"DriveStatus1_Ready\",\n", + " \"DriveStatus1_Active\",\n", + " \"DriveStatus1_CommandDir\",\n", + " \"DriveStatus1_ActualDir\",\n", + " \"DriveStatus1_Accelerating\",\n", + " \"DriveStatus1_Decelerating\",\n", + " \"DriveStatus1_Alarm\",\n", + " \"DriveStatus1_Faulted\",\n", + " \"DriveStatus1_AtSpeed\",\n", + " \"DriveStatus1_Manual\",\n", + " \"DriveStatus1_SpdRefBit0\",\n", + " \"DriveStatus1_spdRefBit1\",\n", + " \"DriveStatus1_SpdRefBit2\",\n", + " \"DriveStatus1_SpdRefBit3\",\n", + " \"DriveStatus1_SpdRefBit4\",\n", + " \"DriveStatus1_Running\",\n", + " \"DriveStatus1_Jogging\",\n", + " \"DriveStatus1_Stopping\",\n", + " \"DriveStatus1_DCBraking\",\n", + " \"DriveStatus1_DBActive\",\n", + " \"DriveStatus1_SpeedMode\",\n", + " \"DriveStatus1_PositionMode\",\n", + " \"DriveStatus1_TorqueMode\",\n", + " \"DriveStatus1_AtZeroSpeed\",\n", + " \"DriveStatus1_AtHome\",\n", + " \"DriveStatus1_AtLimit\",\n", + " \"DriveStatus1_CurrLimit\",\n", + " \"DriveStatus1_BusFrqReg\",\n", + " \"DriveStatus1_EnableOn\",\n", + " \"DriveStatus1_MotorOL\",\n", + " \"DriveStatus1_Regen\",\n", + " \"DriveStatus2\",\n", + " \"DriveStatus2_AutoRstrAct\",\n", + " \"DriveStatus2_AuRstrCntDwn\",\n", + " \"DriveStatus2_HSFanOn\",\n", + " \"DriveStatus2_Reserved\",\n", + " \"DriveStatus2_FluxBraking\",\n", + " \"DriveStatus2_FdbkLossSwO\",\n", + " \"DriveStatus2_Reserved1\",\n", + " \"DriveStatus2_Reserved2\",\n", + " \"DriveStatus2_PrchrgClosed\",\n", + " \"DriveStatus2_Autotuning\",\n", + " \"DriveStatus2_PIDFBLoss\",\n", + " \"DriveStatus2_AccelRate\",\n", + " \"DriveStatus2_DecelRate\",\n", + " \"LastFaultCode\",\n", + " \"FaultStatusA\",\n", + " \"FaultStatusA_PowerLoss\",\n", + " \"FaultStatusA_UnderVoltage\",\n", + " \"FaultStatusA_MotorOL\",\n", + " \"FaultStatusA_LoalLoss\",\n", + " \"FaultStatusA_InPhaseLoss\",\n", + " \"FaultStatusA_OutPhaseLoss\",\n", + " \"FaultStatusA_DecelInhib\",\n", + " \"FaultStatusA_ShearPin1\",\n", + " \"FaultStatusA_ShearPin2\",\n", + " \"FaultStatusA_PriFdbkLoss\",\n", + " \"FaultStatusA_AltFdbkLoss\",\n", + " \"FaultStatusA_AuxFdbkLoss\",\n", + " \"FaultStatusA_PosFdbkLoss\",\n", + " \"FaultStatusA_ExtPrchrgErr\",\n", + " \"FaultStatusB\",\n", + " \"FaultStatusB_AuxInputFlt\",\n", + " \"FaultStatusB_OverVoltage\",\n", + " \"FaultStatusB_DriveOL\",\n", + " \"FaultStatusB_HeatsinkOT\",\n", + " \"FaultStatusB_TransistorOT\",\n", + " \"FaultStatusB_SinkUnderTemp\",\n", + " \"FaultStatusB_ExcessLoad\",\n", + " \"FaultStatusB_OverspdLmt\",\n", + " \"FaultStatusB_PrchrgOpen\",\n", + " \"FaultStatusB_SafetyBrdFlt\",\n", + " \"FaultStatusB_IRVoltsRange\",\n", + " \"FaultStatusB_FluxAmpsRang\",\n", + " \"FaultStatusB_IXOVlotRange\",\n", + " \"FaultStatusB_AuRstExhaust\",\n", + " \"FaultStatusB_SWOverCur\",\n", + " \"FaultStatusB_HWOverCur\",\n", + " \"FaultStatusB_TrqPrvSpdBnd\",\n", + " \"FaultStatusB_TPEnclsCfg\",\n", + " \"FaultStatusB_GroundFault\",\n", + " \"FaultStatusB_OWAlarmTO\",\n", + " \"FaultStatusB_OverTravel\",\n", + " \"FaultStatusB_TrvlLimCflct\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 1144,\n", + " \"structure_size\": 40,\n", + " \"member_count\": 132,\n", + " \"structure_handle\": 17172\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PF753_Inp\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"VFD_753_0\": {\n", + " \"tag_name\": \"VFD_753_0\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 193,\n", + " \"symbol_address\": 24408,\n", + " \"symbol_object_address\": 911252,\n", + " \"software_control\": 67174589,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 3304,\n", + " \"data_type\": {\n", + " \"name\": \"P_PF753_Out\",\n", + " \"internal_tags\": {\n", + " \"LogicCommand\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"LogicCommand_Stop\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_Start\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_Jog1\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_ClearFaults\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LogicCommand_Forward\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"LogicCommand_Reverse\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"LogicCommand_Manual\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"LogicCommand_AccelTime1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"LogicCommand_AccelTime2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"LogicCommand_DecelTime1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"LogicCommand_DecelTime2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 3\n", + " },\n", + " \"LogicCommand_SpdRefSel0\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"LogicCommand_SpdRefSel1\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"LogicCommand_SpdRefSel2\": {\n", + " \"offset\": 1,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"Reference\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LogicCommand\",\n", + " \"LogicCommand_Stop\",\n", + " \"LogicCommand_Start\",\n", + " \"LogicCommand_Jog1\",\n", + " \"LogicCommand_ClearFaults\",\n", + " \"LogicCommand_Forward\",\n", + " \"LogicCommand_Reverse\",\n", + " \"LogicCommand_Manual\",\n", + " \"LogicCommand_AccelTime1\",\n", + " \"LogicCommand_AccelTime2\",\n", + " \"LogicCommand_DecelTime1\",\n", + " \"LogicCommand_DecelTime2\",\n", + " \"LogicCommand_SpdRefSel0\",\n", + " \"LogicCommand_SpdRefSel1\",\n", + " \"LogicCommand_SpdRefSel2\",\n", + " \"Reference\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 140,\n", + " \"structure_size\": 8,\n", + " \"member_count\": 16,\n", + " \"structure_handle\": 20715\n", + " }\n", + " },\n", + " \"data_type_name\": \"P_PF753_Out\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"MSG_GetDriveDutyRating753\": {\n", + " \"tag_name\": \"MSG_GetDriveDutyRating753\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 194,\n", + " \"symbol_address\": 94288,\n", + " \"symbol_object_address\": 911292,\n", + " \"software_control\": 67175191,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 4095,\n", + " \"data_type\": {\n", + " \"name\": \"MESSAGE\",\n", + " \"internal_tags\": {\n", + " \"offsettodata\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Flags\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"EW\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"ER\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"ST\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TO\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EN_CC\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ERR\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"EXERR\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"exerrlength\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ERR_SRC\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DN_LEN\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"REQ_LEN\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"DestinationLink\": {\n", + " \"offset\": 18,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"DestinationNode\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"SourceLink\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Class\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Attribute\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Instance\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"LocalIndex\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Channel\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rack\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Group\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Slot\": {\n", + " \"offset\": 39,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Path\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 82\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 4046\n", + " },\n", + " \"string\": 82\n", + " },\n", + " \"data_type_name\": \"STRING\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved1\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RemoteIndex\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RemoteElement\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 82\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 4046\n", + " },\n", + " \"string\": 82\n", + " },\n", + " \"data_type_name\": \"STRING\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved2\": {\n", + " \"offset\": 224,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"UnconnectedTimeout\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ConnectionRate\": {\n", + " \"offset\": 232,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"TimeoutMultiplier\": {\n", + " \"offset\": 236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"offsettodata\",\n", + " \"Flags\",\n", + " \"EW\",\n", + " \"ER\",\n", + " \"DN\",\n", + " \"ST\",\n", + " \"EN\",\n", + " \"TO\",\n", + " \"EN_CC\",\n", + " \"ERR\",\n", + " \"EXERR\",\n", + " \"exerrlength\",\n", + " \"ERR_SRC\",\n", + " \"DN_LEN\",\n", + " \"REQ_LEN\",\n", + " \"DestinationLink\",\n", + " \"DestinationNode\",\n", + " \"SourceLink\",\n", + " \"Class\",\n", + " \"Attribute\",\n", + " \"Instance\",\n", + " \"LocalIndex\",\n", + " \"Channel\",\n", + " \"Rack\",\n", + " \"Group\",\n", + " \"Slot\",\n", + " \"Path\",\n", + " \"Reserved1\",\n", + " \"RemoteIndex\",\n", + " \"RemoteElement\",\n", + " \"Reserved2\",\n", + " \"UnconnectedTimeout\",\n", + " \"ConnectionRate\",\n", + " \"TimeoutMultiplier\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 183,\n", + " \"structure_size\": 240,\n", + " \"member_count\": 34,\n", + " \"structure_handle\": 4095\n", + " }\n", + " },\n", + " \"data_type_name\": \"MESSAGE\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"MSG_SetDriveDutyRating753\": {\n", + " \"tag_name\": \"MSG_SetDriveDutyRating753\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 195,\n", + " \"symbol_address\": 92152,\n", + " \"symbol_object_address\": 911332,\n", + " \"software_control\": 67223710,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"template_instance_id\": 4095,\n", + " \"data_type\": {\n", + " \"name\": \"MESSAGE\",\n", + " \"internal_tags\": {\n", + " \"offsettodata\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Flags\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"EW\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 2\n", + " },\n", + " \"ER\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 4\n", + " },\n", + " \"DN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 5\n", + " },\n", + " \"ST\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 6\n", + " },\n", + " \"EN\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 7\n", + " },\n", + " \"TO\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 0\n", + " },\n", + " \"EN_CC\": {\n", + " \"offset\": 5,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit\": 1\n", + " },\n", + " \"ERR\": {\n", + " \"offset\": 6,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"EXERR\": {\n", + " \"offset\": 8,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"exerrlength\": {\n", + " \"offset\": 12,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ERR_SRC\": {\n", + " \"offset\": 13,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DN_LEN\": {\n", + " \"offset\": 14,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"REQ_LEN\": {\n", + " \"offset\": 16,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"DestinationLink\": {\n", + " \"offset\": 18,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"DestinationNode\": {\n", + " \"offset\": 20,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"SourceLink\": {\n", + " \"offset\": 22,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Class\": {\n", + " \"offset\": 24,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Attribute\": {\n", + " \"offset\": 26,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"INT\",\n", + " \"data_type_name\": \"INT\",\n", + " \"array\": 0\n", + " },\n", + " \"Instance\": {\n", + " \"offset\": 28,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"LocalIndex\": {\n", + " \"offset\": 32,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Channel\": {\n", + " \"offset\": 36,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Rack\": {\n", + " \"offset\": 37,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Group\": {\n", + " \"offset\": 38,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Slot\": {\n", + " \"offset\": 39,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " },\n", + " \"Path\": {\n", + " \"offset\": 40,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 82\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 4046\n", + " },\n", + " \"string\": 82\n", + " },\n", + " \"data_type_name\": \"STRING\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved1\": {\n", + " \"offset\": 128,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RemoteIndex\": {\n", + " \"offset\": 132,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"RemoteElement\": {\n", + " \"offset\": 136,\n", + " \"tag_type\": \"struct\",\n", + " \"data_type\": {\n", + " \"name\": \"STRING\",\n", + " \"internal_tags\": {\n", + " \"LEN\": {\n", + " \"offset\": 0,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"DATA\": {\n", + " \"offset\": 4,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 82\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"LEN\",\n", + " \"DATA\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 16,\n", + " \"structure_size\": 88,\n", + " \"member_count\": 2,\n", + " \"structure_handle\": 4046\n", + " },\n", + " \"string\": 82\n", + " },\n", + " \"data_type_name\": \"STRING\",\n", + " \"array\": 0\n", + " },\n", + " \"Reserved2\": {\n", + " \"offset\": 224,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"UnconnectedTimeout\": {\n", + " \"offset\": 228,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"ConnectionRate\": {\n", + " \"offset\": 232,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"array\": 0\n", + " },\n", + " \"TimeoutMultiplier\": {\n", + " \"offset\": 236,\n", + " \"tag_type\": \"atomic\",\n", + " \"data_type\": \"SINT\",\n", + " \"data_type_name\": \"SINT\",\n", + " \"array\": 0\n", + " }\n", + " },\n", + " \"attributes\": [\n", + " \"offsettodata\",\n", + " \"Flags\",\n", + " \"EW\",\n", + " \"ER\",\n", + " \"DN\",\n", + " \"ST\",\n", + " \"EN\",\n", + " \"TO\",\n", + " \"EN_CC\",\n", + " \"ERR\",\n", + " \"EXERR\",\n", + " \"exerrlength\",\n", + " \"ERR_SRC\",\n", + " \"DN_LEN\",\n", + " \"REQ_LEN\",\n", + " \"DestinationLink\",\n", + " \"DestinationNode\",\n", + " \"SourceLink\",\n", + " \"Class\",\n", + " \"Attribute\",\n", + " \"Instance\",\n", + " \"LocalIndex\",\n", + " \"Channel\",\n", + " \"Rack\",\n", + " \"Group\",\n", + " \"Slot\",\n", + " \"Path\",\n", + " \"Reserved1\",\n", + " \"RemoteIndex\",\n", + " \"RemoteElement\",\n", + " \"Reserved2\",\n", + " \"UnconnectedTimeout\",\n", + " \"ConnectionRate\",\n", + " \"TimeoutMultiplier\"\n", + " ],\n", + " \"template\": {\n", + " \"object_definition_size\": 183,\n", + " \"structure_size\": 240,\n", + " \"member_count\": 34,\n", + " \"structure_handle\": 4095\n", + " }\n", + " },\n", + " \"data_type_name\": \"MESSAGE\",\n", + " \"tag_type\": \"struct\"\n", + " },\n", + " \"PowerFlex753_EStopped\": {\n", + " \"tag_name\": \"PowerFlex753_EStopped\",\n", + " \"dim\": 0,\n", + " \"alias\": true,\n", + " \"instance_id\": 196,\n", + " \"symbol_address\": 24672,\n", + " \"symbol_object_address\": 911372,\n", + " \"software_control\": 1073807551,\n", + " \"external_access\": \"Read Only\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 2,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"use_PF753\": {\n", + " \"tag_name\": \"use_PF753\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 197,\n", + " \"symbol_address\": 24376,\n", + " \"symbol_object_address\": 911412,\n", + " \"software_control\": 1140916414,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"BOOL\",\n", + " \"data_type_name\": \"BOOL\",\n", + " \"bit_position\": 0,\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_OutCurrent\": {\n", + " \"tag_name\": \"VFD_OutCurrent\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 198,\n", + " \"symbol_address\": 29488,\n", + " \"symbol_object_address\": 911452,\n", + " \"software_control\": 1946222774,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_OutPower\": {\n", + " \"tag_name\": \"VFD_OutPower\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 199,\n", + " \"symbol_address\": 24344,\n", + " \"symbol_object_address\": 911492,\n", + " \"software_control\": 1946222784,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_SpeedFdbk\": {\n", + " \"tag_name\": \"VFD_SpeedFdbk\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 200,\n", + " \"symbol_address\": 24312,\n", + " \"symbol_object_address\": 911532,\n", + " \"software_control\": 1946222785,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_SpeedRef\": {\n", + " \"tag_name\": \"VFD_SpeedRef\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 201,\n", + " \"symbol_address\": 24280,\n", + " \"symbol_object_address\": 911572,\n", + " \"software_control\": 1946222786,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"VFD_Temp\": {\n", + " \"tag_name\": \"VFD_Temp\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 202,\n", + " \"symbol_address\": 24248,\n", + " \"symbol_object_address\": 911612,\n", + " \"software_control\": 1946222787,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"REAL\",\n", + " \"data_type_name\": \"REAL\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"sts_PF755_Mode\": {\n", + " \"tag_name\": \"sts_PF755_Mode\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 204,\n", + " \"symbol_address\": 36848,\n", + " \"symbol_object_address\": 911652,\n", + " \"software_control\": 1140916293,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"const_INHIBIT\": {\n", + " \"tag_name\": \"const_INHIBIT\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 205,\n", + " \"symbol_address\": 36816,\n", + " \"symbol_object_address\": 911692,\n", + " \"software_control\": 1140916294,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", + " \"tag_type\": \"atomic\"\n", + " },\n", + " \"const_UNINHIBIT\": {\n", + " \"tag_name\": \"const_UNINHIBIT\",\n", + " \"dim\": 0,\n", + " \"alias\": false,\n", + " \"instance_id\": 206,\n", + " \"symbol_address\": 36784,\n", + " \"symbol_object_address\": 911732,\n", + " \"software_control\": 1140916295,\n", + " \"external_access\": \"Read/Write\",\n", + " \"dimensions\": [\n", + " 0,\n", + " 0,\n", + " 0\n", + " ],\n", + " \"data_type\": \"DINT\",\n", + " \"data_type_name\": \"DINT\",\n", " \"tag_type\": \"atomic\"\n", " }\n", "}\n" @@ -1501,7 +68227,7 @@ } ], "source": [ - "with LogixDriver('63.41.130.201') as plc:\n", + "with LogixDriver('166.193.23.31') as plc:\n", " #info = plc.get_plc_info()\n", " plctags = plc.get_tag_list()\n", " #print(info)\n", @@ -1555,21 +68281,21 @@ }, { "cell_type": "code", - "execution_count": 35, + "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Lifetime_Flow_Meter_Gal, 0.0, REAL, None\n" + "VFD_OutCurrent, 45.36542510986328, REAL, None\n" ] } ], "source": [ - "with LogixDriver('63.41.130.201') as plc:\n", + "with LogixDriver('166.193.23.31') as plc:\n", " #for x in range(20):\n", - " print(plc.read('Lifetime_Flow_Meter_Gal'))" + " print(plc.read('VFD_OutCurrent'))" ] }, { diff --git a/code snippets/sendBackfillData.ipynb b/code snippets/sendBackfillData.ipynb new file mode 100644 index 0000000..eef5fa1 --- /dev/null +++ b/code snippets/sendBackfillData.ipynb @@ -0,0 +1,139 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import pytz\n", + "from datetime import datetime\n", + "import json, csv, time\n", + "import paho.mqtt.client as mqtt\n", + "from datetime import datetime, timedelta" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Set the MQTT broker connection details\n", + "MQTT_BROKER = \"hp.henrypump.cloud\"\n", + "MQTT_PORT = 1883\n", + "\n", + "# Create an MQTT client instance\n", + "client = mqtt.Client(client_id=\"faskens-bp-compressor\")\n", + "client.username_pw_set(\"faskensmqtt\", \"faskensmqtt@1903\" )\n", + "client.connect(MQTT_BROKER, MQTT_PORT)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "# Define a function to convert datetime to timestamp and round to nearest 10 minutes\n", + "def convert_datetime_to_timestamp(dt_str):\n", + " cst_tz = pytz.timezone('America/Chicago')\n", + " dt_cst = cst_tz.localize(datetime.strptime(dt_str, '%Y-%m-%d/%H:%M:%S'))\n", + " \n", + " # Calculate the remainder of minutes in the hour\n", + " minute_remainder = dt_cst.minute % 10\n", + " \n", + " if minute_remainder >= 5:\n", + " # Round up to the next 10-minute interval\n", + " dt_cst += timedelta(minutes=10 - minute_remainder)\n", + " else:\n", + " # Round down to the previous 10-minute interval\n", + " dt_cst -= timedelta(minutes=minute_remainder)\n", + " \n", + " # Ensure the resulting datetime is valid (no 23:60:00 or similar issues)\n", + " while dt_cst.minute % 10 != 0:\n", + " if dt_cst.minute > 50:\n", + " dt_cst += timedelta(hours=1)\n", + " dt_cst -= timedelta(minutes=dt_cst.minute % 60)\n", + " else:\n", + " dt_cst -= timedelta(minutes=dt_cst.minute % 10)\n", + " \n", + " return int(dt_cst.timestamp()*1000)\n", + "\n", + "# Transform the data and send it to the MQTT broker in chunks of 20\n", + "transformed_data = []\n", + "with open('/Users/nico/Downloads/history_data_default.csv', 'r') as csvfile:\n", + " reader = csv.DictReader(csvfile)\n", + " for row in reader:\n", + " dt = row['Time']\n", + " value = json.loads(row[' Value'])[\"plcpond\"][\"air_comp_val\"]\n", + " if value[0] == 1:\n", + " transformed_data.append({\"ts\": convert_datetime_to_timestamp(dt), \"values\": {\"air_comp_val\": value[1]}})\n", + "\n", + "\n", + "\n", + "chunk_size = 20\n", + "for i in range(0, len(transformed_data), chunk_size):\n", + " chunk = transformed_data[i:i + chunk_size]\n", + " for x in chunk:\n", + " client.publish(\"v1/devices/me/telemetry\", json.dumps(x))\n", + " time.sleep(1)\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\n", + "client.disconnect()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "aws", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}