|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
无线接口电路设计及其在TPMS中的应用
5 P( {, i/ q4 Y. b# i ]2 D& _ s6 E
引 言( n T7 f4 p7 ?4 A+ t3 Z
新世纪伊始,由于凡世通轮胎(Fire-tone)的质量问题,大量的爆胎和翻车事故造成了超过100人的死亡和400人的受伤,引起了汽车行业和美国政府的关注。大量数据表明,对轮胎正确充气会大大降低爆胎的可能性。为了解决这个问题,轮胎压力监测系统(TPMS)的研究开始受到重视。汽车轮胎压力监测系统(TPMS)主要用于汽车行驶时对轮胎气压进行实时自动监测,对轮胎漏气和低气压进行报警,以保障行车安全。目前较流行的PSBTPMS系统(又称直接系统),是利用安装在每一个轮胎里的压力传感器来直接测量轮胎气压的,并对各轮胎气压进行显示及监视。当轮胎气压太低或有渗漏时,系统会自动报警。就TPMS系统构造而言,其采集的温度压力数据需要通过一种无线方式进行发送和接收,而且该收发电路要安装在轮胎里。这就必须要求其组成电路的芯片能够耐高温。要解决这两个问题,可以利用Motorola公司研制的发射芯片MC33493和接收芯片MC33594。该两款芯片都达到了汽车级温度(发射芯片为125℃,接收芯片为105℃)完全可以解决耐高温的问题,且工作性能极好。它们与单片机一起构成的接口电路成为TPMS系统中无线数据传输的重要组成部分。7 m$ X; n3 _3 B( b3 e
1 TPMS系统总体设计/ C! {6 w8 w; \! S& h7 d8 k
1.1系统工作原理
4 V; B7 g5 g1 V$ G2 U TPMS系统主要由安装在汽车轮胎内的压力、温度传感器,信号处理单元、RF发射器组成的TPMS发射模块,安装在汽车驾驶台上的包括数字信号处理单元的RF接收器以及LCD组成。
+ R- W4 P' j% c4 f4 [ 一般情况下,一辆轿车需要4个TPMS发射模块和1个TPMS接收器;而一辆卡车需要6~12个TPMS发射模块。为了提高系统的接收能力和抗干扰能力,系统安装时需要在汽车底盘安装接收天线。由SP12传感器、微控制器、MC33493发射模块、MC33594接收模块等主要芯片组成的TPMS系统方案结构框图如图1所示。0 D! \8 u6 o% w' K
![]()
! o* S' v) x; r& f. w 图1中,温度压力传感器将采集到的温度压力数据通过I2C总线或RS232接口送到单片机,单片机发送一使能信号ENABLE给发射器。当为高电平时,发射机开始工作,产生一个数据时钟信号给单片机,用于信号的同步。此时,单片机发送数据给发射机,发射机将得到的数据通过天线发射出去。接收机通过天线接收到信号后,首先置RESET引脚(用于设置主从模式)为一低电平,此时微控制器为主机,通过MOSI线来设置作为从机的接收器内的寄存器,设置好以后置RESET脚为高电平。此后微控制器为从机,而接收器就变为主机。它产生时钟信号,通过MOSI线将接收到的数据发送给单片机。此时单片机(带有SPI接口)通过SPI接口与PC机实现简单的连接,以达到在PC机上显示报警的作用。+ R) q7 p9 u9 P3 P% o
1.2系统设计的几点考虑
6 q" S, a8 p; ?2 Z ①由于TPMS发射模块工作在剧烈振动、环境温差变化大和不便于即时检修的条件下,因此要求所有的器件要有很好的可靠性和稳定性,能适应工作在-40~+125℃温度范围。为了缩小TPMS发射模块的体积、节省功耗和增强功能,需要尽可能地选用具有多种功能的小型射频收发芯片。
7 U* ^1 d5 k% P ②随着能源问题越来越被重视,系统节能成为本设计考虑的一个重点问题。为了提高TPMS发射模块在一节锂电池下的工作时间,应该在大多数时间内让系统进入睡眠状态。唤醒TPMS系统中的发射部分,可采用这样一种方法:在传感器模块中增加加速度传感器,利用其对运动的敏感性,实现汽车启动时自动开机进入系统自检;汽车高速行驶时按运动速度自动智能确定检测时间周期,利用软件设定安全期、敏感期和危险期,以逐渐缩短巡回检测周期和提高预警能力。唤醒TPMS系统的接收部分,可以利用接收机的一个引脚STROBE。在一个周期内,当检测到有效的ID时,STROBE置高电平,此时接收芯片就由休眠状态转为运行状态。
7 e: U" H0 | ?7 N2 系统硬件组成及电路设计) s( I5 e( D0 r' G- j* f( A9 X0 N
2. 1 TPMS系统主要硬件组成
& ~" L( {5 _1 m- W TPMS系统主要由TPMS传感器、微控制器和无线射频收发模块几个部分组成。
' b, u1 E( T5 b) r/ k(1) TPMS传感器3 d6 u3 Q% _3 [' g0 g- ^
TPMS传感器是一个集成了半导体压力传感器、温度传感器、数字信号处理单元和电源管理器的SoC模块。为了强化胎压检测功能,有不少TPMS传感器模块内还增加了加速度传感器、电压检测、内部时钟、看门狗和带12位ADC、4KB Flash、2KB ROM、128 B RAM、128 BEEPROM及其他功能的ASIC数字信号处理单元。这些功能单元使得TPMS传感器不仅能实时检测汽车开动中的轮胎压力和胎内温度的变化,而且还能实现汽车移动即时开机、自动唤醒和省电等功能。
6 D; a7 |$ u0 P6 ?1 d(2)微控制器
( T( O, C2 \' s3 g5 w& x 这里微控制器采用Atmel公司推出的一种小型单片机89C205l,片内含有2KB的Flash程序存储器和128 B的片内 RAM。89C2051共20引脚。其中P1口8脚,可以作为一般的准双向端口,在引脚的驱动能力上,具有很强的下拉能力。工作电压为2.7~6V。当工作电压在3V时,电流相当于6V工作时的1/4,空闲时为1mA,掉电时仅为20mA。这样小的功耗很适合于电池供电的小型控制系统。主要特点为采用Flash存储器技术,其软件、硬件与MCS-5l完全兼容。其片内程序的电可擦写特性,使得开发与试验比较容易。6 ?$ \7 P) x: S8 r/ ], A- U$ |, c9 U
(3)无线射频发射芯片MC334934 [& j+ _3 i) l8 l. L1 N6 Y( X# L2 d
摩托罗拉的MC33493器件是高温集成UHF无线电发送模块。可进行OOK(On-Off Keying)或者FSK(Frequency Shift Keying)两种调制方式。该芯片采用TSSOP-14封装,工作在300~450 MHz频段;具有FSK和OOK调制和解调能力,抗干扰能力强,适合工业控制应用;采用PLL频率合成技术,频率稳定性好;具有较小的发射功率,较大发射功率达O.18mW;数据速率可达9.6kb/s;1.9~3.6V低工作电压;功耗低,发射时电流11.6mA,发射待机状态仅为O.8μA(工作温度在125℃)。1 |1 n; Z: J7 n
(4)无线射频接收芯片MC33594
( K( k( \1 F# u+ J5 X5 W! O 摩托罗拉的MC33594器件是高温集成UHF超外差无线电接收模块。该芯片采用LQFP-24封装,工作频率在300~450MHz频段,电压在4.5~5.5V范围内;接收灵敏度高达-103dBm。芯片较大的特点是带有一串行外设接口SPI(Serial Peripheral Intelface)。通过SPI,它允许CPU与各种外围接口器件以串行方式进行通信,交换信息。SPI接口使用四条线:串行时钟线(SCK),主机输入/从机输出数据线MISO,主机输出/从机输入数据线MOSI和低电平有效的从机选择线RESET。
7 g; h0 D/ ]# p: q" _![]()
2 V) q# k9 o- o% k2 K2.2 TPMS系统中的无线接口电路硬件设计; p4 a- a1 _& l F$ z4 P+ e8 S2 D
TPMS系统设计中较关键的一点是数据的传输部分。整个数据传输部分由两部分组成:一是驾驶室中的无线接收部分,另外一部分是轮胎中的无线发射部分。这两部分数据传输的准确性、稳定性,将是系统优良性能的重要体现。1 f% I T1 Z' q0 u! n! @8 D
(1)无线发射接口电路设计
! l G8 ? G% N' d. F 无线发射电路由发射芯片MC33493、AT89C2051单片机和电平转换电路构成,如图2所示。发射模块中,引脚3(BAND引脚)接3V高电平,表示系统发射频率为434MHz,用于选择工作频率;引脚14(MODE引脚)接高电平,表示系统选择FSK调制模式。FSK调制方式定义为一个信号的两个不同的频移值分别表示数字高、低两种电平。在这个系统中,低频移表示数字高电平,高频移表示数字低电平。发射芯片的FSK调制方式由与晶振串联的下拉负载电容C1来实现。与CFSK引脚相连的有一内部开关,用以选通下拉电容C1。当DATA=O时(MODE引脚置高电平),开关关闭,此时输出高频移;当DATA=1时,开关接通,此时输出低频移,这就实现了FSK调制方式,也就是说,如果载波频率是433.92MHz而且总的频偏是士△f(MHz),则数字高电平表示为433.92MHz-△f,数字低电平表示为433.92 MHz+△f。
- z1 R* w$ A5 B' ]9 C 由于MC33493工作电平较大为3V,而微控制器89C2051工作电平较大为5V,要实现连接就必须进行电平转换。系统供电为5V,通过电平转换电路为发射芯片供电。其发射芯片MC33493通过电平转换芯片与单片机相连,实现数据的双向传送。它与89C2051单片机及接收机一起构成无线数据发射系统。
6 s4 N, F' W$ }; t1 z/ Z(2)无线接收接口电路设计( K, l% K& B+ [2 U, `( X1 k
无线接收接口电路主要由接收芯片MC33594与AT89C2051单片机构成,如图3所示。接收芯片MC33594通过SPI接接口与单片机AT89C2051的I/O口相连。该电路中,利用AT89C2051单片机的I/O口模拟SPI接口,通过用软件控制的方式来进行数据的传送;利用并口P1.1来模拟SPI的SCK输出端,P1.2模拟mcu的数据输出端(MOSI),P1.3模拟SPI的数据输入端(MISO),P1.4模拟SPI的从机选择端RESET。在接收之前,首先置RESET引脚为低电平,使接收机变为从机,而单片机变为主机。单片机通过MOSI信号线将单片机内的程序写入接收机的配置寄存器里对接收机进行配置,配置好后再置:RESET引脚为高电平。此时单片机变为从机,而接收机变为主机,它产生时钟信号,同时数据由RFIN端接入,经低噪声放大器放大后送入混频器,使其变换成中频。在中频级,经变换的信号在送入解调器之前被放大和滤波。. ?9 t. J8 U+ H c. O
0 T! z- s4 ^% ?% D `. F
为了与MC33594接收机所设定的SPI工作状态在逻辑时序上协调一致,要使串行时钟输出P1.1的初始状态为1,在选通MC33594后,置P1.1为O。此时AT89C2051单片机输出1位SCK时钟,同时,使MC33594串行左移,从而输出1位数据至AT80C2051单片机的P1.3(模拟MCU的MISO线),再置Pl.1为1,使AT89C2051单片机从P1.O输出1位数据(先为高位)至AT89C2051单片机。至此模拟1位数据输入输出完成。以后再置P1.1为0,模拟下一位的输入输出。依此循环8次,可完成1次通过SPI传输8位数据的操作。其程序包括MCU串行输入、串行输出和串行输入/输出3个子程序。MCU串行输入是从接收机的MISO线上接收8位数据并放入寄存器R0中;串行输出是将AT80C51单片机中R0寄存器的内容传送到接收机的MOSI线上;串行输入/输出将AT89C2051单片机R0寄存器的内容传送到MC33594的MOSI线上,同时从MC33594的MISO线上接收8位数据。由MOSI引脚将接收到的数据送入到单片机,这样数据就可以在PC机上进行显示了。/ S/ a/ J l# m2 y+ O: K4 l
7 |: n7 g7 Y# S5 o" o* F, v2 f% U$ U3 系统软件流程设计6 C2 ^, y$ |' I! i0 p
3. 1通信协议7 V/ h: C9 [! v1 V8 V2 _7 U' j
为了实现4个轮胎模块与中央接收模块进行无线通信的目的,发射机和接收机都需要按要求支持一个简单的通信协议。数据以9600bps的速率传送,采用FSK调制时,其发射方必须采用曼彻斯特编码方式,只有这样的码型接收机才能够接收。曼彻斯特编码就是一个数字信号值在每一个比特位周期内作高、低电平之间切换。前半周期低电平后半周期高电平表示数字O,而先高后低表示数字1。轮胎模块以数据包(帧)的形式发送数据,当轮胎模块中的MCU决定要发送数据(由传感器采集到的温度、压力数据)时,通过发送数据帧的前导位唤醒接收模块,随后发送数据帧,其数据帧格式如下:
, O7 M0 s& S5 @' A) E$ x / X# y, ?2 {! h, A5 I
①前导位。前同步码的长度为16位位且总设置为0xFB86。这样处理有三个目的:) y; w* T; Q# q+ @& c( k- L
◇0xF(1111)——Romeo2至少需要4位的前同步码来唤醒它,并让它的内部电路稳定。9 K: ^6 s3 @' b& N' M5 ]
◇0xB8(1100 1000)——Rome02中的寄存器2被编程为0xB8,这样使前同步码中的0xB8数据被验证并接通数据管理器。
( s; C' w5 E3 |, d& X ◇0x6(0110)——Romeo2中报头被使能,它指示有实际的数据跟随(以设备ID开始)。
# ~$ U1 c: i, w& E# l! B z ②设备ID。设备ID长度为32位。当每一个TPM轮胎模块MCU(RF2)被刷新,设备ID被编程地址为0x7800~0x7803。这个lD在实际中有很多用处,比如制造商的信息等;但是在这个演示模块中,它仅被用来专门表示辨认轮胎的信息,所以ID的4个字节在每一个数据帧接收后都要被检测。如果ID不匹配,数据帧就会被忽略。当接收机发现某个ID匹配,它就修改状态字节来指示轮胎的位置。
* Z9 i7 ~( J; U ③压力值。压力数据占8位,代表测量的轮胎压力值。
( Y) F# f/ P9 p& k. {* u ④温度值。温度数据占8位,代表被测量的轮胎温度值。3 m H: _' f. R9 T" J& V1 j
⑤状态位。状态位长度为8位,用以表示轮胎模块的电源电压的变化及对应轮胎ID匹配的位,目的是不需要接收机的MCU重复检查轮胎ID。6 A! g8 y. p0 z9 Y9 J5 b; [4 y
⑥校验和。校验和长度为8位,它的内容取决于传输数据,主要是为了提高传输数据的可靠性。
! P- Y% Q+ Q9 H" a, t& m ⑦停止位。停止位的长度为2位,用来指示数据帧的结束。1 T5 j8 n& o8 F
3. 2轮胎模块传输程序流程
& F* l3 C ~/ v$ w3 A 因为轮胎模块要适应长期工作,考虑到轮胎运转的平衡等因素又不能选择大的电池,因此轮胎模块传输程序的算法选择不但要保证数据的可靠传输,同时还要保证最低的电能消耗。" r- T% O2 G1 t
(1)发射模块发射程序流程
$ w5 @; l# n% { 关闭中断后,进行电源检测。若压力差值△1大于存储在ROM里设定的较大压差值△2,则说明轮胎的压力超限,需要报警。此时为增加接收机接收数据的可靠性,连续发送255帧。若其△1<△2,只发送1次数据帧。发射程序流程如图4所示。
& S: l2 x n0 {8 Y* [) b( \![]()
/ s* V3 a8 E6 t; R(2)接收模块接收程序流程" ?7 ?9 ]5 `; Z& f
接通电源后,接收机先后自行初始化和配置。一旦确认接收机配置完成,所有的LED就闪烁一次告知使用者模块准备就绪。在收到一个数据帧后,就要重新计算校验并与已经接收到的数据帧进行比较。数据帧经过确认后,某个轮胎和ID则要与存储在KX8存储器中的4个ID值比较。如果发现一个相配的ID,则数据就被处理并点亮相应的LED。较后,数据帧通过串行口发送出去以供外部数据接收和存储。接收程序流程如图5所示。
! \! |- A, F, ]9 x4 }![]()
3 C, O e, Y3 [0 B' ` 由于每个轮胎模块要发送相同格式的数据,接收机控制器能在收到全部数据帧后中断,这样它可以在大部分时间都处于低能耗睡眠状态。它还有许多节能选项,即使汽车停很长时间,也不会消耗完一块电池。1 T8 d0 y1 L W/ ]% l4 O# I4 v O
4 结论, d- U( f. o, @: Y
轮胎压力和温度的实时监测与报警系统将成为汽车安全系统必备的功能之一。本文中通过对Motorola发射芯片MC33493、接收芯片MC33594以及微控制器芯片AT89C2051等器件的应用,得出一套较为完整的TPMS的原理和设计方案。该系统在低功耗、收发距离与可靠性以及安全性方面具有明显的优势。此外,也可用于单片机数据采集、遥测遥控、监测等系统中,如远距离无线抄表、无线钥匙等。 {( k" C- K- y" L8 q2 Q
|
|