基于nRF2401的工程机械仪表显示无线通信平台的设计与实现*
2010-08-12王琼张燚孙保群
王琼,张燚,孙保群
(合肥工业大学,安徽合肥230009)
随着射频无线通信技术的迅速发展,对大型工程机械驾驶操控室仪表显示采用无线通信的信号传输方式,可有效消除线缆传输固有的弊端,保证信号传输的质量和可靠性。本文提出一种以超低功耗16 bit微控制器MSP430F149和射频无线收发器nRF2401为核心的无线通信平台,实现了大型工程机械驾驶操控室仪表显示信号的无线传输,并完成了平台系统的设计与实现。
1 系统结构及工作原理
系统结构及原理框图如图1所示。
图1 系统结构及原理框图
系统由发射机和接收机组成。发射机和接收机的无线模块为射频无线收发器nRF2401,并均能工作在收发状态,采用半双工方式通信,通过按键中断实现模块收发方式的转换,并在LCD上实时显示收发器的工作状态。发射机主要完成现场各类仪表信号的数据采集及A/D转换、存储、软件抗干扰和标度转换处理、数据发送、LCD显示系统状态控制以及控制指令接收等功能;接收机则主要实现现场数据接收、LCD显示仪表参数控制、向发射机传送控制命令等工作。此外,发射机和接收机的控制单元配置有标准的RS-232接口,可以很方便地把各类数据传送到PC机上进行分析处理。
2 通信系统硬件设计
发射机和接收机的控制单元所采用的MCU器件皆为TI公司的16 bit高性能微控制器MSP430F149芯片。该芯片具有超低功耗、运算速度快、存储容量大、高性能模拟模式及丰富的片内外设、JATG接口和在线编程等显著优点[1]。系统无线通信模块为Nordic公司生产的单片集成射频无线收发器nRF2401芯片,工作频率范围为全球开放的2.4 GHz频段,可自适应125个频道,具有功耗低、通信速率高、通信质量稳定可靠、软件配置工作参数、外围电路简单、应用灵活、成本低廉、开发周期短等优点[2]。应用该芯片实现无线通信是一种具备较高性价比的解决方案。
2.1 nRF2401收发器工作原理
nRF2401芯片采用5 mm×5 mm QFN封装,芯片内置地址解码器、时钟、解调处理器、先进先出堆栈区、GFSK滤波器、CRC处理器、低噪声放大器、频率合成器和功率放大器等功能模块,并具有1.9 V~3.6 V宽工作电压,以-5 dBm功率发射时,工作电流为10.5 mA,接收时工作电流为18 mA。
2401工作原理可概括为:2种通信方式、1个配置字、2个通道和4种工作模式[3]。
两种通信方式为ShockBurstTM(突发模式)和Direct Mode(直接模式)。在ShockBurstTM方式下,由2401自动处理数据包字头、地址和CRC校验码,数据包由MCU低速送入片内的FIFO区,由2401高速发出,数据传输速率最高达1 Mb/s,这种方式抗干扰性能强并且节能;Direct Mode方式时,如传统射频收发器一样,数据包字头、地址和CRC校验码必须在通信程序中处理。
2401内置状态字寄存器,其功能为设置芯片的工作参数配置字。配置字由CS、CLK1和DATA 3线接口写入,包括芯片收发状态、接收频道地址位数和地址、通道选择、传输速率、晶振频率、发射功率、工作频率、CRC纠校验等参数,最多可有144 bit,前24 bit为系统保留位,其余120 bit由程序设置。在ShockBurstTM方式下配置字为15 B,Direct Mode方式下配置字为2 B。
2401具有DuoCeiverTM技术,为接收提供了2个独立的专用数字信道,即通道1(CLK1、DR1和DATA)和通道2(CLK2、DR2和DOUT2),后者只接收数据,可代替两个单独的接收系统。通过一个天线接口即可同时接收两组数据,但接收通道2的频率必须比通道1的频率高出8 MHz以上时,才能正常接收[4]。
2401具备4种工作模式,由PWR_UP、CE和CS 3个引脚信号决定,表1给出了工作模式与引脚信号的对应关系。
表1 nRF2401工作模式与引脚信号对应关系表
2401上电工作时,首先置为配置模式,由初始化程序写入配置字,配置字的最后1位指定2401收发状态;然后由控制器输出信号将CE引脚置为高电平,2401进入收发模式工作,通过指定通道收发数据,收发双方交互时一方可进入空闲模式,待全部数据传送完毕时进入关机模式[3]。
2.2 通信系统硬件逻辑电路
图2为系统的控制芯片MSP430F149与无线模块nRF2401的硬件逻辑电路。由于MSP430F149只有P1和P2口具有中断控制功能,故将F149的P2口P2.0~P2.7分别接2401的CE、DR2、CLK2、DOUT2、CS、DR1、CLK1和DATA引脚,P5.7接PWR_UP。
2401的工作电压为3 V,由图2可知2401应用电路只需少量的外围元件。在设计过程中,天线可以选用PCB内置,也可以使用单鞭天线和环形天线。本系统使用外置天线,SMA接头。传输距离在100 m左右,可满足大型工程机械仪表通信距离要求。
图2 MSP430F149与无线模块的硬件逻辑电路图
系统外围电路部分设计较简单,MSP430F149的P6口为指定A/D口,现场采集的仪表传感器信号经整形放大输入F149的P6端口进行A/D转换;P3、P4、P5口为普通I/O口,因此要合理利用I/O口;F149的P4和P5端口接液晶显示器YJD12864,控制LCD实时显示;P1端口接键盘,2401的收发状态由按键中断设定。
3 系统软件设计
系统软件是在IAR Embedded Workbench平台上开发的C代码程序,采用模块化结构。发射机程序包括数据采集、无线数据发送、实时显示以及与PC机通信等模块;接收机程序包括无线数据接收、地址和CRC校验、仪表参数实时显示以及与PC机通信等模块。此外,发射机和接收机软件留有收发命令接口,以备系统扩展工程操作遥控功能。本文主要讨论无线数据传输模块。
无线通信模块主要完成nRF2401初始化和无线数据收发功能。
2401初始化主要是写入配置字,由CS片选引脚控制,CLK1引脚提供串行时钟,通过DATA数据位引脚串行写入配置字。2401工作在ShockBurstTM方式下,配置字包括数据宽度、地址宽度、地址、CRC校验码和解码四部分。
2401数据包通信协议格式由PRE-AMBLE+ADDRESS+PAYLOAD+CRC项组成。其中:PRE-AMBLE为8 bit前导码,由硬件自动加入;ADDRESS为32 bit发送地址码;PAYLOAD为208 bit的发送数据;CRC是由内置纠检错硬件电路自动加上的校验和,可设为0、8或16 bit。除去前导码,本系统设置数据包长度为256 bit(32 B),其中:数据宽度208 bit、地址宽度32 bit、CRC码16 bit。
根据通信协议设定2401接收端配置字为:
发送端配置字为:0x00.ff00.0000.0000.00cc.
cccc.cc83.4f04。配置后2401以ShockBurstTM模式进行单通道接收,通道1地址为0xcccc.cccc,通信速率250 kb/s,晶振频率16 MHz,输出功率0 dBm,工作频率2 402 MHz。
通信系统发送和接收程序流程图如图3所示。
通信程序开始时,首先对MSP430F149、A/D、YJD12864、nRF2401初始化并等待按键中断,系统分别设置收、发和空闲键,当按键闭合产生中断后分别进入对应的中断服务程序,完成数据包的传送。2401的CE端由MCU的P2.0引脚控制。发送程序开始时写入2401发送配置字,再置CE端为高,2401进入发送模式,通道1地址和发送数据由P2.7(DATA)引脚依次写入2401的缓冲区,2401自动加上字头、CRC校验码将数据包以250 kb/s的通信速率发射出去。发送程序可以连续发送数据包直到按下接收键或空闲键退出发送程序返回。当按下接收键时进入接收程序,首先写入2401接收配置字,当CE端置高时2401进入接收模式,延时202 μs后开始接收数据包,当正确接收数据包后,2401自动除去前导码、地址和CRC校验码并将数据送缓冲区,同时DR1输出高电平通知MCU读取数据,微控制器从P2.7引脚逐位移出数据后,DR1输出低电平,接收数据包结束。接收程序亦可以连续接收数据包直到按下发送键或空闲键退出接收程序返回。
图3 发送子程序流程图和接收子程序流程图
4 实验结果及结论
本系统在室内走道和室外开阔地对2401发射功率为0 dB、-5 dB、-10 dB、-20 dB的4个档位进行了点对点数据传输实验,测试数据传输距离和误码率,系统供电分别为稳压电源和干电池。室内走道传输距离为70 m,在无高大建筑物吸收和干扰的室外开阔地,传输距离可达100 m左右。由于nRF2401芯片内置了CRC纠错电路和协议,所以数据传输的可靠性高。实验中,凡在可接收到数据的情形下,未出现接收数据出错的现象。由于稳压电源提供的电压、电流稳定,能够提高接收信号的质量和距离。
本文提出的基于射频收发芯片nRF2401实现工程机械仪表异地显示的无线通信方案,实现了大型工程机械驾驶操控室仪表显示无线通信的信号传输,可消除目前线缆传输固有的弊端,有效保证信号传输的质量和可靠性。由于本系统为低功耗设计,使用两节5号干电池即可保证长期工作。经测试,在100 m左右的通信距离内,该无线传输系统能够稳定地实现数据的有效传输,具有低功耗、抗干扰能力强、易携带等优点。目前拟在QY50B型汽车起重机和BBS5280JXFJP18型举高喷射消防车上试用。此外,本系统的发射机和接收机均能工作在收发方式,并预留多种接口,方便扩展功能和组网,也适用于其他具有无线通信功能的应用场合。
[1]胡大可.MSP430系列FLASH型超低功耗16位单片机[M].北京:北京航空航天大学出版社,2001.
[2]郑晓艳.热药灌注机中无线通信装置的设计[J].微计算机信息,2008(12):101-103.
[3]郝卫亮.无线传输系统中nRF2401芯片数据丢失问题的研究[J].电子技术应用,2007(8):55-57.
[4]Nordic VLSI ASA.NRF2401 Single Chip 2.4 GHz Radio Transceiver Data sheet[OL],2003.http://www.nvlsi.no.