ESP32 485风速

2023-12-23 01:41
文章标签 esp32 485 风速

本文主要是介绍ESP32 485风速,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ESP32 485风速

  • 材料及接线
  • 示例程序
    • 获取风速
    • 风级提醒

气象站基础呀

RS-485仅是一个电气标准,描述了接口的物理层,像协议、时序、串行或并行数据以及链路全部由设计者或更高层协议定义。
RS-485定义的是使用平衡(也称作差分)多点传输线的驱动器(driver)和接收器(receiver)的电气特性。


材料及接线

ESP32在这里插入图片描述
单片机TTL转RS485模块
在这里插入图片描述
接线说明

开发板TTL转RS485模块
22TXD
23RXD
5vVCC
GNDGND

485风速

采用工业级芯片,高精度进口光照传感器。采用RS485硬件接口,协议层兼容标准的工业Modbus-Rtu协议。
被广泛应用于温室、环境保护、气象站、船舶、码头、养殖等环境的风速测量。

在这里插入图片描述

在这里插入图片描述

接线说明

TTL转RS485模块485风速开发板
A+TXD_A 绿线
B-RXD_B 蓝线
V+ 棕线外接12V适配器电,接开发板没用
GND 黑线外接12V适配器的地线,接开发板没用

PS:基本485的接线都一样了

示例程序

获取风速

量程:0-70m/s,分辨率 0.1m/s
在这里插入图片描述


from machine import UART
#ESP32可以映射引脚,初始化的时候设置就行,串口号一般设置成2(0和1尽量别用。)
import time
uart= UART(2, baudrate=4800, bits=8, parity=None, rx=22,tx=23, stop=1, timeout=100) 
barray = bytearray([0x01,0x03,0x00,0x00,0x00, 0x01 ,0x84 ,0x0A])  #问询帧while True:uart.write(barray)time.sleep(1)#print(uart.read()) if(uart.any()):u2by=uart.read()        # 返回的是答应帧的内容aa=u2byprint(aa)fs10 = int.from_bytes(aa[3:5],'big')  # 风速fs=fs10/10   #实际值得10倍,要除以10print(fs,"m/s")

串口输出风速值

b'\x01\x03\x02\x00\x00\xb8D'
0.0 m/s
b'\x01\x03\x02\x00\x00\xb8D'
0.0 m/s
b'\x01\x03\x02\x00\x00\xb8D'
0.0 m/s
b'\x01\x03\x02\x00\x00\xb8D'
0.0 m/s
b'\x01\x03\x02\x00\x01y\x84'
0.1 m/s
b'\x01\x03\x02\x00\x18\xb8N'
2.4 m/s
b'\x01\x03\x02\x00\x18\xb8N'
2.4 m/s
b'\x01\x03\x02\x00%y\x9f'
3.7 m/s
b'\x01\x03\x02\x00%y\x9f'
3.7 m/s
b'\x01\x03\x02\x00.8X'
4.6 m/s
b'\x01\x03\x02\x000\xb8P'

风级提醒

相关知识,风速对应的风级。

风级名称风速m/s
0无风0.0-0.2
1软风0.3-1.5
2清风1.6-3.3
3微风3.4-5.4
4和风5.5-7.9
5劲风8.0-10.7
6强风10.8-13.8
7疾风13.9-17.1
8大风17.2-20.7
9烈风20.8-24.4
10狂风24.5-28.4
11暴风28.5-32.6
12飓风>32.6

根据上表,我们可以做一个风级提醒了

if 0.0<=fs<0.2:print:("0级:当前无风,无事发生")
elif 0.3<fs<1.5:print("1级:软风哦")...# 。

懂我意思吧,案例如下

from machine import UART
#ESP32可以映射引脚,初始化的时候设置就行,串口号一般设置成2(0和1尽量别用。)
import time
uart= UART(2, baudrate=4800, bits=8, parity=None, rx=22,tx=23, stop=1, timeout=100) 
barray = bytearray([0x01,0x03,0x00,0x00,0x00, 0x01 ,0x84 ,0x0A])  #问询帧while True:uart.write(barray)time.sleep(1)#print(uart.read()) if(uart.any()):u2by=uart.read()        # 返回的是答应帧的内容aa=u2by#print(aa)fs10 = int.from_bytes(aa[3:5],'big')  # 土壤湿度fs=fs10/10print(fs,"m/s")if 0.0<=fs<0.2:print("无事发生")elif 0.3<fs<1.5:print("软风哦")#...else:print("大风,大风")
无事发生
0.0 m/s
无事发生
0.4 m/s
软风哦
1.2 m/s
软风哦
1.2 m/s
软风哦
0.7 m/s
软风哦
0.7 m/s
软风哦
1.4 m/s
软风哦
3.2 m/s
大风,大风
3.2 m/s
大风,大风
1.9 m/s
大风,大风

