基于GPRS的ZigBee协调器网关设计通信

发布者:荣耀使者最新更新时间:2019-11-09 来源: eepw关键字:GPRS  ZigBee协调器  网关 手机看文章 扫描二维码
随时随地手机看文章

摘要:介绍了一种可进行远程监测和控制的数据采集系统。多个测控节点组成ZigBee无线传输网络,利用GPRS模块连接因特网扩展传输范围,与基于LabVIEW的上位机程序进行TCP/IP协议通信,从而实现远程监控。下位机设计了数据帧和采集控制指令;协调器网关可对数据进行选择性接收和处理,并实现断线后自动连接;上位机完成对采集数据的解析、显示以及保存,并能发送控制指令。

0 引言
ZigBee协议是一种基于IEEE 802.15.4标准的低功耗个域网协议,其主要特点是低复杂度、自组织、低功耗、低数据速率以及低成本,普遍应用于自动控制和测量领域,可以嵌入各种设备,是一种数据传输可靠性高的近距离无线组网通信技术。而GPRS模块则是通过手机终端连接因特网来实现数据的双向传输,它的协议规程体现了无线和网络相结合的特征。因此可以通过GPRS技术来拓展ZigBee测量控制网络的作用范围。目前GPRS的数据传输主要是基于TCP和UDP两种通信协议,其中TCP是面向连接的协议,提供IP环境下的数据可靠传输,适用于可靠性要求比较高的数据通信系统,而UDP不需要建立连接即可开始传输数据,通信效率较高,但可靠度不高,适用于一次只传输少量数据的场合LabVIEW作为一种图形化编程语言开发环境,为学术界、工业界和研究实验室所广泛接受,运用内嵌的TCP/IP网络通信协议组通信,可以直接调用TCP模块完成流程图编写,而无需过多考虑网络底层实现,使用该软件可方便完成上位机测量和控制程序的编制。

1 网络组建整体方案
系统网络组成如图1所示,首先由SHT11数字温湿度传感器和CC2530芯片的ADC通道组成传感器数据输入通道,输入的信息经CC2530芯片采集处理后打包无线发送到协调器节点,然后协调器节点利用串口2将数据发送给STC12C5A32S单片机,单片机将收到的数据进一步处理后,通过另一串口把有效数据传送至华为GTM-900C模块,最后GPRS模块利用Internet把最终数据发送至上位机,并同时监听上位机指令,一旦接收到指令将转发给协调器直至各采集控制节点,从而实现数据的双向传输。

a.JPG



2 下位机数据分析
协调器网关需要把测控节点无线传输过来的数据透明发送至上位机,有效的数据帧通过下位机编程为固定长度是20 B的数据,有些字节可变,有些字节是固定的。比如一个数据帧用十六进制表示为:FE 0F 46 87C6 E9 02 00 09 00 1A 21 00 00 48 9E 00 00 00 07。其中FE为每帧开始的字节;0F,02 00,09 00是固定的字节,表示数据包和有效数据位,46 87为接收标志;最后一个字节07是前面19个字节的异或运算值,C6 E9为传感器节点16位地址号,随着数据来自不同节点变化;1A为节点温度的整数部分,换算为十进制值为26 ℃,可变;21为节点10倍片上电压值,换算至十进制值为33 V,可变;0000为父节点地址;48为节点相对湿度值,转换至十进制值为72%,可变;9E为节点温度的小数部分,换算为十进制值的算法是(9×16+15)/256=0.62℃,可变;00 00 00为预留下来的3 B,用于其他传感器节点数据的传送。


协调器网关同时也接收上位机的命令数据并通过ZigBee网络发送至具体节点。命令数据为3 B,前2个字节为目标地址,第3个字节为采集控制命令。如设置80为停止采集指令,40为开始采集命令,01,02,03为采集周期选择命令。协调器地址是固定的十六进制数0x0000,其他传感器节点地址与之不同,因此当发送的前两个字节为0000时,可以此做为向全体传感器节点广播命令的判据。如果前两个字节是具体的单个节点地址,则只有相应节点接收到控制命令。


