APP下载

基于无线传感网的蔬菜基地环境监控系统

2018-01-12张叶茂

江苏农业科学 2017年24期
关键词:光照度工控触摸屏

张叶茂

(1.南宁职业技术学院机电工程学院,广西南宁 5300071; 2.电子科技大学继续教育学院,四川成都 610054)

随着现代嵌入式和物联网技术的发展,现代化的大棚蔬菜种植基地对环境参数控制的要求越来越智能化和精度化,主要表现在温湿度、光照度等参数的智能化控制上。传统的信息采集系统主要是采用CAN、RS485等有线的传输方式,采用的处理平台一般是8位的处理器(简称CPU),存在布线复杂,响应速度不够优良的缺点;另外,随着网络技术的发展,远程智能控制的要求也对传统的只有本地控制功能的系统提出了挑战。因此,本研究设计了一套基于嵌入式和无线网络传输的环境参数智能监控系统。环境参数采集传感器可以通过基于IEEE802.15.4标准的低功耗局域网协议(ZigBee)节点和主控平台进行无线通信,将实时结果显示在工控屏或者远程全球广域网(web)端,用户也可以通过web客户端对环境现场参数进行测控,实现远程实时传输。

1 系统总体设计

本系统采用温湿度传感器和光照度传感器对蔬菜基地各区域现场的温湿度和光照信息进行采集;区域终端ZigBee节点和区域路由节点以及中控平台协调器进行ZigBee无线组网通信。终端节点模块一方面负责采集环境参数及解析数据,将结果传输给中控平台处理;另一方面须要接收中控平台发来的指令,解析后控制现场参数调节器。中控平台一方面将采集的数据通过工控触摸屏进行现场显示并通过网络传输发送给远程的web客户端,另一方面接收客户发送过来的指令信息通过无线网络发送指令给各ZigBee节点。用户参数的设定主要通过中控平台连接的工控触摸屏,也可以通过远程web客户端进行参数设定。系统总体设计结构见图1。

2 系统硬件电路设计

系统的硬件模块主要包括嵌入式最小系统、工控触摸屏、网关电路、SD数据存储器、CC2530节点电路、传感器电路等。系统以STM32F103ZET6、SDRAM、FLASH以及网关电路、工控触摸屏、键盘电路、电源电路、报警电路等构成中控平台。STM32F103ZET6作为中控端CPU,该处理器基于32位的核(Cortex-M3)架构,外设总线接口丰富,最大可以在72 MHz工作频率下运行,适用于要求响应速度快、功耗较低的场合。工控触摸屏采用广州大彩光电科技有限公司推出的工业串口屏,该串口屏集薄膜晶体管(简称TFT)显示驱动、图形用户界面(GUI)操作及图片字库存储等各种组态控件于一体,开发简单方便。STM32处理器通过串口0与工控屏进行通信,若需要3.3 V的TTL/COMS串口电平通信,可以直接跳过MAX232电平芯片,将串口屏设置为TTL模式。采用基于CC2530F256的ZigBee网络传输方案,负责协调器、区域路由节点及终端节点无线组网。CC2530F256最小系统扩展存储器、有机发光半导体(简称OLED)显示器、传感器、继电器、键盘电路、蜂鸣器等相关硬件构成终端节点。终端节点模块温湿度传感器采用性价比较高的温湿度传感器(DHT11),光照度传感器采用ISL29003集成光传感器。

2.1 ZigBee节点模块设计

无线传输网络的终端节点模块处理器采用美国德州仪器公司的CC2530F256处理器。CC2530F256结合业界领先的黄金单元ZigBee协议栈(栈),它具有极低的总材料成本建立强大的网络节点。CC2530F256具有业界标准的增强型51单片机内核,具有领先的RF收发器的优良性能,有8 kb 存储器(RAM)可编程内存及其他许多强大的功能[1]。CC2530F256具有多种运行模式,超低功耗的模式尤其适合终端节点系统的要求,各种运行模式切换迅速。以CC2530F256为核心,扩展电源电路、传感器信号输入接口,按键电路及OLED显示电路等相关硬件,完成监控系统的节点模块设计。ZigBee网络节点核心板电路原理如图2所示。

2.2 信号采集电路设计

在大棚蔬菜场所,主要采集和调控光照度、温度、湿度这3个重要参数。在这种环境下,光照度和温湿度的参数范围属于正常的生产生活环境值,无须考虑过高或过低的温度和光照度。一般地,系统的温度误差范围控制在1 ℃,相对湿度控制在3% RH范围内即可(图3)。系统温度和湿度采集的传感器采用已校准数字信号输出的复合传感器DHT11,该传感器的主要特点是体积较小、响应快速,具有功耗低和很强的抗干扰性的优点。该传感器分辨率湿度1% RH,温度1 ℃;量程湿度20%~90% RH,温度0~50 ℃。采用简化的单总线和CC2530F256处理器通信,电路中R30为上拉电阻,其作用是为了保证在总线空闲时,总线输出状态为高电平[2]。在大棚蔬菜种植基地,需要较高的光照要求精度,系统采用ISL29003 集成光传感器,该传感器能够采集环境光照度, 转换成数字量之后通过内置标准的集成电路总线(简称IIC)接口及整合的模数转化(简称ADC)接口输出数据信息。该传感器的整合ADC具有15位分辨率,光照度调节范围为 1~100 000 lx 之间。光照度传感电路如图4所示。

