From c5c2b28bf52ae865ded6a8f490215ae96ccee0e8 Mon Sep 17 00:00:00 2001 From: RobertJDavis Date: Fri, 5 Dec 2025 15:43:17 -0700 Subject: [PATCH] com change com --- platformio.ini | 2 +- .../StateUtils.cpp | 42 +++++++++++++++++++ .../State_Running.cpp | 2 +- .../State_Standby.cpp | 2 +- .../PHX3_CRAH_LIEBERT_80_SLAB_TCP/config.h | 11 ++++- 5 files changed, 54 insertions(+), 5 deletions(-) diff --git a/platformio.ini b/platformio.ini index 2bec804..ec985dc 100644 --- a/platformio.ini +++ b/platformio.ini @@ -13,7 +13,7 @@ default_envs = PHX3_CRAH_LIEBERT_80_SLAB_TCP ; Select here the name of the configuration you want to download [env] -upload_port = COM9 +upload_port = COM11 [common_env_options] framework = arduino diff --git a/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/StateUtils.cpp b/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/StateUtils.cpp index b50dc7f..5df8d4c 100644 --- a/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/StateUtils.cpp +++ b/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/StateUtils.cpp @@ -63,6 +63,48 @@ void updateAlarms(Equipment* equipment){ "Alarm Compressor 1B Overload ON", "Alarm Compressor 2B Overload ON" }; + Modbus_Point* returnAirTemp = equipment -> getModbus_Point("Return Air Temp"); + Modbus_Point* supplyAirTemp = equipment -> getModbus_Point("Supply Air Temp"); + Modbus_Point* returnHumidity = equipment -> getModbus_Point("Return Humidity"); + //int supplyAirTemp = getPointValue(equipment, "Supply Air Temp"); + //int returnHumidity = getPointValue(equipment, "Return Humidity"); + + // Update Return Air Temp Alarms + if (returnAirTemp > equipment->getModbus_Point("Return Air Temp Alarm High SP")) { + equipment->setModbus_Point("Alarm High Return Air Temp", 1); + } + else if (returnAirTemp < equipment->getModbus_Point("Return Air Temp Alarm Low SP")) { + equipment->setModbus_Point("Alarm Low Return Air Temp", 1); + } + else{ + equipment->setModbus_Point("Alarm High Return Air Temp", 0); + equipment->setModbus_Point("Alarm Low Return Air Temp", 0); + } + + // Update Supply Air Temp Alarms + if (supplyAirTemp > equipment->getModbus_Point("Supply Air Temp Alarm High SP")) { + equipment->setModbus_Point("Alarm High Supply Temp", 1); + } + else if (supplyAirTemp < equipment->getModbus_Point("Supply Air Temp Alarm Low SP")) { + equipment->setModbus_Point("Alarm Low Supply Temp", 1); + } + else{ + equipment->setModbus_Point("Alarm High Supply Temp", 0); + equipment->setModbus_Point("Alarm Low Supply Temp", 0); + } + + // Update Return Humidity Alarms + if (returnHumidity > equipment->getModbus_Point("Return Humidity Alarm High SP")) { + equipment->setModbus_Point("Alarm High Return Humidity", 1); + } + else if (returnHumidity < equipment->getModbus_Point("Return Humidity Alarm Low SP")) { + equipment->setModbus_Point("AAlarm Low Return Humidity", 1); + } + else{ + equipment->setModbus_Point("Alarm High Return Humidity", 0); + equipment->setModbus_Point("Alarm Low Return Humidity", 0); + } + int numAlarms = 0; for (int i =0; i< alarmCommands.size() && i < alarmDescriptions.size(); ++i) { Modbus_Point* commandPoint = equipment->getModbus_Point(alarmCommands[i]); diff --git a/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/State_Running.cpp b/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/State_Running.cpp index 33c87c7..528183c 100644 --- a/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/State_Running.cpp +++ b/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/State_Running.cpp @@ -44,7 +44,7 @@ */ template<> RunningState::RunningState() { - addStrategy("Return Humidity", new SawStrategy(0.0f, 80.0f, 5.0f, 1000)); + addStrategy("Return Humidity", new SawStrategy(2.0f, 80.0f, 2.0f, 1000)); addStrategy("Return Air Temp", new SawStrategy(66.0f, 110.0f, 2.0f, 1000)); addStrategy("Supply Air Temp", new SawStrategy(68.0f, 86.0f, 1.0f, 1000)); addStrategy("Supply Air Flow", new SawStrategy(7.0f, 10.0f, 1.0f, 1000)); diff --git a/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/State_Standby.cpp b/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/State_Standby.cpp index 5db3e93..5468f3b 100644 --- a/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/State_Standby.cpp +++ b/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/State_Standby.cpp @@ -40,7 +40,7 @@ template<> StandbyState::StandbyState() { addStrategy("Fan Speed", new RampStrategy(0.0f, 10.0f, 1000)); - addStrategy("Return Humidity", new SawStrategy(0.0f, 80.0f, 5.0f, 1000)); + addStrategy("Return Humidity", new SawStrategy(0.0f, 80.0f, 2.0f, 1000)); addStrategy("Return Air Temp", new SingleValueStrategy(80.0f, 1.0f, 1000)); addStrategy("Supply Air Temp", new SingleValueStrategy(80.0f, 1.0f, 1000)); addStrategy("Supply Air Flow", new RampStrategy(0.0f, 1.0f, 1000)); diff --git a/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/config.h b/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/config.h index f547b18..cccecc6 100644 --- a/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/config.h +++ b/src/BMS/CRAH/PHX3_CRAH_LIEBERT_80_SLAB_TCP/config.h @@ -23,7 +23,7 @@ #include const char *ssid = "TP-Link_D91A"; /**< @brief The SSID of the WiFi network. */ const char *password = "52761492"; /**< @brief The password for the WiFi network. */ - IPAddress local_IP(192, 168, 1, 234); /**< @brief The static IP address for the device. */ + IPAddress local_IP(192, 168, 0, 234); /**< @brief The static IP address for the device. */ IPAddress gateway(192, 168, 1, 1); /**< @brief The gateway IP address. */ IPAddress subnet(255, 255, 255, 0); /**< @brief The subnet mask. */ @@ -68,7 +68,7 @@ modbusMap mb_map[] = {COIL, 6, 0, "Alarm Compressor 2A Overload ON"}, // For Arduino testing only {COIL, 7, 0, "Alarm Water Detected ON"}, // For Arduino testing only {COIL, 8, 0, "Alarm Standby Unit On ON"}, // For Arduino testing only - {COIL, 9, 0, "Alarm Room Sensor Failure ON"}, // For Arduino testing only + {COIL, 9, 0, "Alarm Room Sensor Failure ON"}, // For Arduino testing only {COIL, 10, 0, "Alarm Power Loss ON"}, // For Arduino testing only {COIL, 11, 0, "Alarm Clogged Filter ON"}, // For Arduino testing only {COIL, 12, 0, "Alarm Supply Sensor Failure ON"}, // For Arduino testing only @@ -144,8 +144,15 @@ modbusMap mb_map[] = {IR, 2050, 0, "Fluid Control Valve Position 1"}, {IR, 2051, 0, "Fluid Control Valve Position 2"}, + {HR_10x, 53, 60, "Return Humidity Alarm High SP"}, + {HR_10x, 54, 20, "Return Humidity Alarm Low SP"}, {HR, 732, 73, "Supply Air Temp Setpoint"}, + {HR_10x, 738, 100, "Return Air Temp Alarm High SP"}, + {HR_10x, 739, 72, "Return Air Temp Alarm Low SP"}, {HR, 753, 80, "Return Air Temp Setpoint"}, + {HR_10x, 754, 78, "Supply Air Temp Alarm High SP"}, + {HR_10x, 755, 72, "Supply Air Temp Alarm Low SP"}, + }; //Size of modbus map used in FOR cycles, automatically calculated.