3 ZigBee协调器GPRS网关软件设计
ZigBee协调器GPRS网关软件设计流程如图2所示。其中等待GPRS注册成功是查看AT+CGREG?指令是否返回1或5,返回则表示GPRS模块上网注册成功;APN设置为CMNET;PPP拨号用AT%ETCPIP=\”\”,\”\””指令;域名解析指令AT%DNSR=”xxxx.3322.org”将返回与此域名绑定的IP;再用连接服务器指令AT%IPOPEN=“TCP”,xxx.xxx.xxx,1234连接上位机IP及监听端口。

b.JPG


数据传输程序的设计是重点,数据传输包括将采集到的数据透明上传至TCP服务器以及上位机指令的检测和通信是否掉线的检测。串口2接收到FEOF帧头后再执行AT指令将有效测量数据透明上传,收到心跳帧636F 6F6E后也透明上传,收到其他字符则不处理。当串口1接收缓存中有%IPCLOSE字符串时表示通信断开,此时则在下位机程序中重新执行连接服务器程序直至再次连接成功,保证数据通信可靠。

4 上位机程序设计
整个上位机软件设计流程如图3所示,即编写一个TCP服务器程序。采用LabVIEW通信工具中TCPListen来侦听客户端的连接请求,建立连接后,利用TCP Read读取传输的数据,工作模式设置为standard,即等待直至读取所有“读取的字节”中指定的字节或“超时毫秒”用完,返回目前已读取的字节,如字节数少于请求的字节数,则返回部分字节并报告超时错误。由于数据帧通过下位机编程为固定长度是20 B的数据,心跳帧为4 B的数据,因此在配置TCP Read函数时,要将“读取的字节”设置为20,“超时毫秒”设置为0。这样既可以侦听到心跳帧,又不至于因心跳帧的4 B打乱数据帧的20 B而导致数据错误。程序控制部分可向下位机发送控制指令,实现对单个或多个节点数据采集周期以及开始结束的控制,以适应不同的工作场合。主要原理是利用TCP Wtite函数向已建立的连接发送指令,程序中两次利用TCP Write函数,第一次写入指令的长度,第二次写入指令的内容。

c.JPG

数据处理程序如图4所示。在数据处理的过程中,只需要处理数据帧,心跳帧是不用进行处理的,因此有必要对心跳帧进行剔除。由于下位机编程时以十六进制FE作为每个数据帧开始的字节,而心跳帧则为十六进制636F 6F6E,因此在服务器程序进行数据处理前可先检测数据的帧头,这样即可将数据帧和心跳帧分别开来。具体做法便是利用String Subset函数截取每帧数据的第一个字节,然后与十六进制FE比较,再运用Case Structure的方式组织,如果相等,则进行处理,不相等的情况则不采取任何动作,只需保持之前的数据即可。这样不仅可以避免错误接收结果,还可提高程序的运行效率。

d.JPG


数据处理部分首先利用String To Byte Array函数将接收的字符串保存为字节数组,然后利用Search1D Array函数搜索到第三个十六进制字节46,进一步增强数据读取的可靠性,使用Index Array函数将数组中相应的子节点地址、温度、相对湿度、电压值字节数据提取出来,并利用数值运算函数及相应的字符串处理函数将需要的参数以十进制字符串形式送到Chart控件中显示波形。不同节点的信息需要显示在不同的Chart控件中,此时的实现思路就是判断不同节点的地址,然后利用Case Structure进入不同的事件结构。在历史数据的存储方面主要是通过Write To Spreadsheet File子VI把数据写入电子表格,以此来实现历史数据的方便查看。

e.JPG


整个系统经过调试后运行正常,下位机与上位机连接良好,数据传输通畅,运行效果如图5所示。

