基于ZigBee的深水网箱养殖无线传感网络节点设计

2017-03-27 12:21黄小华陶启友郭根喜薛家祥
电子设计工程 2017年6期
关键词:终端设备功能模块网箱

胡 昱,黄小华,陶启友,郭根喜,薛家祥

(1.中国水产科学研究院南海水产研究所 农业部南海渔业资源开发利用重点实验室 ,广东 广州510300;2.华南理工大学 广东 广州510640)

基于ZigBee的深水网箱养殖无线传感网络节点设计

胡 昱1,2,黄小华1,陶启友1,郭根喜1,薛家祥2

(1.中国水产科学研究院南海水产研究所 农业部南海渔业资源开发利用重点实验室 ,广东 广州510300;2.华南理工大学 广东 广州510640)

利用ZigBee技术提出了一种深水网箱养殖环境监测方法,对监测网络中的传感器节点进行了软硬件设计。根据无线传感器网络系统的总体结构与硬件设计方案选择合适的器件,完成了节点的硬件电路设计,包括ZigBee节点RF模块电路、ZigBee父节点通讯功能模块电路、ZigBee子节点通讯功能模块电路的设计。进行了ZigBee节点的软件设计,包括协调器设备ZigBee通讯软件、终端设备ZigBee通讯软件、终端设备控制软件。无线传感网络能可靠的采集、处理、传输深水网箱养殖环境信息数据,这为利用传感器技术和ZigBee无线网络技术进行远程实时监测与控制应用打下了坚实的技术支持。

深水网箱;ZigBee;监控;无线传感网络节点

随着无线传输技术的发展,无线传感器网络技术以其低成本、低功耗、分布式和自组网的特点,可以较好地解决以上问题。因此,针对深水网箱养殖环境建立监测监控系统,对养殖所需的温度、盐度、溶解氧含量、pH等影响鱼类生长的环境因素进行实时的监测,为提高现代水产养殖监管水平的一个重要措施[1-4]。

针对深水网箱养殖场环境建立在线监测系统,在养殖过程中对养殖对象、网衣、养殖环境等进行全面地监测,采用基于ZigBee技术组成无线传感器网络,采集和传输各种网箱养殖需要的温度、盐度、溶解氧含量、PH值等参数。一方面可以进行远端参数的采集,另一方面减少线缆的布置,同时又能保证数据的可靠传输。

1 系统总体方案设计

深水网箱养殖无线传感网络主要由3部分所组成,分别是:网箱监测各类传感器节点、服务器端、手机移动客户端。图1所示的整个深水网箱监控监测系统的总体设计方案。

图1 深水网箱养殖监控管理系统的总体设计方案框图

网箱监控传感器ZigBee从节点将通过CAN总线采集到的养殖环境信息数据通过ZigBee无线网络传送给上位机服务器端ZigBee主节点。服务器端监控平台通过ZigBee无线网络与网箱监控传感器进行数据通信,手机客户端监控则通过登录服务器端来获取网箱养殖环境信息数据同时还可通过服务器端对网箱监控传感器设备进行控制。

2 节点硬件设计

系统硬件由ZigBee节点RF模块、父节点通讯功能模块、子节点通讯功能模块3部分组成。该系统中涉及到的硬件部分仅为ZigBee父节点硬件部分和ZigBee子节点硬件部分。考虑到ZigBee节点RF模块电路的通用性,故将RF模块电路单独设计。

2.1 ZigBee节点RF模块电路

ZigBee节点的RF模块电路由CC2530芯片、CC2591芯片、晶振电路、RF收发电路所构成。为调试和扩展的方便,将RF模块电路与其他电路分别单独设计,RF模块电路独立设计在一块PCB板上,并引出所有的I/O引脚,与通讯功能模块电路可以实现灵活对接。

采用TI公司的CC2530F128 ZigBee芯片,此芯片 是 基 于 2.4 GHz IEEE802.15.4、ZigBee以 及RF4CE上的一种完整的片上系统解决方案;集成了行业领先的RF收发器、标准的增强型8051 CPU、128 kB可编程闪存以及8 kB RAM;其输出功率高达4.5 dB,并可以通过相应软件进行设置;具有强大的外设功能,有串口,SPI等强大的通信接口[5-7]。

