溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何用Python自制微信遠(yuǎn)程智能溫濕度計(jì)

發(fā)布時(shí)間:2022-01-13 10:39:20 來源:億速云 閱讀:298 作者:iii 欄目:互聯(lián)網(wǎng)科技

這篇“如何用Python自制微信遠(yuǎn)程智能溫濕度計(jì)”文章的知識點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“如何用Python自制微信遠(yuǎn)程智能溫濕度計(jì)”文章吧。

  一、申請微信推送服務(wù)

  能否實(shí)現(xiàn)微信推送服務(wù)的平臺有很多,這里我就不一一解釋了。我選用了「Server醬」,英文名「ServerChan」。你完全可以選用你認(rèn)為比較好用的平臺。

  1.    登入:用GitHub賬號登入網(wǎng)站,點(diǎn)擊進(jìn)入“發(fā)送消息”頁面,就能獲得一個(gè)SCKEY。

  2.    綁定:點(diǎn)擊“微信推送”頁面,掃碼關(guān)注同時(shí)即可完成綁定

  3.    發(fā)消息:往https://sc.ftqq.com/SCKEY.send發(fā)GET請求,就可以在微信里收到消息啦

  二、讓我們開始DIY溫濕度計(jì)

  1、選擇合適的主控板

  更喜歡python編程的我,這里選用支持micropython的TPYBoardv202(esp8266)開發(fā)板。該開發(fā)板能夠直接用python進(jìn)行編程,功能還是比較強(qiáng)大的,甚至可用來作web服務(wù)器。這里我們主要是用其進(jìn)行溫濕度傳感器的控制及網(wǎng)絡(luò)請求。

如何用Python自制微信遠(yuǎn)程智能溫濕度計(jì)

  2、DHT11溫濕度傳感器

  DHT11是常用的溫濕度傳感器,網(wǎng)上可以很輕易就買到。簡單的講,就是可以用這個(gè)傳感器獲取的當(dāng)前環(huán)境的溫度和濕度。

  該傳感器使用非常簡單,有的有3個(gè)引腳,有的有4個(gè)引腳。我們在使用時(shí),只用三個(gè),分別為VCC(電源腳,接5V)、DATA(數(shù)據(jù)引腳)、GND(接地)。

  3、正確的連線方法

  TPYBoardv202與DHT11的具體接線對應(yīng)及實(shí)物圖

TPYBoard v202
DHT11傳感器
+5v
vcc
G5
DATA
GND
GND

如何用Python自制微信遠(yuǎn)程智能溫濕度計(jì)

  三、少不了的編程

  TPYBoardv202主要有兩個(gè)文件來控制,一個(gè)是boot,py,一個(gè)是main.py。我們只需要修改這兩個(gè)文件就可以完成程序的編寫。

  1、編寫boot腳本

import network
import utime
 
pdcn = network.WLAN(network.STA_IF)
pdcn.active(True)
pdcn.connect('wifi賬號', 'wifi密碼')
utime.sleep(5)
if pdcn.isconnected():
    print("WiFi is connected %s."%pdcn.ifconfig()[0])    
else:
    pdcn.active(False)
    utime.sleep(5)
    print("WiFi cannot connect.")

  2、編寫main.py腳本

# coding=utf-8
import urequests
import dht
import machine
from machine import Pin
import time  
 
class AlarmSystem:
    def __init__(self):
        self.d = dht.DHT11(machine.Pin(5))
 
    def dht11(self):
        try:
            self.d.measure()
            return 'Temp:'+str(self.d.temperature())+'°C---Hum:'+str(self.d.humidity())+'%'
    
        except:
            return '0'
 
    def push(self, result):
        title = "TPYBoardv202提示您:注意天氣變化保持健康心情"
        content = 'text='+title+'&'+'desp='+result
        url="https://sc.ftqq.com/你的密鑰.send?%s" % content
        r = urequests.get(url)
        r.close()

p2=Pin(2,Pin.OUT)
a = AlarmSystem()

def SendData():
    p2.value(not p2.value())
    data_= a.dht11()
    if(data_!='0'):
        print(data_)
        a.push(data_)
    else:
        print('GET Data Fail')

if __name__ == '__main__':
    
    while True:
        SendData()
        time.sleep(300)

  四、成果分享

  到這里,工作完成,方糖就會(huì)給你,你就會(huì)看到顯示的溫濕度了。

如何用Python自制微信遠(yuǎn)程智能溫濕度計(jì)

以上就是關(guān)于“如何用Python自制微信遠(yuǎn)程智能溫濕度計(jì)”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI