diff --git a/Pioneer Ghost Meters/Controller/Controller/DevicePref.xml b/Pioneer Ghost Meters/Controller/Controller/DevicePref.xml index 2b022dd..b719f06 100644 --- a/Pioneer Ghost Meters/Controller/Controller/DevicePref.xml +++ b/Pioneer Ghost Meters/Controller/Controller/DevicePref.xml @@ -1,4 +1,4 @@ - PATRICKMCDO8E0A!HenryPump\10.20.4.40 + PATRICKMCDO8E0A!HenryPump\107.84.231.186 \ No newline at end of file diff --git a/Pioneer Ghost Meters/Controller/Controller/LogicalValues.csv b/Pioneer Ghost Meters/Controller/Controller/LogicalValues.csv index 995ea6a..73bdb17 100644 --- a/Pioneer Ghost Meters/Controller/Controller/LogicalValues.csv +++ b/Pioneer Ghost Meters/Controller/Controller/LogicalValues.csv @@ -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 diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Compile_REVERSEUINT.ict b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Compile_REVERSEUINT.ict new file mode 100644 index 0000000..7e6cc76 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Compile_REVERSEUINT.ict @@ -0,0 +1 @@ +COMPILED diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Compile_SOLARPANELMB.ict b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Compile_SOLARPANELMB.ict new file mode 100644 index 0000000..7e6cc76 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Compile_SOLARPANELMB.ict @@ -0,0 +1 @@ +COMPILED diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Compile_WORDTOFLOAT16.ict b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Compile_WORDTOFLOAT16.ict new file mode 100644 index 0000000..7e6cc76 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Compile_WORDTOFLOAT16.ict @@ -0,0 +1 @@ +COMPILED diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/DefProg.cnf b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/DefProg.cnf index 488006f..acac3d5 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/DefProg.cnf and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/DefProg.cnf differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/DwlOrder.txt b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/DwlOrder.txt index 1c929df..2b14577 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/DwlOrder.txt +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/DwlOrder.txt @@ -1,5 +1,8 @@ FLOWMETERMB WATCHDOG +SOLARPANELMB WORDSTOREAL FLOWRATEUNITS FLOWTOTALUNITS +WORDTOFLOAT16 +REVERSEUINT diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FBS_INPUTS_ASSIGNATION.ipa b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FBS_INPUTS_ASSIGNATION.ipa index 4228f3d..3e7f70b 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FBS_INPUTS_ASSIGNATION.ipa +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FBS_INPUTS_ASSIGNATION.ipa @@ -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,,MODBUSLOCPARA @@ -50,3 +52,9 @@ MBS_UNITS_MSG.LOCALCFG@FLOWMETERMB,,MODBUSLOCPARA MBS_UNITS_MSG.TARGETCFG@FLOWMETERMB,,MODBUSTARPARA MBS_UNITS_MSG.LOCALADDR@FLOWMETERMB,,MODBUSLOCADDR MBS_UNITS_MSG.__ADI_LOCALADDR@FLOWMETERMB,,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,,MODBUSLOCPARA +MBS_SOLARPANEL_MSG.TARGETCFG@SOLARPANELMB,,MODBUSTARPARA +MBS_SOLARPANEL_MSG.LOCALADDR@SOLARPANELMB,,MODBUSLOCADDR +MBS_SOLARPANEL_MSG.__ADI_LOCALADDR@SOLARPANELMB,,UINT diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWMETERMB.ic b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWMETERMB.ic index 376cfd9..d9e74b7 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWMETERMB.ic +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWMETERMB.ic @@ -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 diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWMETERMB.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWMETERMB.rtc index ed5c864..49b61f9 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWMETERMB.rtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWMETERMB.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWRATEUNITS.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWRATEUNITS.rtc index 01e1b6d..7fa806c 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWRATEUNITS.rtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWRATEUNITS.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWTOTALUNITS.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWTOTALUNITS.rtc index 8dcb40f..6f024b8 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWTOTALUNITS.rtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FLOWTOTALUNITS.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FlowMeterMb.stf b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FlowMeterMb.stf index d7f58bf..20efb4e 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FlowMeterMb.stf +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/FlowMeterMb.stf @@ -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'; diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/GlobalVariable.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/GlobalVariable.rtc index 0039597..172cf80 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/GlobalVariable.rtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/GlobalVariable.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Header.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Header.rtc index 2333ace..c61660e 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Header.rtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Header.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Hierarchy.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Hierarchy.rtc index 5594450..f49171a 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Hierarchy.rtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/Hierarchy.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/IDS00103 b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/IDS00103 index 54cb399..c153027 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/IDS00103 and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/IDS00103 differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820.icp b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820.icp index edcc1da..b0bf9bf 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820.icp +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820.icp @@ -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): diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Conf.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Conf.xtc index ec5a465..e0748e2 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Conf.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Conf.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Constants.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Constants.xtc index ea43ef5..4137a9a 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Constants.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Constants.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_DwlOrder.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_DwlOrder.xtc index 8fcaf8e..5b07a22 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_DwlOrder.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_DwlOrder.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_LinkInfo.mtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_LinkInfo.mtc index 843223e..4aa4927 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_LinkInfo.mtc +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_LinkInfo.mtc @@ -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 diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_LinkInfo.s.mtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_LinkInfo.s.mtc index 843223e..4aa4927 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_LinkInfo.s.mtc +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_LinkInfo.s.mtc @@ -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 diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MdfLinkReport.s.mtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MdfLinkReport.s.mtc index ecec445..57c3886 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MdfLinkReport.s.mtc +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MdfLinkReport.s.mtc @@ -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 diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MiscLinkInfo.mtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MiscLinkInfo.mtc index c90b0ef..1b46546 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MiscLinkInfo.mtc +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MiscLinkInfo.mtc @@ -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 diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MiscLinkInfo.s.mtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MiscLinkInfo.s.mtc index c90b0ef..1b46546 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MiscLinkInfo.s.mtc +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_MiscLinkInfo.s.mtc @@ -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 diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWMETERMB.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWMETERMB.xtc index d6d9447..0429e58 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWMETERMB.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWMETERMB.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWRATEUNITS.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWRATEUNITS.xtc index 81f2f7a..fc4ae09 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWRATEUNITS.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWRATEUNITS.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWTOTALUNITS.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWTOTALUNITS.xtc index 9f0dffc..16c3bc3 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWTOTALUNITS.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_FLOWTOTALUNITS.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/RmcVariables b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_REVERSEUINT.ipa similarity index 100% rename from Pioneer Ghost Meters/Controller/Controller/RmcVariables rename to Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_REVERSEUINT.ipa diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_REVERSEUINT.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_REVERSEUINT.xtc new file mode 100644 index 0000000..9999c64 Binary files /dev/null and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_REVERSEUINT.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_SOLARPANELMB.ipa b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_SOLARPANELMB.ipa new file mode 100644 index 0000000..ed144af --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_SOLARPANELMB.ipa @@ -0,0 +1,2 @@ +,MODBUSTIMER@SOLARPANELMB,TON,IN,__TMPB__TON__IN,BOOL,PT,MODBUSSCANRATE,TIME +,MBS_SOLARPANEL_MSG@SOLARPANELMB,MSG_MODBUS,IN,__TMPB__MSG_MODBUS__IN,BOOL,CANCEL,MBS_CANCEL@SOLARPANELMB,BOOL,LOCALCFG,,MODBUSLOCPARA,TARGETCFG,,MODBUSTARPARA,LOCALADDR,,MODBUSLOCADDR,__ADI_LOCALADDR,,UINT diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_SOLARPANELMB.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_SOLARPANELMB.xtc new file mode 100644 index 0000000..6a2d1b5 Binary files /dev/null and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_SOLARPANELMB.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WATCHDOG.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WATCHDOG.xtc index c447c2e..dad40d0 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WATCHDOG.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WATCHDOG.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WORDSTOREAL.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WORDSTOREAL.xtc index 4a5c257..0c7188b 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WORDSTOREAL.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WORDSTOREAL.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WORDTOFLOAT16.ipa b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WORDTOFLOAT16.ipa new file mode 100644 index 0000000..e69de29 diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WORDTOFLOAT16.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WORDTOFLOAT16.xtc new file mode 100644 index 0000000..30bce15 Binary files /dev/null and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_Pou_WORDTOFLOAT16.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsComplement.ttc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsComplement.ttc index c7aa032..6edfb04 100644 --- a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsComplement.ttc +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsComplement.ttc @@ -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] diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.d.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.d.xtc index 64e4a94..9469a5b 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.d.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.d.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.s.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.s.xtc index 64e4a94..9469a5b 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.s.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.s.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.xtc index 64e4a94..9469a5b 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsDebug.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsTarget.s.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsTarget.s.xtc index 19ccad7..9c4b8fd 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsTarget.s.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsTarget.s.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsTarget.xtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsTarget.xtc index 19ccad7..9c4b8fd 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsTarget.xtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/MICRO820_SymbolsTarget.xtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/REVERSEUINT.ic b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/REVERSEUINT.ic new file mode 100644 index 0000000..dcee995 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/REVERSEUINT.ic @@ -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 diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/REVERSEUINT.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/REVERSEUINT.rtc new file mode 100644 index 0000000..7a2cca3 Binary files /dev/null and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/REVERSEUINT.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/ReverseUINT.AcfMlge b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/ReverseUINT.AcfMlge new file mode 100644 index 0000000..6c09cd5 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/ReverseUINT.AcfMlge @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/ReverseUINT.stf b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/ReverseUINT.stf new file mode 100644 index 0000000..c49ee56 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/ReverseUINT.stf @@ -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 \ No newline at end of file diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SOLARPANELMB.dop b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SOLARPANELMB.dop new file mode 100644 index 0000000..87ef1d9 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SOLARPANELMB.dop @@ -0,0 +1 @@ +SOLARPANELMB(152):F,WORDTOFLOAT16(153);F,RIGHT();F,MLEN(); \ No newline at end of file diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SOLARPANELMB.ic b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SOLARPANELMB.ic new file mode 100644 index 0000000..362074a --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SOLARPANELMB.ic @@ -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 : diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SOLARPANELMB.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SOLARPANELMB.rtc new file mode 100644 index 0000000..fcddf6b Binary files /dev/null and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SOLARPANELMB.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SolarPanelMb.AcfMlge b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SolarPanelMb.AcfMlge new file mode 100644 index 0000000..6c09cd5 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SolarPanelMb.AcfMlge @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SolarPanelMb.stf b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SolarPanelMb.stf new file mode 100644 index 0000000..9f67791 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/SolarPanelMb.stf @@ -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 \ No newline at end of file diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WATCHDOG.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WATCHDOG.rtc index a739d78..4d69976 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WATCHDOG.rtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WATCHDOG.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDSTOREAL.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDSTOREAL.rtc index dc2dd52..7a604dc 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDSTOREAL.rtc and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDSTOREAL.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDTOFLOAT16.dop b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDTOFLOAT16.dop new file mode 100644 index 0000000..49c7ad0 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDTOFLOAT16.dop @@ -0,0 +1 @@ +WORDTOFLOAT16(153):F,REVERSEUINT(154);F,EXPT();F,POW(); \ No newline at end of file diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDTOFLOAT16.ic b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDTOFLOAT16.ic new file mode 100644 index 0000000..b54dc5f --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDTOFLOAT16.ic @@ -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 : diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDTOFLOAT16.rtc b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDTOFLOAT16.rtc new file mode 100644 index 0000000..38dd1ff Binary files /dev/null and b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WORDTOFLOAT16.rtc differ diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WordToFloat16.AcfMlge b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WordToFloat16.AcfMlge new file mode 100644 index 0000000..6c09cd5 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WordToFloat16.AcfMlge @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WordToFloat16.stf b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WordToFloat16.stf new file mode 100644 index 0000000..97d0d14 --- /dev/null +++ b/Pioneer Ghost Meters/Controller/Controller/Micro820/Micro820/WordToFloat16.stf @@ -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 \ No newline at end of file diff --git a/Pioneer Ghost Meters/Controller/Controller/PrjLibrary.mdb b/Pioneer Ghost Meters/Controller/Controller/PrjLibrary.mdb index 72efade..5445f9a 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/PrjLibrary.mdb and b/Pioneer Ghost Meters/Controller/Controller/PrjLibrary.mdb differ diff --git a/Pioneer Ghost Meters/Controller/Controller/RMD.info b/Pioneer Ghost Meters/Controller/Controller/RMD.info index 6572d3c..3a98e98 100644 --- a/Pioneer Ghost Meters/Controller/Controller/RMD.info +++ b/Pioneer Ghost Meters/Controller/Controller/RMD.info @@ -1,2 +1,2 @@ [RMDManager] -TASK=REBUILD +TASK=BUILD diff --git a/Pioneer Ghost Meters/Controller/Controller/persist.ccwx b/Pioneer Ghost Meters/Controller/Controller/persist.ccwx index 7ccbf90..1764ecd 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller/persist.ccwx and b/Pioneer Ghost Meters/Controller/Controller/persist.ccwx differ diff --git a/Pioneer Ghost Meters/Controller/Controller_Backup.zip b/Pioneer Ghost Meters/Controller/Controller_Backup.zip index a28bd54..3faea47 100644 Binary files a/Pioneer Ghost Meters/Controller/Controller_Backup.zip and b/Pioneer Ghost Meters/Controller/Controller_Backup.zip differ diff --git a/Pioneer Ghost Meters/Controller/LogicalValues/ExtendedInfo.xml b/Pioneer Ghost Meters/Controller/LogicalValues/ExtendedInfo.xml index 853d103..7d5db6d 100644 --- a/Pioneer Ghost Meters/Controller/LogicalValues/ExtendedInfo.xml +++ b/Pioneer Ghost Meters/Controller/LogicalValues/ExtendedInfo.xml @@ -1,5 +1,6 @@  + diff --git a/Pioneer Ghost Meters/Controller/MLGE/ExtendedInfo.xml b/Pioneer Ghost Meters/Controller/MLGE/ExtendedInfo.xml index 4c55a03..73d32b4 100644 --- a/Pioneer Ghost Meters/Controller/MLGE/ExtendedInfo.xml +++ b/Pioneer Ghost Meters/Controller/MLGE/ExtendedInfo.xml @@ -1,11 +1,20 @@  + + ReverseUINT.AcfMlge + WordsToReal.AcfMlge FlowTotalUnits.AcfMlge + + SolarPanelMb.AcfMlge + + + WordToFloat16.AcfMlge + FlowRateUnits.AcfMlge diff --git a/Pioneer Ghost Meters/Pioneer Ghost Meters.v12.ccwsuo b/Pioneer Ghost Meters/Pioneer Ghost Meters.v12.ccwsuo index f3c3122..5b3ed6a 100644 Binary files a/Pioneer Ghost Meters/Pioneer Ghost Meters.v12.ccwsuo and b/Pioneer Ghost Meters/Pioneer Ghost Meters.v12.ccwsuo differ diff --git a/README.md b/README.md index 1484537..404b39c 100644 --- a/README.md +++ b/README.md @@ -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 | diff --git a/pioneerfracskid/python-driver/fracskid.py b/pioneerfracskid/python-driver/fracskid.py index e59da5a..55f8714 100644 --- a/pioneerfracskid/python-driver/fracskid.py +++ b/pioneerfracskid/python-driver/fracskid.py @@ -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