考虑到海上无线信号衰减较快,因此需要选用发射功率放大功能的芯片。功率放大芯片的选择主要考虑到芯片放大能力,采用TI的高度集成2.4 GHz RF的CC2591芯片当作CC2530的射频前端芯片。CC2591集成的功率放大器可将输入功率增加+22dBm,低噪声放大器则可将接收机的灵敏度增加+6 dB,这在很大程度上增强了通信的质量和距离。

2.2 ZigBee父节点通讯功能模块电路

ZigBee父节点所需要的功能就是实现与ZigBee子节点的无线通讯,同时通过串口将通讯结果在上位机的友好界面上体现出来。需要有供电电路、RS232转USB接口转换电路、仿真调试接口电路、ZigBee节点RF模块接口电路即可。

如图2所示为ZigBee父节点的通讯功能模块电路原理图。图2(a)为父节点的串口通信电路;图2(b)为父节点的RF模块接口电路。

2.3 ZigBee子节点通讯功能模块电路

ZigBee子节点所需要的功能就是实现与ZigBee父节点的无线通讯,而网箱养殖终端设备具备CAN数据总线采集网箱养殖环境信息数据。终端设备的功能均需要MCU的控制才能实现,考虑到子节点通讯功能模块底板的通用性和扩展性以及编程的方便性,采用意法半导体公司推出的Cortex-M3内核的STM32F103RCT6芯片,并将CAN总线和液晶显示接口综合在同一块功能板。

ZigBee子节点所需要的通讯功能模块电路结构需要有供电电路、MCU外围电路、CAN数据总线接口电路、电平转换电路及液晶显示接口电路、ZigBee芯片和MCU控制芯片仿真调试接口电路、ZigBee节点RF模块接口电路等。

图2 ZigBee父节点的通讯功能模块电路原理图

3 ZigBee节点软件研究

3.1 协调器设备ZigBee通讯软件

在整个ZigBee无线通讯网络系统中,协调器设备在整个监控管理系统中是上位机与ZigBee终端设备的纽带,它将从ZigBee终端设备接收到的控制或生产信息数据解析成透明的数据,通过串口传给上位机,或将从上位机得到的控制或生产信息数据,封装成ZigBee网络协议数据发送到ZigBee网络的终端设备。

ZigBee设备上电后首先会进行一系列的初始化过程,包括硬件层的初始化,MAC层的初始化,NWK层的初始化,ZDO层的初始化和OSAL的初始化等过程。ZigBee协调器设备初始化完成后,便自动构建一个PAN网络。当网络有终端设备申请加入网络时,就会触发终端设备入网事件,同时也会等待其他终端设备加入PAN网络,终端设备成功加入PAN网络,协调器设备进入数据接收和发送事件触发状态。

ZigBee协调器设备的数据接收和发送包括两个方面:一方面通过串口口接收来自上位机的控制数据,即触发串口接收事件,由OSAL进行处理,把自定义的串口数据格式解析成有效数据。解析成有效数据完成后,APL层则调用 afStatus_tAF_Data Request(afAddrType_t*dstAddr,endPointDesc_t*srcEP,uint16 Cid,uint16 len,uint8 *buf,uint8 *transID,uint8 options,uint8 radius),在此函数内调用APS层发送函数,并根据APS数据格式对有效数据进行封装。接着触发MAC层数据发送任务,调用MAC层发送函数,并根据MAC层数据格式进行封装。最后触发PHY层数据发送任务,调用PHY层发送函数,并根据PHY层数据格式进行封装。以上数据封装任务完成后,PHY层将使能协调器设备的RF发送器,并检测当前信道是否处于空闲状态,当到处于空闲状态时,启动发送,向终端节点发送数据[8-10]。

另一方面ZigBee协调器设备的RF接收器接收来自终端设备的RF发送器发送的PHY层数据,并触发OSAL服务任务调度机制,首先启动HAL层数据服务任务,并根据PHY层数据格式进行解析,解析出MAC层有效数据;接着触发MAC层数据服务任务,并根据NWK层数据格式进行解析,解析出NWK层有效数据;然后触发NWK层数据服务任务,并根据APL层数据格式进行解析,解析出APL层有效数据;最后将解析出的APL层有效数据传递到APL层中,并保存在数据缓冲器内,完成数据解析的过程。

3.2 主程序

