arduino hvac temperature controller
TRANSCRIPT
Arduino HVAC Temperature Controller
Objectives• To create a simulation of a Constant Air Volume Box with PWM
Floating Control (Duct)• To create a temperature controller that will control a simulated CAV
box HVAC unit. • To create a wiring diagram of the operating system.• Incorporate data logging into the system.
Devices and Control Points• Setpoint- User-Set Desired Temperature; Variable in simulation.• Controlled Devices- 12 V Fan and heating coil(s).• Control Point- Duct supply temperature in degrees Celsius.• Differential- Temperature difference in degrees Celsius between the
setpoint and the sensor temperature in the duct.• Controlled Variable- Temperature the sensor reads after coil in the
simulated CAV box duct.
Single Line Diagram
SD
C
ard
Display and Control unit
Ardruino
HeatingAnd Fan
Control
Ardruino
Display And
Data Logging Control
120V AcTo
12V DCAdapter
Computer
SD CardReader
Temperature Sensor, Heating and Fan Control Line
Display and Data Logging Control Line
USB
USB
Relay Board
TemperatureSensor
Heating CoilFan
Duct Unit
Arduino Code Explanations“Power” Code:
Arduino Code Explanationscon’t.
“Fan Code”
Arduino Code Explanationscon’t.
“Heat” Code:
Arduino Code Explanationscon’t.
“Temperature Sensor” Code:
Arduino Code Explanationscon’t
“Setpoint” Code:
Arduino Code Explanationscon’t
“Duty Cycle” Code:Example: • If ∆T > 10°C, Relay Closed for 10/10 seconds Coil Heating for 10/10 seconds. • If ∆T > 5°C, Relay Closed for 5/10 seconds, Coil Heating for 5/10 seconds. • If ∆T = 0°C, Relay Closed for 0/10 seconds, Coil Heating for 0/10 seconds.
Flow ChartPower Button
Fan Switch
Heat Coil Switch
Heat Delay
Coil Duty Cycle
SetpointTemperature Sensor
ON
ON
ON
ON ΔT
OFF
OFF
OFF
°C°C
Datalog Button
Data SD CARD
ON
OFF
Fan Knob
Fan Speed
0%-100%
Wiring DiagramDisplay and Control unit
LCD Display
Power Button
Pot Dial
LED’s
Menu Button
Fan Switch Heat Switch
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
“Heating”Arduino UNO
+5VGND
USB
A0A1A2A3A4A5 D0
D1D2D3D4D5D6D7D8D9
D10D11D12D13
“LCD Display”Arduino UNO
+5VGND
USB
A0A1A2A3A4A5 D0
D1D2D3D4D5D6D7D8D9
D10D11D12D1312V
DC
12
34
56
78
910
1516
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
All 220 Ohm
1112
1314
Datalog Button
220 Ohm
8
7
8
7
8
7
10k Ohm
6 5
6
5
6
5
10k Ohm
10k Ohm
4
3
2
1
4
3
2
1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
220 Ohm
Temperature Sensor
1
2
3
1
2
3
1
2
1
2
10k Ohm
GN
DIN
4IN
3IN
2IN
1N
OC
OM
NC
NO
CO
MN
C
NO
CO
MN
C
NO
CO
MN
C
R4 R3 R2 R1
Relay Board
FanHeat xxx xxx
Heating Coil Fan
24VDC12VDC
Connection from LED’s to Arduino Board
Connection from LED’s to Arduino Board
Problems Encountered• Cooling system was extremely hard to simulate and replicate in a
small scale simulation, so we chose not to implement one. • Arduino voltages and currents were sometimes not sufficient for the
simulation so alternative sources of power were needed.• Staging the fan speed and heating coil together.
Frying an Arduino Board + Wifi Shield
• The 12V line that was supplying power to the fan was live during a test; it touched a chip on one of the Wifi-Shields.
• The USB connection from both the Shield + connected Arduino Board was instantly lost, never to be regained…
• Good Lesson for working with 5V electronics: NEVER HAVE LIVE 12V LINES NEAR THE COMPONENTS!