Completes MAXH2O-99. Flowmeter HMI Graphics for MAXH2O-98

This commit is contained in:
Patrick McDonagh
2018-01-30 22:27:02 -06:00
parent 6c5e60f388
commit d8caad894c
68 changed files with 1191 additions and 88 deletions

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<DevicePreferences xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Micro800ConnectionPath>PATRICKMCDO8E0A!HenryPump\10.20.4.40</Micro800ConnectionPath>
<Micro800ConnectionPath>PATRICKMCDO8E0A!HenryPump\107.84.231.186</Micro800ConnectionPath>
</DevicePreferences>

View File

@@ -51,6 +51,8 @@ Controller.Micro820.Micro820.cfg_FlowTotalizerC_Register
Controller.Micro820.Micro820.cfg_ResetTotalizerA_Coil
Controller.Micro820.Micro820.cfg_ResetTotalizerB_Coil
Controller.Micro820.Micro820.cfg_ResetTotalizerC_Coil
Controller.Micro820.Micro820.cfg_SolarPanel_ModbusNode
Controller.Micro820.Micro820.cfg_SolarPanel_Register
Controller.Micro820.Micro820.cfg_Status_Register
Controller.Micro820.Micro820.cfg_Units_Register
Controller.Micro820.Micro820.cmd_ResetTotalizerA
@@ -2231,7 +2233,290 @@ Controller.Micro820.Micro820.FlowMeterMb.WRITECOIL_CMD
Controller.Micro820.Micro820.ModbusScanRate
Controller.Micro820.Micro820.skid_Latitude
Controller.Micro820.Micro820.skid_Longitude
Controller.Micro820.Micro820.sts_ModbusError
Controller.Micro820.Micro820.SolarPanelMb.mbs_Cancel
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[1] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[10] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[100] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[101] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[102] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[103] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[104] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[105] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[106] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[107] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[108] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[109] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[11] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[110] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[111] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[112] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[113] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[114] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[115] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[116] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[117] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[118] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[119] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[12] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[120] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[121] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[122] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[123] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[124] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[125] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[13] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[14] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[15] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[16] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[17] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[18] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[19] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[2] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[20] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[21] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[22] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[23] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[24] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[25] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[26] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[27] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[28] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[29] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[3] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[30] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[31] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[32] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[33] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[34] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[35] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[36] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[37] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[38] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[39] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[4] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[40] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[41] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[42] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[43] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[44] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[45] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[46] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[47] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[48] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[49] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[5] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[50] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[51] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[52] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[53] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[54] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[55] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[56] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[57] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[58] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[59] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[6] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[60] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[61] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[62] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[63] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[64] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[65] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[66] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[67] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[68] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[69] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[7] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[70] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[71] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[72] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[73] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[74] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[75] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[76] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[77] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[78] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[79] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[8] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[80] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[81] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[82] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[83] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[84] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[85] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[86] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[87] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[88] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[89] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[9] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[90] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[91] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[92] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[93] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[94] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[95] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[96] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[97] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[98] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[99] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_LocalCfg.Channel 2
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_LocalCfg.Cmd 3
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_LocalCfg.ElementCnt 2
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_LocalCfg.TriggerType 1
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.__ADI_LocalAddr 2
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.Cancel FALSE
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.controlbit 136
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.Error FALSE
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.ErrorID 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.IN TRUE
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[1] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[10] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[100] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[101] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[102] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[103] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[104] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[105] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[106] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[107] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[108] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[109] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[11] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[110] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[111] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[112] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[113] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[114] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[115] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[116] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[117] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[118] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[119] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[12] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[120] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[121] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[122] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[123] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[124] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[125] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[13] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[14] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[15] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[16] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[17] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[18] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[19] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[2] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[20] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[21] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[22] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[23] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[24] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[25] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[26] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[27] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[28] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[29] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[3] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[30] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[31] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[32] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[33] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[34] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[35] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[36] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[37] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[38] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[39] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[4] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[40] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[41] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[42] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[43] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[44] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[45] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[46] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[47] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[48] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[49] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[5] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[50] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[51] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[52] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[53] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[54] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[55] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[56] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[57] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[58] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[59] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[6] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[60] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[61] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[62] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[63] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[64] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[65] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[66] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[67] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[68] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[69] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[7] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[70] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[71] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[72] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[73] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[74] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[75] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[76] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[77] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[78] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[79] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[8] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[80] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[81] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[82] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[83] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[84] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[85] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[86] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[87] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[88] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[89] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[9] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[90] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[91] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[92] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[93] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[94] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[95] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[96] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[97] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[98] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[99] 0
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalCfg.Channel 2
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalCfg.Cmd 3
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalCfg.ElementCnt 2
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalCfg.TriggerType 1
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.Q FALSE
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.TargetCfg.Addr 40203
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.TargetCfg.Node 20
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_TargetCfg.Addr 40203
Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_TargetCfg.Node 20
Controller.Micro820.Micro820.SolarPanelMb.mbs_TriggerType
Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.ET
Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.IN
Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.Pdate
Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.PT
Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.Q
Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.Redge
Controller.Micro820.Micro820.SolarPanelMb.READ_CMD
Controller.Micro820.Micro820.SolarPanelMb.temp_ArrayFault
Controller.Micro820.Micro820.SolarPanelMb.temp_ChargeState
Controller.Micro820.Micro820.sts_ArrayFault
Controller.Micro820.Micro820.sts_ChargeState
Controller.Micro820.Micro820.sts_FlowmeterModbusError
Controller.Micro820.Micro820.sts_SolarModbusError
Controller.Micro820.Micro820.val_FlowRate
Controller.Micro820.Micro820.val_FlowTotalizerA
Controller.Micro820.Micro820.val_FlowTotalizerAUnits
@@ -2240,6 +2525,13 @@ Controller.Micro820.Micro820.val_FlowTotalizerBUnits
Controller.Micro820.Micro820.val_FlowTotalizerC
Controller.Micro820.Micro820.val_FlowTotalizerCUnits
Controller.Micro820.Micro820.val_FlowUnits
Controller.Micro820.Micro820.val_SolarAmbientTemperature
Controller.Micro820.Micro820.val_SolarArrayCurrent
Controller.Micro820.Micro820.val_SolarArrayVoltage
Controller.Micro820.Micro820.val_SolarBatteryTemperature
Controller.Micro820.Micro820.val_SolarBatteryTerminalVoltage
Controller.Micro820.Micro820.val_SolarLoadCurrent
Controller.Micro820.Micro820.val_SolarLoadVoltage
Controller.Micro820.Micro820.val_Status0
Controller.Micro820.Micro820.val_Status1
Controller.Micro820.Micro820.val_Status2
1 Controller.Micro820.Micro820.__SYSVA_ABORT_CYCLE
51 Controller.Micro820.Micro820.cfg_ResetTotalizerA_Coil
52 Controller.Micro820.Micro820.cfg_ResetTotalizerB_Coil
53 Controller.Micro820.Micro820.cfg_ResetTotalizerC_Coil
54 Controller.Micro820.Micro820.cfg_SolarPanel_ModbusNode
55 Controller.Micro820.Micro820.cfg_SolarPanel_Register
56 Controller.Micro820.Micro820.cfg_Status_Register
57 Controller.Micro820.Micro820.cfg_Units_Register
58 Controller.Micro820.Micro820.cmd_ResetTotalizerA
2233 Controller.Micro820.Micro820.ModbusScanRate
2234 Controller.Micro820.Micro820.skid_Latitude
2235 Controller.Micro820.Micro820.skid_Longitude
2236 Controller.Micro820.Micro820.sts_ModbusError Controller.Micro820.Micro820.SolarPanelMb.mbs_Cancel
2237 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[1] 0
2238 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[10] 0
2239 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[100] 0
2240 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[101] 0
2241 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[102] 0
2242 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[103] 0
2243 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[104] 0
2244 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[105] 0
2245 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[106] 0
2246 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[107] 0
2247 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[108] 0
2248 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[109] 0
2249 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[11] 0
2250 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[110] 0
2251 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[111] 0
2252 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[112] 0
2253 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[113] 0
2254 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[114] 0
2255 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[115] 0
2256 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[116] 0
2257 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[117] 0
2258 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[118] 0
2259 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[119] 0
2260 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[12] 0
2261 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[120] 0
2262 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[121] 0
2263 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[122] 0
2264 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[123] 0
2265 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[124] 0
2266 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[125] 0
2267 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[13] 0
2268 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[14] 0
2269 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[15] 0
2270 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[16] 0
2271 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[17] 0
2272 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[18] 0
2273 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[19] 0
2274 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[2] 0
2275 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[20] 0
2276 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[21] 0
2277 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[22] 0
2278 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[23] 0
2279 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[24] 0
2280 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[25] 0
2281 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[26] 0
2282 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[27] 0
2283 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[28] 0
2284 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[29] 0
2285 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[3] 0
2286 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[30] 0
2287 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[31] 0
2288 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[32] 0
2289 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[33] 0
2290 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[34] 0
2291 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[35] 0
2292 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[36] 0
2293 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[37] 0
2294 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[38] 0
2295 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[39] 0
2296 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[4] 0
2297 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[40] 0
2298 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[41] 0
2299 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[42] 0
2300 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[43] 0
2301 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[44] 0
2302 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[45] 0
2303 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[46] 0
2304 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[47] 0
2305 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[48] 0
2306 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[49] 0
2307 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[5] 0
2308 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[50] 0
2309 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[51] 0
2310 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[52] 0
2311 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[53] 0
2312 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[54] 0
2313 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[55] 0
2314 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[56] 0
2315 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[57] 0
2316 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[58] 0
2317 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[59] 0
2318 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[6] 0
2319 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[60] 0
2320 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[61] 0
2321 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[62] 0
2322 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[63] 0
2323 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[64] 0
2324 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[65] 0
2325 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[66] 0
2326 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[67] 0
2327 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[68] 0
2328 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[69] 0
2329 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[7] 0
2330 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[70] 0
2331 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[71] 0
2332 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[72] 0
2333 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[73] 0
2334 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[74] 0
2335 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[75] 0
2336 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[76] 0
2337 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[77] 0
2338 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[78] 0
2339 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[79] 0
2340 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[8] 0
2341 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[80] 0
2342 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[81] 0
2343 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[82] 0
2344 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[83] 0
2345 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[84] 0
2346 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[85] 0
2347 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[86] 0
2348 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[87] 0
2349 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[88] 0
2350 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[89] 0
2351 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[9] 0
2352 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[90] 0
2353 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[91] 0
2354 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[92] 0
2355 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[93] 0
2356 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[94] 0
2357 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[95] 0
2358 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[96] 0
2359 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[97] 0
2360 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[98] 0
2361 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_Data[99] 0
2362 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_LocalCfg.Channel 2
2363 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_LocalCfg.Cmd 3
2364 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_LocalCfg.ElementCnt 2
2365 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_LocalCfg.TriggerType 1
2366 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.__ADI_LocalAddr 2
2367 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.Cancel FALSE
2368 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.controlbit 136
2369 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.Error FALSE
2370 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.ErrorID 0
2371 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.IN TRUE
2372 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[1] 0
2373 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[10] 0
2374 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[100] 0
2375 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[101] 0
2376 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[102] 0
2377 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[103] 0
2378 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[104] 0
2379 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[105] 0
2380 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[106] 0
2381 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[107] 0
2382 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[108] 0
2383 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[109] 0
2384 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[11] 0
2385 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[110] 0
2386 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[111] 0
2387 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[112] 0
2388 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[113] 0
2389 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[114] 0
2390 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[115] 0
2391 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[116] 0
2392 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[117] 0
2393 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[118] 0
2394 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[119] 0
2395 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[12] 0
2396 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[120] 0
2397 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[121] 0
2398 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[122] 0
2399 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[123] 0
2400 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[124] 0
2401 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[125] 0
2402 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[13] 0
2403 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[14] 0
2404 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[15] 0
2405 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[16] 0
2406 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[17] 0
2407 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[18] 0
2408 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[19] 0
2409 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[2] 0
2410 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[20] 0
2411 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[21] 0
2412 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[22] 0
2413 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[23] 0
2414 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[24] 0
2415 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[25] 0
2416 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[26] 0
2417 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[27] 0
2418 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[28] 0
2419 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[29] 0
2420 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[3] 0
2421 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[30] 0
2422 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[31] 0
2423 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[32] 0
2424 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[33] 0
2425 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[34] 0
2426 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[35] 0
2427 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[36] 0
2428 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[37] 0
2429 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[38] 0
2430 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[39] 0
2431 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[4] 0
2432 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[40] 0
2433 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[41] 0
2434 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[42] 0
2435 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[43] 0
2436 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[44] 0
2437 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[45] 0
2438 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[46] 0
2439 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[47] 0
2440 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[48] 0
2441 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[49] 0
2442 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[5] 0
2443 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[50] 0
2444 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[51] 0
2445 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[52] 0
2446 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[53] 0
2447 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[54] 0
2448 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[55] 0
2449 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[56] 0
2450 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[57] 0
2451 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[58] 0
2452 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[59] 0
2453 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[6] 0
2454 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[60] 0
2455 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[61] 0
2456 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[62] 0
2457 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[63] 0
2458 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[64] 0
2459 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[65] 0
2460 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[66] 0
2461 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[67] 0
2462 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[68] 0
2463 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[69] 0
2464 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[7] 0
2465 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[70] 0
2466 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[71] 0
2467 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[72] 0
2468 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[73] 0
2469 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[74] 0
2470 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[75] 0
2471 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[76] 0
2472 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[77] 0
2473 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[78] 0
2474 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[79] 0
2475 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[8] 0
2476 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[80] 0
2477 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[81] 0
2478 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[82] 0
2479 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[83] 0
2480 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[84] 0
2481 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[85] 0
2482 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[86] 0
2483 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[87] 0
2484 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[88] 0
2485 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[89] 0
2486 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[9] 0
2487 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[90] 0
2488 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[91] 0
2489 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[92] 0
2490 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[93] 0
2491 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[94] 0
2492 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[95] 0
2493 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[96] 0
2494 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[97] 0
2495 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[98] 0
2496 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalAddr[99] 0
2497 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalCfg.Channel 2
2498 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalCfg.Cmd 3
2499 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalCfg.ElementCnt 2
2500 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.LocalCfg.TriggerType 1
2501 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.Q FALSE
2502 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.TargetCfg.Addr 40203
2503 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_MSG.TargetCfg.Node 20
2504 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_TargetCfg.Addr 40203
2505 Controller.Micro820.Micro820.SolarPanelMb.mbs_SolarPanel_TargetCfg.Node 20
2506 Controller.Micro820.Micro820.SolarPanelMb.mbs_TriggerType
2507 Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.ET
2508 Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.IN
2509 Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.Pdate
2510 Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.PT
2511 Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.Q
2512 Controller.Micro820.Micro820.SolarPanelMb.ModbusTimer.Redge
2513 Controller.Micro820.Micro820.SolarPanelMb.READ_CMD
2514 Controller.Micro820.Micro820.SolarPanelMb.temp_ArrayFault
2515 Controller.Micro820.Micro820.SolarPanelMb.temp_ChargeState
2516 Controller.Micro820.Micro820.sts_ArrayFault
2517 Controller.Micro820.Micro820.sts_ChargeState
2518 Controller.Micro820.Micro820.sts_FlowmeterModbusError
2519 Controller.Micro820.Micro820.sts_SolarModbusError
2520 Controller.Micro820.Micro820.val_FlowRate
2521 Controller.Micro820.Micro820.val_FlowTotalizerA
2522 Controller.Micro820.Micro820.val_FlowTotalizerAUnits
2525 Controller.Micro820.Micro820.val_FlowTotalizerC
2526 Controller.Micro820.Micro820.val_FlowTotalizerCUnits
2527 Controller.Micro820.Micro820.val_FlowUnits
2528 Controller.Micro820.Micro820.val_SolarAmbientTemperature
2529 Controller.Micro820.Micro820.val_SolarArrayCurrent
2530 Controller.Micro820.Micro820.val_SolarArrayVoltage
2531 Controller.Micro820.Micro820.val_SolarBatteryTemperature
2532 Controller.Micro820.Micro820.val_SolarBatteryTerminalVoltage
2533 Controller.Micro820.Micro820.val_SolarLoadCurrent
2534 Controller.Micro820.Micro820.val_SolarLoadVoltage
2535 Controller.Micro820.Micro820.val_Status0
2536 Controller.Micro820.Micro820.val_Status1
2537 Controller.Micro820.Micro820.val_Status2

