• 新 树莓派4B 温湿度监测 基于debian12的树莓派OS


    前言

    本文旨在完成通过外接温湿度传感器至树莓派使得树莓派不断记录并存储温湿度数据

    这个领域有很多文章,但是部分文章已经缺乏了时效性,在最新系统不适用,本文目前适用

    硬件

    硬件连接

    温湿度传感器常选用DHT11和DHT22,淘宝很多商家,一般买了传感器还会另外送杜邦线,不用另外买线

    网上找DHT11和DHT22的区别,搜到的尽是从底层架构有什么区别之类的,而我觉得很多人最关心的是参数区别

    如下为两者参数,图片取自淘宝telesky店铺,侵权联系作者删除

    DHT11信息                                         DHT22信息

          

    首先就是要连接杜邦线,杜邦线是可以插的很紧不掉的,如果插不进,可以看这个视频

    杜邦线插不紧怎么办?_哔哩哔哩_bilibili

    硬件连接

    dht22有三根要连接的线,vnc电源,连接3.3v或者5v都可,

    data线,随便连接在一个GPIO接口,

    gnd接地线,

    具体可以参照这个网站进行连接

    GPIO 25 at Raspberry Pi GPIO Pinout

    软件

    基于debian12的树莓派系统不能直接全局安装python库,所以我们采用虚拟环境

    1. sudo apt-get update
    2. sudo apt-get install python3-venv python3-pip

    然后创建虚拟环境并且激活

    1. python3 -m venv ~/dht_env
    2. source ~/dht_env/bin/activate

    然后就可以安装python库,具体等会儿缺啥安装啥,理论上要安装如下库

    pip install RPI.GPIO
    pip install adafruit-blinka
    pip install adafruit-circuitpython-dht

    代码层面

    1. import board
    2. import adafruit_dht
    3. dht_device = adafruit_dht.DHT22(board.D25)
    4. try:
    5. temperature = dht_device.temperature
    6. humidity = dht_device.humidity
    7. print("temperature: {:.1f}C humidity: {}%".format(temperature, humidity))
    8. except RuntimeError as e:
    9. print("something wrong:", e)
    10. dht_device.exit()

    至此,已经可以读出数据~

  • 相关阅读:
    Gitee整改之思考
    软件测试技术之如何编写测试用例(5)
    LeetCode·139.单词拆分·递归·记忆化搜索·字典树
    Linux常见的指令
    Python解析MDX词典数据并保存到Excel
    Python教程——多线程
    DNS基础之使用dig查询DNS解析过程
    ts的文字类型
    CVE-2021-42287&CVE-2021-42278 域内提权
    rt-hwwb前端面试题
  • 原文地址:https://blog.csdn.net/m0_63629756/article/details/134655400