本文主要想要解决以下问题:
1. Body 和 Comfort 域的功能架构设计
2. Body 和 Comfort 域中各个功能的设计思路
3. Body 和 Comfort 域各功能模块间的接口设计
4. Body 和 Comfort 域与其他域的接口设计
架构设计
总体架构
Body 和 Comfort 领域的总体功能架构设计,如下图所示:
从图中可以看出,Body 和 Comfort 领域主要包含下列几个子系统:
防盗报警系统(ATWS)
实现汽车的防盗报警功能,根据门窗、车身倾斜和内部扫描传感器等状态判断是否存在未授权入侵,在发生入侵时发出声光警报。
车门锁系统(Central Locking)
集中控制车门的上锁、开锁功能,接收来自驾驶员、钥匙、无钥匙进入系统等的上锁/开锁请求,并控制每个车门的锁止状态。
车外灯系统(Exterior Lights)
控制车辆所有外部灯具,包含大灯、刹车灯、转向灯、雾灯等。具备自动调光、自动远近光切换等智能功能。
车内灯系统(Interior Lights)
控制各类车内灯光,如座舱灯、座椅灯、门框灯等。可以根据车门状态、光线传感器自动开启和关闭。
雨刷系统(Wiper & Washer)
控制前后挡风玻璃的雨刷和洗涤功能。具备根据雨量自动调节刮水频率的智能模式。
除霜系统(Defrost Control)
管理车窗除霜功能,根据内外温度和湿度自动开启。
后视镜系统(Mirror Adjustment)
控制内外后视镜的自动调节,存储多个驾驶员配置。
座椅系统(Seat Adjustment)
控制各个座椅的调节,包括高度、前后位置、角度等。同时可存储多个个性化配置。
座椅温控系统(Seat Climatization)
控制座椅的加热和制冷功能,可以对不同座椅单独控制。
天窗系统(Sunroof/Convertible control)
开启和关闭车顶天窗或者软篷 convertible 顶篷。
喇叭系统(Horn control)
控制汽车的喇叭鸣叫功能。
小部件系统(Keypad)
小控件和钥匙盘的控制,如手套箱开关等。
配电系统(Terminal clamp control)
管理点火开关、发动机启停功能。
能见度子系统(Visibility subsystem)
通过雨刷、空调除霜等提高车内能见度。
声音报警子系统(Acoustic warnings)
提供防盗警报等声音提示。
舒适度子系统(Comfort subsystem)
通过灯光、座椅调节等提升乘坐舒适度。
无钥匙功能(Remote Keyless Entry)
使车门可以通过遥控钥匙无钥匙开锁。
每个子系统包含多个功能组件,这些组件围绕具体的传感器、执行器展开,实现对汽车锁止、照明、舒适性、声音信号等方面的智能控制。
接口设计
各个功能组件之间的接口设计如下:
传感器接口
传感器接口用于采集驾驶员请求、车辆状态、环境信息等。例如:
SwtLiAut:自动大灯开关状态
SwtIndcr:转向灯开关状态
RainSenReq:雨量传感器请求
DoorHndl:车门门把手状态
需要注意的是,传感器数据类型需要规范,需明确定义传感器接口的物理含义、数据格式、传输特性等,为组件之间的数据交换提供保障。
执行器接口
执行器接口用于下发控制指令。例如:
WipgCmd:前雨刷动作控制
NozHeatrCmd:喷嘴加热控制
SeatAxisPosn:座椅电机轴位置
执行器接口规定了控制命令的格式和语义,使操作行为标准化,便于替换使用不同的执行设备。
状态接口
状态接口用于反馈执行器的当前状态。例如:
WiprSts:雨刷状态
NozHeatrSts:喷嘴加热状态
SeatMoveSts:座椅移动状态
状态接口也进行了标准化,使控制器可以获得执行器的准确反馈。
内部组件接口
同一个组件内,子组件之间也定义了接口约定。例如雨刷系统中,
- RainSenReq:RainSensor -> AutoWipingEvaluator
- WipgAutReq:AutoWipingEvaluator -> WiperWasherManager
这保证了同一组件内部的交互格式统一。
跨域接口
部分接口跨域使用。例如:
VehSpd:车速信息,从底盘域提供给车外灯系统
OperMod:操作模式,从底盘域提供给多系统
跨域接口有助于不同子系统之间的协同。
汽车是一个复杂的系统,不同功能之间存在诸多交互,这需要定义清晰的接口约定进行数据传递和通信。本文中描述的接口设计保证了各组件能获取必要的输入数据,并向其他组件提供控制输出。
雨刷系统设计
雨刷系统接收驾驶员请求,感知环境信息,控制车辆雨刷和洗涤功能。
组件设计
雨刷系统主要包含下列组件:
Rain Sensing
RainSensor:基本雨量检测组件,使用雨量传感器采集雨水信息,输出雨量数据。
AutoWipingEvaluator:自动刮水计算组件,使用 RainSensor 的雨量数据,结合环境参数(温度、光照等)计算自动刮水请求,输出自动刮水请求控制信号。
洗涤液液位传感器组件,通过液位传感器探测洗涤液剩余量,可跟前后两个洗涤液箱连接,输出液位状态信号。
EnableDisableWiperWasher
系统启用管理组件,根据车辆当前状态(发动机状态、车速等)决定整个雨刷系统是否需要启用,输出系统启用信号。
WiperWasherManager
核心控制组件,收集所有雨刷相关请求,根据优先级和逻辑判断最终雨刷动作,向 Wiper 和 Washer 组件发送控制指令
设计思路
1) 剥离基本环境感知和算法计算到 RainSensing 组件中,使控制逻辑更清晰。
2) 每个执行器使用单独组件表示,如 Washer、Wiper 和 NozzleHeater,便于具体设备的变更和扩展。
3) 通过 EnableDisableWiperWasher 管理整体系统的启用/禁用。
4) WiperWasherManager 负责整体控制逻辑。
5) 不同的传感器通过独立接口与系统连接,标准化传感器接入。
该设计使雨刷系统功能模块化,具有良好的内聚一致性,也方便新增不同种类的洗涤和刮水设备。模块间接口简洁清晰有利于维护。
车内灯系统
车内灯系统控制车内灯的功能,如下图所示。
组件设计
InteriorLightManager
核心控制组件,实现选择和协调逻辑。
InteriorLightSensor
包含手动开关,检测使用请求。
ExteriorLight
提供外部亮度信息。
CentralLocking
提供车门锁状态。
LightSourceActuator
表示各个车内灯的执行器。
BatteryMonitor
提供电池电压信息。
设计思路
1) 使用 InteriorLightManager 作为集中式控制器,降低复杂度。
2) InteriorLightSensor 抽象各种使用请求传感器。
3) 从 ExteriorLight 和 CentralLocking 获得相关状态输入。
4) LightSourceActuator 提供对灯具的访问接口。
5) BatteryMonitor 提供电量状态。
该设计使用合理的分层和分解,使复杂的状态逻辑集中在 InteriorLightManager 中,其他组件功能明确且聚焦,有利于系统的演进。
车门锁系统
车门锁系统接收驾驶员请求、环境信息,控制车门的锁止、开锁。
组件设计
CentralLockingMaster:核心控制组件,实现锁止逻辑
HMI:包含锁车按钮等传感器,检测驾驶员请求
DoorLock:控制每个车门的锁止,提供车门状态
KeyPadManager:车门钥匙盘请求控制组件
GloveBox/TankFlap:手套箱/油箱锁止控制
Intra-Domain:提供车内其他系统状态信息
ProfileManager:协调钥匙、无钥匙进入等个性化信息
设计思路
1) 使用 CentralLockingMaster 作为核心控制组件,在其中集中实现锁止管理逻辑,降低复杂度。
2) 为每个车门单独设置 DoorLock 子组件,实现对不同车门的细粒度控制。并为这些组件定义标准化接口 individual signals per seat,明确数据交互方式。
3) 使用 KeyPadManager 统一管理来自车门钥匙盘的请求信息。
4) 细分不同种类的传感器信息,如门锁、钥匙状态等,为每个传感器建立标准化接口,以获得各类所需输入数据。
5) 使用 ProfileManager 协调多个个性化信息源,如远程钥匙、无钥匙等,生成当前驾驶员配置 ID。
6) 跨域接口提供车速、工作模式等信息,保证锁止控制逻辑可以利用更多车态数据。
7) 保持接口标准化,使得组件间数据交互格式一致,有利于复用。
通过这样的模块化、解耦和标准化的设计,可以使汽车锁止系统具备灵活性和可扩展性,同时也便于供应商间的接口统一。
防盗报警系统
防盗报警系统能在未经授权的情况下发出声光报警。
组件设计
AlarmManager:核心报警管理组件
SensorAdapter:传感器适配组件
AcousticDevice:喇叭执行器
InteriorLights:车内灯执行器
ExternalLights:车外灯执行器
汽车防盗需要连接许多传感器,这些传感器种类繁多,接口不尽相同。可以使用 SensorAdapter 作为适配层,与不同类型的传感器通信,向 AlarmManager 提供统一格式的传感器数据。
AlarmManager 无需了解各传感器的具体接口细节,就可以通过统一的 SensorAdapter 接收所需的传感器数据,大大降低了复杂度。
SensorAdapter 组件对连接的传感器进行数据转换和适配,传感器可以方便地拔插替换,AlarmManager 的主要逻辑不受影响。
该设计提高了防盗报警系统的灵活性、可扩展性和可维护性。同时也实现了应用层和传感层的分离。
其他系统
除了上述系统的软件组件设计外,车身舒适域还包括以下系统:
后视镜系统
控制汽车外部或内部后视镜的手动或自动调节
喇叭系统
用于警告其他汽车、行人或提供汽车状态相关的信息
除霜系统
感知外围环境并控制汽车除霜控制的行为
端子夹系统
控制电源和驱动运动电源的模式变化
防盗器
防止车辆发动机启动,当检测到未经授权的引擎启动时,防盗器会产生视觉和声音报警
座椅调节
调节座椅温度,包括座椅加热和冷却。
PKE 远程锁定
用于远程锁定或解锁汽车访问的系统
敞篷控制
代表打开或关闭敞篷车车顶的功能
注意事项
范围
没有考虑定时要求
没有考虑变体处理
没有考虑安全性通信机制
设计
核心控制逻辑应集中在 Manager 组件中,提高内聚性
应使用适配器组件连接不同类型、格式的外部信息源
每个执行器应使用单独的组件表示,便于精细控制
传感器类型应细分,提供专门的接口访问每类传感器
个性化信息统一管理,提供个性化配置
保持接口标准化,提高复用性和可扩展性
缺陷
缺少个性化参数和接口
缺少诊断编码和接口
没有详细分解传感器和执行器组件
未标准自适应前照灯系统
没有考虑生命周期依赖模式,如运输模式下的告警反馈
审核编辑:黄飞
评论
查看更多