作者:XiaoLu 概述本设计拟应用于建筑工地塔吊工作状态监控与安全预警,塔吊是建筑工地上最常用的一种起重设备,是工地上一种必不可少的设备,但因为其高危性跟特殊性,管理稍微不当,极易发生安全事故,因此对塔吊状态监控与安全预警显得尤为重要且具有实际意义。本设计拟由STM32处理器、气压测量模块、温度测量模块、陀螺仪模块、显示模块等构成,STM32作为核心处理器协调多个模块正常工作,完成塔吊状态监控与安全预警。通过传感器测量塔吊俯仰角、翻滚角、航线角,工作姿态超过安全阈值时蜂鸣器预警。如:为了防止电缆扭结,旋转回转角大于设定角度时预警。 开发环境硬件:ART-Pi STM32H750开发板、LPS22HH气压传感器、LSM6DSOX六轴传感器、128*64OLED屏、蜂鸣器 RT-Thread版本:4.0.3 开发工具及版本:MDK 5.27、RT-Thread Studio 1.1.5、STM32CubeMX 6.1.0、PuTTY 0.74 RT-Thread使用情况概述(1)内核部分:线程、信号量、邮箱、软件定时器、调度器 线程:创建用户线程、读取传感器值并运算、显示与提醒。 信号量:定时器释放信号量,传感器获取信号量后读取传感器数据并处理。 邮箱:用于将传感器获取信号传递至显示线程。 软件定时器:为传感器提供稳定的采样周期,便于进行积分运算。 调度器:协调多个用户线程,满足线程实时性。 (2)组件部分:FinSH控制台 FinSH控制台:用于设备调试 (3)设备和驱动:PIN设备、I2C设备、SENSOR设备 PIN设备:LED、蜂鸣器均使用PIN设备 I2C设备:OLED、LPS22HH、LSM6DSOX均使用I2C通信协议 SENSOR设备:LPS22HH、LSM6DSOX注册为SENSOR设备 硬件框架本作品采用由ART-Pi STM32H750开发板、LPS22HH气压传感器、LSM6DSOX六轴传感器、128*64OLED屏、蜂鸣器。 使用气压计与温度测量可求得对应位置的海拔高度,通过传感器零点标定,可求出塔吊相对于地面的高度,可用于限高预警; 使用六轴传感器求得塔吊转臂的相对零点的转动角度,用于监控塔吊工作在安全的回转角度,利用六轴数据的变化,可对塔机切斜角度进行监控与预警; 使用OLED实时显示传感器采集的数据,对预警姿态进行标记。 使用蜂鸣器进行预警提示。 软件框架说明本作品软件部分采用四个用户线程,分别为LED指示灯线程、OLED显示屏线程、LPS22HH气压计传感器线程、LSM6DSOX 6轴传感器线程 LED指示灯线程为优先级较低的用户线程,用于指示系统的工作状态,正常工作时为红蓝交替闪烁,停止闪烁时表明其它线程执行有误,需要重启或检查。 OLED显示屏线程将塔吊的各项姿态进行显示,开机显示欢迎界面,使用用户按钮可进行换页操作,预警时屏幕显示不符合规范姿态信息。 LPS22HH气压计线程读取气压值,温度值,将气压折算为海拔,可求出相对于地面的高度,以此显示塔吊工作时的高度信息。 LSM6DSOX 6轴线程读取塔吊的3轴角速度计、3轴陀螺仪,将数据进行融合得到塔机工作姿态的欧拉角。 软件模块说明OLED显示屏 OLED线程程序流程图如下图所示,开机进入欢迎页面,5秒后默认进入温度、高度、压强页面,可以使用按键进行切换。进入温度页面时,获取LPS22HH气压计的邮箱,邮箱为空时等待,获取邮箱后提取传感器信息并显示,判断是否超出安全预警值,超出时蜂鸣器开始工作以予以预警提示。姿态页面同理。 LPS22HH气压计 LPS22HH气压计线程程序流程图如下图所示,首先使用SENSOR传感器设备注册设备,然后创建气压计线程,初始化邮箱,根据注册名查找设备获得设备句柄,然后打开设备,读取16次传感器值求平均,求出初始气压值作为基准值,以此计算出海拔偏移量。然后开始读取传感器值,计算出相对高度,将温度、高度、气压值通过邮箱发送到OLED线程,等待1秒钟后循环读取传感器值。 LSM6DSOX 6轴传感器 LSM6DSOX 6轴传感器线程程序流程图如下图所示,首先使用SENSOR传感器设备注册设备,然后创建气压计线程,初始化软件定时器,初始化邮箱,根据注册名查找设备获得设备句柄,然后打开设备。然后获取软件定时器释放的信号量,获取后开始读取传感器值,利用积分法计算塔吊的航向角,利用四元素法计算塔吊的翻滚角与俯仰角,最后将数据通过邮箱发送到OLED线程,然后循环等待信号量。 演示效果(1)作品图片:图1 仿真实验场景 图2欢迎页面 图3 温度页面 图4 姿态角页面(翻滚角预警状态) (2)视频:比赛感悟 RT-thread时一款非常优秀的国产嵌入式实时多线程操作系统,经过两个多月的学习,深深感受到了它的魅力。丰富的组件与软件包
2021-05-12 08:43:55 925KB 开源 stm32h750 rt-thread LSM6DSOX
1
DS18B20 数字温度传感器的使用和基于RT-thread操作系统的实现-附件资源
2021-05-11 11:01:58 106B
1
下载了最新的RT-thread3.03,在STM32F407芯片下移植lwip协议栈,实现了echo功能,欢迎大家下载
2021-05-10 18:50:40 12.35MB rt-thread lw
1
作为一名 RTOS 的初学者,也许你对 RT-Thread 还比较陌生。然而,随着你的深入接触,你会逐渐发现 RT-Thread 的魅力和它相较于其他同类型 RTOS 的种种优越之处。RT-Thread 是一款完全由国内团队开发维护的嵌入式实时操作系统(RTOS),具有完全的自主知识产权。经过近 12 个年头的沉淀,伴随着物联网的兴起,它正演变成一个功能强大、组件丰富的物联网操作系统。
2021-05-10 13:00:59 4.74MB rtos
1
当下MicroPython 变得越来越流行,RT-Thread 也提供了对应的软件包的支持。那么,相比官方原生的 MicroPython 我们有哪些改进呢?本文将深入介绍,RT-Thread MicroPython软件包与官方原生MicroPython的区别。
2021-05-08 20:36:42 1.16MB RTT RT-Thread Micropython
1
概述随着物联网技术的广泛推广,产生了农业物联网。做智慧农业物联网项目,首先要解决的是农业数据的采集问题;比如空气的温湿度、土壤的温湿度、二氧化碳浓度、水培溶液的EC值、PH值等数据;结合此次RTT大赛,笔者决定基于ART-Pi板子和RT-Thread实时操作系统,开发一个农业数据采集器。此次数据采集器笔者以ART-PI开发板为核心板,外接了一款温湿度传感器模块、GPS模块、OLED模块、串口通讯模块进行了基础Demo版本代码编写与调试,实现了采集温湿度数据在OLED屏上显示、GPS位置信号信息采集后经串口输出等功能。后续还有采集的数据经板载的WiFi模块上传至TCP Server 、阿里IOT平台的规划。 开发环境 硬件:ART-PI(STM32H750XB)、GPS模块、DHT11、0.96寸OLED屏、USB转串口模块 RT-Thread版本:RT-Thread V 4.0.3 开发工具及版本:RT-Thread Studio版本: 2.0.0 RT-Thread使用情况概述(1)内核部分:调度器,信号量等。 调度器:创建多个线程来实现不同的工作。 信号量:用来线程间的同步。 (2)组件部分:UART框架,SENSOR框架。 UART框架:使用了1个串口,用于采集GPS模块数据、同时用于串口输出数据。 II2C框架:使用了1路II2C接口用于连接OLED屏,进行采集温湿度数据的显示。 SENSOR框架:使用DHT11采集空气温湿度 (3)软件包:u8g2 netutils dht11gps_rmc 硬件框架软件框架说明软件模块说明主函数中执行了 wlan_autoconnect_init(); serial_init(); oled_init(); DHT11_init(); 创建了3个线程,其中 dht11_thread_entry()用于读取温湿度传感器数据; serial_thread_entry()用于读取串口1 RX引脚接收到的GPS模块数据; 演示效果比赛感悟首先笔者要表扬一下自己,能在工作之余、在下班后回家还要哄娃入睡之余,利用了一切可以利用的时间,进行STM32单片机的理论、RT-Thread Studio平台、II2C通讯、串口通讯理论知识的学习,然后小白一样的摸索着玩ART-Pi;笔者之前是Java程序员出身,在Java代码层面是打通过跟阿里IOT平台进行数据采集对接的,可是用STM32单片机来做,尤其是要熟悉STM32单片机的开发流程与技巧、RT-Thread 开发环境与编程规范等,作者实在是显得有点稚嫩,毕竟想要很快入行,是需要时间积累的。笔者还是5年前玩过AVR单片机,之后的工作主要是PLC、C#、JAVA相关,最近的工作是基于Go\Linux系统进行应用程序开发,讲真笔者对STM32单片机的知识了解还是相当欠缺的,Ubuntu系统用过半年左右,对于实时操作系统比如RTOS等,不曾了解;可是这些并不能阻止我对国产操作系统的关心与关注。当某次在论坛看到RT-Thread Smart发布会宣传时,笔者一下子就被深深吸引,在参会中看到了搭载RT-Thread Smart内核的板子启动很快,于是乎当时就萌发了了解一下RT-Thread的想法。后面也就有了参加此次RT-Thread全连接创意创客大赛的故事。 笔者的初心并不是参加比赛获得名次,而是通过参与,让自己去熟悉RT-Thread,熟悉RT-Thread跟STM32单片机的联姻;想着能不能基于RT-Thread操作系统、APT-Pi板子做些数据采集的实验测试;幸不辜负青春,通过此次尝试,笔者调通了APT-Pi 的板载串口1的收发控制、II2C通讯驱动OLED屏、采集单总线的温湿度传感器DHT11、板载WiFi模块进行参数配置联网、TCP通讯测试、GPS信号数据截取处理等;在整个边学习边码字的过程中也遇到了一些困难,比如调试II2C接口的气压传感器时,折腾了几天就是不出结果,还不知道问题出在哪,还有调试SPI接口液晶屏时,也是遇到困难,最后曲线救国,换成了II2C接口的OLED屏,还好调通了。主要是笔者时间上受限了,工作上几个项目要跟进,期间去出差了外省几次;下班后回家宝宝又会粘着我求抱抱。本来计划的是多接一些传感器采集数据,比如采集485接口传感器数据、通过调用我自己封装的dll文件去跟欧姆龙PLC进行通讯的测试、上传数据至阿里IOT平台,截止当前未完成,但后面我会继续把这个项目做下去,争取把这个数据采集器做得完善。最后感谢大赛举办方给我们提供了一个如此好的学习和锻炼的机会,我会尝试将RTT引入到自己研发的产品中去。
1
RealThread.RT-Thread.3.1.3.zip
2021-04-22 20:00:50 1.91MB rt_threadkeil5
1
串口1作为控制台,串口2作为用户控制台
2021-04-22 16:00:53 63.96MB RT-Thread
1
本数采系统以STM32单片机作为处理核心,使用RT-thread操作系统,实现功能有:通过自带的ADC模块以一定的频率采集数据,对采集到的数据进行FFT变换,并将变换后的结果和原始数据保存在TF卡中。此数采系统运用到的内核对象有邮箱和信号量,用到的中断有定时器中断、DMA中断和外部中断。同时,该系统使用了finsh、内存池以及串口通信。
2021-04-15 22:43:06 27.77MB RT-thread STM32
1
1、一个移植了RT-Thread的GD32E103工程 2、一个移植了RT-Thread的N32G457工程,而且移植了usart设备驱动 3、移植请参照我的博客《国民技术N32G457移植usart设备》
2021-04-12 17:05:10 15.42MB RT-Thread RTOS 嵌入式 移植
1