ImageVerifierCode 换一换
格式:PDF , 页数:4 ,大小:1.51MB ,
资源ID:2368275      下载积分:10 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wnwk.com/docdown/2368275.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于RT-Thread的智慧农业大棚监控系统设计_谢莹.pdf)为本站会员(哎呦****中)主动上传,蜗牛文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知蜗牛文库(发送邮件至admin@wnwk.com或直接QQ联系客服),我们立即给予删除!

基于RT-Thread的智慧农业大棚监控系统设计_谢莹.pdf

1、数据库系统设计Database System Design电子技术与软件工程Electronic Technology&Software Engineering206现农村越来越多的务工人员往城市方向发展,导致农村的青年劳动力急剧下降,而我国作为农业大国,如何实现大规模农业种植仍是亟需解决的问题2,伴随着物联网技术的发展,“智慧农业”将作为一种科学的解决途径,其通过物联网技术实现远程监控最终达到精准种植的目的,从而提高农业种植的产量3。本系统使用的操作系统平台是 RT-Thread,其由我国团队自主研发,经过多年的升级,已逐步成为一个功能丰富的操作系统,特别适用于一些资源受限的场合。相对于其它

2、操作系统来说,RT-Thread 为用户提供丰富的组件,如内核层、软件包等等,能够有效降低编程难度,因此,开发者通过 RT-Thread 系统可以轻松地实现物联网项目的搭建。另外,OneNET 平台为用户提供多样的服务,可使物联网设备实现快速上云,管理人员通过 OneNET 平台最终实现对大棚的远程监控,并根据实时采集的传感器数据控制相应的执行器,从而提高农业种植的生产效率并大大降低成本4。1 系统的框架设计系统的功能包含三个:采集大棚内温湿度和光照数据、传感器数据通过 Wi-Fi 模块传输至云平台,云平台下发指令控制输出设备。系统的框架设计如图 1 所示,其中 MCU 采用 STM32 芯片

3、,数据采集层外接输入设备(SHT3X 系列温湿度传感器、BH1750 光照度传感器)及输出设备(风机、补光灯),传输层使用 ESP8266 模块完成数据的传输,而应用层负责数据的存储及展示,同时下发指令至设备端5。2 RTOS资源的规划为更好地满足多任务的调度及提高系统响应效率,在本系统的软件框架中设计 RTOS 层,对 RTOS 资源的规划主要包括以下三个方面:2.1 SENESOR(传感器)驱动框架的使用由于市面上传感器厂商众多,而不同的传感器都需配套对应的驱动程序,因此为统一接口及提高代码的可基于 RT-Thread 的智慧农业大棚监控系统设计谢莹(闽西职业技术学院信息与制造学院 福建省

4、龙岩市 364021)摘要:本文设计一套基于 RT-Thread 的智慧农业大棚监控系统,其应用 RT-Thread 操作系统,设备端采集大棚内的温湿度、光照度,并通过 Wi-Fi 模块及 MQTT 协议实现与 OneNET 平台的数据交互1。测试结果表明,系统通过对 RTOS 资源的合理规划,应用线程及信号量完成数据上 OneNET 云平台的任务,简化编程难度,并提高系统响应速度,满足智慧农业大棚的监控需求,系统最终实现对设备端进行实时远程监控的目的,有效提高农业种植的产量。关键词:Wi-Fi 模块;OneNET;RT-Thread;实时监控基金项目:2021 年度福建省教育厅教育科研项目“

5、基于云平台的智慧农业监测系统设计”(编号:JAT210904)。图 1:系统的框架设计图数据库系统设计Database System Design电子技术与软件工程Electronic Technology&Software Engineering207复用性,RT-Thread 为开发者提供 SENSOR 设备以降低开发难度,如温湿度、光照、压力、距离等市面上常用的传感器均已对接到 SENSOR 框架中。SENSOR 驱动框架设计如图 2 所示,大体分为两步:完成传感器 ops接口的对接及设备的注册。以读取光照数据为例,先将BH1750 传感器成功对接到 SENSOR 框架,再通过线程的管理

6、获取光照数据。2.2 线程的管理在日常中遇到难解的大任务时,可将大任务根据不同的功能进行划分,最终形成多个简单的小任务,问题便迎刃而解,在 RT-Thread 中线程作为最核心的功能,也是最小的调度单位,对应着一个个小任务,通过线程的方式编写代码可以简化编程难度,使线程之间相互独立,并提高程序响应速度。另外,通过设置任务的优先级可以让重要的任务得到优先处理。在本系统中需要完成的小任务有三个,其中两个是采集传感器温湿度、光照数据的任务,第三个任务是在连接 OneNET 云平台过程中先进行初始化 mqtt 协议的任务,因此根据不同的任务对应创建三个不同的线程:“read_SHT3X_thread”

7、为采集温湿度的线程、“read_light_thread”为采集光照度的线程、“mqtt_init_thread”为初始化 mqtt 协议的线程。以采集光照度为例,通过以下几个步骤即可读取对应的光照数据,如表 1 所示。表 1:对应的光照数据描述对应关键代码/函数创建 rt_sensor_data 结构体struct rt_sensor_data sensor_data查找 SENSOR 设备驱动rt_device_find()打开 SENSOR 设备rt_device_open()读取 SENSOR 设备的数据rt_device_read()2.3 信号量的规划在采集数据的线程被创建成功之后

