g.mccormick
Lifetime Supporting Member
I have a room (test cell) that I am going to be controlling the temperature of. Longterm the plan is for the space to be able to control temperature from -40-150F. As of right now, no heat is in the space.
What I have for control loops.
1. Space temperature loop.
target = room temperature setpoint
output/command = Value from -50 to 160 that is use as the input to control loop for heater/cooler air out setpoint.
2. DX Evaporator air out loop.
target = air out setpoint from set by command from space temperature loop.
ouput/command = saturation temperature setpoint for evaporator suction pressure.
3. DX Evaporator suction pressure control loop
target = saturation pressure from temperature command out of previous control loop.
output/command = electronic pressure control valve. 4-20MA
4. DX superheat loop
target = 5F superheat
output/command = electronic expansion valve command. 4-20MA
5. Electric heater loop (Note not implemented yet, no actual heater in space)
target = air out setpoint from set by command from space temperature loop.
ouput/command = command to heater scr
Note. There are two dx refrigeration circuits, my plan would be to have both have the same setpoints, but stage the circuits on/off to meet demand.
So my question comes to all of this. How best to handle demand???
I need to figure out a way to handle staging on of cooling units and heater so that both refrigeration circuits and/or heater are not running if not needed.
So I need to have a way to come up with a "cooling command" and " heating command".
I was thinking something like this.
Cooling command:
Min = -50
Max = Room setpoint + 5
Command = ((Max - Space_Temp_Command) / ( Max - Min)) * 100
Example: Space setpoint = 70; Space_Temp_Command (from PID loop 1) = 50
Cooling Command = ((75 - 50)/(75 - -50)) * 100 = 20%
At 20% cooling, I would only need to call for 1 stage.
Heating Command:
Min = Room Setpoint - 5
Max = 160
Command = ((Space_Temp_Command - min)/(max-min))*100
Example:
Space setpoint = 70; Space_Temp_Command (from PID loop 1) = 85
Heating Command = ((85 - 65)/(160-65))*100 = 21
The heating/cooling commands can then be used to stage on/off equipment.
ie. Heater enable on when command goes over 7%, off when command drops below 3%.
DX stage 1, on when command goes over 7%, off when command drops below 3%.
DX stage 2, on when command goes over 60%, off when command drops below 40%.
Any thoughts?
What I have for control loops.
1. Space temperature loop.
target = room temperature setpoint
output/command = Value from -50 to 160 that is use as the input to control loop for heater/cooler air out setpoint.
2. DX Evaporator air out loop.
target = air out setpoint from set by command from space temperature loop.
ouput/command = saturation temperature setpoint for evaporator suction pressure.
3. DX Evaporator suction pressure control loop
target = saturation pressure from temperature command out of previous control loop.
output/command = electronic pressure control valve. 4-20MA
4. DX superheat loop
target = 5F superheat
output/command = electronic expansion valve command. 4-20MA
5. Electric heater loop (Note not implemented yet, no actual heater in space)
target = air out setpoint from set by command from space temperature loop.
ouput/command = command to heater scr
Note. There are two dx refrigeration circuits, my plan would be to have both have the same setpoints, but stage the circuits on/off to meet demand.
So my question comes to all of this. How best to handle demand???
I need to figure out a way to handle staging on of cooling units and heater so that both refrigeration circuits and/or heater are not running if not needed.
So I need to have a way to come up with a "cooling command" and " heating command".
I was thinking something like this.
Cooling command:
Min = -50
Max = Room setpoint + 5
Command = ((Max - Space_Temp_Command) / ( Max - Min)) * 100
Example: Space setpoint = 70; Space_Temp_Command (from PID loop 1) = 50
Cooling Command = ((75 - 50)/(75 - -50)) * 100 = 20%
At 20% cooling, I would only need to call for 1 stage.
Heating Command:
Min = Room Setpoint - 5
Max = 160
Command = ((Space_Temp_Command - min)/(max-min))*100
Example:
Space setpoint = 70; Space_Temp_Command (from PID loop 1) = 85
Heating Command = ((85 - 65)/(160-65))*100 = 21
The heating/cooling commands can then be used to stage on/off equipment.
ie. Heater enable on when command goes over 7%, off when command drops below 3%.
DX stage 1, on when command goes over 7%, off when command drops below 3%.
DX stage 2, on when command goes over 60%, off when command drops below 40%.
Any thoughts?