
【RT-Thread作品秀】分布式温度监控系统
nrf24l01无线模块stm32f407开发板ds18b20温度传感器esp8266硬件电路设计rt-thread
简介
该分布式温度监控系统基于STM32系类芯片开发,实现多点温度监控。系统采用分布节点的方式,通过采集节点和接收节点实现温度数据的采集和上传。采集节点使用STM32芯片和DS18B20数字温度传感器,通过NRF24L01无线射频模块传输到接收节点。接收节点使用ESP8266 WIFI模块与ONENET平台连接,同时上传数据到云端和PC上位机。系统具有功耗低、丢包率低、传输距离远等特点,适用于小面积场所的多点温度监控。
正文
解决方案:
该分布式温度监控系统基于STM32系类芯片开发,旨在实现多点温度监控。系统采用分布节点的方式,通过采集节点和接收节点实现温度数据的采集和上传。采集节点使用STM32芯片和DS18B20数字温度传感器,定时读取温度数据并通过NRF24L01无线射频模块传输到接收节点。接收节点使用ESP8266 WIFI模块与ONENET平台连接,同时接收来自采集节点的温度数据,并将数据分别上传到云端和PC上位机。
该系统的开发环境包括硬件和软件两部分。硬件方面,使用了STM32F407-ATK-Explorer开发板作为MCU,配合DS18B20数字温度传感器、NRF24L01无线射频模块和ESP8266 WIFI模块等扩展板。软件方面,使用了RT-Thread V4.0.3作为操作系统,并利用RT-Thread提供的内核部分和组件部分实现了温度数据的采集、传输和上传功能。
在软件框架方面,系统分为采集节点和接收节点两部分。采集节点通过创建多个线程实现温度数据的读取和传输,其中包括读取温度传感器数值的线程、通过消息队列传输数据的线程和控制LED状态的线程。接收节点通过创建多个线程和使用信号量、事件集、ringbuff、邮箱和消息内存池等组件实现温度数据的接收、保存和上传,其中包括NRF24L01数据接收线程、保存数据线程、初始化ONENET MQTT线程、上传数据线程和控制LED状态的线程。
整个系统的开发过程中,使用了RT-Thread提供的SPI框架、Sensor框架、SAL套接字抽象层等组件,提高了代码的可重用性和开发效率。同时,还使用了Webclient、pahomqtt、Onenet和cJSON等软件包,实现了设备与HTTP Server的通讯、MQTT客户端程序、与ONENET平台连接和解析JSON格式等功能。
该分布式温度监控系统具有功耗低、丢包率低、传输距离远等特点,适用于家庭、办公室、教室等小面积场所的多点温度监控。通过该系统,用户可以实时监视多个分节点的温度数据,并可以通过云端和PC上位机进行远程监控和控制。系统的开发过程中,充分利用了RT-Thread提供的功能和软件包,提高了开发效率和系统的稳定性。
代码地址:(附件为代码地址,下载后打开可见)
通过这次比赛的项目实践,作者对RTOS有了全新的认识,并深刻体会到了纸上得来终觉浅,绝知此事要躬行的道理。作者还感谢RT-Thread的软件包和开源社区的贡献,希望有朝一日能够为开源社区做出自己的贡献。
该分布式温度监控系统基于STM32系类芯片开发,旨在实现多点温度监控。系统采用分布节点的方式,通过采集节点和接收节点实现温度数据的采集和上传。采集节点使用STM32芯片和DS18B20数字温度传感器,定时读取温度数据并通过NRF24L01无线射频模块传输到接收节点。接收节点使用ESP8266 WIFI模块与ONENET平台连接,同时接收来自采集节点的温度数据,并将数据分别上传到云端和PC上位机。
该系统的开发环境包括硬件和软件两部分。硬件方面,使用了STM32F407-ATK-Explorer开发板作为MCU,配合DS18B20数字温度传感器、NRF24L01无线射频模块和ESP8266 WIFI模块等扩展板。软件方面,使用了RT-Thread V4.0.3作为操作系统,并利用RT-Thread提供的内核部分和组件部分实现了温度数据的采集、传输和上传功能。
在软件框架方面,系统分为采集节点和接收节点两部分。采集节点通过创建多个线程实现温度数据的读取和传输,其中包括读取温度传感器数值的线程、通过消息队列传输数据的线程和控制LED状态的线程。接收节点通过创建多个线程和使用信号量、事件集、ringbuff、邮箱和消息内存池等组件实现温度数据的接收、保存和上传,其中包括NRF24L01数据接收线程、保存数据线程、初始化ONENET MQTT线程、上传数据线程和控制LED状态的线程。
整个系统的开发过程中,使用了RT-Thread提供的SPI框架、Sensor框架、SAL套接字抽象层等组件,提高了代码的可重用性和开发效率。同时,还使用了Webclient、pahomqtt、Onenet和cJSON等软件包,实现了设备与HTTP Server的通讯、MQTT客户端程序、与ONENET平台连接和解析JSON格式等功能。
该分布式温度监控系统具有功耗低、丢包率低、传输距离远等特点,适用于家庭、办公室、教室等小面积场所的多点温度监控。通过该系统,用户可以实时监视多个分节点的温度数据,并可以通过云端和PC上位机进行远程监控和控制。系统的开发过程中,充分利用了RT-Thread提供的功能和软件包,提高了开发效率和系统的稳定性。
代码地址:(附件为代码地址,下载后打开可见)
通过这次比赛的项目实践,作者对RTOS有了全新的认识,并深刻体会到了纸上得来终觉浅,绝知此事要躬行的道理。作者还感谢RT-Thread的软件包和开源社区的贡献,希望有朝一日能够为开源社区做出自己的贡献。