View File

@@ -1,5 +1,8 @@
FLOWMETERMB
WATCHDOG
SOLARPANELMB
WORDSTOREAL
FLOWRATEUNITS
FLOWTOTALUNITS
WORDTOFLOAT16
REVERSEUINT

View File

@@ -2,6 +2,8 @@ MODBUSTIMER.IN@FLOWMETERMB,__TMPB__TON__IN,BOOL
MODBUSTIMER.PT@FLOWMETERMB,MODBUSSCANRATE,TIME
WAIT_TO_RESET_TON.IN@FLOWMETERMB,CMD_CLEARRESETTOTALIZER@FLOWMETERMB,BOOL
WAIT_TO_RESET_TON.PT@FLOWMETERMB,PAR_TIMETOWAITTOCLEARRESETTOTALIZER@FLOWMETERMB,TIME
MODBUSTIMER.IN@SOLARPANELMB,__TMPB__TON__IN,BOOL
MODBUSTIMER.PT@SOLARPANELMB,MODBUSSCANRATE,TIME
MBS_FLOWRATE_MSG.IN@FLOWMETERMB,__TMPB__MSG_MODBUS__IN,BOOL
MBS_FLOWRATE_MSG.CANCEL@FLOWMETERMB,MBS_CANCEL@FLOWMETERMB,BOOL
MBS_FLOWRATE_MSG.LOCALCFG@FLOWMETERMB,<NOT USED>,MODBUSLOCPARA
@@ -50,3 +52,9 @@ MBS_UNITS_MSG.LOCALCFG@FLOWMETERMB,<NOT USED>,MODBUSLOCPARA
MBS_UNITS_MSG.TARGETCFG@FLOWMETERMB,<NOT USED>,MODBUSTARPARA
MBS_UNITS_MSG.LOCALADDR@FLOWMETERMB,<NOT USED>,MODBUSLOCADDR
MBS_UNITS_MSG.__ADI_LOCALADDR@FLOWMETERMB,<NOT USED>,UINT
MBS_SOLARPANEL_MSG.IN@SOLARPANELMB,__TMPB__MSG_MODBUS__IN,BOOL
MBS_SOLARPANEL_MSG.CANCEL@SOLARPANELMB,MBS_CANCEL@SOLARPANELMB,BOOL
MBS_SOLARPANEL_MSG.LOCALCFG@SOLARPANELMB,<NOT USED>,MODBUSLOCPARA
MBS_SOLARPANEL_MSG.TARGETCFG@SOLARPANELMB,<NOT USED>,MODBUSTARPARA
MBS_SOLARPANEL_MSG.LOCALADDR@SOLARPANELMB,<NOT USED>,MODBUSLOCADDR
MBS_SOLARPANEL_MSG.__ADI_LOCALADDR@SOLARPANELMB,<NOT USED>,UINT

