发布时间: 2026-09-17
标签: UWB, 多基地, multistatic, CPD, 生命体征, Calterah, 802.15.4ab, Euro NCAP, 座舱感知
信息来源
| 项目 |
详情 |
| 来源 |
Auto-Sens Interview |
| 受访者 |
Yaohui Liu, EMEA FAE & Marketing Manager, Calterah |
| 发布日期 |
2026-09-15 |
| 技术 |
多基地UWB (Multistatic UWB) |
| 标准 |
IEEE 802.15.4ab |
核心优势
多基地UWB vs 传统单基地(monostatic)对比:
| 指标 |
单基地 |
多基地 |
提升来源 |
| 角分辨率 |
单视角 |
多节点三角测量 |
空间分集 |
| 盲区 |
有遮挡即盲 |
多路径绕过遮挡 |
节点分散 |
| 多径衰落 |
单链路易受影响 |
不同几何路径去相关 |
路径分集 |
| 目标分离 |
近距离难分 |
多角度区分 |
多视角观测 |
| 检测可靠性 |
单一观测 |
多角度交叉验证 |
微多普勒交叉检查 |
| 硬件成本 |
新增传感器 |
复用数字钥匙UWB锚点 |
近零增量成本 |
技术详解
1. 同步层级
graph TB
A[多基地UWB同步] --> B[层1: 芯片内相干<br/>2T4R时分MIMO]
A --> C[层2: 锚点间同步<br/>多个UWB锚点协调]
B --> B1[2个发射器时分发射<br/>4个接收器同时接收]
B1 --> B2[拼接为8元素虚拟阵列]
B2 --> B3[需时序/相位精确对齐]
C --> C1[时间同步<br/>各锚点共享时钟]
C --> C2[相位相干<br/>锚点间相位锁定]
C1 --> C3[形成分布式雷达网络]
C2 --> C3
style B2 fill:#4a9
style C3 fill:#fa0
2. 座舱多基地UWB架构
| 组件 |
数量 |
位置 |
功能 |
| UWB锚点(发射+接收) |
3-5个 |
A柱/B柱/C柱/顶棚 |
数字钥匙+感知复用 |
| 虚拟阵列 |
8-20元素 |
多锚点拼接 |
高分辨率成像 |
| 处理单元 |
1个 |
车身控制器 |
数据融合+检测算法 |
| 频段 |
6-9 GHz |
802.15.4ab Ch11 |
1.3GHz带宽 |
3. CPD应用流程
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
| import numpy as np
def multistatic_uwb_cpd( n_anchors: int = 4, n_tx: int = 2, n_rx: int = 4, breathing_rate: float = 0.3 ) -> dict: """ 多基地UWB CPD检测仿真 架构: 4个锚点, 每个锚点2T4R 虚拟阵列: 4 × (2×4) = 32元素 """ virtual_array_size = n_anchors * n_tx * n_rx n_samples = 1000 fs = 100.0 anchor_results = [] for anchor_idx in range(n_anchors): snr_db = np.random.uniform(5, 20) noise_power = 10**(-snr_db/10) t = np.arange(n_samples) / fs breathing = np.sin(2 * np.pi * breathing_rate * t) signal = breathing + np.random.randn(n_samples) * np.sqrt(noise_power) from scipy.signal import welch f, psd = welch(signal, fs=fs, nperseg=256) breathing_freq = f[np.argmax(psd)] anchor_results.append({ 'anchor_id': anchor_idx, 'snr_db': float(snr_db), 'breathing_rate': float(breathing_freq * 60), 'confidence': float(np.max(psd) / np.mean(psd)) }) weights = np.array([r['confidence'] for r in anchor_results]) weights = weights / weights.sum() fused_breathing = np.average( [r['breathing_rate'] for r in anchor_results], weights=weights ) detected_count = sum(1 for r in anchor_results if r['breathing_rate'] > 5) return { 'virtual_array_size': virtual_array_size, 'anchor_results': anchor_results, 'fused_breathing_rate': float(fused_breathing), 'detection_confidence': float(detected_count / n_anchors), 'cpd_detected': detected_count >= 3 }
if __name__ == "__main__": print("=== 多基地UWB CPD检测 ===\n") result = multistatic_uwb_cpd(n_anchors=4) print(f"虚拟阵列: {result['virtual_array_size']}元素") print(f"融合呼吸率: {result['fused_breathing_rate']:.1f} BPM") print(f"检测置信度: {result['detection_confidence']:.0%}") print(f"CPD判定: {'有人' if result['cpd_detected'] else '无人'}") print(f"\n各锚点结果:") for r in result['anchor_results']: print(f" 锚点{r['anchor_id']}: SNR={r['snr_db']:.1f}dB, " f"呼吸={r['breathing_rate']:.1f}BPM, 置信={r['confidence']:.2f}")
|
应用场景
CPD儿童检测
| 挑战 |
多基地UWB解决 |
| 儿童被毯子覆盖 |
UWB穿透毯子,多角度交叉验证 |
| 儿童在CRS中 |
多锚点区分CRS+儿童呼吸 |
| 后排盲区 |
C柱/顶棚锚点覆盖后排 |
| 宠物误报 |
多角度微多普勒区分儿童vs宠物 |
生命体征监测
| 指标 |
单基地 |
多基地 |
提升 |
| 呼吸率误差 |
2-5 BPM |
<1 BPM |
多角度平均 |
| 心跳检测 |
困难 |
可能 |
多锚点增强信噪比 |
| 位置精度 |
~30cm |
~5cm |
三角测量 |
| 误报率 |
~5% |
<1% |
交叉验证 |
IMS开发启示
1. 硬件复用策略
| UWB锚点位置 |
数字钥匙用途 |
感知用途 |
复用价值 |
| 左A柱 |
左前门解锁 |
驾驶员侧感知 |
100% |
| 右A柱 |
右前门解锁 |
副驾感知 |
100% |
| 左C柱 |
后备箱解锁 |
后排左侧CPD |
100% |
| 右C柱 |
后备箱解锁 |
后排右侧CPD |
100% |
| 顶棚 |
无 |
全座舱覆盖 |
新增($5-10) |
2. 部署优先级
| 优先级 |
应用 |
技术路线 |
时间线 |
| 🔴 P0 |
CPD(复用4个钥匙锚点) |
多基地UWB |
2027 Q1 |
| 🟡 P1 |
生命体征(呼吸率) |
多基地+MIMO |
2027 Q3 |
| 🟢 P2 |
乘员分类 |
UWB+压力融合 |
2028+ |
| 🟢 P2 |
位置追踪 |
虚拟阵列定位 |
2028+ |
结论
多基地UWB通过同步空间分集解决了单基地UWB的盲区、多径衰落和目标分离难题。核心价值在于复用现有数字钥匙UWB锚点实现CPD和生命体征监测,近零增量硬件成本。
对IMS的核心启示: 多基地UWB是CPD的最优技术路线——不新增传感器、隐私友好、全座舱覆盖。建议2027年新车平台优先评估4锚点多基地UWB架构,同步推进IEEE 802.15.4ab标准化兼容。