一个控制程序必不可少的部分就是主程序,主程序是一个程序开始的入口,是实现程序功能的主工作流程。终端设备上电后,首先进行一系列的初始化过程,这些初始化主要包括目标板硬件的初始化、外设接口的初始化以及相关变量的初始化,然后程序便进入一个死循环,依次循环检测各事件是否触发,一旦触发则调用该事件的子程序,实现该事件处理。终端设备控制软件的主程序流程图如图3所示。

图3 终端设备控制软件的主程序流程图

3.3 SPI通信子程序

STM32F103RCT6与ZigBee节点RF收发器之间的通信是通过SPI串行接口来完成的,通信的数据量较大,为了减轻CPU的负担,使控制程序执行得更有效率,采用中断和DMA模式[11-13]。

SPI串行接口进行数据发送时,需要检测SPI_SR寄存器中的TXE位,当数据寄存器中有数据时,此时TXE位为0,当所有数据从数据寄存器的发送缓冲区传送到移位寄存器时,此时TXE位被置1,该状态下才可再向数据寄存器中写入数据。

SPI串行接口的DMA模式,就是当SPI-SR的TXE或RXNE位为1时,向对应的DMA通道发送请求,DMA通道接到请求会发出应答信号,SPI接收到应答信号后撤销对DMA的请求信号,DMA也撤销应答信号,SPI的数据传输开始,数据传输结束后,DMA结束。

3.4 CAN通讯子程序

STM32F103RCT6与网箱监控传感器设备之间的通信是通过CAN总线接口的中断来完成的,CAN总线的应用最重要的就是接口配置、初始化过程以及数据的发送和接收[14-16]。

CAN总线应用的初始化过程包括CAN单元初始化和CAN报文过滤器初始化,其中CAN单元初始化最重要的就是波特率的设置。波特率可设置如下:

CAN_InitStructure.CAN_SJW=CAN_SJW_1tq;//重新同步跳跃宽度1个时间单位

CAN_InitStructure.CAN_BS1=CAN_BS1_8tq;//时间段1为8个时间单位

CAN_InitStructure.CAN_BS2=CAN_BS2_7tq;//时间段2为7个时间单位

CAN_InitStructure.CAN_Prescaler=9;//设定了一个时间单位的长度为9

STM32F103RCT6的数据传送是通过发送报文和接收报文来实现的。发送报文时,首先选择一个空的发送邮箱;接着对标识符、数据长度以及待发数据经行设置;然后请求发送,此时邮箱就不再是空邮箱。请求发送后,邮箱立刻进入挂号状态,并等待变成最高优先级邮箱。一旦邮箱变为最高优先级,其状态就变成预定发送状态。当CAN总线进入空闲模式时,预定发送状态的邮箱中的报文就立刻被发送。邮箱中的报文被发送成功后,就立刻变为空置邮箱。报文发送流程图如图4所示。

接收一个报文时,首先将其标识符与配置在标识符列表模式的过滤器经行比较。若匹配,将该报文存放在相关联的FIFO中,且所匹配的过滤器序号将被存入过滤器匹配序号中;若没有匹配,将该报文标识符继续与配置在标识符屏蔽位模式的过滤器相比较。若该报文标识符未与过滤器中的任何标识符匹配,则通过硬件丢弃该报文,并不对软件有任何干扰。报文接收流程图如图5所示。

图4 报文发送流程图

图5 报文接收流程图

4 结束语

深水网箱养殖无线传感网络节点设计实现了以ZigBee技术进行数据传输的无线传感节点网络系统,并分别给出了硬件系统中ZigBee节点RF模块、父节点通讯功能模块、子节点通讯功能模块的设计方法,对ZigBee节点协调器设备ZigBee通讯软件、终端设备ZigBee通讯软件、终端设备控制软件进行了设计。无线传感网络能可靠的采集、处理、传输水环境信息数据,这为利用传感器技术和ZigBee无线网络技术进行远程实时监测与控制应用打下了坚实的技术支持。

[1]陈华凌,陈岁生,张仁政.基于ZigBee无线传感器网络的水环境监测系统 [J].仪表技术与传感器,2012(1):71-73.

[2]Park D H,KangBJ,ChoKR,et al.A study on greenhouse automatic control system based onwireless sensor network[J].Wireless Personal Communications,2011,56(1):117-130.

