采用IEEE1451标准的无线变送器模块的设计
了模板式的活动空间,为每个应用对象提供了键值对服务和报文服务供数据传输使用。
ZigBee设备对象:主要包括设备服务发现。
3 系统设计
本文设计了WTIM模块。该模块用于采集和处理数据,并通过SPZB260模块将数据发送给NCAP,同时实现了 TEDS(Transducer Electronic Data Sheet)、IEEE1451.5标准。SPZB260是专门用于嵌入式开发的低功耗ZigBee模块。
3.1 WTIM模块
WTIM模块主要包括STM32F103C微控制器、SPZB260模块、信号调理器和传感器。其架构图如图3所示。其中,SPZB260模块是与NCAP通信的模块。
图3 WTIM模块架构图
ADC在数据采样中,使用了一阶滤波算法:Y(n)=αX(n) (1-α)+Y(n-1)。式中:α为滤波系数;X(n)为本次采样值;Y(n-1)为上次滤波输出值;Y(n)为本次滤波输出值。
3.2 TEDS
IEEE1451每一层中都有与之对应的TEDS。本文实现了PHYTEDS、MetaTEDS和TransducerChannel TEDS。其通用格式为:
structXXX_TEDS {
UInt32 TEDSlength;
TLV;
……
TLV;
UInt16 Checksum;
}
TEDSlength:XXX_TEDS结构体中除了TEDSlength之外所有字段的长度和。
TLV:一种包含类型(Type)、长度(Length)、值(Value)三个字段的结构体。
Type:XXX_TEDS各个TLV的ID。对于不同的TEDS,即使TLV的ID相同,代表的实际意义也不同。
Length:表示TLV结构体中Value字段的长度。
Value:该字段填充的是具体的TEDS信息。
Checkum:提供了对XXX_TEDS中之前字段(包括TEDSlength和所有TLV字段)的校验和。
校验和计算公式如下:Checksum=0xFFFF-∑TEDSlength+2i=1TEDSOctet(i)
3.3 IEEE1451.5标准的实现
IEEE1451支持3类无线通信协议,本文中实现的是ZigBee协议。IEEE1451.5标准中的ZigBee协议定义了模块功能、接口函数,以及NCAP和WTIM之间的无线通信协议。其定义的协议栈如图4所示。
图4 IEEE1451.5标准的协议栈
PHY层、MAC层、NWK层由SPZB260提供。本文中需要实现APS层和IEEE1451.5会聚层。
APS层采用的是EZSP协议,可通过SPI接口实现。在WTIM模块中,STM32F103C与SPZB260之间通过SPI进行通信,其中 STM32F103C配置为SPI主设备,SPZB260配置为从设备。EZSP作为IEEE14515会聚层的应用支持层(APS),以NCAP为协调器的星型网络结构实现,如图5所示。
图5 IEEE1451.5的网络拓扑结构
IEEE14515会聚层定义了IEEE14515和IEEE14510之间的模块通信接口。其中,一部分接口由IEEE1451.5系统提供,被IEEE1451.0调用;另一部分由IEEE1451.0提供。
4 测试与结论
在测试中,针对的是温度传感器和湿度传感器。测试WTIM节点分为两个,每个节点上都有一个温度传感器和湿度传感器。其中,WTIM1放在正常环境下,另一个节点WTIM2放置于一个装满水的容器上方。NCAP通过ZigBee与两个节点进行通信,并可以通过主机监控。测试时以10 Hz的频率进行采样,其结果如图6所示。
图6 WTIM1的温湿度数据
测试结果表明,WTIM节点能正常获取数据,并发送给NCAP,使得NCAP能够正确地获得各节点与响应通道的信息,实现了无线变送器的功能。
- 网控串行输入/输出接口选择(05-03)
- NORCO工控机在数控机床中的应用(11-10)
- 基于DSP的电动汽车CAN总线通讯技术设计(10-08)
- 智能电网用电信息采集系统中的宽带通信技术(12-20)
- 工业控制系统通信技术概述(12-20)
- Visual C++串口通信技术编程实例(12-01)