一种基于nRF9E5的无线监测局域网的系统
摘要:给出了用无线收发模块nRF9E5设计的局域网系统,以实现对有毒气体浓度进行无线监测的系统设计方案。阐述了该系统硬件和软件的设计方法。文章通过构建合理的通讯协议,有效地解决;了节点间的通讯寻址问题,保证了通讯的可靠性。
关键词:nRF9E5;无线局域网络;通讯协议;无线监测
当今,无线技术正快速应用于许多产品之中,与有线技术相比,无线技术主要具有成本低、携带方便、省去布线烦恼等优点。特别适用于工业数据采集系统、无线遥控系统、小型无线网络、无线RS485/232数据通信系统等。本文给出了一种用于监测有毒气体的无线局域网络系统方案设计方案。
1 系统的功能及组成
在石华工业中,为了有效监测空气中H 2S、CL 2等有毒气体的浓度,把隐患消灭于萌芽状态,通常需要设计许多无线网络检测系统。图1所示就是一种多任务无线通讯局域网示意图。该系统是由一台中央监控设备CMS(center monitering system)和多台远程终端节点RTN(remote terminal nodes)组成的多任务无线通信网络。其中的中央监控设备CMS主要由无线收发模块Nrf9e5、报警装置和上位机组成,能够接收远程各节点信息,监控节点运行情况,并能根据上位机要求发送命令字到指定节点。各节点RTN主要由有毒气体传感部分和无线接收模块Nrf9e5组成,能够采样并发送数据到CMS,接收并执行CMS发送来的指令,并且可作为中转站间接传输数据。
在CMS工作信号覆盖范围内,各节点和CMS直接通讯,如图中RTN100、RTN200和CMS之间可以直接通讯。在CMS工作信号覆盖范围外,各远程终端节点其上级相应节点和CMS间接通讯,如图中RTN121、RTN122依次通过RTN120、RTN100和CMS来进行间接通讯。采用这种方法,可将系统扩展成一个非常大的无线居域网络。
javascript:window.open(this.src);" style="cursor:pointer;"/>
2 硬件设计
2.1 硬件电路连接
中央监控设备(CMS)电路主要包括监控计算机、接收模块nRF9E5及报菟装置,具体电路如图2所示。图中,把nRF9E5的P0.1、P0.2口配置成SCI模式,外接MAX232转换电路,和上位机进行串行通讯;P0.3配置成普通端口,外接报警装置。
该系统中的远程终端节点(RTN)电路主要由射频模块nRF9E5和气体变送器GT-130/H2S-1组成。ADC模块选用内部参考电压,气体传感装置能够输出4~20mA电流,经75Ω电阻转换为0.3~1.5V电压信号,来作为ADC模拟量输入信号。电路连接和图2基本相似,区别是断开图2中的P0.1-P0.3端口,将变送器输出端和nRF9E5的AIN0引脚相连接。
2.2 无线收发模块nRF9E5
nRF9E5是挪威Nordic公司的产品。该芯片采用+3VDC供电,面积为5mm×5mm,共有32个外部引脚,包括UART和SPI等功能。内部集成了nRF9E5射频模块、8051微控制器及A/D转换模块,具有433/868/915MHz三波段载波频率。采用GFSK调制,抗扰能力强;支持多点通讯,数据传输速率高达0.1Mbps。具有特有的ShockBurst信号发射模式和发射信号载波监测功能,可有效降低功耗电流、避免数据冲突。内部寄存器为用户提供了基础的通讯协议,便于用户扩展,缩短了开发周期。外围电路连接极为简单,只需要一个晶体管和一个电阻,nRF9E5输出端ANT1、ANT2外接50Ω单天线终端装置,信号有效发射距离无遮挡时可达800m以上,有建筑物等遮挡时可达350m左右。
3 软件设计
3.1 通讯协议
CMS可与在其信号覆盖范围内的RINT进行直接通讯,在其工作信号覆盖范围之外的RIN通过其它节点转载信号实现与CMS的间接通讯。同时,CMS能够根据接收的数据内容判断信号来自哪一个RTN节点。为此,需把系统通讯协议设置为下列格式:
Prea-mble | Add | Payload | CRC | ||||
Jid | Mid | Yid | X | Data |
Preamble为引导字节;Add为接收机地址;Payload为有效加载数据(包括接收机识别码Jid、目的机识别码Mid、源信号机识别码Yid及Data字:状态字X=1时Data为命令字,X=0时Data为浓度数据);CRC为校验码。
nRF9E5处于发射模式时,Add和Payload由微控制器按顺序送入射频模块nRF9E5,Preamble和CRC由nRF9E5自动加载。接收模块时,nRF9E5先接收一数据包,分别验证Preamble、Add和CRC正确后,再将Payload数据送入微控制器处理;当接收机微处理器判断Payload中的Payload中的Jid和本机识别码号一致时,继续处理后继数据,否则放弃该数据包。
要实现上述数据通讯功能,需进行nRF9E5初始化配置和用户程序设计。
3.2 nRF9E5子系统初始化配置
在nRF9E5模块中,特殊寄存器RF-Register包含10个字节,其配置字内容可决定射频模块nRF9E5的工作特性,表1列出本设计中特殊寄存器RF-Register需要配置的基本参数(文中未述及的参选用默认值)。
表1 RF-Register寄存器部分字节配置说明
名 称 | 设定值(二进制) | 说 明 |
CH-NO | 0 0111 0101 | 载波频率为868.2MHz |
HRFEQ-PLL | 1 | 设定PLL工作模式 |
PA-PWR | 11 | 输出功率为10dBm |
RX-PW | 001 | 接收地址字长为1byte |
RX-PW | 0010 0000 | 接收有效字节长度8bytes |
TX-PW | 0010 0000 | 发射有效字节长度8bytes |
PX-ADDRESS | 1110 0111 | 接收地址名0xE7h |
UP-CLK-EN | 0 | 外部时钟禁止 |
XOF | 011 | 晶体振荡器16MHz频率 |
CRC-EN | 1 | 使能CRC校验功能 |
CRC-MODE | 0 | 使用8位CRC校验码 |
系统通讯时,各模块处于正常接收状态:收发