[3]Li X,Cheng X,Yan K,et al.A monitoring system for vegetable greenhouses based on a wireless sensor network[J].Sensors,2010,10(10): 8963-8980.

[4]LIN Y G.An Intelligent Monitoring System for AgricultureBased on ZigbeeWirelessSensor Networks [J].Advanced Materials Research,2012,383(1),4358-4364.

[5]曹斌.ZigBee无线传感器网络协议改进及实现[D].上海:上海交通大学,2010.

[6]马海.基于ZigBee无线传感器网络的远程数据监测的设计与实现[D].武汉:武汉理工大学,2010.

[7]李宗磊,侯西南.基于.NET平台的智能安全监控系统及联网系统的研究与应用[J].科技情报开发与经济,2010,20(9):104-105.

[8]刘旻,何晓英.基于无线自组网技术的监控系统设计[J].电子设计工程,2011,19(17):113-116.

[9]彭燕.基于ZigBee的无线传感器网络研究 [J].现代电子技术,2011(5):49-51.

[10]周利娜,周建平,许燕.基于STM32F103C8T6和ZigBee的油井压力监控系统研究[J].现代电子技术,2014(6):38-41.

[11]孙剑,董超,夏继媛.基于Android的Socket(TCP/ IP)在LED灯光控制系统中的应用[J].深圳职业技术学院学报,2012(5):19-23.

[12]陈浩,张伟.基于java socket的TCP/IP网络编程[J].计算机光盘软件与应用,2013(2):35-37.

[13]左丹霞.C#语言开发中的数据库编程技术分析[J].通讯世界,2015(19):252-253.

[14]丁凡,周永明.基于STM32和ZigBee的无线校园火灾报警系统设计 [J].微型机与应用,2012(6): 43-45.

[15]亢雪琳.基于STM32的CAN总线通信设计[D].长春:吉林大学,2013.

[16]孙晓梦,王志斌.基于TCP的多线程Socket通信实例[J].辽东学院学报:自然科学版,2013(3):178-182.

Design of a ZigBee wireless sensor network node for aquaculture monitoring

HU Yu1,2,HUANG Xiao-hua1,TAO Qi-you1,GUO Gen-xi1,XUE Jia-xiang2
(1.South China Sea Fisheries Research Institute,CAFS Key Lab.of South China Sea Fishery Resources Exploitation&Utilization,Guangzhou 510300,China;2.South China University of Technology,Guangzhou 510640,China)

This paper proposes a wireless environmental monitoring method for aquaculture based on ZigBee technology,and the hardware and software hardware design for the monitoring network and sensor nodes is presented.According to the architecture of the wireless sensor network system and the hardware design plan,appropriate devices are selected to realize the desired functionality in each sensor node.The necessary devices includes the RF ZigBee transceiver,the communications module for the ZigBee parent node,the circuit design for the communications module of the ZigBee child node.The software design for the ZigBee node is also carried out,including the communications software of the ZigBee coordinator device and the ZigBee terminal equipment,and the control software for the terminal equipment.The ability of wireless sensor networks to collect,process,and transmit aquaculture environmental information reliably serves as solid technical support for remote real-time monitoring and control applications by combining sensor technology and ZigBee wireless network technology.

deep water cage;ZigBee;monitoring;wireless sensor network node

TN602

:A

:1674-6236(2017)06-0100-05

2016-05-25稿件编号:201605227

国家科技支撑计划项目(2011BAD13B11);广东省科技计划项目(2013B0020501001);广东省海洋经济创新发展区域示范专项 (GD2013-D01-001,GD2012-C03-002);广东省省部产学研项目(2013B090600030)

胡 昱(1982—),男,湖北仙桃人,硕士,助理研究员。研究方向:渔业装备信息工程技术。

猜你喜欢
终端设备功能模块网箱
视频监视系统新型终端设备接入方案
10kV配网箱变局放检测案例分析
配电自动化终端设备在电力配网自动化的应用
全国首例网箱豢养江豚繁育成功
基于ASP.NET标准的采购管理系统研究
池塘小网箱养殖黄鳝
车站信号系统终端设备整合及解决方案
输电线路附着物测算系统测算功能模块的研究
M市石油装备公服平台网站主要功能模块设计与实现
功能模块的设计与应用研究