基于ZigBee的HHPS-I手持操作站的设计与实现*

2014-07-18 11:56谱,何
组合机床与自动化加工技术 2014年4期
关键词:主从串口沈阳

陈 谱,何 方

(1.中国科学院大学,北京 100039;2.中国科学院 沈阳计算技术研究所 高档数控国家工程中心,沈阳 110168;3.沈阳高精数控技术有限公司,沈阳 110168)

基于ZigBee的HHPS-I手持操作站的设计与实现*

陈 谱1,2,何 方2,3

(1.中国科学院大学,北京 100039;2.中国科学院 沈阳计算技术研究所 高档数控国家工程中心,沈阳 110168;3.沈阳高精数控技术有限公司,沈阳 110168)

伴随着数控机床多功能、大体积方向的发展,对无线的数控手持提出了更高的要求。ZigBee作为一种低成本、低功耗、低复杂度的传感网络,适合应用于需长时间工作、电磁干扰较多的工业现场。在分析ZigBee协议原理及协议栈实现的基础上,应用软硬件协同设计和抽象分层的理论,以TI的LM3s9b96+CC2520和CC2530为核心无线模块,进行了无线系统主从站的软硬件设计与开发,实现了HHPS-I型智能手持操作站的功能,并提出一种可复用的软硬件开发模式。

ZigBee;无线数控;智能手持

0 引言

数控加工在实现高速、高精、高效的工业化过程中,对加工过程的实时可控性和可观性提出了更高的要求。由于数控设备体积往往较大,为满足工业现场对大型数控机床加工过程的直观观察和控制,同时摆脱冗杂的线缆的干扰,无线智能手持设备成为必然的选择。由于工业现场环境的复杂性,往往存在较多的电磁干扰,给无线设备提出了难题。

目前,应用于市场的无线数控手持设备多集中在红外、蓝牙和WIFI等无线技术上[1]。不过,红外存在视距限制、蓝牙传输距离过短、WIFI协议复杂、功耗过高,最主要的问题是他们都不能像ZigBee节点那样电池供电可工作半年以上时间[2]。ZigBee是一种低成本、低功耗、高可靠性的低速率传感网络,有着超强的组网能力。它的特点使其非常适合工业环境。但是目前,应用于数控现场的ZigBee应用大多集中在传感网络,比如,数控机床温度无线监测补偿系统[3]。因此,如何在体现传感网络优势的基础上,设计能达到数控现场要求的控制和示教目的的无线系统成为亟需解决的问题。

本文通过对ZigBee协议的理解和ZigBee协议栈的深入研究,找到一种适合数控现场的网络结构。按照软硬件协同设计的原则分别从硬件层面和软件层面对系统进行设计。按照分层和抽象的原则提出一种保持原有程序不变的可复用无线实现方法。

本文以沈阳高精数控有限公司的数控系统和HHPS-I型智能手持操作站为实验对象。HHPS-I包含16个功能按键和LCD显示屏,由单片机控制,通过读取串口命令响应程序,但其软件层尚未定义,为了完成无线通信,必须在硬件上添加ZigBee无线模块,并实现其整体软件功能。无线的实现采用TI公司的LM3S9B9开发板和DK-CC2520Z开发套件。最终实现了基于ZigBee的无线数控智能手持的应用。

1 ZigBee技术分析

1.1 ZigBee体系结构分析

ZigBee设备按功能可分为协调器、路由器和终端设备,其中协调器负责启动网络和控制网络,是整个网络的核心。常见的网络拓扑结构分为星形网络和点对点网络,其中,点对点网络又包括树形网络、Mesh网络等。

ZigBee协议由两部分组成(图1),一是由IEEE 802.15.4定义的物理(PHY)层和MAC层,一是由ZigBee联盟定义的网络(NWK)层和应用(APL)层。其中APL又包括应用支持子层(APS)、ZigBee设备对象(ZDO)层和应用框架(AF)层,是应用开发研究的重点。AF是为驻扎在ZigBee设备中的应用对象提供活动的环境,它最多包含240个应用对象,每个应用对象对应一个端点(Endpoint),实现一个或一组应用。ZDO是一个特殊的应用层的端点,它是应用层其他端点与应用子层管理实体交互的中间件,主要功能集中在网络管理和维护上。APS层类似于MAC层和NWK层为上层服务使用者和下层服务提供者交互提供接口。各层之间通过原语(primitive)交互,尽管各层间原语不尽相同,但其基本形式(图2)均是基于以下四类原语:.request、.confirm、.response、.indication。

