树莓派给Aruduino供电,通过PL2303芯片USB转TTL串口通信。检测温室的温度,如果低于19度,就加热。通过串口控制Arduino,Arduino控制继电器打开陶瓷加热灯的开关加热。
Arduino的代码如下:
如果没有明确的要加热,就不加热。通过串口指定需要加热。
接线图如下:
USB转串口PL2303接线:
VCC5V,接Arduino的VIN,给Arduino供电。
GND,接Arduino的GND,供电和通信用。
RX,接Arduino的TX,通信用。
TX,接Arduino的RX,通信用。
温度传感器DHT11接线:
VCC5V,接PI的2引脚(VCC5V)。
GND,接PI的6引脚(Ground)。
DATA,接PI的12引脚(GPIO18,GPIO_GEN1)。
继电器接线:
+,接Arduino的5V,Arduino给继电器供电。
-,接Arduino的GND,接地。
S,信号,接Arduino的3号数字引脚。
采集到温度小于预期时,通过串口给Arduino发送H指令。
代码参考:https://github.com/winlinvip/raspi-tools/blob/master/greenhouse.py
最后的图:
END