5 结语
下位机设计的网关能够选择性透明发送有效数据和心跳帧字节,不仅提高了发送效率,而且保障了上位机接收数据的可靠性,在服务器与GPRS模块通信中断后,会立即重新申请连接直至再次连接成功。上位机程序设计的TCP服务器界面友好而简洁,能够分辨出有效数据和心跳帧,并可靠地解析出数据帧的信息,显示温度以及湿度的变化趋势,同时将历史数据写入电子表格,方便保存和查看。本系统可移植性强,应用范围广,可用与粮情监测以及温室环境的监测,具有较大的实际参考价值。


关键字:GPRS  ZigBee协调器  网关 引用地址:基于GPRS的ZigBee协调器网关设计通信

上一篇:对PWM电路关键点波形进行自动测量并输出的判断
下一篇:在无人机制导、导航与控制中应用半实物仿真

推荐阅读最新更新时间:2024-11-06 22:26

基于GPS/GPRS的车辆移动监控终端的设计与实现
车辆监控系统是融合了全球卫星定位技术、地理信息技术和无线通信技术于一体的综合系统。该系统将移动车辆接收到GPS数据(经纬度、高度、时间、速度等)进行解析,并实时地通过无线通信信道上传至监控中心。监控中心在电子地图上对被监控车辆的参数进行显示监控和查询,同时利用无线通信链路向移动终端发送控制和消息。该系统适用于不同的监控场合,经济效益和社会效益明显,可广泛地应用于客运、银行、公安、物流行业、车辆自动导航、公交智能交通管理等领域。 1 GPS与GPRS 全球定位系统(Global Positioning System,GPS)是美国从上世纪70年代开始研制的具有在海、陆、空全方位实时三维导航与定位能力的新一代卫星导航与定位系统,由
[应用]
基于嵌入式系统的GPRS系统的设计
 嵌入式系统就是一个具有特定功能或用途的计算机软硬件结合体,或指装入另一个设备并且控制该设备的专用计算机系统。嵌入式系统的最大特点是其具有目的性和针对性,即每一套嵌入式系统的开发都有其特殊的应用场合与特定功能。嵌入式系统包含硬件和软件两部分:硬件架构以嵌入式处理器为中心,配置存储器、I/O设备、通信模块等;软件部分以软件开发平台为核心,向上提供应用编程接口API,向下屏蔽具体硬件特性的板级支持包BSP。嵌入式系统中,软件和硬件紧密配合,协调工作,共同完成系统预定的功能。   GPRS是General Packet Radio Service的简称,即通用无线分组业务。它是基于现在运行的GSM基础上发展的数据业务,类似于固定交换技
[工业控制]
基于嵌入式系统的<font color='red'>GPRS</font>系统的设计
GPRS DTU在自动售货机中的应用
随着 自动售货机 在国内的快速普及,运营商对众多售货机的高效管理依赖于连接数据中心的它。 随着国内经济的高速发展,自动售货机在中国的普及和应用已是必然趋势。目前国内自动售货机市场走势已逐渐明晰,自动售货机逐步从沿海经济发达地区和各大中城市向内陆和次发达地区延伸,逐步从高级宾馆、地铁、机场等豪华高档场所向高中档社区普及,大有星火燎原之势,可以说是市场潜力无限。但是,市场上的自动售货机在使用过程中经常出现料道缺货、机器坏等故障,同时因自动售货机的管理人员没有及时了解故障情况、处理而影响了售货机的运作,而目前自动售货机故障的申报只能通过管理人员定时巡检或民众的电话申报,这样不但延误了故障处理的时间也影响了运营公司的服务质量。  
[嵌入式]
基于AVR ATmega128的工业网关的实现
  1 引言   如今,电子技术发展迅猛,尤其是单片机已广泛地应用于通信、交通、家用电器、便携式智能仪表、机器人制作等领域,产品功能、精度和质量大幅度提高,且电路简单,故障率低,可靠性高,成本低廉。在单片机某些应用方面,对网络灵活性和多样性需求的不断增加,网络之间的互联显得越来越重要。工业网关为桥接不同现场总线网络提供了一种解决方案。   2 网络拓扑结构   网络连接的拓扑结构如图1所示。   (图1)   RS-232C是广泛应用的串口通信标准,但因其推出较早,在现代网络通信中已暴露出数据传输速度慢、传输距离短、接口处各信号间容易产生干扰等明显的缺点。RS-485是一种多发送器的电路标准,它扩展了RS-422A的性能