这篇关于ESP32 485风速的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/526282

相关文章

WIN11 ESP32 IDF + VSCODE 环境搭建[教程向]

前言 目录 前言 安装ESP32-IDF VSCODE插件安装 编译测试 很多时候我们想学习一门新的技能,需要使用全新的开发环境,很多时候我们会在安装环境这个环节卡住很久,这里简单介绍一下ESP32+VSCODE环境搭建。 安装ESP32-IDF https://dl.espressif.cn/dl/esp-idf/?idf=4.4 直接复制上面链接,进入idf下载界面。

LCP 485. 最大连续 1 的个数[lleetcode -11]

从今天起,我们的算法开始研究搜索,首先就是DFS深度优先搜索(depth-first seach,DFS)在搜索到一个新的节点时,立即对该新节点进行遍 历;因此遍历需要用先入后出的栈来实现,也可以通过与栈等价的递归来实现。对于树结构而言, 由于总是对新节点调用遍历,因此看起来是向着“深”的方向前进。 下面是一个一维的DFS算法 LCP 485. 最大连续 1 的个数 给定一个二进制数组 nu

Class4——Esp32|Thonny两种方式同过电脑控制LED灯,路由器与电脑自带热点连接ESP32

上一节我们通过路由器和设备创建了连接,不懂可按上节配置 Class3——Esp32|Thonny——网络连接主机-wifi连接(源代码带教程)-CSDN博客文章浏览阅读57次。Esp32|Thonny网络连接主机-wifi连接(源代码带教程)https://blog.csdn.net/m0_66701835/article/details/141960572?spm=1001.2014.3001

物联网之ESP32控制舵机、通过网页设置舵机角度、Web服务、舵机原理、接线、Arduino、WiFi、Http

MENU 前言原理硬件电路设计软件程序设计LEDC输出PWM信号使用第三方库控制舵机网页控制舵机 前言 舵机在电子产品中非常常见,比如四足机器人、固定翼航模等都有应用,因此学习舵机对电子制作非常有意义。本文章使用Arguino的PWM对SG90舵机旋转角度控制。 原理 舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。舵机只

[LeetCode] 485. Max Consecutive Ones

题: 题目 Given a binary array, find the maximum number of consecutive 1s in this array. Example 1: Input: [1,1,0,1,1,1]Output: 3Explanation: The first two digits or the last three digits are consec

乐鑫 ESP32-P4 无线连接解决方案

ESP32-P4 是乐鑫信息科技推出的一款功能强大的芯片 (SoC) ,专为高性能的应用打造。尽管 ESP32-P4 集成了一系列先进特性,但它并未设置无线连接功能,因此需要额外的连接方案来满足嵌入式系统的多样化需求。乐鑫为 ESP32-P4 提供了三种主要的连接方案:ESP-AT、ESP-Hosted 和 ESP-Extconn。下面我们来探讨每种解决方案的优势、限制和使用场景。 ESP-AT

ESP32!Thonny+MicroPython+ESP32开发环境搭建!!

准备工具: Thonny+MicroPython+ESP32 一.Thonny安装 下载地址:Thonny, Python IDE for beginnershttps://thonny.org/ 二.下载esp32环境——根据型号下载 下载地址:MicroPython - Python for microcontrollershttps://micropython.org/downlo

鹏程万里------esp32 开发编译和烧录

首先编译demo 打开C:\msys32目录下的mingw32.exe然后执行下面的操作 DZ0012+Administrator@DZ0012 MINGW32 ~ # cd .. DZ0012+Administrator@DZ0012 MINGW32 /home # ls Administrator DZ0012+Administrator@DZ0012 MINGW32 /home #

【ESP32 IDF】WS2812B灯驱动

WS2812B灯驱动 1. 简单描述2. 驱动过程3.主函数添加驱动程序 1. 简单描述 开发环境为 IDF5.2.2采用乐鑫官方组件库 组件库地址 : https://components.espressif.com/components/espressif/led_strip/versions/2.5.5 2. 驱动过程 复制led_strip组件命令 在自

esp32 中断最简验证程序

13脚接3.3v脚,显示OK   ,不能直接接5v电压脚 中断程序最好是为各种执行设置标志位。不能处理占用长时间的指令 准备利用中断对超声波模块编程   #include "freertos/FreeRTOS.h"#include "freertos/task.h"#include "driver/gpio.h"#include "esp_log.h"// 定义GPIO引脚和标签