内墙砖厂家
免费服务热线

Free service

hotline

010-00000000
内墙砖厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

短距离无线数据低功耗传输协议分析

发布时间:2020-07-21 19:20:45 阅读: 来源:内墙砖厂家

短距离无线数据传输是一种线缆替代技术,在当前很多领域(如工业生产、医疗监护、科学研究等)都得到了广泛的应用。它的出现,解决了因环境和条件限制而不利于有线布线的问题,同时具有低成本、方便携带等优点。然而由于存在高功耗的缺点,使得这技术在很多供电受限的工业现场应用中受到了很大的限制。本文基于Freescale公司的MC13213硬件平台对短距离无线数据的低功耗传输协议进行了研究,在保证数据可靠传输的同时,极大地降低了设备的功耗。1 主要芯片介绍

MC13213是Freescale公司推出的一款SoC芯片,它主要由微处理器和射频模块两部分组成。微处理器采用8位的HCS08内核,集成了1个SPI(Serial Peripheral Interface)接口、1个8路的8/10位A/D转换器、2个TPM(Timer/PWM)模块、2个SCI(Serial Communication Interface)接口、2个I2C和1个8路的KBI(Keyboard Interrupt)接口。射频模块的工作频段是2.4 GHz,通过SPI总线与处理器通信。其主要特点有:

◆ 采用2.4 GHz频段,其设计构架符合IEEE 802.15.4协议; ◆ 接收灵敏度-92 dBm,发送功率为-28.7~+3.4 dBm可调; ◆ 拥有0~15(共16)个可选工作信道; ◆ 采用直接序列扩频(direct sequence spread spectrum)的二进制编码方式,增强了抗干扰能力; ◆ 采用OQPSK数字相移键控调制技术,大大降低了数据传输的误码率; ◆ 采用免冲突的载波检测多址接入(CSMACA)机制,避免了数据传输过程中的冲突。

2 硬件系统设计

如图1所示,整个系统硬件结构由4部分组成:RS232/485总线接口单元、数据处理单元、射频收发单元和电源管理单元。

图1 短距离无线数据传输模块硬件结构图

一方面,PC/仪器仪表通过RS232/485总线将数据传送给MCU处理器,处理器将数据包进行适当处理后送给射频模块发送出去;另一方面,射频模块将接收到的数据送给MCU处理器,处理器经过解包处理后再通过RS232/485总线将数据送给PC/仪器仪表。

工业中的仪器仪表大多都采用RS485总线通信方式,因此无线数据传输设备提供RS232/485可选通信接口,既方便连接PC机,又满足了一般仪器仪表的要求,串口波特率为1 200~115 200 bps可调。

3 软件设计和低功耗通信协议研究

无线数据传输设备的一般工作流程如图2所示。在进行相关初始化之后就进入主循环,对射频模块和串口进行轮询: 当射频模块接收到数据包时就进行解包,然后送到RS232/485总线;当串口接收到从RS232/485总线上发来的数据时,就进行相关处理并送入射频模块发送出去。这种轮询的方式结构简单,实现方便。

图2 短距离无线传输设备软件流程

然而,在这种工作方式下,射频模块就必须时刻监听信道。在2.7 V工作电压、处理器时钟频率为2 MHz时,MC13213的射频模块接收工作电流IRF(Rx)≈37 mA,处理器以及外围器件的工作电流Imcu≈2 mA,因此设备的正常工作电流I≈39 mA,这个电流对于一些供电受限的工业应用显然是不能够接受的。为了降低无线传输设备的功耗,需要对设备之间的传输协议作适当的改进。

由于在大部分的时间里设备之间没有进行数据传输,因此射频模块一直处于接收状态是一种资源浪费。而设备本身不知道对方何时有数据传输过来,因此设备之间约定在特定的时间段内进行数据传输,而其余时间休眠。

这样一种约定需要一种同步机制。我们采用信标同步机制:一个设备定时发送一个称为“信标(Beacon)”的数据包,即信标帧。另一个设备通过接收该信标帧来实现同步。我们将发送信标帧的设备称为“主设备”,接收信标帧的设备称为“从设备”。通过信标帧,即可实现从设备和主设备之间的同步。

在该协议中,有3种类型的数据包:信标帧、数据请求帧和数据帧。信标帧和数据帧的帧头包含有是否有数据待传的信息。

实现同步之后,主设备和从设备之间就约定进入休眠时间(Tsleep)。在休眠期间射频模块深度睡眠(虽然关闭射频模块后功耗会更低,但唤醒时间太长),处理器处于超低功耗状态,只有串口处于接收状态。休眠时间结束后,主设备就会醒来,并且射频模块向外发送信标帧。信标发送完后,射频模块立即进入接收状态。从设备从休眠中醒来后立即唤醒射频模块进行信标侦听,当接收到主设备发送过来的信标后,就会判断主设备是否有数据待传。如果有,就向主设备发送数据请求帧;否则,从设备就会将自己串口接收到的数据通过射频模块发送给主设备,直到数据发送结束进入下一个周期的休眠时间(Tsleep)。主设备接收并处理从设备发送的数据帧,并通过数据帧的帧头判断是继续等待还是进入下一周期的休眠时间。当主、从设备都没有数据需要进行传输时,从设备接收到信标后直接进入下一周期的休眠时间,而主设备等待Twait后没有收到从设备的任何数据,也会进入下一个周期的休眠时间。在这种情况下,由于从设备会比主设备早休眠Twait的时间,因此从设备的休眠时间为Twait+Tsleep。另外为了防止失去同步,从设备醒来后就将射频模块设置为接收状态,直到接收到信标帧,或者超时继续进入休眠。这个超时阈值至少为Tsleep,从而保证了重新同步。如果从设备N次都没有收到信标帧,可以认为周围没有主设备,因此可以进行一次长时间的休眠Thibernate。具体流程如图3所示。

图3 低功耗改进后的主、从设备软件流程

经过该协议优化后,主、从设备在一个周期内的工作状态如图4所示。

改进前的平均工作电流:

图4 改进前后主从设备无数据传输时一个周期内的工作状态

改进后的平均工作电流:

表1 2.7 V工作电压下测得的主、从设备工作电流

其中:

射频模块接收状态时的工作电流IRF(Rx)≈37 mA; 射频模块发送状态时的工作电流IRF(Tx)≈30 mA; 射频模块深度睡眠的工作电流IRF(sleep)≈35 μA; 处理器正常工作电流Imcu≈2 mA; 处理器休眠工作电流Imcu(sleep)≈5 μA; 射频模块发送1个数据包需要的最大时间Td≈4 ms。

因此,当Twait=5 ms,Tsleep=200 ms时,I后(主)≈1.58 mA,I后(从)≈0.79 mA。远小于改进前的I前≈39 mA。

4 实验结果和总结

采用了低功耗的传输协议后,在Tsleep分别为200 ms、500 ms和1 s情况下,无数据传输和每10 s互传一个数据

贵阳磨骨价格

兰州隆胸

郑州隆胸医院

广州隆胸

相关阅读