摘要: 本文详细探讨了单片机在工业无线网络中的具体应用。
关键词: 单片机(MCU);工业无线网络;ZigBee;SoC
如同今天的许多通用单片机(MCU)已经把USB、CAN和以太网作为标准外设集成在芯片内部一样,越来越多的无线网络芯片和无线网络解决方案也在向集成SoC 方向发展,比如第一代产品,Nordic公司nRF905,Chipcon公司cc1010 他们集成了8051兼容的单片机.这些无线单片机适合一般的点对点和点对多点的私有网络应用,如单一产品的遥控器和抄表装置等。无线通讯技术给智能装置的互连互通提供了便捷的途径,工业无线网络作为面向工业和家庭自动化的网络技术也正在向着智能,标准和节能方向发展。
典型的工业无线网络
目前在工业控制和消费电子领域使用的无线网络技术有ZigBee、无线局域网(Wi-Fi)、蓝牙(Blutooth)、GPRS通用分组无线业务、 ISM、IrDA等, 未来还能有3G、超宽频(UWB)、无线USB、Wimax等。 当然还有大量的私有和专用无线网络在工业控制和消费电子装置中使用,其中ZigBee、GPRS是在目前在国内工业控制中讨论和使用比较多的两种,蓝牙和无线局域网是在消费电子产品如手机、耳机、打印机、照相机和家庭中小企业网络中广泛使用的无线协议(个别工业产品也有应用,如无线视频监控和汽车音响系统),当然私有无线网络技术和产品在工业也有很多的应用。
ZigBee是一个低功耗、短距离和低速的无线网络技术,工作在2.4GHz国际免执照的频率,在IEEE标准上它和无线局域网、蓝牙同属802家族中的无线个人区域网络, ZigBee是有两部分组成,物理和链路层符合IEEE802.15.4, 网络和应用层符合ZigBee联盟的规范。ZigBee联盟(www.zigbee.org)是在2002年成立的非盈利组织,有包括TI、霍尼威尔、华为在内两百多家成员, ZigBee联盟致力推广兼容802.15.4和ZigBee协议的平台, 制定网络层和应用架构的公共规范,希望在楼宇自动化、居家控制、家用电器、工业自动控制和电脑外设等多方面普及ZigBee标准。
GPRS是在现有的GSM 网络发展出来的分组数据承载业务,它工作在标准的GSM频率,由于是一个分组交换系统,它适合工业上的突发,少量的数据传输,还因为GSM网络覆盖广泛,永远在线的特点,GPRS特点适合工业控制中的远程监控和测量系统。在工业控制应用中GPRS 芯片一般是以无线数传模块形式出现的,它通过RS232全双工接口和单片机连接,软件上这些模块都内置了GPRS,PPP和TCP/IP协议,单片机侧通过AT指令集向模块发出测试,连接和数据收发指令,GPRS模块通过中国移动cmnet进入互联网和其他终端或者服务器通讯。目前市场常见的模块有西门子G24TC45、TC35i,飞思卡尔G24,索爱GR47/48, 还有Wavecom 的集成了ARM9核的GPRS SoC模块WMP50/100。GPRS模块有区分自带TCP/IP协议和不带协议两种,一般来讲,如果是单片机侧有嵌入式操作系统和TCP/IP协议支持的话或者应用的要求只是收发短信和语音功能的话,可以选择不带协议的模块。
无线单片机
先进的SoC技术正在无线应用领域发挥重要的作用。德州仪器收购了Chipcon公司以后发布的CC2430 是市场上首款SoC的ZigBee单片机, 见图1,它把协议栈z-stack集成在芯片内部的闪存里面, 具有稳定可靠的CC2420收发器,增强性的8051内核,8KRAM,外设有I/O 口,ADC,SPI,UART 和AES128 安全协处理器,三个版本分别是32/64/128K的闪存,以128K为例,扣除基本z-stack协议还有3/4的空间留给应用代码,即使完整的ZigBee协议,还有近1/2的空间留给应用代码,这样的无线单片机除了处理通讯协议外,还可以完成一些监控和显示任务。这样无线单片机都支持通过SPI或者UART与通用单片机或者嵌入式CPU结合。 2008年4月发表CC2480新一代单片ZibBee认证处理器就展示出和TI MSP430 通用的低功耗单片机结合的例子。
图1 CC2430应用电路
工业控制领域的另一个芯片巨头——飞思卡尔的单片ZigBee处理器MC1321X的方案也非常类似,集成了HC08单片机核心, 16/32/64K 闪存,外设有GPIO, I2C和ADC, 软件是Beestack 协议,只是最多4K RAM 对于更多的任务显得小了些。但是凭借32位单片机Coldfire和系统软件方面经验和优势, 飞思卡尔在满足用户应用的弹性需求方面作的更有特色,它率先能够提供从低-中-高各个层面的解决方案,见图2。
图2 飞思卡尔ZigBee解决方案
以Wavecom 为代表的GPRS SoC无线单片机同时在演绎着GPRS无线处理器的革命, 如WMP50是一个带有四频GSM网络无线通讯工业处理器,内置了ARM9 CPU ,支持128K 闪存,128K RAM , 外设有11个GPIO,I2C,SPI,5X5键盘,2个UART,USB 2.0 并口,ADC,DAC 等。WMP50内部有一个可强制的实时多任务操作系统,它支持应用任务工作在比GPRS任务高优先级的方式,即能保证控制响应要求。 总之无论是GPRS无线单片机,还是ZigBee单片机都在朝着更低成本,更标准化和更高性能的方向发展。2007年4月,后起之秀jennic 推出了5美元zigbee/IEEE802.15.4参考设计,这个价格是包括了JN513932位无线单片机PCB天线设计和其他辅助器件的BOM成本,据称RF性能能够达到1公里的距离。
无线单片系统
无线单片机配合C语言开发调试工具可以胜任一个传输或者接收模块的系统设计,比如使用CC2430,IAR公司 embedded workbench (EW)编译调试工具和TI公司z-stack的simpleAPI 设计的一个无线传感节点,用户可以使用针对无线传感网络的TinyOS,或者uc/OS-II,或者不使用嵌入式操作系统,再比如无线远程抄表终端,你可以使用MSP430或者CYGNAL C8051或者HC08单片机和一颗无线数传模块,如G24,开发工具可以使用KEIL IDE 或者IAR EW430/8051,或者是codewarror, G24内置了TCP/IP和GPRS协议,通过使用AT指令的测试,接入互联网,连接服务器,收发数据的操作完成GPRS无线通讯的任务。单片机通过传感器完成电表数据采集任务。但是如果你计划设计一个智能家居的通讯节点的时候,这样的无线单片机就不能够满足需求了,因为这样的节点除了它们是通过ZigBee网络采集室内环境 (如温度,湿度),电、水和气三表的数据,家用电器开关和家庭安全报警外, 另外一个很重要的功能是这个节点还应该通过有线以太网络,或者无线Wi-Fi网络连接家庭服务器,这个服务器是家庭PC、电视、录像,音响的核心,智能家居的通讯节点、家庭服务器和互联网(小区宽带)路由器组成一个家庭网络系统。
要设计实现这样的通讯节点是需要一定的系统软件支撑和一定开销的处理器能力,因为它是工业装置, 它的可靠性、安全性、功耗和易操作要求就比家用电器严格得多,目前看到的设计方法有这样两种, 一种是使用一个大规模的嵌入式操作系统,如Linux、WinCE,它们有良好的网络和设备驱动支持能力,代价是需要一个ARM9 以上MMU嵌入式处理器,32M以上存储空间和32M以上执行空间(WinCE要求可能还更高),比如业内领先的无线传感网络平台公司Crossbow的imote2 (汇聚节点)使用Marvell 416 MHz PXA271 处理器和一个TI 公司ZigBee收发器,这样的设计好处是明显的,但是随即可能的问题是如何控制好系统的功耗和可靠性,工业无线网络多数安放在一个无人值守场地,还可能是一个恶劣自然环境,无论是开源Linux,商业嵌入式Linux,还是WinCE电源管理技术都还不很完善,系统引导和恢复的功能和时间都还不能完全满足工业控制应用的要求。取而代之的另外一种方式是目前多家MCU半导体公司推荐的方案;硬件是ST、 NXP 的ARM 单片机和 Freescale coldfire 单片机,比如MCF52335, 系统软件是Interniche 公司和Freescale合作的Nichelite coldfire TCP/IP Lite 一个针对coldfire免费的轻量级的嵌入式TCP/IP 软件,它包含了TCP,UDP,ICMP,DHCP(用户端),TFTP和一个简单的非抢占的RTOS(www.freertos.com),大约只有20K的代码,加上Freescale的Web server ,Flash 文件系统, 对于工业网络汇聚点应用是可以满足的了。当然如果这些免费的软件模块还不能满足应用的要求,Interniche 还有PPP,SNMP,DHCP(服务器),FTP服务器,IPSEC,RTP等模块选择,甚至升级到全功能版本的nichestack。ST ARM、NXP LPC单片机 也有基于Nichelite类似的解决方案。 这个方案的好处是MCU可以使用低主频的ARM/coldfire Flash 单片机,起到降低功耗和增加可靠性作用,系统软件由半导体公司免费授权给用户,这样用户只要购买常规的单片机开发工具,如IAR EW,ARM MDK,Codewarrior就可以完成一个工业网络通讯节点的设计任务,开发难度和产品整体核算成本要低。
更近一步的看,传统的单片机正在大踏步的进入工业无线网络领域的各个方面,除了前面的SoC单芯片无线单片机外,比如最近TI 的SimplicTI ,一种TI私有的射频网络,也可以说是一种简化的ZigBee网络方案。比较起 ZigBee协议,SimplicTI支持点-点和星型网络,代码只有4K,结构和使用都很简单,一颗TI MSP430 16位单片机加上RFCC1100/CC2500就可以组成一个烟感,瓦斯泄漏报警和抄表节点设计, SimplicTI 的开发目前还是一个典型的单片系统,使用IAR EW430工具,RF 协议软件和库程序都是由TI 免费提供源代码,SimplicTI的API 只有6个函数;初始化,连接和监听,发送和接受,配置,配置参数简单明了,包括有频率,安全令牌,网络拓扑(点-点、星型),电源管理和内存分配。瑞典IAR公司最近移植Powerpack RTOS 和支持MSP430单片机的开发,这使得在RTOS支持下430无线节点设计功能可以再复杂些,设计的弹性也大。图3是SimplicTI开发板,chipcon radio interface 你可以安装CC1100/2500器件。TI资料显示,未来SimplicTI 还支持CC2430这样的ZigBee无线单片机 升级CC2430支持SimplicTI还意味着TI对无线网络支持更加宽泛和灵活,升级换代方便了。
图3 SimplicTI开发板
结语
无线技术是未来嵌入式系统发展最快速的领域之一,单片机是嵌入式和工业控制系统最传统的核心部件,SoC和微电子制造工艺的发展推动单片机的变革,无线技术和应用是单片机发展的一个热点,是包括TI,Freescale,ST,NXP,Atmel,Microchip 这些工业芯片半导体巨头和专业无线公司Ember,Jennic,Nordic角琢的重要舞台。 无论是把射频器件和单片机核心集成在一起的SoC无线单片机,还是单片机加上射频器件或者射频单片机的无线单片系统,都将嵌入在在未来形形色色电子设备里。工业控制系统的无线网络由于其行业的特殊性,决定选择一种无线网络技术的因素很多,如通讯范围、环境干扰、连接方式、速率和功耗等,但会逐渐的从私有模式向通用方向迈进。正如今天我们看到的以太网和CAN总线是新一带工业设计的主流网络一样,在工业控制系统里采用标准无线网络,比如今天我们能够看到的ZigBee,GPRS,Wi-Fi, Blutooth的应用将越来越多,未来将是大势所趋。
但是,需要指出的是,在某些特殊的环境和条件下,短波和卫星通讯方式依然在工业无线网络中使用,比如此次四川汶川地震后水情自动测报系统,就是由北斗卫星,卫星终端,传输设备和太阳能供电装置组成,实现了在地震灾区这样基本通讯方式无法保证的环境下,远程工业无线网络设备正常工作。