View File

@@ -189,7 +189,7 @@ __TMPB4 := MBS_FLOWTOTALIZERC_MSG [ __CDINT0000000D ]
__TMPB1 := __TMPB1 _OR __TMPB4
__TMPB5 := MBS_STATUS_MSG [ __CDINT0000000D ]
__TMPB1 := __TMPB1 _OR __TMPB5
STS_MODBUSERROR := __TMPB1
STS_FLOWMETERMODBUSERROR := __TMPB1
__TMPUIN1 := VAL_STATUS0 + VAL_STATUS1
__TMPUIN1 := __TMPUIN1 + VAL_STATUS2
__TMPB1 := __TMPUIN1 = __UINT_NULL

View File

@@ -84,7 +84,7 @@ IF mbs_Status_MSG.Q THEN
val_Status2 := ANY_TO_UINT(mbs_Status_Data[3]);
END_IF;
sts_ModbusError := mbs_FlowRate_MSG.Error OR mbs_FlowTotalizerA_MSG.Error OR mbs_FlowTotalizerB_MSG.Error OR mbs_FlowTotalizerC_MSG.Error OR mbs_Status_MSG.Error;
sts_FlowmeterModbusError := mbs_FlowRate_MSG.Error OR mbs_FlowTotalizerA_MSG.Error OR mbs_FlowTotalizerB_MSG.Error OR mbs_FlowTotalizerC_MSG.Error OR mbs_Status_MSG.Error;
IF (val_Status0 + val_Status1 + val_Status2) = 0 THEN
val_StatusString := 'OK';

View File

@@ -1,5 +1,8 @@
WATCHDOG(149):
WORDTOFLOAT16(153):F,REVERSEUINT(154);
REVERSEUINT(154):
FLOWRATEUNITS(150):
FLOWMETERMB(147):F,WORDSTOREAL(148);F,FLOWRATEUNITS(150);F,FLOWTOTALUNITS(151);
SOLARPANELMB(152):F,WORDTOFLOAT16(153);
WORDSTOREAL(148):
FLOWTOTALUNITS(151):

View File

