|
|
@ -72,7 +72,7 @@ int32_t WaterCoolingTemperatureControlModule::pri_module_xxx_reg(int32_t param_i |
|
|
|
PROCESS_REG(kreg_water_cooling_tmp_controler_pid_target, REG_GET_FLOAT(m_target_temperature, 0.1), REG_SET_FLOAT(m_target_temperature, 0.1)); |
|
|
|
|
|
|
|
PROCESS_REG(kreg_water_cooling_tmp_controler_pid_nowoutput, REG_GET(m_pidmodule.get_output()), ACTION_NONE); |
|
|
|
PROCESS_REG(kreg_water_cooling_tmp_controler_pid_feedbackval, REG_GET(read_pid_temperature()), ACTION_NONE); |
|
|
|
PROCESS_REG(kreg_water_cooling_tmp_controler_pid_feedbackval, REG_GET(read_pid_temperature_from_upper()), ACTION_NONE); |
|
|
|
|
|
|
|
PROCESS_REG(kreg_water_cooling_tmp_controler_temp0, REG_GET(getTemperatureSensorVal(0) * 10 + 0.5), ACTION_NONE); |
|
|
|
PROCESS_REG(kreg_water_cooling_tmp_controler_temp1, REG_GET(getTemperatureSensorVal(1) * 10 + 0.5), ACTION_NONE); |
|
|
@ -166,7 +166,8 @@ void WaterCoolingTemperatureControlModule::workloop() { |
|
|
|
|
|
|
|
m_thread.sleep(m_cfg.pidcompute_periodms); |
|
|
|
|
|
|
|
float val = read_pid_temperature(); |
|
|
|
float val = read_pid_temperature(); |
|
|
|
m_feedbak_temperature = val; |
|
|
|
|
|
|
|
float error = m_target_temperature - val; |
|
|
|
float out = 0; |
|
|
@ -232,6 +233,13 @@ int32_t WaterCoolingTemperatureControlModule::checkdevice() { |
|
|
|
/*******************************************************************************
|
|
|
|
* BASIC * |
|
|
|
*******************************************************************************/ |
|
|
|
float WaterCoolingTemperatureControlModule::read_pid_temperature_from_upper() { |
|
|
|
if (creg.module_status == 1) { |
|
|
|
return m_feedbak_temperature; |
|
|
|
} else { |
|
|
|
return read_pid_temperature(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
float WaterCoolingTemperatureControlModule::read_pid_temperature() { |
|
|
|
zlock_guard lock(m_temperature_sensor_mutex); |
|
|
|