打印
[uCOS/RTOS]

【RTOS】+环境检测与控制

[复制链接]
2194|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
【RT-Thread作品秀】环境检测与控制 作者:成成杰
QQ:1713732776

概述 这当下环境的监管与控制是物联网发展的一大方向,也是应用的最多和最广的,在温室种植中可以应用到,农作业中可以应用到,人的工作环境中也可以用的。环境监管与控制的目的在与给人和一些作物提供更好的环境,使得其用有更加良好的环境。
本作品采用stm32作为MCU,使用ESP8266作为网络传输,实现底层硬件与云服务器进行数据通信。使用DHT11做温湿度采集。使用ULN2003做控制驱动,给喷水、控温等作业控制信号。
本作品运用Rt-Thread物联网操作系统实现底层硬件的所有功能。云服务器端使用Linux操作系统,本次演示使用了腾讯云的服务器。手机app端使用Android Studio做原生开发,开发了演示使用的app。
本作品实现的功能是,采集环境的温湿度上传到云端,在手机app上显示。在手机app上可以设置环境温度达到多少后启动控制温湿作业,以及直接控制启动温湿作业。
本作品提交有stm32的源代码。linux的TCP透传服务器源代码,功能是将间接上的客端上传的数据分别发送给除自身外的其他客端。演示用手机app源代码一份。硬件原理图一份。

RT-Thread使用情况概述      本作品使用RT-Thread Nano来进行系统开发。使用到其中的动态线程与静态线程,FinSH控制台,信号机制以及消息队列机制。
硬件框架

   
软件框架说明

软件模块说明(介绍应用软件关键部分的逻辑、采用的实现方式等)        本软件关键部分在于ESP8266的通信控制以及DHT11温湿度采集通信。
       在ESP8266控制中,采用多线程分项控制,各项采用信号机制与消息队列机制进行通信,以确保ESP8266的正常运行。在wifiThread线程中,通过标志位标志ESP8266所在的状态,分别有初始状态、运行在station模式转态、连上wifi状态、连上服务器状态、以及其他状态。在初始状态时,发送AT命令转成station状态。在station状态时,连上指定wifi。在连上wifi状态时,连上指定ip和端口。在连上服务器后,通过等待监听wifi_mq消息队列获取数据上传服务器。程序默认连接的wifi名是NX,密码是room-123,IP地址是212.64.15.155,端口是8888。这可以通过shell控制台更改,使用cmd+wifi+wifi名+wifi密码命令更改连接的wifi,使用cmd+ip+ip地址+端口号更改连接的服务器,使用cmd+tcp查询当前连接的信息。通过控制台更改完信息后,标志位更改成其他状态,使其重新启动连接。
      在DHT11采集通信中,使用定时器捕获进行数据采集。由于DHT11通信时间在几十个微秒的,在此过程中需要注意关闭系统调度,防止出错。在TemThread线程中,发送读数据信号并标志相应标志位后等待数据读完,捕获定时器中断中读取判断位0还是位1,将所读的数据位先存放在一个数组中,数据读取完后标志完成,TemThread线程进行数据校验与处理后发送至wifi_mq消息队列中进而上传到服务器。


演示效果(演示效果请采用3张高清图片,并录制一段不少于1min视频解说应用所实现的效果,视频上传至B站或者腾讯视频,给出链接即可)演示视频上传至B站,地址如下:
https://www.bilibili.com/video/BV1bv411B75J/



代码地址 本作品所有文件资料代码上传至百度盘,以下为连接:
链接:https://pan.baidu.com/s/1QN-n74qH37LMhnJDEAFCrQ
提取码:ymk4


app.PNG (38.56 KB )

app.PNG

原理.PNG (52.62 KB )

原理.PNG

1.PNG (153.13 KB )

1.PNG

2.PNG (51.63 KB )

2.PNG

3.PNG (62.7 KB )

3.PNG

4.PNG (44.16 KB )

4.PNG

捕获.PNG (691.71 KB )

捕获.PNG

RT-Thread应用创新设计大赛作品.zip

1.08 MB

使用特权

评论回复

相关帖子

沙发
zeshoufx| | 2020-7-3 22:51 | 只看该作者
谢谢分享,,,,,,,,,,

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