@@ -1,10 +1,10 @@
[MEMORY]
Offset0=0x19D8
Offset1=0x21D8
Offset2=0x21D8
Offset3=0x21D8
Memory Usage Estimate(Code)=0x193C
Memory Usage Estimate(Data)=0x4B64
Memory Usage Estimate(Retain)=0x2D
Memory Usage Estimate(Temporary variables)=0x988
Offset0=0x1C00
Offset1=0x2400
Offset2=0x2400
Offset3=0x2400
Memory Usage Estimate(Code)=0x247C
Memory Usage Estimate(Data)=0x4F9C
Memory Usage Estimate(Retain)=0x34
Memory Usage Estimate(Temporary variables)=0xB98
Offset4=0x414

View File

@@ -1,10 +1,10 @@
[MEMORY]
Offset0=0x19D8
Offset1=0x21D8
Offset2=0x21D8
Offset3=0x21D8
Memory Usage Estimate(Code)=0x193C
Memory Usage Estimate(Data)=0x4B64
Memory Usage Estimate(Retain)=0x2D
Memory Usage Estimate(Temporary variables)=0x988
Offset0=0x1C00
Offset1=0x2400
Offset2=0x2400
Offset3=0x2400
Memory Usage Estimate(Code)=0x247C
Memory Usage Estimate(Data)=0x4F9C
Memory Usage Estimate(Retain)=0x34
Memory Usage Estimate(Temporary variables)=0xB98
Offset4=0x414

View File

@@ -5,12 +5,12 @@ ON_LINE=N
TBL_CONF=Y
CRC_ORG=0x0
CRC_OLD=
CRC_NEW=0x61395B12
CRC_NEW=0x978BA04B
DAT_ORG=0
DAT_OLD=0
DAT_NEW=1517002116
DAT_NEW=1517372534
VER_ORG=0
VER_OLD=0
VER_NEW=23
VER_NEW=31
CRC_ALL_OLD=
CRC_ALL_NEW=0x7C3289A7
CRC_ALL_NEW=0x672665CF

View File

@@ -1,9 +1,9 @@
[MEMORY]
Memory Usage Estimate(Temporary variables)=0x988
Memory Usage Estimate(Temporary variables)=0xB98
Biggest online change user variable memory block size=0x800
Currently added user variables=0x0
Total data size=0x2360
User variables size=0x19D8
Maximum size for temporary variables=0x2988
Memory Usage Estimate(Data)=0x4B60
Total data size=0x2798
User variables size=0x1C00
Maximum size for temporary variables=0x2B98
Memory Usage Estimate(Data)=0x4F98
Free memory for user variables=0x800

View File

@@ -1,9 +1,9 @@
[MEMORY]
Memory Usage Estimate(Temporary variables)=0x988
Memory Usage Estimate(Temporary variables)=0xB98
Biggest online change user variable memory block size=0x800
Currently added user variables=0x0
Total data size=0x2360
User variables size=0x19D8
Maximum size for temporary variables=0x2988
Memory Usage Estimate(Data)=0x4B60
Total data size=0x2798
User variables size=0x1C00
Maximum size for temporary variables=0x2B98
Memory Usage Estimate(Data)=0x4F98
Free memory for user variables=0x800

View File

@@ -0,0 +1,2 @@
<INPUT>,MODBUSTIMER@SOLARPANELMB,TON,IN,__TMPB__TON__IN,BOOL,PT,MODBUSSCANRATE,TIME
<INPUT>,MBS_SOLARPANEL_MSG@SOLARPANELMB,MSG_MODBUS,IN,__TMPB__MSG_MODBUS__IN,BOOL,CANCEL,MBS_CANCEL@SOLARPANELMB,BOOL,LOCALCFG,<NOT USED>,MODBUSLOCPARA,TARGETCFG,<NOT USED>,MODBUSTARPARA,LOCALADDR,<NOT USED>,MODBUSLOCADDR,__ADI_LOCALADDR,<NOT USED>,UINT

View File

@@ -1,54 +1,62 @@
[BEGIN FB INPUTS]
I1=micro820.micro820.flowmetermb/modbustimer.in,0x21D9,BOOL
I2=micro820.micro820.flowmetermb/modbustimer.pt,0x4EC,TIME
I3=micro820.micro820.flowmetermb/wait_to_reset_ton.in,0x45B,BOOL
I4=micro820.micro820.flowmetermb/wait_to_reset_ton.pt,0x4F0,TIME
I5=micro820.micro820.flowmetermb/mbs_flowrate_msg.in,0x21DA,BOOL
I6=micro820.micro820.flowmetermb/mbs_flowrate_msg.cancel,0x459,BOOL
I7=micro820.micro820.flowmetermb/mbs_flowrate_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I8=micro820.micro820.flowmetermb/mbs_flowrate_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I9=micro820.micro820.flowmetermb/mbs_flowrate_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I10=micro820.micro820.flowmetermb/mbs_flowrate_msg.__adi_localaddr,0xFFFFFFFF,UINT
I11=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.in,0x21DA,BOOL
I12=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.cancel,0x459,BOOL
I13=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I14=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I15=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I16=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.__adi_localaddr,0xFFFFFFFF,UINT
I17=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.in,0x21DA,BOOL
I18=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.cancel,0x459,BOOL
I19=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I20=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I21=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I22=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.__adi_localaddr,0xFFFFFFFF,UINT
I23=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.in,0x21DA,BOOL
I24=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.cancel,0x459,BOOL
I25=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I26=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I27=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I28=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.__adi_localaddr,0xFFFFFFFF,UINT
I29=micro820.micro820.flowmetermb/mbs_status_msg.in,0x21DA,BOOL
I30=micro820.micro820.flowmetermb/mbs_status_msg.cancel,0x459,BOOL
I31=micro820.micro820.flowmetermb/mbs_status_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I32=micro820.micro820.flowmetermb/mbs_status_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I33=micro820.micro820.flowmetermb/mbs_status_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I34=micro820.micro820.flowmetermb/mbs_status_msg.__adi_localaddr,0xFFFFFFFF,UINT
I35=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.in,0x45A,BOOL
I36=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.cancel,0x459,BOOL
I37=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I38=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I39=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I40=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.__adi_localaddr,0xFFFFFFFF,UINT
I41=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.in,0x21DA,BOOL
I42=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.cancel,0x459,BOOL
I43=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I44=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I45=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I46=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.__adi_localaddr,0xFFFFFFFF,UINT
I47=micro820.micro820.flowmetermb/mbs_units_msg.in,0x21DA,BOOL
I48=micro820.micro820.flowmetermb/mbs_units_msg.cancel,0x459,BOOL
I49=micro820.micro820.flowmetermb/mbs_units_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I50=micro820.micro820.flowmetermb/mbs_units_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I51=micro820.micro820.flowmetermb/mbs_units_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I52=micro820.micro820.flowmetermb/mbs_units_msg.__adi_localaddr,0xFFFFFFFF,UINT
I1=micro820.micro820.flowmetermb/modbustimer.in,0x2401,BOOL
I2=micro820.micro820.flowmetermb/modbustimer.pt,0x52C,TIME
I3=micro820.micro820.flowmetermb/wait_to_reset_ton.in,0x45C,BOOL
I4=micro820.micro820.flowmetermb/wait_to_reset_ton.pt,0x530,TIME
I5=micro820.micro820.solarpanelmb/modbustimer.in,0x2401,BOOL
I6=micro820.micro820.solarpanelmb/modbustimer.pt,0x52C,TIME
I7=micro820.micro820.flowmetermb/mbs_flowrate_msg.in,0x2402,BOOL
I8=micro820.micro820.flowmetermb/mbs_flowrate_msg.cancel,0x45A,BOOL
I9=micro820.micro820.flowmetermb/mbs_flowrate_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I10=micro820.micro820.flowmetermb/mbs_flowrate_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I11=micro820.micro820.flowmetermb/mbs_flowrate_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I12=micro820.micro820.flowmetermb/mbs_flowrate_msg.__adi_localaddr,0xFFFFFFFF,UINT
I13=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.in,0x2402,BOOL
I14=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.cancel,0x45A,BOOL
I15=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I16=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I17=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I18=micro820.micro820.flowmetermb/mbs_flowtotalizera_msg.__adi_localaddr,0xFFFFFFFF,UINT
I19=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.in,0x2402,BOOL
I20=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.cancel,0x45A,BOOL
I21=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I22=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I23=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I24=micro820.micro820.flowmetermb/mbs_flowtotalizerb_msg.__adi_localaddr,0xFFFFFFFF,UINT
I25=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.in,0x2402,BOOL
I26=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.cancel,0x45A,BOOL
I27=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I28=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I29=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I30=micro820.micro820.flowmetermb/mbs_flowtotalizerc_msg.__adi_localaddr,0xFFFFFFFF,UINT
I31=micro820.micro820.flowmetermb/mbs_status_msg.in,0x2402,BOOL
I32=micro820.micro820.flowmetermb/mbs_status_msg.cancel,0x45A,BOOL
I33=micro820.micro820.flowmetermb/mbs_status_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I34=micro820.micro820.flowmetermb/mbs_status_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I35=micro820.micro820.flowmetermb/mbs_status_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I36=micro820.micro820.flowmetermb/mbs_status_msg.__adi_localaddr,0xFFFFFFFF,UINT
I37=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.in,0x45B,BOOL
I38=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.cancel,0x45A,BOOL
I39=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I40=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I41=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I42=micro820.micro820.flowmetermb/mbs_resettotalizer_msg.__adi_localaddr,0xFFFFFFFF,UINT
I43=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.in,0x2402,BOOL
I44=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.cancel,0x45A,BOOL
I45=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I46=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I47=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I48=micro820.micro820.flowmetermb/mbs_clearresettotalizer_msg.__adi_localaddr,0xFFFFFFFF,UINT
I49=micro820.micro820.flowmetermb/mbs_units_msg.in,0x2402,BOOL
I50=micro820.micro820.flowmetermb/mbs_units_msg.cancel,0x45A,BOOL
I51=micro820.micro820.flowmetermb/mbs_units_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I52=micro820.micro820.flowmetermb/mbs_units_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I53=micro820.micro820.flowmetermb/mbs_units_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I54=micro820.micro820.flowmetermb/mbs_units_msg.__adi_localaddr,0xFFFFFFFF,UINT
I55=micro820.micro820.solarpanelmb/mbs_solarpanel_msg.in,0x2402,BOOL
I56=micro820.micro820.solarpanelmb/mbs_solarpanel_msg.cancel,0x45D,BOOL
I57=micro820.micro820.solarpanelmb/mbs_solarpanel_msg.localcfg,0xFFFFFFFF,MODBUSLOCPARA
I58=micro820.micro820.solarpanelmb/mbs_solarpanel_msg.targetcfg,0xFFFFFFFF,MODBUSTARPARA
I59=micro820.micro820.solarpanelmb/mbs_solarpanel_msg.localaddr,0xFFFFFFFF,MODBUSLOCADDR
I60=micro820.micro820.solarpanelmb/mbs_solarpanel_msg.__adi_localaddr,0xFFFFFFFF,UINT
[END]