2.3 以太网模块设计

以太网模块是智能化监控系统的重要组成部分,STM32F103ZET6本身不带有网络接口,因此须要对其进行硬件单元扩展。该功能模块使用单芯片快速以太网MAC控制器(简称DM9000)以太网芯片和轻量级的IP协议(简称Lwip)TCP/IP协议栈设计。DM9000是一款集成有通用处理器接口的以太网控制器,其特点是完全集成化、传输速度快、性价比高。DM9000协议层接口对10 MB以下的3、4、5类非屏蔽双绞线和100 MB以下5类非屏蔽双绞线完全支持[3]。DM9000有多种型号,有100、48引脚的,本模块设计选择的是48引脚的DM9000,型号为DM9000CEP。DM9000的第34脚无中断输出时为低电平,当有中断输出时,此引脚为高电平有效。可以通过设置DM9000的20(EECK)引脚来改变INT的有效电平,当EECK拉高以后,INT低电平有效,否则的话INT是高电平有效。电路模块中的R66为第20脚的上拉电阻,所以本模块DM9000的INT引脚是低电平有效。

另外,DM9000的第21脚是设置数据位宽,模块的R65为EECS的上拉电阻,因此为8位数据宽度。如果去除R65,模块为16位数据宽度。DM9000网络模块电路原理如图5所示。

3 系统软件设计

系统软件总体设计主要有主控平台软件设计、工控触摸屏软件设计、ZigBee网络软件设计、传感器采集终端节点软件设计、web远程网络软件设计5个部分。

3.1 主控平台软件设计

将Ucos_Ⅲ移植到系统之后,建立任务0函数[Task0()]主要对系统硬件资源和时钟初始化以及创建其他的任务。任务Task1()主要用于处理工控触摸屏事件。中控平台和工控触摸屏采用串口0(Usart0)通信,通过串口中断,将接收到的工控屏发送过来的数据存储在先进先出(FIFO)中。任务Task2()用于外设按键信号处理,Task3()用于系统报警信号处理,Task4()用于远程监控信号处理,各任务之间采用灵活的消息队列及信号量进行资源共享及数据传递。系统启动后,Ucos_Ⅲ操作系统和硬件资源开始初始化后,用户可以通过工控触摸屏设定蔬菜棚里的温湿度和光照度等参数的上下限值、采集数据及时间周期等参数设定,中控端主函数调用Usart0_send()函数向协调器发送带设备地址的指令到相关区域的路由节点及终端节点后,终端节点处理器CC2530F256通过调用温度控制子函数Tem_Con()、湿度控制子函数 Hum_Con()及光照度控制子函数Led_Con()进行参数设定[4]。当用户须要查询参数指标时,通过工控触摸屏发送按键查询指令,协调器接收到查询指令后即解析指令的设备地址信息,通过ZigBee网络发送到对应的区域路由节点,准确发送到相应的终端节点。终端节点的处理器CC2530F256模块通过采集传感器的实时数据进行滤波及正确性分析,打包通过ZigBee网络发送到中控平台,并在工控屏上显示出来。中控台整体软件设计流程如图6所示。

3.2 基于工控触摸屏的软件设计

利用VisualTFT软件进行工控触摸屏人机界面设计时,须要预先裁剪好美工图片,并进行合适的排版及控件的布局。串口屏处理器会对TFT工程的所有控件、图片及画面各分配1个唯一的ID号,当STM32处理器串口0接收到设备上传的ID值,就可以判断当前的按钮值,并发送相应的指令更新画面显示或者通过串口1发送指令给协调器节点,无线发给终端节点控制电机、继电器等。另外可以将采集的信息通过文本和图片进行显示,还可以通过指令实现曲线显示和数据存储功能[5]。

3.3 无线网络组网设计

ZigBee网络拓扑结构主要有网型网络结构和星形网络结构。不同的应用领域应采用不同的网络拓扑结构,ZigBee节点可以根据配置文件设置成协调器、路由节点及终端节点,采用不同的网络拓扑结构对节点的配置也不一样[6]。系统采用TI公司的Z-Stack协议栈进行无线组网,实现网络节点的无线通信。每个区域可以包括很多个终端节点,执行具体的任务如信息采集等,并与协调器或者路由节点关联,每个区域分别设置路由节点,为ZigBee网络通信提供中继和路由。设备类型是由Z-Stack的不同编译选项来选择的,系统上电后,ZigBee协调器首先进行初始化工作,初始化完成后协调器调用Z_Stack协议栈中的ZDApp_NetworkInit函数进行网络的建立及其初始化工作,组网成功后,终端节点将采集的数据通过afStatus_t AF_DataRequest()发送数据给路由节点,当星型网络组建成功之后,终端节点将采集得到的实时数据通过函数AF_DataRequest()发送到协调器,终端节点发送的数据经判断后通过USART0发送到STM32F103ZET6进行显示;同时,协调器将STM32F103ZET6给它的控制信号通过广播的形式发送到各个终端,终端将控制信号作判断后执行控制。无线网络组网件设计流程如图7所示。