图1 ZigBee网络协议层次结构

图2 服务原语概念

1.2 ZigBee协议栈实现

自ZigBee联盟成立以来,协议栈标准已经经历了ZigBee2004、ZigBee2006 、ZigBee2007和 ZigBee2012,其中ZigBee2007应用最为广泛。各大制造商发行的协议栈和大部分开源协议栈都兼容上述标准。协议栈的目的在于规范并简化开发流程,以增强ZigBee应用的通用性。虽然ZigBee协议栈版本各异,但其核心无非是完成1.1节分析各层的功能。本文协议栈中HAL目录实现硬件相关配置、驱动和操作函数,ZMAC和MAC目录实现MAC层参数配置和LIB库函数等MAC层功能,NWK目录实现网络层参数配置、路由等功能,APP目录实现应用层内容并为用户提供创建各种不同工程的环境,ZDO目录实现应用对象的网络管理和维护,Profile目录实现AF的功能。

为了统筹管理上述资源,增加系统实时性能。我们引入操作系统抽象层(OSAL)和实时操作系统(RTOS)的概念。OSAL是整个协议栈的中心,它把协议栈的每一个子系统都作为OSAL的一个任务,在开发应用层的时候,也通过创建OSAL任务来运行。因此,主要工作集中在OSAL的一个无限循环中来处理任务队列出现的任务。RTOS则负责按需的调度任务。整个Z-stack的主要工作流程(图3),可分为系统启动,驱动初始化,OSAL初始化和启动,进入任务轮循几个阶段。

图3 ZigBee Zstack流程

2 系统概要设计

ZigBee无线网络的中心控制节点往往要控制多个节点,分析并处理网络中通信的大量数据,因此,在要求实时性和高效性的数控现场,选择TI公司基于ARM Cortex-M3核的高性能微控制器LM3S9B96搭配cc2520射频模块作为协调器。LM3S9B96扩展了丰富的外设,包括网口、USB等接口[4],集成一块QVGA彩色触摸屏显示器,增加了程序的可视化和操作的便捷性。终端节点采用CC2530搭配和SmartRF05BB电池板。由于数控现场机床节点较少,为了方便主从站节点和协调器的直接交互,采用星形网络结构实现一对多控制,如图4所示。

系统主站为智能手持端,采用沈阳高精数控有限公司的HHPS-I,实现对从站的控制和各种操作信息、状态信息的显示。系统从站为蓝天数控GJ301四轴联动数控系统。可工作在手动、增量、手轮三种模式下,完成X轴、Y轴、Z轴和第4轴的协调工作,手动模式下的快移和倍率选择等功能。

图4 系统网络结构图

3 硬件设计

ZigBee网络以低功耗、低成本、低复杂度为设计目标,ZigBee终端节点往往以单片机为核心处理较低复杂度的问题。降低成本最有效的方式莫过于设备复用或程序复用了。现实环境中无线系统的应用大都有其有线系统的结构,在传统应用单元不变的基础上本文提出了实现复用的ZigBee网络的双核心处理单元的概念(图5)。单个处理单元既要处理协议栈又要处理应用程序,使得程序过于繁琐,难以驾驭。双核结构很好的解决了这个问题,各个处理单元各尽其职,增加了系统的处理能力和灵活性,在系统检修和改造时更加方便。

主站和从站均和电池板连接组成ZigBee网络的终端节点。主从站皆可通过RS422串口的方式与其他设备直接交互,电池板可以通过SPI(P4_12、P4_18)和UART(P4_15、P4_13)两种方式和串口相连。首先通过连接MAX3232转换为RS232信号,再连接ADM485转换为RS422信号,最终实现两者通信。

图5 双核心处理单元概念图

4 软件设计

TI公司ZigBee应用的开发是紧密结合IAR开发环境的,然而主从站双方均不在IAR环境下开发,这就为程序的交互性带来了困难。根据上述硬件设计,主从站均是通过串口与ZigBee无线模块相连的,因此设计主从站程序完全通过读取和分析串口数据来完成功能,而ZigBee无线功能模块通过组帧实现串口到空中传输到串口的管道,屏蔽了主从站功能交互细节,实现了可复用的分层软件架构。

4.1 网络的建立

