ESP32 485温湿压、噪声4合1传感器测试
ESP32 485温湿压、噪声4合1传感器测试
- 材料及接线
- 示例程序
气象站有许多485传感器(毕竟工业级传感器放到外面还是很放心的。)传感器多了接线就不方便,所以买了一个4和1的传感器来测试。此传感器可以测温度,湿度,气压和噪音。我们一起来玩玩吧。
RS-485仅是一个电气标准,描述了接口的物理层,像协议、时序、串行或并行数据以及链路全部由设计者或更高层协议定义。
RS-485定义的是使用平衡(也称作差分)多点传输线的驱动器(driver)和接收器(receiver)的电气特性。
材料及接线
ESP32
单片机TTL转RS485模块
接线说明
开发板 | TTL转RS485模块 |
---|---|
22 | TXD |
23 | RXD |
5v | VCC |
GND | GND |
485温湿压、噪声4合1传感器
温湿压、噪声
- 技术指标
·供电:DC12V
·工作环境:-40~80℃,湿度≤100%无凝露
·通信接口:RS485
·工作电流:4mA@DC12V
·最短数据间隔:0.5S
·壳体材料:高分子工程塑料 - 传感器参数
参数 | 测量范围 | 分辨率 | 精度 |
---|---|---|---|
温度 | -40—80℃ | 0.1℃ | ±0.3℃ |
湿度 | 0-100%RH | 0.1%RH | ±3.0 RH |
气压 | 30—110kPa | 0.01Kpa | ±0.02Kpa |
噪声 | 30—120dB | 0.1dB | ±1.5dB |
接线说明
TTL转RS485模块 | 4合1传感器 | 开发板 |
---|---|---|
A+ | TXD_A 黄线 | |
B- | RXD_B 绿线 | |
红-12V外接电源 | ||
蓝-GND 外接电源 |
PS:基本485的接线都一样了
示例程序
这个传感器的地址是一样的哈,默认102(0x66)
寄存器地址(十六进制) | 参数名称 | 备注 |
---|---|---|
0x00 | 温度 | 读取数值/100 |
0x01 | 湿度 | 读取数值/100 |
0x02 | 大气压 | Uint16 读取数值/100 |
0x03 | 噪声 | 读取数值/10 |
0x04 | 地址 | 地址范围:0X01-0XFF默认地址0x66(102) |
0x05 | 波特率 | 0x01:4800 - 0x02:9600- 0x03:56000-0x04:115200 |
地址相同我们改寄存器地址。比如我们来测一下噪音试试,修改寄存器低位就行
from machine import UART
import timeuart= UART(2, baudrate=9600, bits=8, parity=None, rx=22,tx=23, stop=1, timeout=100) barray = bytearray([0x66,0x03,0x00,0x03,0x00, 0x01 ,0x7c ,0x1d]) #问询帧while True:uart.write(barray)time.sleep(1)#print(uart.read()) if(uart.any()):u2by=uart.read() # 返回的是答应帧的内容aa=u2byprint(aa)zaoyin10 = int.from_bytes(aa[3:5],'big') # 风速zaoyin=zaoyin10/10 #实际值得10倍,要除以10print(zaoyin,"dB")
串口输出噪音,那么OK了 把值全读出来吧
from machine import UART
import timeuart= UART(2, baudrate=9600, bits=8, parity=None, rx=22,tx=23, stop=1, timeout=100) barray0 = bytearray([0x66,0x03,0x00,0x00,0x00, 0x01 ,0x8c ,0x1d]) #温度
barray1 = bytearray([0x66,0x03,0x00,0x01,0x00, 0x01 ,0xdd ,0xdd]) #湿度
barray2 = bytearray([0x66,0x03,0x00,0x02,0x00, 0x01 ,0x2d ,0xdd]) #气压
barray3 = bytearray([0x66,0x03,0x00,0x03,0x00, 0x01 ,0x7c ,0x1d]) #噪音dict={} # 建立一个空字典
dict["tem"]=barray0
dict["hum"]=barray1
dict["bpre"]=barray2
dict["noise"]=barray3
while True:for key in dict: # 遍历这个字典uart.write(dict[key])time.sleep(5)#print(uart.read()) if(uart.any()):u2by=uart.read() # 返回的是答应帧的内容aa=u2by##print(aa)fio = int.from_bytes(aa[3:5],'big') # 4和1传感器度数#print(key)if key == "tem":tem=fio/100print("当前%s : %s 度"%(key,tem))if key == "hum":hum=fio/100print("当前%s is: 百分之%s "%(key,hum))if key == "bpre":bpre=fio/100print("当前%s is: %s 帕斯卡"%(key,bpre))if key == "noise":noise=fio/10print("当前%s is: %s 分贝"%(key,noise))
# 为了测试方便看,中英文混搭,自己写尤其是用到项目上不要这样写,尽量用英文
效果如下:还是很舒服的。。
ESP32 485温湿压、噪声4合1传感器测试相关推荐
- 基于Modbus RTU 485通信协议实现对PH、溶解氧传感器的数据采集
modbus rtu 485协议采用的是一主多从方式通信,主机是普中的stm32f103zet6开发板,从机是传感器.代码已经在实物上测试通过,并且也用modbus精灵测试通过了.如果你没有stm32 ...
- 软件测试面试合集,测试/测试开发岗面经,看完还不怕找不到工作
一面(30min-1h) 主要考察对测试的理解以及计算机基础.算法与逻辑思维. 自我介绍 你介绍的决定接下来问的,提前打个草稿很重要: 项目经历 计算机基础 包括Linux命令.数据库与SQL.C++ ...
- ESP32 触摸传感器应用方案简介
ESP32 触摸传感器应用方案简介 ESP32 不仅提供核心的 Wi-Fi 和蓝牙功能,还集成了丰富的外设,不需要额外的外部元器件即可实现应用,比如,ESP32 支持具有 10 个触摸通道的触摸传感器 ...
- 关于高压开关柜在线测温方案的应用探讨
王兰 (安科瑞电气股份有限公司 上海嘉定 201801) 摘要:全封闭式高压开关柜在配电网中大量使用,运行可靠性得以大幅提高,由于高压开关柜全封闭的特点及无人值守运行模式给日常巡视工作带来了困难,尤其 ...
- esp32 io速度_Adafruit HUZZAH32-ESP32Feather的说明
概述 是的,是您一直在等待的羽毛!HUZZAH32是我们基于ESP32的Feather,使用官方WROOM32模块制成.我们打包了您喜欢的所有有关Feathers的东西:内置USB到串行转换器,自动引 ...
- 基于FPGA的分布式拉曼光纤测温控制系统
摘要:本文首先对分布式拉曼光纤测温技术的原理进行了简要的介绍,分析了系统的主要结构.在集成的拉曼测温模块的基础上,使用Cyclone IV系列的FPGA作为后端数据采集控制模块的主要控制模块,进行设计 ...
- 基于ESP32+AMG8833+微信小程序的可联网红外线感应仪
背景: 在新冠疫情的时代大背景之下,保持安全距离,避免密集接触是环境所致,同时测量体温也是出入公共场合不可或缺的一环,所以实行非接触测温有很大的必要性. 本项目开发了一款在Arduino开发环境下基于 ...
- MicroPython开发ESP32入门笔记 -- 蓝牙篇
文章目录 前言 一. ESP32 和 Micropython 简介 二.蓝牙模组通讯原理简介 三.手机端和ESP32蓝牙通讯 1. ESP32蓝牙呼吸灯代码 2. 手机端准备 总结 前言 博主之前学习 ...
- 深度学习机器学习理论知识:范数、稀疏与过拟合合集(2)有监督模型下的过拟合与正则化加入后缓解过拟合的原理
范数.稀疏与过拟合合集(1)范数的定义与常用范数介绍 范数.稀疏与过拟合合集(2)有监督模型下的过拟合与正则化加入后缓解过拟合的原理 范数.稀疏与过拟合合集(3)范数与稀疏化的原理.L0L1L2范数的 ...
最新文章
- Java访问权限(详尽版)
- chrome浏览器模拟手机 地理定位
- 计算机视觉与深度学习 | 激光雷达点云配准与拼接(基于ICP算法):附matlab源代码
- 电容屏物体识别_兆易创新的传感器布局:电容/光学/超声指纹/ToF全面发力
- 统计车牌识别里面各个lable 的数量
- RHEL4下刻录机使用--终端图形化方式
- 论文笔记_S2D.39_2015-ICCV-条件随机场作为递归神经网络(CRF-RNN)
- GJB438C相比438B在文档种类上的变化
- java jbutton设置位置_java-将JButton设置为另一个JButton的位置
- Photoshop DPI缩放比例问题
- 手机不能打电话没有信号无服务器,手机信号故障排除方法
- youtube下载视屏和字幕办法
- html5 img圆角,用 CSS3 给 图片添加圆角
- Requests 库 | 不可胜数的 Python 第三方库
- Win10应用商店无法联网
- SDUT 2084 DOTA-人王之战(博弈论)
- 怎么用html把字写到图片上,用HTML代码在图片上写字
- 卧槽!百度网盘宣布 VIP 开放免费领取!亲测有效!!
- 团队管理2 | 管理的天时、地利、人和
- 树莓派4上手(无显示屏)
热门文章
- STM32自定义printf功能方法
- layui之 给checkbox添加点击事件
- 【通信原理】复习笔记——模拟调制系统
- 德生PL-380音量失灵问题
- PCL代码经典赏析七:PCL 点云特征描述与提取
- 计算机毕设(附源码)JAVA-SSM基于java旅游信息分享网站
- mac 10.13 php5,macOS 10.13下载-macOS 10.13正式版下载 V10.13.6-PC6苹果网
- CTO丢给我《技术人员提高情商的18条军规》:再怼业务方,自己看着办!
- 小程序开发API之设置和获取剪切板内容wx.setClipboardData、wx.getClipboardData
- 基于E220-400T30D模块实现简单的Lora无线通信