[单片机]
基于AVR ATmega128的工业<font color='red'>网关</font>的实现
MSP430F149的无线温湿度环境实时监测系统
引言 随着物联网技术的快速发展和各种大数据中心的建立,各种数据监测系统特别是无线数据监测系统应运而生,其中,无线温湿度监测系统就是一种非常具有代表性的无线监测系统。虽然,无线温湿度监测系统结构和功能都很简单,但是,其在工农业生产和科研工作中,具有很高的使用价值。目前,无线温湿度监测系统主要由中心控制单元、温湿度采集单元和无线数据传输单元构成。其中,中心控制单元大都采用8位单片机作为主控制器,如51单片机、AVR单片机、PIC单片机等;温湿度采集单元一般采用湿敏电阻和热敏电阻,或者采用集成温湿度传感器,如DS18B20、DTH11、AM2301等;无线数据传输单元多采用ZigBee无线传感网络。 这种系统成本较低、性能稳定,能够满足
[单片机]
MSP430F149的无线温湿度环境实时监测系统
联发科技推出家用物联网网关应用的SoC
联发科技推出业界首款专为家用路由器、智能路由器及物联网网关而设计的802.11n 2T2R 系统单芯片解决方案MT7628 相比市场上同类产品耗电量低18%,物料清单成本节省10% (北京讯) 2014年9月16日 ──联发科技今天发布业界新一代的2T2R 802.11n Wi-Fi AP/路由器系统单芯片解决方案 (SoC) MT7628。这款全新SoC为智能家庭内的数据、语音和影像应用程序提供高数据传输率,而且耗电量远低于目前市场上其他同类产品。MT7628让设备制造商以最低物料清单(BOM)成本生产各种路由器相关的产品。 MT7628整合2T2R 802.11n Wi-Fi无线射频及580MHz MIPS® 24KEc
[网络通信]
基于SOPC的分布式干扰系统嵌入式网关设计
      0 引言   分布式干扰系统是一种综合化、一体化、小型化、网络化和智能化系统,是将众多体积小,重量轻,廉价的小功率侦察干扰机装置在易于投放的小型平台上,撒布在接近被干扰目标空域地,通过指令启动,自主组网,并根据控制对敌方雷达网、通信网、制导网和预警机等电子信息系统实施接近式侦察和干扰,这将在未来的电子对抗中发挥重要作用。分布式干扰系统采用逼近的分布式网络化结构,形成一种“面对面”的电子战系统,共同完成对敌信号的探测、定位、干扰任务。因此,嵌入式网关是分布式干扰系统研究的关键技术之一。目前国内对分布式干扰系统的研究还停留在理论基础上,而对其关键技术的研究不多。本文首次在现场可编程门阵列(Field Programma
[嵌入式]
mC/OS-II在GPRS终端系统中的应用
  实时嵌入式操作系统mC/OS-II面向中小型嵌入式应用,包含全部功能模块的内核大约为10KB,RAM的应用量主要与系统中的任务数有关。   GPRS是在目前运行的GSM网络基础上发展起来的数据业务,可以采用与GSM同样的调制技术、频率,以及同样的TDMA帧结构。利用现有的基站子系统(BSS),GPRS从一开始就可以提供全面的覆盖。   GPRS终端系统的硬件组成   GPRS终端系统主要由控制部分和GPRS无线模块组成,如图1所示。 图1 GPRS终端的硬件组成原理   为了适应嵌入式技术在GPRS通信中的应用,系统的控制部分采用了S3C44B0x芯片。   S3C44B0x是16/32位RISC微处理器, 为
[单片机]
mC/OS-II在<font color='red'>GPRS</font>终端系统中的应用
小广播
最新测试测量文章
换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved