千家信息网

如何用Python自制微信远程智能温湿度计

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,这篇"如何用Python自制微信远程智能温湿度计"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来
千家信息网最后更新 2024年11月11日如何用Python自制微信远程智能温湿度计

这篇"如何用Python自制微信远程智能温湿度计"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"如何用Python自制微信远程智能温湿度计"文章吧。

  一、申请微信推送服务

  能否实现微信推送服务的平台有很多,这里我就不一一解释了。我选用了「Server酱」,英文名「ServerChan」。你完全可以选用你认为比较好用的平台。

  1. 登入:用GitHub账号登入网站,点击进入"发送消息"页面,就能获得一个SCKEY。

  2. 绑定:点击"微信推送"页面,扫码关注同时即可完成绑定

  3. 发消息:往https://sc.ftqq.com/SCKEY.send发GET请求,就可以在微信里收到消息啦

  二、让我们开始DIY温湿度计

  1、选择合适的主控板

  更喜欢python编程的我,这里选用支持micropython的TPYBoardv202(esp8266)开发板。该开发板能够直接用python进行编程,功能还是比较强大的,甚至可用来作web服务器。这里我们主要是用其进行温湿度传感器的控制及网络请求。

  2、DHT11温湿度传感器

  DHT11是常用的温湿度传感器,网上可以很轻易就买到。简单的讲,就是可以用这个传感器获取的当前环境的温度和湿度。

  该传感器使用非常简单,有的有3个引脚,有的有4个引脚。我们在使用时,只用三个,分别为VCC(电源脚,接5V)、DATA(数据引脚)、GND(接地)。

  3、正确的连线方法

  TPYBoardv202与DHT11的具体接线对应及实物图

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

  三、少不了的编程

  TPYBoardv202主要有两个文件来控制,一个是boot,py,一个是main.py。我们只需要修改这两个文件就可以完成程序的编写。

  1、编写boot脚本

import networkimport 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-8import urequestsimport dhtimport machinefrom machine import Pinimport 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)

  四、成果分享

  到这里,工作完成,方糖就会给你,你就会看到显示的温湿度了。

以上就是关于"如何用Python自制微信远程智能温湿度计"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。

0