3.4 传感器终端节点软件设计

传感器终端节点上电以后,终端节点开始进行ZigBee组网,与路由节点组网成功后,CC2530F256单片机开始初始化内部资源,包括IO口、串口、定时器、总线等的初始化。处理器启动定时器0和定时器1,定时器0主要负责定时1 s的环境参数周期采样中断,定时器1负责网络异常时间监测。终端节点每隔1 s对温湿度传感器和光照度传感器进行参数采集,一方面将采集的结果经软件滤波和数据长度分析判断之后,在终端节点模块的OLED屏上显示出来;另一方面, 系统将采集的参数信息打包发给区域路由节点,路由节点发送给协调器之后,主控CPU发出应答信号。在接收到主控器件发送过来的数据之前,终端节点工作在自控模式,当协调器通过ZigBee网络发送指令给终端节点时,终端节点进行数据采集的同时,还须根据接收到的ZigBee中断数据进行处理,此时终端节点工作在主控模式。终端节点在主控模式下,若网络稳定性异常,将报警数据发送给协调器,而协调器超过30 s未发送控制指令,则终端节点恢复到自控模式进行预设定的异常处理[7]。传感器终端节点软件设计流程如图8所示。

3.5 基于Lwip的远程设计

Lwip是轻量级的IP协议,系统首先须要将Lwip移植到STM32F103ZET6上,并修改cc.h、lwipopts.h、sys_arch.h、dm9000.c、ethernetif.c、lwip_comm.c等6个头文件,DM9000ReadReg()和DM9000_WriteReg这2个函数为读写DM9000内部寄存器的函数, DM9000_PHY_ReadReg ()和

DM9000_PHY_WriteReg()为读写DM9000内部PHY寄存器的函数。DM9000_SendPacket()函数为数据发送函数,将指定的pbuf结构体的数据通过DM9000发送到网络中,Lwip中用pbuf结构体来表示数据包[8]。在发送数据包之前,须要先关闭DM9000的中断,等发送完成以后再打开中断。发送数据时可以按下面的步骤进行:首先向发送静态随机存取存储器(简称TX_SRAM)中写入要发送的数据,然后向寄存器TXPLL和TXPLE写入要发送的数据的长度,最后将TCR寄存器的bit0置1,启动发送即可。

4 结论与讨论

基于ZigBee无线传感网络和嵌入式的大棚蔬菜环境参数监控系统已经通过试验场所的测试,系统操作简单方便,数据采集精度较高,信号传输稳定可靠。既可以通过工控触摸屏进行温湿度和光照度参数的采集和设定,也可以通过web网远程进行传感器数据采集和参数设定。该系统可以广泛应用在现代农业大棚蔬菜基地等场合,有很好的性价比和可操作性。

[1]李 宇,王卫星,陈润泽. 基于ZigBee的物联网智能家居系统[J]. 电子测试,2016(3):71-75.

[2]苏 扬,刘 亮. 基于ZigBee和嵌入式系统的养殖场环境智能监控系统[J]. 中国农机化学报,2016,37(5):76-80.

[3]李立新,李艳文,蔡刚毅,等. 基于物联网技术的智能家居安防系统的研究与开发[J]. 控制工程,2015(5):1001-1005.

[4]李征明,张世刚,孙华英. 基于UcosⅡ系统的无线手持数据监控系统的研究[J]. 农机化研究,2016(1):152-152.

[5]张叶茂. 基于串口屏和LPC1752的通用工控平台设计[J]. 轻工科技,2015(12):109-110.

[6]郭国法,许 萌,张开生. 基于ZigBee无线传感器网络的智能节水灌溉系统设计[J]. 江苏农业科学,2015,43(11):513-518.

[7]武兴华,徐晓辉,宋 涛,等. 基于嵌入式的智能温室监控系统[J]. 中国农机化学报,2016,37(6):234-237.

[8]赵富强,王长坤,李 露,等. 基于STM32、以太网和ZigBee技术的智能家居系统的设计[J]. 测控技术,2016,35(4):94-97.

猜你喜欢

光照度工控触摸屏
光照度传感器在智能家居照明系统中的应用
PLC和触摸屏在卫生间控制系统的应用
工控速派 一个工控技术服务的江湖
“农地种电”型光伏电站可种植区域光温环境参数研究
工控速浱 一个工控技术服务的江湖
热点追踪 工控安全低调而不失重要
基于攻击图的工控系统脆弱性量化方法
投射式多点触控电容触摸屏
触摸屏项目移植在自动化系统升级中的应用