1 系统原理及结构
1.1TPMS的工作原理
胎压监测系统TPMS由轮胎压力传感器、MCU、射频收发器和主机接收器组成。由安装在轮胎里的传感器采集内部的温度和压力信息,并将其转换为电信号,经A/D转换后,由射频收发器将信息发送给驾驶厢的主机接收器,驾驶者即可掌握各个轮胎内部的温度、压力状况。当轮胎内部的气压、温度发生异常时,主机接收器就会通过报警装置自动报警,提醒驾驶者采取相应的措施,使胎压保持在正常的运行状态,从而保证行车的安全。
1.2基于ZigBee的胎压监测系统结构
IEEE802.15.4是IEEE确定的低速率无线个人域网(PAN)标准,ZigBee建立在IEEE802.15.4标准之上,是一种新型的短距离、低速率无线网络技术,它的显著特点就是低成本与低功耗。ZigBee协议栈体系结构由IEEE802.15.4标准定义了较低的2层:物理层(PHY)和媒体接入控制(MAC)子层,ZigBee联盟提供了网络层(NWK)和应用层(APL)框架的设计。ZigBee协议[3]支持的网络拓扑结构有3种类型: 星型结构、网状结构以及簇状结构,其中星型网络适合数量少、距离较近的设备联网,耗能低。ZigBee网络中的节点分为FFD节点和RFD节点两类,FFD节点是全功能设备,RFD节点是精简功能设备。一个ZigBee网络的形成,必须由FFD担任网络协调器,由协调器进行扫描搜索,发现一个未用的最佳信道来建立网络,再让其他的FFD或是RFD加入这个网络。
系统结构图如图1所示。根据胎压监测系统的特点和实际的需要,本文采用了星型网络拓扑结构,星型网的控制和同步都比较简单,可降低监测网络群体的总体功耗。系统结构主要由ZigBee传感器节点和网络协调器组成。在星型网络中,主机接收器是网络核心节点,负责收集和处理各个传感器节点数据,并对节点进行管理,是一个网络协调器(FFD设备),4个传感器节点作为终端设备,是网络节点,向网络协调器发送数据。
2 总体设计及硬件实现
2.1 总体设计
TPMS的压力传感器只能内置在飞转的车轮中,不便于随时检修,这就要求内置的无线通信设备使用的电池寿命长(等于或者大于车胎本身的寿命)、体积小、功耗低,同时应该克服复杂的环境和金属结构对电磁波的屏蔽效应。本文设计中选用CC2430芯片作为控制器和射频收发器,它的体积小,很适合安装于轮胎内部。检测装置大多数情况下使系统处于休眠状态,当需要时,激活系统使其工作,以达到省电和延长电池寿命的目的。
胎压监测系统主要包含2个模块:从机发射模块和主机接收模块。从机发射模块安装于轮胎内部,主要由传感器模块、无线通信模块和电源模块组成,主要用于采集轮胎内部信息和A/D转换;无线通信模块中核心芯片是CC2430,它可以作为处理器来负责节点的操作,处理采集到的信息;CC2430还是射频收发器,负责与主机进行无线通信,交换信息并发送数据;电源模块一般采用微型电池,如锂亚电池。主机可以随时唤醒从机工作,主要用于接收和显示从机发送来的信息,当数据异常时报警提醒驾驶员,主机接收模块主要由无线通信模块、液晶显示及报警模块和电源模块组成。
2.2硬件电路设计
基于ZigBee无线网络的优势和特点,本文利用CC2430芯片的集成射频功能构建胎压监测系统,压力传感器选用SP12芯片。
2.2.1 CC2430芯片
CC2430[4]是Chipcon公司生产的首款符合ZigBee技术的2.4 GHz射频系统单芯片,采用直接序列扩频(DSSS)方式,调制方式是O-QPSK。它延用了以往CC2420芯片的架构,在单个芯片上整合了ZigBee射频(RF)前端、内存和微控制器。它使用1个8位MCU(8051),具有128 KB可编程闪存和8 KB的RAM,还包含模拟数字转换器(ADC)、定时器(Timer)、AES128协同处理器、看门狗定时器(Watchdog timer)、32 kHz晶振的休眠模式定时器、上电复位电路(Power On Reset)、掉电检测电路(Brown out detection),以及21个可编程I/O引脚。它采用QLP-48封装,尺寸仅有7 mm×7 mm,具有极高的接收灵敏度和抗干扰性能,电流消耗小,当微控制器内核运行在32 MHz时,RX为27 mA,TX为25 mA,在休眠模式下,电流消耗只有0.9μA,外部中断或者实时时钟能唤醒系统;在待机模式下,电流消耗小于0.6μA,外部中断能唤醒系统。CC2430从休眠模式转换到主动模式的超短时间的特性, 特别适合那些要求电池寿命非常长的应用。2.2.2 SP12芯片
传感器采用英飞凌公司生产的SP12芯片, 它是继承式三合一传感器,具有气压测量、温度测量、加速度测量功能和电源电压检测功能, 能够自动补偿测量数据,把气压、温度、加速度等物理量转换为数值量并发送至MCU。SP12芯片采用SPI总线输出,内置时钟电路, 能周期性输出定时唤醒信号和复位信号。SP12的外围电路也很简单, 只有电源接口和MCU的数字接口。SP12采用了唤醒瞬态工作模式,当它工作在睡眠工作模式时其功耗仅0.6 mA,器件所有数字模拟部分全部工作时的电流消耗是6 mA,大大降低系统功耗,延长了电池的使用寿命。
2.2.3 发射模块硬件设计
胎压监测系统中发射模块的传感器一般都安装在车轮内,因此, 供电系统一般采用小尺寸电池。考虑到电池容量、寿命及温度适应性, 选用锂亚电池以保证监测模块在高低温环境中都能够正常工作,TADIRAN LTH2450锂亚电池能满足TPMS宽温度范围的要求。本文的发射模块采用3 V锂电池供电。发射模块的结构图如图2所示。
从机中,CC2430与SP12通过SPI线交换数据和发送命令。SP12将采集到的数据发送给CC2430,由CC2430转换成数据帧经天线发送给主机接收模块。系统平时处于休眠状态,操作大多都是以中断服务程序的形式来实现的,采用下降沿触发的方式,在中断出发后,终端服务程序读中断状态寄存器的相应位来进行具体操作。为了降低发射模块的功耗,MCU采用定时唤醒的工作方式,定时信号由SP12提供。该系统通信频率是2.4 GHz,晶振选择32 MHz。
2.2.4接收模块硬件设计
接收模块安装于车厢内部,可以直接利用车厢内部的电源,可以不考虑电源问题。接收模块的系统结构图如图3所示。
接收模块的核心是CC2430芯片,主机接收器在TPMS中的主要作用有:(1)协调器自组网,负责组织一个无线网络,给每个从机分配一个网络D号,并将每个从机的信息实施编码注册,存储在E2PROM中;(2)接收从机传输过来的数据帧,实现主机和从机之间的无线通信;(3)存储和处理数据,MCU接收到轮胎数据,对数据进行分析、保存、显示。接收器的按键电路选择简易的4×4矩阵键盘作为人机交互的窗口,能够手动操作来访问特定的轮胎并查看其运行状态,监测数据通过高分辨率的LCD显示屏显示出来,当数据异常时,报警电路报警。
3 TPMS软件设计
合理安排程序流程才能够使得整个系统符合低功耗设计。
3.1 发射模块的软件设计
发射模块的主程序流程如图4所示。
为了延长电池使用寿命,使系统不工作的时候处于休眠模式。CC2430采取定时唤醒的工作方式,由SP12的WAKE UP引脚输出定时信号,周期为6 s,送至MCU的键盘中断输入端, 将MCU从睡眠状态唤醒。当CC2430检测到唤醒命令时被激活,它的寄存器状态发生变化,CC2430进入工作模式。首先检测汽车的加速度,若加速度小于一个设定的范围则表明汽车处于停止状态,MCU重新进入睡眠状态。若加速度大于某个设定的范围则汽车已经在运行状态,传感器SP12采集温度压力数据,采用阈值比较法,把当前获得的数值与寄存器中的报警阈值进行比较,若超出阈值范围,说明数据异常,向主机提示进行报警;数据正常时,再判断定时发送数据的时间,如果定时时间没有到就进入休眠;定时时间到,就进行组帧、编码,把数据包发送到主机。发送成功后, CC2430重新进入休眠状态。再判断定时发送数据的时间,如果定时时间没有到就进入休眠;定时时间到,就进行组帧、编码,把数据包发送到主机。发送成功后,CC2430重新进入休眠状态,等待下一次被唤醒。正常时定时唤醒和异常时实时唤醒的结合使整个设计符合低功耗要求,又能保证系统的可靠性。
3.2 接收模块的软件设计
接收模块的程序流程图如图5所示。
上电运行后,初始化接收器的CC2430芯片,配置相关寄存器,主机进入等待数据状态。接收到一个数据帧后,主机将接收到的数据包中的信息与E2PROM中的信息进行对比,判断是哪个轮胎的数据,经过CRC校验和轮胎ID判断无误后,送液晶模块显示出当前值。当检测到温度、压力值偏离正常值时进行报警,提醒驾驶员注意。
无线传感器网络节点要进行相互的数据交流就要有相应的无线网络协议。本文中主机和从机基于ZigBee通信协议进行模块间的无线通信。
发射模块以数据帧的形式发送数据,通过发送数据帧的前导位唤醒接收模块,随后发送数据帧,数据帧格式如表1所示。
本文主要介绍了基于ZigBee的胎压监测系统的硬件设计与软件实现。ZigBee技术弥补了低成本、低功耗和低速率无线通信市场的空缺,利用ZigBee技术的低功率、低复杂度、组网灵活的特点满足了胎压监测系统的具体要求,实现了实时监测轮胎内部状态和异常报警的功能。本设计方案较好地解决了系统低功耗、高可靠性的问题,市场前景十分广阔。