2. 车载HMI基础
车载HMI(Human-Machine Interface,人机交互界面)是驾驶员与乘客获取车辆信息、控制车辆功能、享受座舱服务的总入口。在传统汽车中,HMI 往往等同于中控屏加物理按键;而在智能座舱时代,HMI 已经扩展为“屏幕、语音、手势、触控、物理按键、氛围灯、HUD、方向盘按键”等多模态交互的集合。对 Linux Wayland 工程师而言,理解 HMI 的边界与约束,是后续做合成器、窗口管理、输入分发和渲染优化的前提。
一、HMI 的定义与分层结构
从工程视角看,HMI 不是单一应用,而是一套分层系统。最上层是交互表现层,包括仪表、中控、副驾屏、HUD 等 UI 元素;中间是服务与逻辑层,负责信号订阅、状态机、场景切换、语音语义;底层是系统与硬件层,包括 SoC、显示控制器、触控 IC、麦克风阵列、CAN/LIN/以太网等。Wayland 位于系统与表现层之间,承担窗口合成、输入事件路由和缓冲区管理。
核心理解:HMI 是“用户意图”到“车辆动作”的翻译层,也是“车辆状态”到“用户感知”的反馈层。它既要好看、好用,更要安全、可靠、可诊断。
二、座舱域控制器:从分布式到集中式
座舱域控制器(Cockpit Domain Controller,CDC)是智能座舱的算力与功能中心。早期车辆采用分布式 ECU,仪表、中控、空调、音响各自独立;随着屏幕数量增加和交互复杂度提升,行业转向“一芯多屏、一芯多系统”的集中式架构。典型 CDC 会在同一颗 SoC 上运行多个操作系统:QNX 或 Linux 负责仪表与安全相关显示,Android 或 Linux 负责信息娱乐,Hypervisor 负责资源隔离与实时性保障。
在 Linux Wayland 方案中,CDC 通常包含以下关键组件:
- 显示子系统:DPU/GPU 多图层合成,支持多屏异显、独立刷新率与色彩管理。
- 音频子系统:多音区、回声消除、主动降噪与提示音优先级管理。
- 连接子系统:CAN、LIN、以太网、蓝牙、Wi-Fi、USB、CarPlay/Android Auto。
- 安全子系统:安全启动、Secure Boot、TEE、HSM、访问控制与入侵检测。
三、功能安全与信息安全:两条不可混淆的防线
功能安全(Functional Safety,ISO 26262)关注“系统失效时是否会导致不可接受的风险”,例如仪表黑屏、挡位显示错误、倒车影像延迟。信息安全(Cybersecurity,ISO/SAE 21434)关注“系统是否会被恶意攻击或数据泄露”,例如 CAN 注入、OTA 被篡改、用户隐私数据外泄。两者目标不同,但必须协同设计。
| 维度 | 功能安全 | 信息安全 |
|---|---|---|
| 核心标准 | ISO 26262、ASIL 等级 | ISO/SAE 21434、WP.29 R155/R156 |
| 典型威胁 | 随机硬件失效、软件逻辑错误 | 恶意注入、越权访问、OTA 篡改 |
| 关键手段 | 冗余、看门狗、安全状态、E2E 保护 | 安全启动、TEE、HSM、IDPS、签名验签 |
| 对 HMI 的要求 | 关键信息不可遮挡、故障可降级显示 | 输入可信、数据加密、权限最小化 |
常见误区:把功能安全与信息安全混为一谈。仪表黑屏属于功能安全问题,而中控被远程控制属于信息安全问题。两者的分析方法和验证手段完全不同,不能互相替代。
四、典型应用场景
车载 HMI 的场景可以按“驾驶态”和“非驾驶态”划分。驾驶态下,HMI 强调低认知负荷和快速反馈,例如仪表车速、导航转向提示、ADAS 报警、倒车影像、空调快捷控制。非驾驶态下,HMI 强调娱乐与生态,例如音乐、视频、游戏、会议、K 歌、氛围灯联动。典型场景包括:
- 多屏联动:中控导航一键投送到仪表或 HUD,副驾屏独立播放视频。
- 语音多音区:主驾说“打开车窗”,系统只控制主驾车窗,避免误操作。
- 场景模式:“小憩模式”自动调整座椅、灯光、空调、音乐和屏幕亮度。
- 安全报警:DMS 检测到疲劳驾驶,HMI 弹出警示并联动空调吹冷风。
五、行业趋势与工程启示
当前座舱 HMI 呈现四个明显趋势:一是集中化,CDC 整合更多 ECU,减少线束和成本;二是多模态,语音、手势、视线、触控融合,减少对屏幕的依赖;三是服务化,SOA 架构让 HMI 通过标准接口调用车辆能力;四是安全合规,R155/R156 强制要求车企建立网络安全管理体系和软件更新管理体系。
对 Linux Wayland 开发者来说,这些趋势意味着:合成器不再只是“画窗口”,还要处理多屏同步、安全图层、输入优先级、GPU 隔离和故障降级。下面用一张信号链示意图,把 HMI 从用户输入到车辆反馈的关键路径串起来。