ZigBee协议栈wireless UART模板网络自启动的实现

时间:2013-07-12

  摘 要:ZigBee控制是将下位机微处理器采集的现场环境和运行信息通过接口电路发送到ZigBee节点,从而控制工业过程的一种无线网络系统.文中给出了在Freescale ZigBee协议栈wireless UART应用模板中简化网络启动的步骤,同时给出了在源代码中需要修改的内容.

  0 引 言

  在工业应用领域,ZigBee工业控制的主要原理是下位机利用微处理器采集现场环境和运行信息,并通过接口电路将现场信息发送到ZigBee 节点,ZigBee 节点通过ZigBee 网络发送到ZigBee 协调器,协调器将收到的信息转发到上位管理计算机,上位机对采集的信息进行处理,并将相关控制命令通过ZigBee 网络发送到下位机.

  1 ZigBee 工业控制的基本应用结构

  ZigBee工业控制的基本应用结构如图1 所示.在这种工业控制结构中,ZigBee 网络主要实现网络传输功能,而Freescale ZigBee 协议栈提供的wireless UART 模板具有ZigBee 和UART 数据收发的基本功能函数.

  在wireless UART 模板中,协调器.路由器.终端设有网络启动( 加入) 按键,网络运行模式( 确认模式.应用模式)切换按键和节点绑定按键.每次启动网络时,都需按序进行相应的按键操作.在系统运行过程中,当有节点需要重新启动.新节点加入等情况发生时,就需要重新启动所有节点并按序重新操作后,才能进入运行状态.下面介绍一种自动启动( 加入)网络的方法,同时给出相应的源代码文件及需要修改的程序代码,以供参考.

  1.1 网络建立

  所谓网络建立, 就是启用协调器并加入路由与终端, 此时可在BeeApp.c 文件void BeeAppInit(void) 函数的UartX_SetRxCallBack(UartRxCallBack) 语句后增加 ZDO_Start(gStartWithOutNvm_c).

  1.2 去除绑定

  去除绑定, 可将其修改为16 位网络地址模式, 即在BeeApp.c 文件中修改以下函数的内容:

  (1) 在void BeeAppInit(void) 函数中修改如下:

  gSendingNwkData.gAddressMode =gZbAddrMode16Bit_c;

  (2) 在static void TxZigBeeAck(void).void TxZigBeeData(void)

  及相关ZigBee 无线发送的各个函数中修改如下:

  afAddrInfo.dstEndPoint =1;

  afAddrInfo.dstAddrMode = gZbAddrMode16Bit_c ;

  afAddrInfo.dstAddr.aNwkAddr[0]=0xff;

  afAddrInfo.dstAddr.aNwkAddr[1]=0xff; //{0×00,0×00};//

  ZC 广播方式

  其中, afAddrInfo.dstAddr.aNwkAddr[1].afAddrInfo.

  dstAddr.aNwkAddr[0] 为ZigBee 无线发送的16 位网络目的地址,协调器的网络地址为0×0000,协调器以广播方式发送时目的地址为0xffff,点对点发送时,应使用接收端的网络地址.

  2 自动进入应用模式

  自动进入应用模式时,可将ASL_UserInterface.c 文件的ASL_UpdateDevice 函数修改如下:

  case gZDOToAppMgmtZCRunning_c:

  ASL_ChangeUserInterfaceModeTo(gApplicationMode_c);

  ASL_DisplayChangeToCurrentMode(gmUserInterfaceMo

  de);

  3 修改按键功能

  事实上, 也可以修改按键功能, 具体可在ASL_UserInterface.c 的ASL_InitUserInterface 函数中做如下修改:

  // KBD_Init(BeeAppHandleKeys);当然,也可以通过修改BeeApp.c 的BeeAppHandkeys(key_event_t event)) 函数实现相应的按键功能.

  A Method of ZigBee Network Self-starting in FreescaleWirelessUART Sample

  YANG Da –sheng

  (NeiMongol Electronic information Vocational TechnicalCollege, Hohhot 010070,PRC)

  Abstract: To simplify the ZigBee network boot stepsin Freescale UARTwireless sample ,a method was given insource code .

  Keyword: ZigBee stack ;Binding ;network self-starting ;

  4 结 语

  ZigBee工业控制就是将下位机利用微处理器采集的现场环境和运行信息通过接口电路发送到ZigBee 节点,从而控制工业过程的一种无线网络系统.本文给出了在FreescaleZigBee 协议栈wireless UART 应用模板中简化网络启动的步骤,同时给出了在源代码中需要修改的内容,以期能对有兴趣者有所启发.

上一篇:基于提高LED阵列远场照度的设计
下一篇:ITS 中汽车电子检测技术的研究和设计分析

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料