change com
This commit is contained in:
RobertJDavis
2025-12-05 15:43:17 -07:00
parent bcd627f785
commit c5c2b28bf5
5 changed files with 54 additions and 5 deletions

View File

@@ -63,6 +63,48 @@ void updateAlarms(Equipment<ModbusIP>* equipment){
"Alarm Compressor 1B Overload ON", "Alarm Compressor 2B Overload ON"
};
Modbus_Point<ModbusIP>* returnAirTemp = equipment -> getModbus_Point("Return Air Temp");
Modbus_Point<ModbusIP>* supplyAirTemp = equipment -> getModbus_Point("Supply Air Temp");
Modbus_Point<ModbusIP>* 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<ModbusIP>* commandPoint = equipment->getModbus_Point(alarmCommands[i]);

View File

@@ -44,7 +44,7 @@
*/
template<>
RunningState<ModbusIP>::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));

View File

@@ -40,7 +40,7 @@
template<>
StandbyState<ModbusIP>::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));

View File

@@ -23,7 +23,7 @@
#include <ModbusIP_ESP8266.h>
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.