




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于ARM/GPRS/ZigBee技术的无线粮情监控系统的设计与实现 11基于ARM/GPRS/ZigBee技术的无线粮情监控系统的设计与实现周慧玲,甘典文,王智威,张锋辉(北京邮电大学自动化学院,北京 100876)摘要:介绍了一种基于ARM/GPRS/ZigBee技术的无线粮情监控系统。该系统采用无线监测网络结合上位机监控中心的框架,采取ZigBee和GPRS无线通信方案,融合了无线传感器网络、ARM等工控领域技术,实现粮情参数的采集、传输和控制功能。在系统总体框架下,重点分析了Server Node的设计方案,包括其硬件设计和软件设计。最终,对节点性能和整个监控系统进行了测试,证明了其稳
2、定性和可靠性。关键词:ARM;GPRS;ZigBee;无线通信;粮情监控中图分类号:TP274 文献标识码:A 文章编号:1000-8829(2011)02-0011-05DesignandRealizationofWirelessGrainMonitoringSystemBasedonARM/GPRS/ZigBeeZHOUHui ling,GANDian wen,WANGZhi we,iZHANGFeng hui(SchoolofAutomation,BeijingUniversityofPostsandTelecommunications,Beijing100876,China)Abstr
3、act:AsolutionofwirelessgrainmonitoringsystembasedonARM/GPRS/ZigBeeisintroduced.Thissystemcombinesaframeworkofwirelesssensornetworkwithhostcomputermonitoringcenter.Wirelesssensornetworks,ARMandotherindustrialtechnologiesareinvolvedinthesystem,toachievethefunctionsofcollec tion,transmissionandcontrolo
4、ngrainstorageparameters.ZigBeeandGPRSarerespectivelyusedforwirelesscommunicationbetweenGrain Node,Server Nodeandhostcomputer.Underthesystemicframework,thedesignofServer Nodeismainlyanalyzed,includingitshardwaredesignandsoftwaredesign.Finally,nodeperform anceandmonitoringsystemaretestedtoproveitsstab
5、ilityandreliability.Keywords:ARM;GPRS;ZigBee;wirelesscommunication;grainmonitoring 民以食为天,食以粮为先,粮食安全关系到社会的安定和整个国民经济的发展。我国人口众多,耕地有限,而大多数粮仓由于储藏不善,每年造成大量的粮食损耗,严重威胁我国粮食安全。为了保证粮食品质,最大限度地减少粮食仓储过程中造成的损失,必须准确地掌握粮食仓储过程中温湿度等各种粮情参数的变化情况,并做出相应的处理。因此,开发和推广粮情实时监控系统具有非常重要的价值和意义。粮情监控系统利用预埋在粮堆内部的各种不同功收稿日期:2010-05-05作
6、者简介:周慧玲(1965 ),女,河北秦皇岛人,副教授,硕士研究生导师,主要研究方向为计算机辅助设计与制造技术、机电控制与检测等;甘典文(1986 ),男,硕士研究生,主要研究方向为检测技术与自动化装置;王智威(1985 ),男,硕士研究生,主要研究方向为检测技术与自动化装置;张锋辉(1983 ),男,博士,能的传感器节点采集各类粮情参数,传输到上位机,利用信息管理软件进行数据存储、显示、分析处理等操作,对异常情况进行预测和报警,并根据预置控制策略1自动控制通风保粮设备的运行,确保粮食安全。目前,我国大部分的粮情监控系统采用有线通信方式,布线繁琐、成本高、系统扩展性差,鉴于此,提出了一种基于Z
7、igBee+GPRS无线通信的粮情监控系统。ZigBee是一种近距离无线通信技术,适合传感器节点的组网要求;GPRS作为一种远距离无线通信技术,在远程数据传输方面有着独到优势。以上两者优势的互补,在粮情监控系统中具有广阔的应用前景。1 系统总体方案整个系统由以下3个部分构成,如图1所示。 Grain Node。分布于粮仓监测区域内的大量节,12 测控技术 2011年第30卷第2期ZigBee无线收发模块选用ZigBee212模块,它由Atmel公司的ATmega1281+AT86RF212构成。AT mega1281是一款高性能、低功耗的8位单片机,AT86RF212是低功耗低电压800/90
8、0MHz收发器,是Atmel公司推出的首个面向中国无线市场的IEEEP802.15.4c兼容RF收发器,特别适合低成本的Zig4Bee应用。考虑到具体的硬件设计电路图比较繁杂,在此给出Server Node的硬件设计框图,如图2所示。LPC2119是GPRS模块和ZigBee212模块的中间层,通过两个串口分别连接SIM300C与ZigBee212,作为GPRS数据和ZigBee数据的交互层,通过对其软件编程,实现两种网络数据的转换。图1 系统构成示意图并无线发送粮情数据;二是少量的控制节点,实现某些特定的控制功能,如控制风机启停等。所有Grain Node基于ZigBee协议组成星状无线网络
9、,空闲时处于休眠状态,定时唤醒工作。Server Node。一个带有微控制器的网络协调器节点,具备GPRS和ZigBee两种协议数据转换能力,无线接收所有数据采集节点传输的数据,经过处理后通过GPRS模块发送到远程的上位机监控中心,同时也能通过GPRS模块从上位机获得各种设置和控制指令,并把这些指令同步到Grain Node,从而实现对监测网络的设置以及通风控制等功能。上位机监控中心。运行于PC机上的管理软件,通过TCP/IP协议与Server Node进行GPRS通信,实现整个监测网络系统设置和粮情参数的显示、查询、存储以及控制指令下发等功能。图2 Server Node硬件设计框图2 系统
10、硬件设计系统硬件部分由Grain Node和Server Node两部分构成。Grain Node采用ZigBee212模块作为无线收发模块,Server Node由LPC2119+SIM300C+ZigBee212模块构成。以下分析Server Node的硬件设计方案。Server Node处在系统中间层,既要与无线传感器网络进行ZigBee数据交互,又要与上位机监控中心进行GPRS数据交互,这就要求其具有较强的数据处理能力。基于此考虑,本设计方案选用了Philips公司的LPC2119作为微控制器。LPC2119是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI SCPU的微控制器
11、,并带有128KB嵌入的高速Flash存储器,采用64脚封装、极低的功耗、多个32位定时器、4路10位ADC、2路CAN以及多达9个外部中断。GPRS模块选用SIMCom公司的SIM300C。该模块支持GSM/GPRS900/1800/1900MHz,内嵌强大的TCP/IP协议栈,低功耗设计,增强的AT控制指令,应32系统硬件设计主要以LPC2119为中心设计其外围电路,包括电源电路设计、时钟电路设计、复位电路设计、存储器电路设计和接口电路设计等方面。在Server Node电路板上,因很多芯片的工作电压和电流不同,因此电源部分的设计非常关键。整个系统由外部12V直流电源供电,而LPC2119
12、的CPU工作电压为1.8V,I/O工作电压为3.3V,SIM300C的工作电压为4.2V,ZigBee212模块的供电电压为3.3V,因此选择LM2576 5.0、MIC29302及AS1117系列的电压转换芯片,得到各芯片相应的工作电压。电源部分的设计思想如图3所示。图3 电源转换示意图相对电源部分,时钟电路和复位电路的设计相对简单,时钟电路采用11.0592MHz的外部晶振电路,复位电路采用IMT811T复位芯片实现。由于LPC2119具有128KB片内Flash程序存储器和16KB静态RAM,基本能够满足系统需求,又考虑到上位机监控中心IP地址等相关系统参数的存储问题,所以通过基于ARM
13、/GPRS/ZigBee技术的无线粮情监控系统的设计与实现另外此Flash还用于突发的GPRS信号中断时数据的缓存。在外围设备接口电路方面,由于LPC2119和SIM300C以及ZigBee模块均为串口连接,在电路设计上简单可靠,将串口收发引脚交叉连接即可。LPC2119的程序烧写方式采用在系统编程(ISP),即可以通过PC串口将程序下载到片内的Flash中,多次擦除烧写。由于PC串口电平是RS232标准,而LPC2119串口电平是TTL标准,所以硬件电路设计中,增加了一块美信公司的MAX3232电平转换芯片,该芯片最多可进行两路串口的电平转换。相比LPC2119,由于SIM300C和ZigB
14、ee212都是模块化封装,其外围硬件电路设计比较简单。Zig Bee212的串口与LPC2119串口0直接连接,时钟电路采用7.3728MHz的外部晶振电路,并引出外部双排插针形式的JTAG下载调试接口即可完成此模块的外围电路设计。SIM300C模块的串口与LPC2119串口1直接连接,按照模块手册设计模块开关控制电路和SIM卡电路,这两部分电路在SIM300C手册中有具体的电路设计图和详细的说明,故在此不再赘述。在实际应用中,为了增加系统可视化,在硬件电路上增加红、黄、绿3个LED指示灯,可通过其亮灭和闪烁等状态了解Server Node的运行情况,如GPRS连接成功、芯片工作电压正常、接收
15、和发送粮情数据等。13图4 驱动程序结构图3.2 串口通信程序的设计系统的主要功能是实现粮情参数的采集上报和上位机控制命令的下发,所以数据上行和数据下行是整个应用程序中的关键部分,即LPC2119与ZigBee212以及SIM300C的串口通信程序的设计。按照图4所示的设计思想,在定义与串口相关寄存器地址的基础上,以结构体构造新的串口数据类型,结构体成员为函数指针,它们指向编写的具体实现函数,而函数体中的语句直接操作串口寄存器,实现了串口驱动程序。以下为实现串口数据类型主要源代码。typedefstructserial_init_func_tinit; /串口初始化serial_open_fu
16、nc_topen; serial_read_func_tread; serial_write_func_twrite; serial_poll_func_tpol;l /清空串口接收FIFOserial_flush_output_func_tflush_output;/清空串口发送FIFOserial_driver_t;/设置串口中断/串口读取数据/串口发送数据/串口接收数据查询serial_flush_input_func_tflush_input;3 系统软件设计系统软件设计分为3部分:ATmega1281单片机软件编程、LPC2119软件编程和上位机管理软件编程。在此只介绍LPC2119
17、微控制器的软件编程部分。3.1 系统移植与驱动设计思想考虑到系统的稳定性和可靠性,在LPC2119上采用 C/OS 嵌入式实时操作系统。 C/OS 是著名的、源码公开的实时内核,是专为嵌入式应用设计的,其源码绝大部分是用移植性很强的ANSIC编写,与微处理器硬件相关的部分是用汇编语言编写,在设计之初就已经充分考虑了可移植性,所以系统移植工作相5对比较容易,只涉及到修改与处理器相关的代码。C/OS 操作系统中没有对驱动程序定义一个统一的标准接口,为了方便驱动程序的模块化划分,提高程序的可重用性,在软件设计采用了图4所示的驱动程序结构。其中,操作系统只和特定的驱动抽象层通信,无论在抽象层下面对应的
18、是什么类型的设备,对操作系统和应用程序来说都是统一的接口。通过使用C语言函数指针的方法,实现了驱动抽象层的软件设计。通过指向不同驱动子程序的函数指针,可以为同6串口采用中断方式接收数据,提高了串口数据处理的实时性和整个CPU的工作效率。具体来说,LPC2119的串口0收到ZigBee协调器发送的粮情数据并进行处理后,通过向串口1发送AT指令控制SIM300C向上位机上报数据,实现数据上行;LPC2119的串口1收到上位机发送的指令后,通过串口0发送给ZigBee协调器,ZigBee协调器再把指令同步到各个Grain Node,实现数据下行。3.3 应用程序整体设计在成功移植 C/OS 和开发硬
19、件驱动后,使用ADS1.2集成开发环境进行程序开发调试。主函数中首先进行系统初始化,包括LPC2119初始化设置、GPRS模块的初始化设置及网络连接,根据系统需求建立5个任务:系统任务、控制任务、GPRS任务、上行数据任务和下行数据任务。各个任务之间通过信号量机制和延时机制进行切换。多任务结构图如图5所示。系统任务定时进行喂狗、定时向上位机发送心跳帧以及启动数据上传。定时喂狗可以在程序 跑飞 和 死锁 情况下实现自动复位;在数据上传间隔时间较长的情况下,定时发送心跳帧能够防止频繁出现14 测控技术 2011年第30卷第2期格式分别如表1表4所示。表1 粮情数据包包头数据标志数据长度路由级数节点
20、编号粮情数据包尾0xAA0x800xA40x160x01表2 登陆帧帧头0x420x42命令码0x310x39表3 心跳帧帧头0x420x42命令码0x310x38表4 数据帧帧头0x420x42命令码0x340x30Server Node数据长度ID8B2B粮情数据包所有采集节点数据帧尾0x300x44Server NodeID8B帧尾0x300x44Server NodeID8B帧尾0x300x442B15B0xEE0xDD图5 基于 C/OS 操作系统多任务结构图控制任务通过监测系统变量来检测系统状态,进而向GPRS模块发送AT控制指令,如检测到与GPRS模块发送数据相关的系统变量有效后
21、,会通过串口向SIM300C模块发送相应的AT指令来实现数据的发送。GPRS任务负责接收处理GPRS模块的AT指令回复。这两个任务需要互相配合。另外,由于GPRS模块接收到的TCP/IP数据也是通过串口传递给LPC2119,若在操作AT指令时同时在接收TCP/IP数据,会出现TCP/IP数据和AT指令回复混杂情况,所以操作LPC2119接收串口1数据时,需要进行判断并分离处理数据。这部分的程序设计思想如图6所示。4 测试结果4.1 节点性能测试GPRS技术成熟,具有较强的数据纠错能力,能够实现数据远距离的准确传输,故在此只测试Grain Node和Server Node之间的ZigBee通信距
22、离和丢包率。表5和表6分别为无障碍传输和有障碍传输的测试结果,每个距离测试5次,取平均值。由测试数据可知,节点间的ZigBee通信在短距离内还是相当可靠的。表5 无障碍传输测试数据通信距离/m丢包率/%2005001001.415021.220042.3表6 有障碍传输测试数据图6 数据分离处理流程图通信距离/m丢包率/%50150252.7507.110013数据上行任务和数据下行任务是完成数据上下行的功能。根据自定义协议规范,程序中采用了串口数据检测机制,有效避免了可能出现的垃圾数据的干扰,并且串口数据采用环形缓冲区进行存储,数据的读取、发送等操作均采用模块化的函数实现,操作方便可靠。为保
23、证系统数据的可靠传输,数据采集节点与Server Node之间、Server Node与上位机管理软件之间的数据包按照预先定义的协议格式传输。Grain Node中的每个数据采集节点定时向Server Node发送粮情数据包;Server Node与上位机通过GPRS连接成功时,向上位机发送登陆帧;Server Node每隔一定时间向上位机发送一次心跳帧;Server Node汇总所有数据采集4.2 系统综合测试整个系统在实验室环境下进行了测试,10个Grain Node放置在1.5m 1m 1m(长 宽 高)的实验粮仓中的粮面上,组成ZigBee星形网络。1个节点是风机控制节点,通过继电器控
24、制风机启停,另外9个节点为数据采集节点,每隔30s上报一次温度和湿度数据。其中6个节点各自带有1根垂直埋在粮堆中的电缆,每根电缆里面等距分布着3个DS18B20温度传感器,采集粮堆表层、中层和底层的温度,剩余3个节点各自带有1个SHT温湿度传感器,采集粮食表面的温湿度。1个Server Node放置在粮仓外部,与 ,基于ARM/GPRS/ZigBee技术的无线粮情监控系统的设计与实现管理软件进行GPRS通信,基本实现了温湿度参数的采集、传输、显示、历史数据查询以及无线控制风机启停等功能。部分测试数据如表7所示,其中显示的是3个DS18B20温度采集节点和2个SHT温湿度采集节点某次上报的温湿度
25、数据。系统72h不间断测试,运行稳定,整体数据丢失率在0.5%左右,数据上报延迟时间在1s左右,基本上能够满足一般小型粮仓的温湿度监测以及通风控制等应用场合。表7 温湿度测试数据1T1/ T2/ T3/ H/%RH19.0616.6316.62219.0616.4316.68319.0016.4416.4310.2511.35419.26519.3115参考文献:1 张月金,谭军.国内粮情测控系统现状及发展趋势J.农业装备技术,2009,35(4):4-7.2 LPC2119_DatasheetEB/OL.http:/datasheet.eeworld.3 SIMComCo.,Ltd.SIM3
26、00C_HD_V1.02EB/OL.2006.4 AT86RF212_DataSheetEB/OL.http:/datasheet.eeworld.5 LabrosseJJ.嵌入式实时操作系统 C/OS M.第2版.邵贝贝,等译.北京:北京航空航天大学出版社,2005.6 彭德刚,周慧玲,张锋辉.采用嵌入式技术的工程机械监控器的设计与实现J.工程机械,2008,39(3):54-57.7 陈琦,丁天怀,李成,等.基于GPRS/GSM的低功耗无线远程测控终端设计J.清华大学学报(自然科学版),2009,49(2):223-225.8 周立功,王祖林,陈明计,等.ARM嵌入式系统基础教程M.第2版.北京:北京航空航天大学出版社,2008.9 HanJ,LeeH,P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 青少年法治知识讲座
- 创新创业政策应用
- 2024年云南省怒江傈僳族自治州选调生考试(公共基础知识)综合能力测试题各版本
- 2024年咨询工程师(经济政策)考试题库及参考答案(综合卷)
- 2024年一级建造师之一建工程法规题库带答案(夺分金卷)
- 对联文案励志工作总结
- 音乐创作灵感激发方法
- 历史-考研历史模拟试卷10
- 法硕非法学-2019全国法律硕士《398法硕联考(非法学)》真题
- 396经济学类联合-2019考研《396经济类联考综合》真题
- 河南省郑州市管城区2024-2025学年级九年级下学期第一次模拟数学试题(原卷版+解析版)
- 儿童各年龄期保健儿童保健学课件
- 苏教版数学一年级下册(2024)第七单元观察物体(一)综合素养测评 A 卷(含答案)
- 2025年中考英语第一次模拟试卷01(广州专用)(原卷版)
- 《石油工程事故案例分析》课件
- 甘肃卷2024年高考真题化学试题(含答案)
- 2024中国建筑第七工程局有限公司招聘笔试参考题库附带答案详解
- 招标代理机构选取突发情况应急处理预案
- 伦理审查表(一式三份)
- 苏教版五年级劳动与技术下册《7挂钩关注“星星的孩子”》集体备课教案
- 宿舍卫生检查评分表
评论
0/150
提交评论