2. 系统架构概览:TPMS系统组成及数据流

好,咱们进入正题。TPMS这个系统,说白了就是一套「轮胎里的微型物联网」。你想想看,一个高速旋转的轮胎里,要完成压力采集、温度测量、数据发送,还得撑过好几年的电池寿命——这本身就是个挺有意思的挑战。

我个人习惯把TPMS拆成四个核心模块来看:传感器、MCU、RF发射器、电源。这四块各司其职,缺一不可。咱们一个一个说。

2.1 传感器模块:感知的起点

传感器是系统的「眼睛」和「耳朵」。它负责把物理世界的压力、温度,甚至加速度,变成电信号。

  • 压力传感器:主流是MEMS电容式或压阻式。我遇到过不少选型翻车的案例,有人选了精度0.5%的传感器,结果温度漂移一上来,数据根本没法看。嗯,这里要注意:TPMS的压力传感器必须带温度补偿,否则夏天40度和冬天-20度,读出来的压力能差30kPa。
  • 温度传感器:通常集成在压力芯片内部。别小看它,轮胎内部温度能到100度以上,这对芯片的结温是个考验。
  • 加速度传感器:用来判断轮胎是否在转动。静止时可以不发数据,省电。我做过一个项目,加速度阈值设得太低,车子过个减速带就触发发射,电池直接少用了半年。

关键参数速查表

参数典型值我的建议
压力测量范围100-900 kPa至少覆盖0-1000kPa,留余量
压力精度±10 kPa @ 25°C全温范围±15kPa以内
温度测量范围-40°C ~ +125°C别选工业级,要车规级
加速度量程±200g够了,太高反而容易误触发

2.2 MCU:系统的大脑

MCU负责调度一切。它读取传感器数据,做校准和滤波,然后打包成数据帧,最后指挥RF发射。

为什么不用传感器直接接RF?你想想看,传感器输出的是模拟信号或者简单的数字接口,而RF发射需要复杂的协议栈和时序控制。中间必须有个MCU来「翻译」和「调度」。

我建议选MCU时重点关注三点:

  1. 休眠电流:必须低于1μA。我见过标称0.5μA的芯片,实际测出来1.8μA,因为漏电流没算进去。
  2. 唤醒时间:从休眠到能干活,最好在10μs以内。有些MCU要100μs,那每发一次数据,光唤醒就吃掉不少电。
  3. 外设集成度:最好自带SPI、I2C、定时器、ADC。少一颗外部芯片,就少一份功耗和成本。

避坑指南

我曾经选过一颗MCU,数据手册上写休眠电流0.8μA,结果量产了才发现,如果GPIO配置成浮空输入,漏电流会翻倍。后来我们在产线上加了一道「GPIO全配置为输出低电平」的工序,才把问题压下去。所以,MCU的休眠电流一定要实测,别只看手册

2.3 RF发射模块:数据上天的通道

RF模块负责把数据发出去。TPMS常用的频段是315MHz(北美)和433.92MHz(欧洲/亚洲)。

这里有个常见的误区:很多人觉得发射功率越大越好。其实不是。TPMS的接收端(车上的接收器)通常就在车顶或仪表盘附近,距离不超过5米。发射功率10dBm就绰绰有余了。功率再大,不仅费电,还可能干扰其他车载电子设备。

我习惯用OOK(开关键控)调制,简单可靠。FSK虽然抗干扰好一点,但功耗会高20%左右。对于TPMS这种短距离、低速率(通常9.6kbps或19.2kbps)的应用,OOK完全够用。

RF发射时序(典型)

1. MCU唤醒(~10μs)
2. 读取传感器数据(~5ms)
3. 数据校准与打包(~2ms)
4. RF PLL锁定(~1ms)
5. 数据发射(~10ms @ 19.2kbps, 192bit数据帧)
6. RF关闭(~0.1ms)
7. MCU进入休眠
--------------------------------
总耗时:约18ms
平均电流:约15mA(发射时)

2.4 电源模块:一切的基础

TPMS的电源通常是一颗纽扣电池,比如CR2032或者CR1632。容量从150mAh到250mAh不等。你要用这颗电池撑3-5年,甚至更久。

我算过一笔账:假设电池容量220mAh,自放电每年3%,5年后还剩约190mAh。如果系统平均电流是5μA,那理论寿命是190mAh / 5μA ≈ 4.3年。嗯,刚好卡在及格线上。

所以,电源设计的关键不是「能工作」,而是「能省则省」。我常用的招数有:

  • 加一个超低功耗的LDO:静态电流要低于1μA。有些LDO标称5μA,那光LDO就吃掉了一半预算。
  • 用MCU的GPIO直接给传感器供电:不采集的时候,把传感器电源彻底断掉。这个技巧我用了好多年,能省下至少30%的功耗。
  • 加一个10μF的钽电容:在发射瞬间,RF模块会拉出20-30mA的脉冲电流。电池内阻大,电压会瞬间跌落。电容就是你的「蓄水池」。

警告

千万不要用陶瓷电容代替钽电容做RF的储能电容。陶瓷电容在高温下容值会衰减,我在实验室测过,85度时10μF的陶瓷电容只剩4μF。结果就是发射距离变短,数据丢包。钽电容虽然贵一点,但稳定。

2.5 数据流:从轮胎到仪表盘

好了,四个模块都讲完了。咱们串起来看看数据是怎么跑的。

  1. 唤醒:MCU的定时器每30秒到5分钟(可配置)唤醒一次。或者加速度传感器检测到轮胎转动,触发中断唤醒。
  2. 采集:MCU给传感器上电,等待5ms稳定,然后读取压力和温度。同时读取加速度值,判断是否在运动。
  3. 处理:MCU做数字滤波,校准,然后组装成数据帧。帧结构通常包含:前导码、同步字、ID(每个传感器有唯一ID)、压力值、温度值、状态位、CRC校验。
  4. 发射:MCU把数据帧通过SPI送给RF芯片。RF芯片调制后通过天线发射出去。发射功率通常10dBm,持续10-15ms。
  5. 休眠:发射完成后,MCU关闭RF和传感器,然后自己进入深度休眠。整个周期大约20-30ms,其余时间都在睡觉。

你可能会问:为什么不能一直发?因为一直发,电池撑不过一个月。TPMS的精髓就在于「平时睡觉,有事才醒」。我见过一个设计,把发射间隔设成1秒一次,结果3个月电池就挂了。后来改成每60秒一次,电池寿命直接拉到5年。

数据帧结构示例(192bit)

| 前导码 (16bit) | 同步字 (16bit) | 传感器ID (32bit) | 压力 (16bit) | 温度 (16bit) | 加速度 (16bit) | 状态 (8bit) | CRC (16bit) | 保留 (48bit) |
| 0xAAAA         | 0x2D34         | 0x12345678       | 0x0258       | 0x1A3F       | 0x00FF         | 0x01        | 0x3C7A      | 0x0000...    |

注意:前导码和同步字是给接收端做同步用的。CRC一定要算,我见过有人偷懒不加CRC,结果接收端把干扰信号当成了有效数据,仪表盘上乱报警。

好了,系统架构和数据流就讲到这里。下一章咱们深入MCU的休眠与唤醒策略,那是低功耗设计的核心。你想想看,一个系统99.9%的时间都在睡觉,怎么睡、怎么醒、醒了干什么——这些细节决定了你的产品能撑3年还是5年。