使用WLAN接口將溫度和相對濕度發(fā)送到家庭網(wǎng)絡(luò)web服務(wù)器
在本文中,我想利用WLAN接口,為家庭網(wǎng)絡(luò)中的web服務(wù)器提供溫度和相對濕度。但是,我將使用物有所值的DHT20傳感器和帶有SH1106驅(qū)動IC的1.3英寸OLED,以盡量減少重復(fù)。
但首先是樹莓派Pico W的引腳圖,以及樹莓派Pico和Pico W的區(qū)別:
雖然外形尺寸和引腳(很大程度上)保持不變,但布局上的差異很明顯。這在WLAN芯片和用于DEBUG的三個空閑引腳上最為明顯,由于WLAN天線的緣故,它們現(xiàn)在位于芯片的中間。內(nèi)置LED的連接器已經(jīng)更換;稍后會詳細介紹。2.4 GHz無線局域網(wǎng)接口采用英飛凌CYW43439芯片。藍牙尚未實現(xiàn);這需要固件更新,但近期不打算更新。
下載了擴展名為。uf2的最新文件后,Pico被插入計算機的USB端口,并按下BOOTSEL鍵;然后顯示為USB驅(qū)動器RPI-RP2;請看下圖。只需將下載的文件復(fù)制到目錄中。復(fù)制過程完成后,驅(qū)動器消失,并且在tony下將Pico W識別為虛擬COM端口。
對于那些還沒有安裝或更新的人。
目前截至2022年10月:thonny-4.0.1.exe
在Run/Execute選項卡下進行設(shè)置。
像往常一樣,我們首先在命令行(也稱為shell或REPL)中測試“hello world”。
物理計算中的“hello world”是閃爍的LED,我們的第二次嘗試:
在程序中,您可以看到上述內(nèi)置LED的差異。使用簡單的Pico,這是通過引腳25控制的,引腳沒有連接到外部。使用Pico W, LED連接到無線芯片,并通過名稱“LED”進行尋址。
在一切解決之后,我想首先重建J?rn Weise的實驗裝置,然后使用另一個傳感器,以及另一個顯示器。
除了MicroPython模塊機和utime模塊bme280和ssd1306用于0.96英寸OLED。兩者都可以在PyPI上找到,點擊“附加”選項卡下的“管理軟件包…”并在搜索窗口中輸入術(shù)語。選擇時請注意名稱中的“micropython”字樣。
示意圖:
安裝成功,見圖:
現(xiàn)在我首先想把0.96英寸的顯示屏換成1.3英寸的OLED顯示屏。但是這個沒有驅(qū)動IC SSD1306,而是SH1106;PyPI上沒有MicroPython模塊。
該模塊實際上是為ESP8266編寫的,但工作良好。因此,下載ZIP文件,將其解壓為tony下的sh1106.py,并將其安裝在Pico W的lib目錄下。i2c示例程序中Pico W的唯一偏差是實例化期間的一個附加參數(shù),i2c接口的編號:i2c= i2c (0, sda=sda, scl=scl, freq=400000)
當(dāng)實例化顯示時,我必須插入rotate=180:oled = sh1106。SH1106_I2C(128, 64, i2c, None, 0x3c, rotate=180)
有了這個,它馬上就工作了。所以選擇DHT20,而不是昂貴的BME280。
我已經(jīng)在2022年7月的一篇博客文章中使用了DHT20。有趣的是i2c接口,這個組合溫濕度傳感器與DHT11和DHT22不同。PyPI上也沒有為此提供MicroPython模塊。所以我再次在GitHub上搜索。
再次下載ZIP、解壓縮、dht20.py,用thony運行它,并將它保存在Pico W子目錄lib子目錄下。
下面是代碼中的主要新行:
在while循環(huán)中:
現(xiàn)在所缺少的就是把Pico W變成一個大氣數(shù)據(jù)的網(wǎng)絡(luò)服務(wù)器。在互聯(lián)網(wǎng)上進行研究。到目前為止失蹤了。但是樹莓派基金會有兩個例子程序,已經(jīng)被其他博主復(fù)制了:一個簡單的web服務(wù)器,帶有文本顯示和通過內(nèi)部網(wǎng)切換LED,可以在小冊子“用pico-w連接到互聯(lián)網(wǎng)”中找到。
總是需要登錄到家庭WLAN的部分:
在隊列中
請輸入家庭網(wǎng)絡(luò)的SSID和密碼。
作為我項目的基礎(chǔ),我使用示例程序進行文本輸出。在這里,我基本上必須增加第二行的字體大小,以便能夠在智能手機上閱讀文本,并將測量值作為字符串插入。測量值基于HTML行每10秒更新一次。最后我以這個名字創(chuàng)建了這個程序:main.py
在Pico W上,這個程序在Pico W通電時自動啟動。因此,對花園棚或儲藏室的監(jiān)控很容易實現(xiàn)。
結(jié)論:與沒有WLAN的Pico相比,您只需花費不到兩歐元的額外費用,就可以獲得帶有Pico W的多功能微控制器,可以輕松地在家庭WLAN中注冊,因此適合許多自己的智能家居項目。我自己很快就會把它用在我最喜歡的機器人汽車項目上。我不認為會有什么困難;我會回來報告的。
本文編譯自hackster.io