网络的建立具有一定得自主性。协调器负责建立网络,首先,根据DEFALUT_CHANLIST的设置选择一个频段,对于2.4GH的网络来讲可选的频段号为11~26,每个频段号所代表的具体中心频段为:2405 + 5(频段号 - 11)。然后,根据ZDAPP_CONFIG_PAN_ID的设置选择Pan ID。最后,设置节点允许设备加入网络。终端节点通过MAC关联的方式以协调器为父节点加入到网络中实现星型网络结构。通过定义NV_RESTORE和NV_INIT对非易失存储器进行管理,确保当意外重启(掉电)等突然情况发生时,节点自动恢复到之前的工作状况。

4.2 设备绑定和发现

绑定机制允许一个应用在不知道目标地址的情况下向对方(应用)发送数据包,发送时使用的目标地址将由应用支持子层从绑定表中自动获得,从而能使消息顺利被目标节点的一个或多个应用乃至分组接收。

协调器首先在ZDO层注册EndDeviceBindReq信息。然后,设置主站和从站终端节点的简单描述符结构,使之成为互补设备,使用ZDO API ZDP_EndDeviceBindReq()给协调器发送请求,请求建立绑定表。协调器接收到该请求信息,调用ZDO_MatchEndDeviceBind()处理终端设备绑定请求。由于该机制规定在指定的时限APS_DEFAULT_MAXBINDING_TIME内完成,因此,为了提供主从站绑定的灵活性,增加了按键触发机制,并通过_HandleKeys()响应按键事件。

4.3 管道的设计

设备绑定为数据传输提供了无线通路,因此,系统的重点变成了串口数据如何被节点接收并且发送出去。这个任务由交给应用层程序处理。

串口数据是由协议栈的HAL层负责处理的,HAL提供的两个API,HalUARTRead和HalUARTWrite可以对串口数据进行直接读写。在OSAL操作系统的主循环osal_run_system中首先进行的两个任务是时间更新(osalTimeUpdate)和HAL处理轮询(Hal_ProcessPoll),在Hal_ProcessPoll中调用HalUARTPollDMA对串口的内容进行查询,如果DMA中接收到了数据,则调用HalUARTRead,将DMA数据读至buffer并通过AF_DataRequest函数发送出去。

节点从空中捕获到信号后,在应用层上首先收到信息的是SerialApp_ProcessEvent函数,它收到一个AF_INCOMING_MSG_CMD的事件,并通知SerialApp_ProcessMSGCmd,执行以下代码:

Switch(pkt->clusterID)

{

case SERIALAPP_CLUSTERIDxx:

……

If(HaUARTlWrite(SERIALL_APP_PORT,pkt->cmd.Data+1,(pkt->cmd.DataLength-1)))

{

…… //Save for next incoming message

}

}……

将收到的数据发送给串口终端。

4.4 主从站程序设计

主站由51单片机控制并配有可显示2×18字符的LCD显示屏,通过串口接收数据分析命令和发送确认信息,从站数控端是基于2.4内核的实时系统,从站应用程序在linux下用c语言开发。

主站上电进行LED灯检测,等待从站初始化命令,接到初始化命令后设置初值显示轴信息、实时位置、操作模式和倍率,并开始接受实时位置信息,同时按键按下通过串口发送相应的make code,按键抬起发送相应的break code,并接受功能按键的确认信息做相关显示。

从站程序任务开始发送主站初始化命令,进入循环接收串口数据,进行分析,发送相依确认信息,并定时向串口发送实时轴位置信息,数据以帧格式发送,帧头帧尾各一个字节,每个字节数据代表十进制的两位,BCD码格式编码,如图6所示。

图6 主从站程序流程图

5 系统实现

通过上面的协同设计,最后得到的基于ZigBee的无线系统如下图7所示。

图7 系统实现图

图7中,前方为LM3S9B96ZigBee+CC2520,是整个网络的协调器,右上方为HHPS-I+CC2530+BB,是系统主站,左上方为CC2530+BB+GJ301,是系统从站。系统能较好的满足在数控领域的应用。在实验室环境80米距离测试协调器和终端节点的连接情况,信号稳定,重新接入网络时间在1s以内。HHPS-ILCD每秒显示10次实时位置信息,通过压力测试增加2倍、5倍依然能很好的显示。通过发送方与接受方数据帧对比的实际测试方法,均证明系统内满足数控领域的应用要求。

6 结束语

