您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“python怎么DIY智能溫控小風(fēng)扇”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“python怎么DIY智能溫控小風(fēng)扇”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。
2.所需元器件
TPYBoard板子一塊
直流電機(jī)一個(gè)
面包板一塊
數(shù)據(jù)線一條
18b20溫度傳感器
三極管9014(NPN)一個(gè)
杜邦線若干(蘿卜學(xué)科編程教育tpyboard。com)
3.學(xué)習(xí)DS18B20的接線方法,檢測(cè)當(dāng)前溫度
先看一下DS18B20針腳含義,如上圖:
TPYBoard的針腳與DS18B20的針腳對(duì)應(yīng)關(guān)系如下:
TPYBoard DS18B20
————————————————
# 3V3 or any Pin => VDD
# any Pin => DO
# GND => GND
還是看不明白的話,直接上針腳編號(hào)
TPYBoard DS18B20
————————————————————————————
3.3v => VDD
GND => GND
Y10 => DO
接線ok后,在MicroPython的源碼目錄中,進(jìn)入drivers\onewire\目錄,然后將目錄下的文件ds18x20.py和onewire.py復(fù)制到PYBFLASH磁盤的根目錄。復(fù)制文件后要安全退出磁盤,然后重新接入,不然找不到文件,即可運(yùn)行main.py文件了,打印溫度,即可用Putty看到當(dāng)前的溫度。(蘿卜學(xué)科編程教育tpyboard。com)
main.py源代碼:
#main.py import pyb from pyb import Pin from ds18x20 import DS18X20 Pin("Y11",Pin.OUT_PP).low()#GND Pin("Y9",Pin.OUT_PP).high()#VCC pyb.delay(100) DQ=DS18X20(Pin('Y10'))#DQ while True: tem = DQ.read_temp() print(tem) pyb.delay(1000)
4.三極管的原理
在這里我們用到三極管的開關(guān)與放大功能,給基極不同電平控制直流電機(jī)電流的通斷,以達(dá)到控制電機(jī)轉(zhuǎn)動(dòng)的目的,根據(jù)三極管特性我們將集電極連接TPYBoard的3.3v,發(fā)射極連接電機(jī)一極,電機(jī)另一極接TPYboard的GND,通過溫度傳感器18B20檢測(cè)溫度,當(dāng)溫度到達(dá)指定溫度時(shí),通過TPYBoard控制三極管基極的電平,驅(qū)動(dòng)直流電機(jī)轉(zhuǎn)動(dòng)。
5.源代碼
我們按照上面的步驟做完以后,然后通電,編寫main.py文件,即可通過溫度控制風(fēng)扇的轉(zhuǎn)動(dòng),具體代碼如下:
#main.py import pyb from pyb import Pin from ds18x20 import DS18X20 Pin("Y9",Pin.OUT_PP).high()#VCC Pin("Y11",Pin.OUT_PP).low()#GND x1 = Pin('X1', Pin.OUT_PP) pyb.delay(100) DQ=DS18X20(Pin('Y10'))#DQ while 1: tem = DQ.read_temp() if tem > 18: x1.value(1) else: x1.value(0)
讀到這里,這篇“python怎么DIY智能溫控小風(fēng)扇”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。