[经验] MSP430和CC1101的电磁波唤醒功能设计

Jacktang   2016-10-31 15:27 楼主
     随着计算机通信技术的迅速发展和因特网的广泛应用,尤其是工业控制领域的应用越来越广泛,物与物之间能够直接通信就变得愈加重要。特别是在仓储系统中,目前主要使用无源RFID(Radio Frequency Identification)电子标签,因为受到识别距离和识别条件的影响(例如,必须使标签离阅读器很近并且要正对着阅读器),使用起来会比较麻烦。有源RFID虽然能够克服这个缺点,但是因为需要电源,所以必须保证通信的低功耗,才能使有源RFID得到广泛地应用。而MSP430 MCU专门为超低功耗应用而特别设计,其具有高度灵活的定时系统、多种低功耗模式、即时唤醒以及智能化自主型外设,不仅可以实现真正的超低功耗优化,而且还能大幅延长电池的使用寿命[1]。CC1101的WOR功能可以使芯片在无需MCU干预下周期性地从深度睡眠模式醒来侦听潜在的数据包,同时在深度睡眠模式下,CC1101的功耗几乎为0[2]。
    正是出于这种考虑,本文提出了一种基于MSP430和CC1101的无线唤醒数据传输系统,并且能将被唤醒的ED(Ending Device)的MAC(Media Access Control)地址通过串口显示在电脑上。
1 系统的总体结构
    图1为电磁波唤醒总体设计方案。它主要由3部分组成:多个被唤醒对象即ED、用于数据传递的AP(Access Point)、用于数据采集或者发送命令的终端设备(如电脑)或者手持设备等。


图1 系统的总体结构
    终端设备通过UART(Universal Asynchronous Receiver/Transmitter)向AP发送指令,AP根据指令向ED发送命令,ED接收到AP发送的命令后,立即从深度睡眠状态被唤醒进入到工作状态,然后将自己的MAC地址通过CC1101发送给AP,AP对收到的MAC信息进行处理后通过UART发送给终端设备显示出来。整个过程实现的是AP发送数据,ED接收数据,然后ED发送数据,AP接收数据,进而实现最终的显示。
2 系统的硬件设计与实现
    图2为电磁波唤醒的部分硬件结构[3?4]。MCU采用的是TI公司的MSP430系列单片机, 通过CC1101无线射频收发芯片实现无线数据的接收和发送,然后通过有线或者无线方式与终端设备进行连接。


图2 电磁波唤醒部分硬件结构图
3 系统的软件设计与实现
    智能终端ED和AP是以无线射频信号方式进行数据通信的。AP先发送包含MAC信息的WOR指令,当收到AP发送过来的指令时,ED被唤醒,发送自己的MAC地址给AP,然后AP判断接收到的MAC是否符合要求。如果符合,那么就让相应的ED闪灯,如果不符合要求,则AP发送使ED继续进入睡眠状态的指令,即进入低功耗模式。图3和图4分别是AP和ED的软件流程图。
4 系统的低功耗设计
    本系统的MCU采用MSP430,当其处于等待指令的LPM3低功耗模式时,此时ED的电流大约是10 μA,因此整个系统低功耗设计的关键是对CC1101的WOR的使用。当它处于接收状态时,其工作电流为12.5 mA左右;如果始终处于接收状态,整个系统的供电电池会很快耗尽。为了解决这个问题,可以将系统的工作模式设置为定时工作模式,在持定的工作时间段内,启用WOR,系统会自动处于侦听状态(即接收状态)。这样,就需要两个时间参数T0(最长工作周期)和T1(最长接收时间)以及接收的占空比d(Duty Cycle)。降低功耗的关键就是降低占空比。设定每2 s醒一次,每次持续3.5 ms。唤醒ED时要先发送前导字,时长要保证唤醒终端CC1101的时间周期2 s,并且,在连续两个周期(7 ms)内没有收到同步字和帧起始码,则认为是无效的数据,重新进入WOR状态。如此设定后,整个系统的平均工作电流为35 μA左右。这样一来普通的500 mAh纽扣电池就能使用很长时间。


图3 AP软件流程图


图4 ED软件流程图


    经过实验验证,本文设计的基于MSP430和CC1101的电磁波唤醒系统能够保证在低功耗下进行数据的无线传输。结合实际需要对该系统进行改造,在仓储及寻货等方面有重要的现实意义。


回复评论 (2)

可分享源码吗
点赞  2016-12-2 10:30
楼主,cc1101如何进入低功耗模式,如何唤醒?
点赞  2017-1-12 00:08
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复