欢迎来到天天文库
浏览记录
ID:14453089
大小:417.00 KB
页数:7页
时间:2018-07-28
《基于嵌入式系统的农业温室大棚监控系统方案设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、基于嵌入式系统的农业温室大棚监控系统方案设计引言 托普物联网研究发现智能大棚是基于嵌入式系统和无线传感器网络的自动控制系统,整个系统由无线监控节点、传感器、变频器和全GUI的人机控制终端等组成。各种传感器、语音呼叫和控制状态数据由安置在各个大棚里的监控节点来采集,再通过无线局域网传输到控制中心,计算机根据预先设定的数据,通过数据比较结合PID算法来精确控制各个控制终端。用户可以随时调整这些自动控制,以便让大棚始终处于一个最佳生长环境。 1系统设计方案系统设计主要分为两个部分,即终端虚拟控制平台系统和大棚基站系统的设计,与传统的仪器相比,基于计算机的虚拟仪器的优势就是它可以方便地进行
2、组网通信,实现连栋大棚的规模化管理,提高系统的灵活性。首先,系统通过大棚基站内的无线传感器节点对棚内的各个环境参数进行采集(如温度、湿度、光强、CO2浓度等),然后经过数据处理,再发送给终端虚拟控制中心,终端再通过数据比较和自适应PID控制算法发出控制指令,大棚基站接到控制指令后,对棚内的外围电气设备进行相应的控制,从而改变棚内的环境参数。如果在设定的时间内没有接到终端的控制指令,大棚基站则会通过与内部设定的环境参数的比较,对相应的电气设备进行控制操作,这种方法的好处是可以避免在终端维修或网络繁忙时出现数据遗失所造成的大棚基站失控。此外,终端和基站、基站和基站之间还可以进行语音呼叫,使
3、终端用户可以随时和各棚内的工作人员进行联系,了解大棚基站的运作状况。其系统结构框图如图1所示。图一、系统结构框图2系统硬件设计系统监控主要由大棚基站和PC终端机两部分组成,PC机终端是整个系统的数据管理和控制决策中心,根据棚内的具体参数,由终端系统专家发出最合理的参数设置和控制指令。大棚基站通过无线传感器网络节点进行数据采集,并与PC机终端所设定的参数进行比较,从而对外围电气设备进行控制,以改变棚内的环境,使棚内达到一个最佳的生长环境,并把棚内的环境参数、电气设备的状态反馈给PC机终端。 2.1基站控制系统大棚基站控制系统以32位嵌入式微处理器为核心,由无线数据采集子系统、外围控制电
4、路子系统、语音子系统等组成,无线数据采集子系统由多个无线传感器网终节点构成,可实时多点地准确采集大棚内的环境参数,并传给对应的基站。当终端控制台把基站设定为自动控制方式时,基站便可对接收到的数据进行处理,并与系统设定的参数进行比较,然后发出控制指令来对外围控制电路子系统进行控制(包括换气扇、灌溉网络、采光子系统等)。当终端控制台设定基站为手动控制时,终端可以通过对基站地址的设定选择指定的基站进行手动控制操作,其原理框图如图2所示。图二、大棚基站结构原理框图2.2无线数据采集系统的设计 网络节点采用32位EasyARM1138为主控制器,无线数据传输采用nRF24L01无线传输模块,n
5、RF24L01是一款新型单片射频收发器件,工作于2.4~2.5GHzISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。图3所示是其电路原理图。 2.3外围控制电路的设计 外围控制电路子系统同样采用EasyARM1138为主控制芯片,辅以nRF24L01无线通信模块。该子系统通过EasyARMll38的I/O口控制DAC0832来产生正弦波,然后驱动变频器以改变外围各电气设备的工作状态,从而避免能源的浪费。无线通信模块可实现终端与基站、基站与基站、基站与各无线传感器网络节点之间的组网通
6、信功能。 3系统软件设计 本智能大棚的终端虚拟化控制平台由Nokia公司Qt开发环境编写而成。Qt是一个多平台的C++图形用户界面应用程序框架。它能提供给应用程序开发者建立艺术级图形用户界面所需的所有功能,可用于高性能的跨平台软件开发。整个智能大棚的控制中心软件由6大部分组成,分别是控制内核模块、数据库模块、PID控制计算模块、串口通信模块、图形绘制模块、文件记录管理模块。其控制中心软件框架结构如图4所示。3.1数据库的设计本程序中的数据库部分负责建立专家系统,用于存放各种植物参数和检索。考虑到软件开发的成本问题,本系统采用了MySQL。MySQL是一个快速客户机/服务器结构的SQ
7、L数据库管理系统,由一个服务器守护程序mysqld以及许多不同的客户程序和库函数组成,该系统虽然不是开源的,但可以免费使用。其优点是功能强大,灵活性好,应用编程接口丰富,结构精巧。考虑到植物所包含的信息很多,所以,在设计时可采用多表结构。分别是植物名称、适宜生长温度、适宜生长湿度及生长时间段。通过利用MySQL编程语言可实现对数据库的访问。Qt的QtSql模块通过数据库驱动可与不同的数据库进行通信。创建一个数据库连接需要做如下三个步骤:激活驱动
此文档下载收益归作者所有