8、,如何与初始化 mqtt 协议的线程协作完成数据上云的任务?在 RT-Thread 中线程间同步的方式主要三种,分别是信号量、互斥量和事件集。信号量作为轻型的内核对象,系统通过获取(take)及释放(release)信号量的方式保证任务/线程正常有序地运行。RTOS 层的主要工作流程图如图 3 所示,“read_SHT3X_thread”与“read_light_thread”线程是以永久等待的方式获取信号量,当“等不到”时则一直等待,并且该线程处于挂起状态,同时系统执行其它线程,而“等到了”则会唤醒该线程,紧接着运行该线程的后续代码。在主函数中设置信号量“mqtt_sem”的初始值为1,在“

9、mqtt_init_thread”线程初始化成功之后释放信图 2:SENSOR 驱动框架设计图 3:RTOS 层的主要工作流程图数据库系统设计Database System Design电子技术与软件工程Electronic Technology&Software Engineering208号量,信号量的值加 1,而“read_SHT3X_thread”与“read_light_thread”线程在分别获取这 2 个信号量之后则上传数据至云端,因此,系统通过不断释放及获取信号量的方式完成“mqtt_init_thread”、“read_SHT3X_thread”、“read_light_th

10、read”这三个线程间的通信,最终将温湿度及光照数据上传至 OnetNET 云平台。“mqtt_init_thread”线程释放信号量的关键代码如下:1.static void mqtt_init_thread_entry(void*parameter)2.3.while(1)4./*初始化 MQTT 协议*/5.if(!onenet_mqtt_init()6./*初始化成功之后,释放一个信号量*/7.rt_sem_release(mqtt_sem);8.return;9.;10.rt_thread_mdelay(500);11.12.该线程的主要功能为初始化 MQTT 协议,由于初始化一次可

11、能无法成功,因此,需要通过 while 循环进行多次尝试初始化,直到初始化成功,初始化成功之后则释放一个信号量,并告知“read_SHT3X_thread”、“read_light_thread”线程可以上传数据,再通过 return 语句完成线程工作。3 OneNET云平台的设计OneNET 物联网平台提供高效、安全的应用平台,图 4:OneNET 软件包配置图图 5:OneNET 云平台的管理界面图 6:光照数据流图 7:小熊派主板及拓展板数据库系统设计Database System Design电子技术与软件工程Electronic Technology&Software Enginee

12、ring209在设备端,适配多种传输协议,如 MQTT、NB-IoT、EDP、Modbus 等6,为开发者提供各种硬件终端的快速接入方案;另外,在应用层中为开发者提供各类开发需求,使得开发者能够将重点更聚焦于自身应用的开发,缩短开发周期,降低开发成本7。在本系统中建立“智慧农业大棚系统”产品,并在该产品下创建“1 号检测点”设备,设备创建成功之后,云平台会生成对应的设备 ID 及鉴权信息等,而设备端要接入云平台则要进行相应的验证。因此,在 RT-Thread Settings 中的 onenet 软件包中需对设备 ID、身份验证信息、API 密钥、产品 ID、及主/产品 APIKEY 这几个关

13、键参数进行配置,OneNET 软件包配置如图 4 所示,验证通过后最终成功连接到云平台。4 系统测试OneNET 云平台的管理界面如图 5 所示,从图中可知当前温度、湿度及光照度的值。光照数据流如图 6 所示,系统以 2min 为周期上传一次温湿度及光照数据,以采集光照度为例,从图中标号可知采集频率正确。当光照度低于阈值时,如图中标号所示,当前光照值为 0 时,则自动开启补光灯,如图 7 所示。同理,当湿度高于阈值时,则开启风机。另外,云平台通过下发命令功能手动控制风机和补光灯的开与关,如图 8 所示。5 结束语基于 RT-Thread 的智慧农业大棚监控系统通过OneNET 云平台实现远程监

14、控,并且实时采集传感器数据并与风机、补光灯等执行器进行联动,为管理人员提供精准数据以提高种植产量。另外,系统对 RTOS 资源进行合理规划,应用线程及信号量完成数据的传输能够有效提高系统响应速度,如为更好地满足大棚的监测需求,进一步完善系统功能,后期只需通过线程的管理即可增加其它传感器,降低开发难度8。参考文献1 丁飞,吴飞,艾成万,等.基于 OneNET 平台的环境监测系统设计与实现J.南京邮电大学学报(自然科学版),2018,38(04):24-29.2 廖建尚.基于物联网的温室大棚环境监控系统设计方法 J.农业工程学报,2016,32(11):233-243.3 李睿欣,姚磊,谢伟鸿.基

15、于 NB-IoT 的多功能农业大棚监测及控制系统设计 J.农业装备与车辆工程,2021,59(05):72-75.4 卢嫚,袁志军.基于 OneNet 云平台的智能监控系统设计 J.单片机与嵌入式系统应用,2022,22(07):34-37.5 侯杰林,张青春,符骏.基于 OneNet 平台的水质远程监测系统设计 J.淮阴工学院学报,2016,25(03):10-13.6 余兆成,杨光友,谢松.基于 oneNET 的大棚温湿度远程监测系统 J.中国农机化学报,2019,40(02):180-185.7 胡智,刘竹林,王慧.基于 OneNET 平台的物联网农业监测系统设计J.农业技术与装备,2020(12):24-25.8 孙璐,郑淏.基于物联网的农业温室大棚监控系统设计 J.南方农业,2021,15(14):218-219.作者简介 谢莹(1986-),女,福建省龙岩市人。大学本科学历,闽西职业技术学院,讲师。研究方向为物联网应用技术、电子信息工程技术。图 8:云平台的下发命令功能

copyright@ 2008-2023 wnwk.com网站版权所有

经营许可证编号:浙ICP备2024059924号-2