通过对ZigBee协议的分析实现了对TI Z-Stack的精简和改造,找到了一种适合数控现场的组网方案,并提出了切实有效的可复用硬件实施策略。明确数控智能手持的功能后,按照分层和抽象的原则都系统进行功能模块和无线模块两个层次上的软件开发,最终实现了主站对从站的一对多控制。实践证明系统能较好的满足实际应用的需求,并能节省一大部分数控设备的成本。当然系统在协调器模块可视化操作等方面还有待加强,另外系统完全有能力实现多对多的控制,引入不同功能的主站与从站绑定,这将是今后研究的重点。

[1] 齐曰霞,韩正之.2.4GHz频段无线技术标准[J].现代电子技术,2011,34(9):35-37.

[2] ZigBee Alliance.Advantages of Energy-Efficient ZigBee Remote Controls[Z]. ZigBee Alliance White Paper.2011(1)1-8.

[3] 曹莉,曾黄麟,乐英高.数控机床温度无线检测智能补偿系统设计[J].组合机床与自动化加工技术, 2012(9): 63-65.

[4] TI.Stellaris LM3S9B96 Microcontroller DataSheet[Z]. Texas Instrument-Production Data.2012(12):56-78.

[4] 乐英高,任小洪,徐卫东.基于 ZigBee的数控机床通信系统研究[J].机床与液压.2012,40(9): 81-83.

[5] Shahin Fatahani.ZigBee Wireless Networks and Transceivers [M].Newnes,2008:1-80.

[6] 蒋挺,赵成林.紫蜂技术及其应用[M].北京:北京邮电大学出版社,2006(6):1-252.

[7] 沈阳高精数控有限公司.智能手持操作单元说明书HHPS-I_Manu_v1.22 [Z].沈阳高精数控有限公司,2008(7):1-10.

[8] 孙娟,马忠梅,刘佳伟.LM3S9B96与CC2520平台上的ZigBee组网技术及应用[J].单片机与嵌入式系统应用.2011(12):47-50.

[9] TI.Z-Stack Sample Applications[Z]. Texas Instrument,Inc.2011(4):1-24.

[10] TI.CC2530ZNP Interface Specification[Z]. Texas Instrument,Inc.2012(3):1-18.

(编辑 赵蓉)

Design and Implementation of HHPS-I Handheld Operator Station Based on ZigBee

CHEN Pu1,2,HE Fang2,3

(1. University of Chinese Academy of Science, Beijing 100039, China;2. National Engineering Research Center for High-end CNC, Shenyang Institute of Computing Technology, CAS, Shenyang 110171, China)

The developments of multi-function and large volume in sphere of CNC machines require the CNC handheld devices become wireless. ZigBee, a low cost, low power, low complexity sensor network, which is suitable for wireless application development in industrial site which existence electromagnetic interference and need to work long hours. On the basis of analysis of the principles and implementation of ZigBee protocol. Using the theory of software and hardware co-design, develop the software of master and slave system with TI's LM3s9b96 + CC2520 and CC2530 as the core wireless module, realized HHPS-I smart handheld operator station’s features ,and propose a reusable hardware and software development model.

ZigBee; wireless CNC; smart handheld

1001-2265(2014)04-0064-04

10.13462/j.cnki.mmtamt.2014.04.017

2013-08-16;

2013-09-08

"高档数控机床与基础制造装备"科技重大专项 :基于二次开发平台的专用数控系统开发与应用(2013ZX04007-011)

陈谱(1988—),男,山东泰安人,中国科学院大学沈阳计算技术研究所硕士研究生,研究方向为数控技术与嵌入式,(E-mail)chenpu0211@126.com;通讯作者:何方(1971—),男,沈阳人,中国科学院沈阳计算技术研究所,沈阳高精数控技术有限公司研究员,研究方向为数控技术、嵌入式系统应用,(E-mail)hefang@sict.ac.cn。

TH16;TG65

A

猜你喜欢
主从串口沈阳
基于NPORT的地面综合气象观测系统通信测试方法及故障处理
浅谈AB PLC串口跟RFID传感器的通讯应用
沈阳分店
沈阳分店
Study on the harmony between human and nature in Walden
FANUC系统PROFIBUS主从功能应用
船舶电子设备串口数据的软件共享方法
串口技术的实物调试和虚拟仿真联合教学模式
基于飞行试验数据的仿真模型主从一体化检验
LiteraryTechniquesEmployedtoDevelop Celie'sCharacterinThe Color Purple