View File

@@ -0,0 +1,112 @@
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT0000000F
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __DINT_NULL
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT0000000E
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT00000001
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT0000000D
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT00000002
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT0000000C
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT00000003
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT0000000B
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT00000004
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT0000000A
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT00000005
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT00000009
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT00000006
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT00000008
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT00000007
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT00000007
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT00000008
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT00000006
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT00000009
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT00000005
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT0000000A
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT00000004
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT0000000B
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT00000003
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT0000000C
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT00000002
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT0000000D
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __CDINT00000001
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT0000000E
__TMPN1 := _CALL __ANAWBIT
_PUSH_PAR INPUTUINT
_PUSH_PAR __DINT_NULL
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
_PUSH_PAR REVERSEUINT
_PUSH_PAR __CDINT0000000F
__TMPN1 := _CALL __ANAWBIT

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>

View File

@@ -0,0 +1,27 @@
FUNCTION ReverseUINT
(* REVERSE UINT *)
(* ================================ *)
(* Developed by: Patrick McDonagh *)
(* January 30, 2018 *)
(* ================================ *)
(* Reverses the bits of a UINT *)
(* data type. *)
ReverseUINT.0 := InputUINT.15;
ReverseUINT.1 := InputUINT.14;
ReverseUINT.2 := InputUINT.13;
ReverseUINT.3 := InputUINT.12;
ReverseUINT.4 := InputUINT.11;
ReverseUINT.5 := InputUINT.10;
ReverseUINT.6 := InputUINT.9;
ReverseUINT.7 := InputUINT.8;
ReverseUINT.8 := InputUINT.7;
ReverseUINT.9 := InputUINT.6;
ReverseUINT.10 := InputUINT.5;
ReverseUINT.11 := InputUINT.4;
ReverseUINT.12 := InputUINT.3;
ReverseUINT.13 := InputUINT.2;
ReverseUINT.14 := InputUINT.1;
ReverseUINT.15 := InputUINT.0;
END_FUNCTION

View File

@@ -0,0 +1 @@
SOLARPANELMB(152):F,WORDTOFLOAT16(153);F,RIGHT();F,MLEN();

View File

