From d3a28559276a5648c82fbbc507a0fe7d968d2146 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Wed, 16 Aug 2023 17:21:28 +0800 Subject: [PATCH] update --- src/service/disinfection_ctl_service.cpp | 32 ++++++++++++++++++++++---------- src/service/sensor_data_scan.cpp | 25 +++++++++++++------------ src/service/sensor_data_scan.hpp | 4 +--- 3 files changed, 36 insertions(+), 25 deletions(-) diff --git a/src/service/disinfection_ctl_service.cpp b/src/service/disinfection_ctl_service.cpp index aa20997..b38186c 100644 --- a/src/service/disinfection_ctl_service.cpp +++ b/src/service/disinfection_ctl_service.cpp @@ -22,43 +22,49 @@ using namespace std; * */ -#define PRE_HEAT_TIME 60 +#define PRE_HEAT_TIME (5 * 60) -void DisinfectionCtrlService::drainingPump_open() { m_zcanHost->pumpctrl_c1004(1, 300, -300, 1, 20); } -void DisinfectionCtrlService::drainingPump_close() { m_zcanHost->pumpctrl_c1004(1, 300, 0, 1, 20); } +void DisinfectionCtrlService::drainingPump_open() { m_zcanHost->pumpctrl_c1004(2, 100, -300, 1, 20); } +void DisinfectionCtrlService::drainingPump_close() { m_zcanHost->pumpctrl_c1004(2, 100, 0, 1, 20); } -void DisinfectionCtrlService::replenishingFluidsPump_open() { m_zcanHost->pumpctrl_c1004(1, 300, 300, 1, 20); } -void DisinfectionCtrlService::replenishingFluidsPump_close() { m_zcanHost->pumpctrl_c1004(1, 300, 0, 1, 20); } +void DisinfectionCtrlService::replenishingFluidsPump_open() { m_zcanHost->pumpctrl_c1004(2, 100, 300, 1, 20); } +void DisinfectionCtrlService::replenishingFluidsPump_close() { m_zcanHost->pumpctrl_c1004(2, 100, 0, 1, 20); } -void DisinfectionCtrlService::sprayLiquidPump_open() { m_zcanHost->pumpctrl_c1004(1, 300, 200, 1, 10); } -void DisinfectionCtrlService::sprayLiquidPump_close() { m_zcanHost->pumpctrl_c1004(1, 300, 0, 1, 10); } +void DisinfectionCtrlService::sprayLiquidPump_open() { m_zcanHost->pumpctrl_c1004(1, 100, 200, 1, 15); } +void DisinfectionCtrlService::sprayLiquidPump_close() { m_zcanHost->pumpctrl_c1004(1, 100, 0, 1, 15); } void DisinfectionCtrlService::airCompressor(bool val) { if (val) { m_zcanHost->writeio(0, 1); + usleep(500 * 100); m_zcanHost->writeio(1, 1); } else { - m_zcanHost->writeio(0, 0); m_zcanHost->writeio(1, 0); + usleep(500 * 100); + m_zcanHost->writeio(0, 0); } } void DisinfectionCtrlService::blower_setPower(bool val) { if (val) { m_zcanHost->writeio(2, 1); + usleep(500 * 100); m_zcanHost->writeio(3, 1); } else { - m_zcanHost->writeio(2, 0); m_zcanHost->writeio(3, 0); + usleep(500 * 100); + m_zcanHost->writeio(2, 0); } } void DisinfectionCtrlService::heartingPlate_setPower(bool val) { if (val) { m_zcanHost->writeio(4, 1); + usleep(500 * 100); m_zcanHost->writeio(5, 1); } else { - m_zcanHost->writeio(4, 0); m_zcanHost->writeio(5, 0); + usleep(500 * 100); + m_zcanHost->writeio(4, 0); } } @@ -194,6 +200,12 @@ void DisinfectionCtrlService::startReplenishingFluids(int stopatg) { if (nowvolume > stopatg) { break; } + + if (nowvolume > 4500) { + logger->warn("replenishingFluids reach full level {}g", nowvolume); + break; + } + thisThread.sleepForMs(1000); } logger->info("stopReplenishingFluids"); diff --git a/src/service/sensor_data_scan.cpp b/src/service/sensor_data_scan.cpp index 06628cd..f0e9b65 100644 --- a/src/service/sensor_data_scan.cpp +++ b/src/service/sensor_data_scan.cpp @@ -27,11 +27,12 @@ void SensorDataScan::startScan() { i++; if (i % 1000 == 0) { + m_zcanHost->readadc(0, m_adc_0); m_zcanHost->readadc(1, m_adc_1); m_zcanHost->readadc(2, m_adc_2); - m_zcanHost->readadc(3, m_adc_3); - m_zcanHost->readadc(4, m_adc_4); - m_zcanHost->readadc(5, m_adc_5); + // m_zcanHost->readadc(3, m_adc_3); + // m_zcanHost->readadc(4, m_adc_4); + // m_zcanHost->readadc(5, m_adc_5); } if (i % 3000 == 0) { @@ -48,8 +49,8 @@ void SensorDataScan::startScan() { } if (i % 100 == 0) { - m_zcanHost->readio(1, m_waterImmersionSensor1); - m_zcanHost->readio(2, m_waterImmersionSensor2); + // m_zcanHost->readio(1, m_waterImmersionSensor1); + // m_zcanHost->readio(2, m_waterImmersionSensor2); } } })); @@ -57,16 +58,16 @@ void SensorDataScan::startScan() { int SensorDataScan::getAirCompressor_io1() { return m_zcanHost->read_writeio_state_cache(1); } int SensorDataScan::getAirCompressor_io2() { return m_zcanHost->read_writeio_state_cache(2); } -int SensorDataScan::getAirCompressor_currentValue() { return m_adc_1; } +int SensorDataScan::getAirCompressor_currentValue() { return m_adc_0; } int SensorDataScan::getAirBlower_io1() { return m_zcanHost->read_writeio_state_cache(3); } int SensorDataScan::getAirBlower_io2() { return m_zcanHost->read_writeio_state_cache(4); } -int SensorDataScan::getAirBlower_currentValue() { return m_adc_2; } +int SensorDataScan::getAirBlower_currentValue() { return m_adc_1; } // heatingStrip int SensorDataScan::getHeatingStrip_io1() { return m_zcanHost->read_writeio_state_cache(5); } int SensorDataScan::getHeatingStrip_io2() { return m_zcanHost->read_writeio_state_cache(6); } -int SensorDataScan::getHeatingStrip_currentValue() { return m_adc_3; } +int SensorDataScan::getHeatingStrip_currentValue() { return m_adc_2; } int SensorDataScan::getSprinkler_PumpRPM() { return m_zcanHost->pumpctrl_c1004_get_speed_cache(2); } int SensorDataScan::getChargingPump_PumpRPM() { return m_zcanHost->pumpctrl_c1004_get_speed_cache(1); } @@ -75,7 +76,7 @@ int SensorDataScan::getDisinfectantVolume_g() { // kpa; int pa = m_zcanHost->huacheng_pressure_sensor_get_pa(&m_pressure_sensor_data[0]); // m(kg)=2.11*P(kPa) - pa = 1; // TODO 检查传感器异常,则不允许加液 + // pa = 1; // TODO 检查传感器异常,则不允许加液 return 2.11 * pa * 1000; } @@ -89,8 +90,8 @@ SensorDataScan::h2o2sensor_data_t SensorDataScan::getH2O2SenSorData1() { // int16_t temperature1; // °C * 100 0x0102 温度 // int16_t relative_humidity; // %RH * 100 0x0103 相对湿度 data.h2o2 = m_hpp272_data_1.hydrogen_peroxide_volume; - data.humid = m_hpp272_data_1.relative_humidity; - data.temp = m_hpp272_data_1.temperature1; - data.saturation = m_hpp272_data_1.h2o_h2o2_rs; + data.humid = m_hpp272_data_1.relative_humidity / 100; + data.temp = m_hpp272_data_1.temperature1 / 100; + data.saturation = m_hpp272_data_1.h2o_h2o2_rs / 100; return data; } diff --git a/src/service/sensor_data_scan.hpp b/src/service/sensor_data_scan.hpp index 03081cb..21a2f05 100644 --- a/src/service/sensor_data_scan.hpp +++ b/src/service/sensor_data_scan.hpp @@ -49,11 +49,9 @@ class SensorDataScan : public enable_shared_from_this { bool m_waterImmersionSensor1 = false; // 漏液检测 bool m_waterImmersionSensor2 = false; // 仓内液体检测 + int m_adc_0 = 0; // int m_adc_1 = 0; // int m_adc_2 = 0; - int m_adc_3 = 0; - int m_adc_4 = 0; - int m_adc_5 = 0; public: SensorDataScan();