0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样使用树莓派读取传感器上的温度和湿度

454398 来源:wv 2019-10-10 11:10 次阅读

步骤1:连接

EzTemp使用串行端口在您的Raspberry Pi上进行通信

确定Raspberry Pi上的串行引脚。然后将:

RPi GND连接到EzTemp GND。

RPi Tx到EzTemp Rx。

RPi Rx到EzTemp Tx。

RPi 3.3V至EzTemp 3.3V。

请注意,Tx引脚必须连接到Rx引脚,反之亦然。

现在您可以使用EzTemp!

[您可以在Tindie上获得EzTemp]

步骤2:禁用串行控制台

默认情况下,Raspberry Pi使用串行端口作为外壳程序。正如MarcR在评论中所指出的(感谢提示),我们需要禁用串行控制台才能使用EzTemp。

方法1:raspi-config脚本

最简单的方法通过运行raspi-config脚本来禁用串行控制台。打开外壳并键入:

sudo raspi-config

它将显示一个菜单,只需转到 8 Advanced Options》 A7 Serial ,然后选择 否 。

现在重新启动Pi并转到下一步。

方法2:自动脚本

我们可以使用 rpi-serial-console 脚本禁用和启用串行控制台。要安装它,请打开外壳并键入:

sudo wget https://raw.githubusercontent.com/lurch/rpi-serial-console/master/rpi-serial-console -O /usr/bin/rpi-serial-console && sudo chmod +x /usr/bin/rpi-serial-console

要显示当前是否启用了串行控制台,只需运行:

rpi-serial-console status

To禁用串行控制台,只需运行:

sudo rpi-serial-console disable

要启用串行控制台,只需运行:

sudo rpi-serial-console enable

在启用或禁用串行控制台后,您可以

方法3:手动

然后用您喜欢的编辑器打开此文件:

sudo nano /boot/cmdline.txt

它的内容应该是这样的:

dwc_otg.lpm_enable=0 console=tty1 console=ttyAMA0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

删除对ttyAMA0的任何引用,得到这样的内容:

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

保存更改,然后打开inittab:

sudo nano /etc/inittab

在文件末尾,注释掉以下行:

T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

重新启动Pi并转到下一步。

[您可以在Tindie上获得EzTemp]

步骤3:下载示例脚本

在Raspberry Pi上,您必须下载此脚本。您可以打开外壳并输入以下内容:

wget https://raw.githubusercontent.com/CAIMANICS/EzTempRH-for-Raspberry-Pi/master/software/EzTempRH.py

现在运行脚本输入:

python EzTempRH.py

就是这样!您正在运行EzTemp。

EzTemp&RH build 2

Temperature: 24.0C

Humidity: 48.0%

External: 1018 / 2048 counts

Version: 2

让我们看看如何在程序中使用它。

[您可以在Tindie上获得EzTemp]

第4步:修补程序

在这里,我们将分析脚本的各个部分,以便您可以理解它,并针对项目进行修改

首先,我们需要打开串行端口。该脚本使用PySerial模块执行此操作。

import serial

ser = serial.Serial(‘/dev/ttyAMA0’, 9600, timeout=1)

现在,让我们在传感器中查询构建值。这是一个静态值,用于标识EzTemp的版本。

首先,我们需要向EzTemp发送命令‘v’:

ser.write(“v”)

构建值是2字节的值,因此我们应该期望EzTemp提供4字节(1字节回声+ 2字节构建+ 1字节校验和)的响应。现在,读取响应:

s = ser.read(4)

尽管构建标识符是2字节的值,但数据是以单独的字节接收的。要“重构”它,我们必须将最高有效字节向左移8位,然后添加最低有效字节。这样,我们可以正确地恢复2字节的字段:

version = (ord(s[1]) 《《 8) + ord(s[2])

每次从EzTemp收到2字节的值时,都可以使用上面的句子。

最后一行此块的代码只是在屏幕上打印结果:

print ‘EzTemp&RH build ’ + str(version)

脚本的其余部分从EzTemp中查询传感器值相同。让我们以温度值为例:

ser.write(“d”)

s = ser.read(4)

temperature = (ord(s[1]) 《《 8) + ord(s[2])

print‘Temperature:’+ str(1.0 * temperature/10)+‘C’

在这种情况下,我们使用命令“ d”以摄氏0.1度的精度查询温度。如您所见,响应的捕获非常相似。区别在于如何处理返回的值。

当我们以0.1精度查询温度或任何其他参数时,数据将以2个字节的整数形式接收,占该值的十分之一。也就是说,如果温度为21.5ºC,则EzTemp会收到值215,并且用户脚本必须除以10才能获得实际温度。