@@ -0,0 +1,242 @@
__TMPB1 := MODBUSTIMER [ __CDINT00000004 ]
__TMPB1 := _NOT __TMPB1
__TMPB__TON__IN := __TMPB1
__FBL_RET := _PUSHCALLFB TON MODBUSTIMER
MBS_SOLARPANEL_TARGETCFG [ __DINT_NULL ] := CFG_SOLARPANEL_REGISTER
MBS_SOLARPANEL_TARGETCFG [ __CDINT00000004 ] := CFG_SOLARPANEL_MODBUSNODE
MBS_SOLARPANEL_LOCALCFG [ __DINT_NULL ] := __CUINT00000002
MBS_SOLARPANEL_LOCALCFG [ __CDINT00000003 ] := READ_CMD
MBS_SOLARPANEL_LOCALCFG [ __CDINT00000002 ] := MBS_TRIGGERTYPE
MBS_SOLARPANEL_LOCALCFG [ __CDINT00000004 ] := __CUINT00000023
__TMPB1 := MODBUSTIMER [ __CDINT00000004 ]
__TMPV1 := MBS_SOLARPANEL_LOCALCFG [ __DINT_NULL ]
__TMPV2 := MBS_SOLARPANEL_TARGETCFG [ __DINT_NULL ]
__TMPV3 := MBS_SOLARPANEL_DATA [ __DINT_NULL ]
__TMPB__MSG_MODBUS__IN := __TMPB1
__TMPV4 := MBS_SOLARPANEL_MSG [ __CDINT00000004 ]
__TMPV4 := __TMPV1
__TMPV5 := MBS_SOLARPANEL_MSG [ __CDINT00000006 ]
__TMPV5 := __TMPV2
__TMPV6 := MBS_SOLARPANEL_MSG [ __CDINT00000008 ]
__TMPV6 := __TMPV3
MBS_SOLARPANEL_MSG [ __CDINT0000000A ] := __ADI__SOLARPANELMB_0_0
__FBL_RET := _PUSHCALLFB MSG_MODBUS MBS_SOLARPANEL_MSG
__TMPB1 := MBS_SOLARPANEL_MSG [ __CDINT0000000C ]
_IF _NOT __TMPB1 _GOTO __LAB1
__TMPI1 := __CDINT00000012 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000002
__TMPUIN1 := MBS_SOLARPANEL_DATA [ __TMPI1 ]
_PUSH_PAR __TMPUIN1
__TMPR1 := _CALL WORDTOFLOAT16
VAL_SOLARARRAYCURRENT := __TMPR1
__TMPI1 := __CDINT00000013 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000002
__TMPUIN1 := MBS_SOLARPANEL_DATA [ __TMPI1 ]
_PUSH_PAR __TMPUIN1
__TMPR1 := _CALL WORDTOFLOAT16
VAL_SOLARBATTERYTERMINALVOLTAGE := __TMPR1
__TMPI1 := __CDINT00000014 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000002
__TMPUIN1 := MBS_SOLARPANEL_DATA [ __TMPI1 ]
_PUSH_PAR __TMPUIN1
__TMPR1 := _CALL WORDTOFLOAT16
VAL_SOLARARRAYVOLTAGE := __TMPR1
__TMPI1 := __CDINT00000015 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000002
__TMPUIN1 := MBS_SOLARPANEL_DATA [ __TMPI1 ]
_PUSH_PAR __TMPUIN1
__TMPR1 := _CALL WORDTOFLOAT16
VAL_SOLARLOADVOLTAGE := __TMPR1
__TMPI1 := __CDINT00000017 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000002
__TMPUIN1 := MBS_SOLARPANEL_DATA [ __TMPI1 ]
_PUSH_PAR __TMPUIN1
__TMPR1 := _CALL WORDTOFLOAT16
VAL_SOLARLOADCURRENT := __TMPR1
__TMPI1 := __CDINT0000001C - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000002
__TMPUIN1 := MBS_SOLARPANEL_DATA [ __TMPI1 ]
_PUSH_PAR __TMPUIN1
__TMPR1 := _CALL WORDTOFLOAT16
VAL_SOLARBATTERYTEMPERATURE := __TMPR1
__TMPI1 := __CDINT0000001D - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000002
__TMPUIN1 := MBS_SOLARPANEL_DATA [ __TMPI1 ]
_PUSH_PAR __TMPUIN1
__TMPR1 := _CALL WORDTOFLOAT16
VAL_SOLARAMBIENTTEMPERATURE := __TMPR1
__TMPI1 := __CDINT00000022 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000002
__TMPUIN1 := MBS_SOLARPANEL_DATA [ __TMPI1 ]
_PUSH_PAR __TMPUIN1
__TMPUIN2 := _CALL ANY_TO_UINT
TEMP_CHARGESTATE := __TMPUIN2
__TMPI1 := __CDINT00000023 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000002
__TMPUIN1 := MBS_SOLARPANEL_DATA [ __TMPI1 ]
_PUSH_PAR __TMPUIN1
__TMPUIN2 := _CALL ANY_TO_UINT
TEMP_ARRAYFAULT := __TMPUIN2
_GOTO __LAB2
__LAB1 :
__LAB2 :
__TMPB1 := MBS_SOLARPANEL_MSG [ __CDINT0000000D ]
STS_SOLARMODBUSERROR := __TMPB1
__TMPB1 := TEMP_CHARGESTATE = __UINT_NULL
_IF _NOT __TMPB1 _GOTO __LAB3
STS_CHARGESTATE := __TMPM1
_GOTO __LAB4
__LAB3 :
__TMPB1 := TEMP_CHARGESTATE = __CUINT00000001
_IF _NOT __TMPB1 _GOTO __LAB5
STS_CHARGESTATE := __TMPM2
_GOTO __LAB4
__LAB5 :
__TMPB1 := TEMP_CHARGESTATE = __CUINT00000002
_IF _NOT __TMPB1 _GOTO __LAB6
STS_CHARGESTATE := __TMPM3
_GOTO __LAB4
__LAB6 :
__TMPB1 := TEMP_CHARGESTATE = __CUINT00000003
_IF _NOT __TMPB1 _GOTO __LAB7
STS_CHARGESTATE := __TMPM4
_GOTO __LAB4
__LAB7 :
__TMPB1 := TEMP_CHARGESTATE = __CUINT00000004
_IF _NOT __TMPB1 _GOTO __LAB8
STS_CHARGESTATE := __TMPM5
_GOTO __LAB4
__LAB8 :
__TMPB1 := TEMP_CHARGESTATE = __CUINT00000005
_IF _NOT __TMPB1 _GOTO __LAB9
STS_CHARGESTATE := __TMPM6
_GOTO __LAB4
__LAB9 :
__TMPB1 := TEMP_CHARGESTATE = __CUINT00000006
_IF _NOT __TMPB1 _GOTO __LABa
STS_CHARGESTATE := __TMPM7
_GOTO __LAB4
__LABa :
__TMPB1 := TEMP_CHARGESTATE = __CUINT00000007
_IF _NOT __TMPB1 _GOTO __LABb
STS_CHARGESTATE := __TMPM8
_GOTO __LAB4
__LABb :
__TMPB1 := TEMP_CHARGESTATE = __CUINT00000008
_IF _NOT __TMPB1 _GOTO __LABc
STS_CHARGESTATE := __TMPM9
_GOTO __LAB4
__LABc :
STS_CHARGESTATE := __TMPM10
__LAB4 :
__TMPB1 := TEMP_ARRAYFAULT = __UINT_NULL
_IF _NOT __TMPB1 _GOTO __LABd
STS_ARRAYFAULT := __TMPM11
_GOTO __LABe
__LABd :
STS_ARRAYFAULT := __STRING_NULL
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __DINT_NULL
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LABf
__TMPM13 := STS_ARRAYFAULT + __TMPM12
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LABf :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT00000001
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB11
__TMPM13 := STS_ARRAYFAULT + __TMPM14
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB11 :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT00000002
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB12
__TMPM13 := STS_ARRAYFAULT + __TMPM15
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB12 :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT00000003
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB13
__TMPM13 := STS_ARRAYFAULT + __TMPM16
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB13 :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT00000004
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB14
__TMPM13 := STS_ARRAYFAULT + __TMPM17
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB14 :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT00000005
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB15
__TMPM13 := STS_ARRAYFAULT + __TMPM18
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB15 :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT00000006
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB16
__TMPM13 := STS_ARRAYFAULT + __TMPM19
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB16 :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT00000007
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB17
__TMPM13 := STS_ARRAYFAULT + __TMPM20
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB17 :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT00000008
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB18
__TMPM13 := STS_ARRAYFAULT + __TMPM21
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB18 :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT00000009
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB19
__TMPM13 := STS_ARRAYFAULT + __TMPM22
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB19 :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT0000000A
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB1a
__TMPM13 := STS_ARRAYFAULT + __TMPM23
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB1a :
_PUSH_PAR TEMP_ARRAYFAULT
_PUSH_PAR __CDINT0000000B
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB1b
__TMPM13 := STS_ARRAYFAULT + __TMPM24
STS_ARRAYFAULT := __TMPM13
_GOTO __LAB10
__LAB1b :
__LAB10 :
_PUSH_PAR STS_ARRAYFAULT
__TMPI1 := _CALL MLEN
__TMPI1 := __TMPI1 - __CDINT00000002
_PUSH_PAR STS_ARRAYFAULT
_PUSH_PAR __TMPI1
__TMPM13 := _CALL RIGHT
STS_ARRAYFAULT := __TMPM13
__LABe :

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>

