Micropython TPYBoard v102 自動澆花實驗

1.系統功能
監測土壤溼度、環境溫度、光照強度
根據當前環境自動澆水,寒冷天氣自動加熱土壤
2.所需元器件
TPYBoard板子1塊
光敏模塊1塊
DS18B20模塊1塊
土壤溼度檢測模塊1塊
杜邦線若干
繼電器2個
3. 接線方式

光敏模塊 TPYBoard v102
VCC 3.3V
GND GND
A0 Y12
土壤溼度檢測模塊 TPYBoard v102
VCC 3.3V
GND GND
A0 Y11
單獨的兩個引腳接到探測板上
DS18B20 TPYBoard v102
VCC 3.3V
GND GND
DO Y10
繼電器模塊1 (控制水閥加溼) TPYBoard v102
VCC VIN
GND GND
IN Y9
COM VIN
NO連接到電水閥

繼電器模塊2 (控制電熱線加熱) TPYBoard v102
VCC
VIN
GND GND
IN Y8
COM連接到220V家庭供電火線
NO連接到加熱線其中一端
加熱線另一端連接到家庭供電零線

圖片描述

接線完畢之後將main.py、boot.py、ds18x20.py、onewire.py導入TPYBoard v102 盤符即可運行。源碼
5.源代碼

from pyb import Pin, ADC
from ds18x20 import DS18X20

gl = ADC(Pin('Y12'))             #300亮-1700暗
sd = ADC(Pin('Y11'))            #1800幹-800溼
wd = DS18X20(Pin('Y10'))
ks = Pin('Y9', Pin.OUT_PP)
jr = Pin('Y8', Pin.OUT_PP)

while True:
       print('\t光照強度:',gl.read(),'\t土壤溼度:',sd.read(),'\t當前溫度:',wd.read_temp())
       pyb.delay(200)
       if gl.read()<=250 :        #陽光充足
              if sd.read()>800 :  #多澆水
                     ks.value(1)
              else :
                     ks.value(0)
       elif  gl.read()>=1300 :  #陽光不足
              if sd.read()>1200 : #少澆水
                     ks.value(1)
              else :
                     ks.value(0)
       else :                                  #陽光一般
              if sd.read()>1000 : #正常澆水
                     ks.value(1)
              else :
                     ks.value(0)
       if wd.read_temp()<18 : #溫度過低
              jr.value(1)
      else :
           jr.value(0)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章