日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

output怎么用_用树莓派实现室内温度监控

發布時間:2023/12/13 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 output怎么用_用树莓派实现室内温度监控 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

樹莓派加上溫度傳感器實現室內溫度監控。可用于家庭,轎車,工業,農業 等許多方面。可做溫度預警,自動降溫等操作。各位小伙伴可自行腦補發揮。

1.硬件準備

a.樹莓派(Raspberry Pi)一個

b.DS18B20溫度傳感器一個

c.4.7kΩ電阻一個 或 DS18B20模塊一個

d.杜邦線(雙頭母)

2.組裝(如圖)

按照例圖接好線 組裝完成以后,確認硬件接線是否正確并生效。首先使用命令升級內核,命令如下:

apt-get update apt-get upgrade

打開配置文件 sudo nano /boot/config.txt 在最后一行手動添加

dtoverlay=w1-gpio-pullup,gpiopin=4,保存并重啟樹莓派。

確認設備是否生效

sudo modprobe w1-gpio sudo modprobe w1-therm cd /sys/bus/w1/devices/ ls

顯示結果:

pi@raspberrypi:~$ cd /sys/bus/w1/devices/ pi@raspberrypi: /sys/bus/w1/devices$ ls 28-00000494cb79 w1_bus_master1

查看當前溫度:

cd 28-00000494cb79 cat w1_slave

顯示結果:

70 01 4b 46 7f ff 10 10 e1 : crc=e1 YES 70 01 4b 46 7f ff 10 10 e1 t=25000

第二行的t=23000就是當前的溫度值,要換算成攝氏度,除以1000,即當前溫度為

25000/1000=25攝氏度。

3.用python讀取溫度值

#/home/pi/temperature.py #打開溫度傳感器文件 tfile = open("/sys/bus/w1/devices/28-00000494cb79/w1_slave") #讀取文件所有內容 text = tfile.read() #關閉文件 tfile.close() #用換行符分割字符串成數組,并取第二行 secondline = text.split("n")[1] #用空格分割字符串成數組,并取最后一個,即t=23000 temperaturedata = secondline.split(" ")[9] #取t=后面的數值,并轉換為浮點型 temperature = float(temperaturedata[2:]) #轉換單位為攝氏度 temperature = temperature / 1000 #打印值 print temperature

將以上代碼文件存放:/home/pi/temperature.py 命令行運行代碼。
python /home/pi/temperature.py 就可得出結果數值

4.數據上報物聯網平臺

yeelink是國內比較知名的免費物聯網數據平臺,國外有COSM(https://cosm.com)。注冊yeelink 賬號并添加設備和傳感器。
修改剛剛寫好的 Python 文件 ,將溫度值用JSON格式保存到一個文本文件。

#/home/pi/temperature.py #打開溫度傳感器文件 tfile = open("/sys/bus/w1/devices/28-00000494cb79/w1_slave") #讀取文件所有內容 text = tfile.read() #關閉文件 tfile.close() #用換行符分割字符串成數組,并取第二行 secondline = text.split("n")[1] #用空格分割字符串成數組,并取最后一個,即t=23000 temperaturedata = secondline.split(" ")[9] #取t=后面的數值,并轉換為浮點型 temperature = float(temperaturedata[2:]) #轉換單位為攝氏度 temperature = temperature / 1000 #拼接API 所需json數據 res = '{"value":%f}' %temperature #打開創建文件,將溫度值寫入:/home/pi/datafile.txt output = open('/home/pi/datafile.txt', 'w') #寫入數據 output.write(res) #關閉文件 output.close

新增yeelink.sh腳本,文件位置:/home/pi/yeelink.sh ,內容如下:

sudo python /home/pi/temperature.py curl --request POST --data-binary @"/home/pi/datafile.txt" --header "U-ApiKey:XXXXXXXXXXXXXXXX" http://api.yeelink.net/v1.0/device/1969/sensor/2533/datapoints

將U-ApiKey:XXXXXXXXXXXXXXXX替換為自已賬戶的API Key。
后面的URL也需要替換為自己申請的傳感器URL。

添加到計劃任務

#為腳本增加可執行權限 sudo chmod +x yeelink.sh #將腳本加入cronjob(計劃任務) sudo crontab -e #在cornjob文件中添加下面一行,并保存(表示20分鐘執行一下腳本,時間可自行修改) */20 * * * * /home/pi/yeelink.sh

這樣就好20分鐘講溫度數據上傳到 yeelink 物聯網平臺,然后就可以在個人頁面 看到數據變化曲線了。當然你也可以自己在樹莓派上自己做頁面,做曲線圖分析數據及其他功能。這個就要靠各位自己發揮想象了。嘿嘿~~

關注一下,更多精彩,不容錯過!

總結

以上是生活随笔為你收集整理的output怎么用_用树莓派实现室内温度监控的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。