View File

@@ -0,0 +1,87 @@
PROGRAM SolarPanelMb
ModbusTimer(NOT ModbusTimer.Q, ModbusScanRate);
(* ============== *)
(* FLOW RATE *)
(* ============== *)
mbs_SolarPanel_TargetCfg.Addr := cfg_SolarPanel_Register;
mbs_SolarPanel_TargetCfg.Node := cfg_SolarPanel_ModbusNode;
mbs_SolarPanel_LocalCfg.Channel := 2;
mbs_SolarPanel_LocalCfg.Cmd := READ_CMD;
mbs_SolarPanel_LocalCfg.TriggerType := mbs_TriggerType;
mbs_SolarPanel_LocalCfg.ElementCnt := 35;
mbs_SolarPanel_MSG(ModbusTimer.Q, mbs_Cancel, mbs_SolarPanel_LocalCfg, mbs_SolarPanel_TargetCfg, mbs_SolarPanel_Data);
IF mbs_SolarPanel_MSG.Q THEN
val_SolarArrayCurrent := WordToFloat16(mbs_SolarPanel_Data[18]);
val_SolarBatteryTerminalVoltage := WordToFloat16(mbs_SolarPanel_Data[19]);
val_SolarArrayVoltage := WordToFloat16(mbs_SolarPanel_Data[20]);
val_SolarLoadVoltage := WordToFloat16(mbs_SolarPanel_Data[21]);
val_SolarLoadCurrent := WordToFloat16(mbs_SolarPanel_Data[23]);
val_SolarBatteryTemperature := WordToFloat16(mbs_SolarPanel_Data[28]);
val_SolarAmbientTemperature := WordToFloat16(mbs_SolarPanel_Data[29]);
temp_ChargeState := ANY_TO_UINT(mbs_SolarPanel_Data[34]);
temp_ArrayFault := ANY_TO_UINT(mbs_SolarPanel_Data[35]);
END_IF;
sts_SolarModbusError := mbs_SolarPanel_MSG.Error;
(* Map Charge State *)
IF temp_ChargeState = 0 THEN
sts_ChargeState := 'Start';
ELSIF temp_ChargeState = 1 THEN
sts_ChargeState := 'Night Check';
ELSIF temp_ChargeState = 2 THEN
sts_ChargeState := 'Disconnect';
ELSIF temp_ChargeState = 3 THEN
sts_ChargeState := 'Night';
ELSIF temp_ChargeState = 4 THEN
sts_ChargeState := 'Fault';
ELSIF temp_ChargeState = 5 THEN
sts_ChargeState := 'Bulk';
ELSIF temp_ChargeState = 6 THEN
sts_ChargeState := 'Absorption';
ELSIF temp_ChargeState = 7 THEN
sts_ChargeState := 'Float';
ELSIF temp_ChargeState = 8 THEN
sts_ChargeState := 'Equalize';
ELSE
sts_ChargeState := 'Unknown';
END_IF;
(* Map Array Fault *)
IF temp_ArrayFault = 0 THEN
sts_ArrayFault := 'OK';
ELSE
sts_ArrayFault := '';
IF temp_ArrayFault.0 THEN
sts_ArrayFault := sts_ArrayFault + ', Overcurrent Phase 1';
ELSIF temp_ArrayFault.1 THEN
sts_ArrayFault := sts_ArrayFault + ', FET(s) Shorted';
ELSIF temp_ArrayFault.2 THEN
sts_ArrayFault := sts_ArrayFault + ', Software Bug';
ELSIF temp_ArrayFault.3 THEN
sts_ArrayFault := sts_ArrayFault + ', Battery High Voltage Disconnect';
ELSIF temp_ArrayFault.4 THEN
sts_ArrayFault := sts_ArrayFault + ', Array High Voltage Disconnect';
ELSIF temp_ArrayFault.5 THEN
sts_ArrayFault := sts_ArrayFault + ', EEPROM Setting Edit (reset required)';
ELSIF temp_ArrayFault.6 THEN
sts_ArrayFault := sts_ArrayFault + ', RTS Shorted';
ELSIF temp_ArrayFault.7 THEN
sts_ArrayFault := sts_ArrayFault + ', RTS was valid, now disconnected';
ELSIF temp_ArrayFault.8 THEN
sts_ArrayFault := sts_ArrayFault + ', Local temp sensor failed';
ELSIF temp_ArrayFault.9 THEN
sts_ArrayFault := sts_ArrayFault + ', Battery Low Voltage Disconnect';
ELSIF temp_ArrayFault.10 THEN
sts_ArrayFault := sts_ArrayFault + ', DIP Switch Changed';
ELSIF temp_ArrayFault.11 THEN
sts_ArrayFault := sts_ArrayFault + ', Processor Supply Fault';
END_IF;
sts_ArrayFault := RIGHT(sts_ArrayFault, MLEN(sts_ArrayFault) - 2);
END_IF;
END_PROGRAM

View File

@@ -0,0 +1 @@
WORDTOFLOAT16(153):F,REVERSEUINT(154);F,EXPT();F,POW();

View File