如果不需要,所有值都具有整数精度命令。小数点。使用这些命令简化了读取和处理返回数据的过程。检查数据表中完整的命令列表。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2554

    文章

    51655

    浏览量

    758235
  • 树莓派
    +关注

    关注

    117

    文章

    1713

    浏览量

    106051
收藏 人收藏

    评论

    相关推荐

    树莓传感器使用方法 树莓 Raspberry Pi 4优缺点

    开发和物联网应用。以下是一些基本的树莓传感器使用方法: 1. 连接传感器 GPIO引脚 :树莓
    的头像 发表于 12-06 10:35 1099次阅读

    温度传感器湿度传感器的区别

    在环境监测和控制领域,温度湿度是两个非常重要的参数。它们不仅影响着人类的舒适度,还对工业生产、农业生产、科学研究等多个领域有着深远的影响。为了准确监测和控制这些参数,我们通常会使用专门的传感器设备
    的头像 发表于 11-22 09:31 551次阅读

    树莓gpio有什么用,树莓gpio接口及编程方法

    /Output,通用输入/输出)是树莓提供的一组可编程的引脚,是树莓与外部世界进行交互的重要桥梁。通过GPIO,用户可以控制外部电路,读取
    的头像 发表于 10-22 18:09 1491次阅读

    湿度传感器种类及原理的优劣分析

    湿度传感器是一种能够感知并测量环境中温度湿度变化的设备,它们在环境监测、气象观测、农业、工业生产、智能家居等多个领域发挥着重要作用。下面将对温湿
    的头像 发表于 10-21 15:05 1306次阅读

    湿度传感器是什么类型的传感器

    湿度传感器是一种能够实时监测和记录环境中温度湿度变化的设备或装置。这类传感器广泛应用于环境监测、气象观测、农业、工业生产、仓储管理、智能
    的头像 发表于 10-21 14:53 776次阅读

    dht11温湿度传感器工作原理介绍

    。温湿度是环境监测中最基本的参数之一。DHT11传感器因其低成本、易于使用和相对较高的精度而受到广泛欢迎。本文将详细介绍DHT11传感器的工作原理,包括其内部结构、信号传输方式以及如何读取
    的头像 发表于 10-21 09:47 3397次阅读

    补偿HVAC系统中的温度湿度传感器

    电子发烧友网站提供《补偿HVAC系统中的温度湿度传感器.pdf》资料免费下载
    发表于 09-23 11:35 0次下载
    补偿HVAC系统中的<b class='flag-5'>温度</b>和<b class='flag-5'>湿度</b><b class='flag-5'>传感器</b>

    dht11温度传感器的原理及应用

    DHT11是一种广泛使用的数字温湿度传感器,它能够测量温度和相对湿度。这种传感器因其低成本、易于使用和相对较高的准确性而受到欢迎。 DHT1
    的头像 发表于 09-03 17:28 2682次阅读

    dht22温度传感器的原理及应用

    DHT22是一款广泛使用的数字温湿度传感器,它结合了温度湿度的测量功能,并且以数字信号的形式输出,这使得它在各种环境监测和控制系统中非常受欢迎。 DHT22
    的头像 发表于 09-03 16:06 2074次阅读

    树莓和单片机的优缺点是什么

    )接口,树莓可以连接各种传感器、执行和其他外围设备。 易于编程 :树莓支持多种编程语言,如
    的头像 发表于 08-30 18:21 2090次阅读

    湿度传感器怎么调试

    湿度传感器是一种广泛应用于工业、农业、气象、科研等领域的传感器,用于测量环境的温度湿度。在实际应用中,温
    的头像 发表于 08-19 15:04 1293次阅读

    湿度传感器技术参数有哪些

    湿度传感器是一种用于测量环境温度湿度传感器。它们广泛应用于气象、农业、工业、医疗、智能家居等领域。本文将介绍温
    的头像 发表于 08-19 15:03 1648次阅读

    树莓5,Raspberry Pi 5 评测

    来说,多了大约1瓦的功耗,但获得了更强大的计算能力。在没有散热系统的情况下,树莓4的压力测试温度更低一些,而在加装了散热之后,树莓
    发表于 06-19 14:51

    湿度传感器测量单片机

    湿度对于确保人类居住的舒适空间非常重要。空调通过控制温度湿度来创造舒适的环境。湿度传感器在控制空调湿度
    的头像 发表于 05-13 16:25 493次阅读

    湿度传感器的类型与设计技巧

    传感空气中湿度变化的[湿度传感器](Humidity Sensor),像是气象观测、农业、工业制程、楼宇管理、医疗设备、食品和制药业等领域,便经常使用
    的头像 发表于 05-05 10:21 2890次阅读
    <b class='flag-5'>湿度</b><b class='flag-5'>传感器</b>的类型与设计技巧