Browse Source

update

master
zhaohe 1 year ago
parent
commit
c48f67a4d3
  1. 18
      components/water_cooling_temperature_control_module/water_cooling_temperature_control_module.cpp
  2. 6
      components/water_cooling_temperature_control_module/water_cooling_temperature_control_module.hpp

18
components/water_cooling_temperature_control_module/water_cooling_temperature_control_module.cpp

@ -49,17 +49,16 @@ void WaterCoolingTemperatureControlModule::createDefaultConfig(config_t* cfg) {
cfg->fanlevel = 90;
cfg->min_fanlevel = 10;
cfg->pumplevel = 100;
cfg->pid_cfg.kp = 10;
cfg->pid_cfg.kp = 50;
cfg->pid_cfg.ki = 0.5;
cfg->pid_cfg.kd = 0;
cfg->pid_cfg.max_output = 100;
cfg->pid_cfg.min_output = -100;
cfg->pid_cfg.max_integral = 200;
cfg->pid_cfg.min_integral = -200;
cfg->pid_cfg.max_integral = 150;
cfg->pid_cfg.min_integral = -150;
cfg->pidcompute_periodms = 1000;
}
int32_t WaterCoolingTemperatureControlModule::module_xxx_reg(int32_t param_id, bool read, int32_t& val) {
int32_t WaterCoolingTemperatureControlModule::_module_xxx_reg(int32_t param_id, bool read, int32_t& val) {
switch (param_id) {
MODULE_COMMON_PROCESS_REG_CB();
PROCESS_REG(kreg_water_cooling_tmp_controler_pid_kp, REG_GET_FLOAT(m_cfg.pid_cfg.kp, 0.01), REG_SET_FLOAT(m_cfg.pid_cfg.kp, 0.01));
@ -84,7 +83,14 @@ int32_t WaterCoolingTemperatureControlModule::module_xxx_reg(int32_t param_id, b
return err::kmodule_not_find_reg;
break;
}
return 0;
}
int32_t WaterCoolingTemperatureControlModule::module_xxx_reg(int32_t param_id, bool read, int32_t& val) {
int32_t ret = _module_xxx_reg(param_id, read, val);
if (ret != 0) return ret;
if (!read) module_active_cfg();
return 0;
}
int32_t WaterCoolingTemperatureControlModule::gettemperature_sensor_state(int32_t& state) {
@ -173,7 +179,7 @@ void WaterCoolingTemperatureControlModule::workloop() {
peltier_set_power_level(out);
i++;
if (i % 10 == 0) {
int32_t fanspeed = prvabs(out) * 1;
int32_t fanspeed = prvabs(out) * 0.7;
if (fanspeed > 100) fanspeed = 100;
if (fanspeed < m_cfg.min_fanlevel) fanspeed = m_cfg.min_fanlevel;
fan_start(fanspeed);

6
components/water_cooling_temperature_control_module/water_cooling_temperature_control_module.hpp

@ -94,8 +94,8 @@ class WaterCoolingTemperatureControlModule : public ZIModule, public ZI_WaterCoo
virtual int32_t temp_controler_enable_log(int32_t enablelog) override;
private:
void workloop();
void workloop();
int32_t _module_xxx_reg(int32_t param_id, bool read, int32_t& val);
int32_t module_xxx_reg(int32_t param_id, bool read, int32_t& val);
int32_t checkdevice();
float read_pid_temperature();
@ -109,7 +109,7 @@ class WaterCoolingTemperatureControlModule : public ZIModule, public ZI_WaterCoo
private:
int32_t gettemperature_sensor_state(int32_t& state);
float getTemperatureSensorVal(int32_t index);
float getTemperatureSensorVal(int32_t index);
};
} // namespace iflytop
Loading…
Cancel
Save