@@ -0,0 +1,221 @@
_PUSH_PAR INP_INT
__TMPUIN1 := _CALL ANY_TO_UINT
_PUSH_PAR __TMPUIN1
__TMPUIN2 := _CALL REVERSEUINT
REVERSEDINPUT := __TMPUIN2
SIGN := __TMPR1
FRACTION := __TMPR2
EXPONENT := __TMPR2
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __DINT_NULL
__TMPB1 := _CALL __ANARBIT
_IF _NOT __TMPB1 _GOTO __LAB1
__TMPR3 := - __TMPR1
SIGN := __TMPR3
_GOTO __LAB2
__LAB1 :
__LAB2 :
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT00000005
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __DINT_NULL
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := EXPONENT + __TMPR3
EXPONENT := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT00000004
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000001
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := EXPONENT + __TMPR3
EXPONENT := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT00000003
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000002
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := EXPONENT + __TMPR3
EXPONENT := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT00000002
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000003
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := EXPONENT + __TMPR3
EXPONENT := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT00000001
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000004
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := EXPONENT + __TMPR3
EXPONENT := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT0000000F
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __DINT_NULL
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT0000000E
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000001
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT0000000D
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000002
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT0000000C
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000003
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT0000000B
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000004
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT0000000A
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000005
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT00000009
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000006
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT00000008
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000007
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT00000007
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000008
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
_PUSH_PAR REVERSEDINPUT
_PUSH_PAR __CDINT00000006
__TMPB1 := _CALL __ANARBIT
_PUSH_PAR __TMPB1
__TMPR3 := _CALL ANY_TO_BOOL
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT00000009
__TMPR5 := _CALL EXPT
__TMPR3 := __TMPR3 * __TMPR5
__TMPR6 := FRACTION + __TMPR3
FRACTION := __TMPR6
__TMPB1 := EXPONENT = __TMPR2
_IF _NOT __TMPB1 _GOTO __LAB3
__TMPI1 := - __CDINT0000000E
_PUSH_PAR __TMPR4
_PUSH_PAR __TMPI1
__TMPR3 := _CALL EXPT
__TMPR5 := SIGN * __TMPR3
__TMPR5 := __TMPR5 * FRACTION
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT0000000A
__TMPR6 := _CALL EXPT
__TMPR5 := __TMPR5 / __TMPR6
WORDTOFLOAT16 := __TMPR5
_GOTO __LAB4
__LAB3 :
__TMPB1 := EXPONENT = __TMPR7
_IF _NOT __TMPB1 _GOTO __LAB5
__TMPB2 := FRACTION = __TMPR2
_IF _NOT __TMPB2 _GOTO __LAB6
WORDTOFLOAT16 := __TMPR2
_GOTO __LAB7
__LAB6 :
WORDTOFLOAT16 := __TMPR2
__LAB7 :
_GOTO __LAB4
__LAB5 :
__TMPR3 := EXPONENT - __TMPR8
_PUSH_PAR __TMPR4
_PUSH_PAR __TMPR3
__TMPR5 := _CALL POW
__TMPR6 := SIGN * __TMPR5
_PUSH_PAR __TMPR4
_PUSH_PAR __CDINT0000000A
__TMPR9 := _CALL EXPT
__TMPR10 := FRACTION / __TMPR9
__TMPR11 := __TMPR1 + __TMPR10
__TMPR6 := __TMPR6 * __TMPR11
WORDTOFLOAT16 := __TMPR6
__LAB4 :

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>

View File

@@ -0,0 +1,56 @@
FUNCTION WordToFloat16
(* WORD TO FLOAT 16 *)
(* ================================ *)
(* Developed by: Patrick McDonagh *)
(* January 30, 2018 *)
(* ================================ *)
(* Converts a WORD data type, *)
(* typically from a modbus data *)
(* source, into a IEEE-754 Binary16 *)
(* (also known as Float16) value. *)
(* Returns a REAL data type. *)
reversedInput := ReverseUINT(ANY_TO_UINT(inp_Int));
sign := 1.0;
fraction := 0.0;
exponent := 0.0;
IF reversedInput.0 THEN
sign := -1.0;
END_IF;
(* Calculate the exponent *)
exponent := exponent + ANY_TO_REAL(reversedInput.5) * EXPT(2.0, 0);
exponent := exponent + ANY_TO_REAL(reversedInput.4) * EXPT(2.0, 1);
exponent := exponent + ANY_TO_REAL(reversedInput.3) * EXPT(2.0, 2);
exponent := exponent + ANY_TO_REAL(reversedInput.2) * EXPT(2.0, 3);
exponent := exponent + ANY_TO_REAL(reversedInput.1) * EXPT(2.0, 4);
(* Calculate the fraction *)
fraction := fraction + ANY_TO_REAL(reversedInput.15) * EXPT(2.0, 0);
fraction := fraction + ANY_TO_REAL(reversedInput.14) * EXPT(2.0, 1);
fraction := fraction + ANY_TO_REAL(reversedInput.13) * EXPT(2.0, 2);
fraction := fraction + ANY_TO_REAL(reversedInput.12) * EXPT(2.0, 3);
fraction := fraction + ANY_TO_REAL(reversedInput.11) * EXPT(2.0, 4);
fraction := fraction + ANY_TO_REAL(reversedInput.10) * EXPT(2.0, 5);
fraction := fraction + ANY_TO_REAL(reversedInput.9) * EXPT(2.0, 6);
fraction := fraction + ANY_TO_REAL(reversedInput.8) * EXPT(2.0, 7);
fraction := fraction + ANY_TO_REAL(reversedInput.7) * EXPT(2.0, 8);
fraction := fraction + ANY_TO_REAL(reversedInput.6) * EXPT(2.0, 9);
IF exponent = 0.0 THEN
WordToFloat16 := sign * EXPT(2.0, -14) * fraction / EXPT(2.0, 10);
ELSIF exponent = 31.0 THEN
IF fraction = 0.0 THEN
(* THIS SHOULD RETURN sign * infinity *)
WordToFloat16 := 0.0;
ELSE
(*THIS SHOULD RETURN NaN *)
WordToFloat16 := 0.0;
END_IF;
ELSE
WordToFloat16 := sign * POW(2.0, exponent - 15.0) * (1.0 + fraction / EXPT(2.0, 10));
END_IF;
END_FUNCTION

View File

@@ -1,2 +1,2 @@
[RMDManager]
TASK=REBUILD
TASK=BUILD

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<ProjectElements>
<AcfElementGuid Guid="24745dc1-7289-46d4-939f-92610f2b16b5" />
<AcfElementGuid Guid="4abfa14a-9a16-4913-a742-278fd478b028" />
<AcfElementGuid Guid="b347dfd1-4943-49d5-9124-df6855433dbd" />
<AcfElementGuid Guid="d9cd1c27-0f51-4f96-b960-a629f4aa554a" />

View File

@@ -1,11 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<ProjectElements>
<AcfElementGuid Guid="09f80df8-de78-4f0d-83bb-a50f1aedc854">
<File>ReverseUINT.AcfMlge</File>
</AcfElementGuid>
<AcfElementGuid Guid="1f8f27de-e718-45df-9429-35b1463a9e4e">
<File>WordsToReal.AcfMlge</File>
</AcfElementGuid>
<AcfElementGuid Guid="23b6cc54-7135-422a-8743-f460b52a26b3">
<File>FlowTotalUnits.AcfMlge</File>
</AcfElementGuid>
<AcfElementGuid Guid="24745dc1-7289-46d4-939f-92610f2b16b5">
<File>SolarPanelMb.AcfMlge</File>
</AcfElementGuid>
<AcfElementGuid Guid="584fd256-dfd3-4908-ba27-015faa1ddf1a">
<File>WordToFloat16.AcfMlge</File>
</AcfElementGuid>
<AcfElementGuid Guid="6baaf1eb-2019-4bda-b9e7-8119676bf9bd">
<File>FlowRateUnits.AcfMlge</File>
</AcfElementGuid>

View File

@@ -1 +1,16 @@
# Pioneer-GhostMeters
## Modbus Parameters
All devices need to be configured with the following Modbus Parameters:
- Baud Rate: 19200
- Parity: Even
- Stop Bits: 1
### Modbus Addresses
| Device | Address |
| -------------------- | ----------- |
| Flowmeter | 1 |
| Solar Panel Charger | 20 |

View File

@@ -35,7 +35,7 @@ logger.info("fracskid startup")
# GLOBAL VARIABLES
WATCHDOG_SEND_PERIOD = 3600 # Seconds, the longest amount of time before sending the watchdog status
PLC_IP_ADDRESS = "10.20.4.40"
PLC_IP_ADDRESS = "192.168.1.10"
CHANNELS = []
# PERSISTENCE FILE