浅析基于模型的车载人机界面开发
一、概述
车载hmi包含组合仪表、信息娱乐系统以及与之相关的操作控件等。车载hmi实现了人与车之间的对话,以图形化人机界面向用户传达各种车辆状态信息、路况信息;通过人机界面操作,用户能享受定速巡航、蓝牙、空调及音响等功能;随着汽车网络时代的来临,3g网络与移动通讯技术已得到广发应用,使得汽车反馈的信息不断增加,并且用户可配置的功能越来越多,这些向hmi提出了更多新的任务,相应增加了人机界面数量和复杂程度。车载hmi不仅为用户提供信息,而且使用户直接体验各种相关的汽车技术,最终,汽车创新技术的广泛应用将越来越多地取决于对hmi的认可。
然而,鲜有用户能充分利用车辆提供的新功能是不争的事实,人机界面操作过于复杂是其中主要原因。因此,实现车载人机界面用户友好,才能缩小“提供功能”与“使用功能”的差距。同时,车载人机界面要依从于整车厂(oem)的设计理念,零部件供应商要利用技术全面实施这些理念,才能保证汽车品牌识别度和创新用户体验的实现。
二、传统开发手段
传统的车载人机界面开发纯粹依赖于手工编程,供应商的程序员不仅要开发hmi功能软件,还要负责人机界面流转开发;手工编程效率低、错误率高,且难以复现多元化效果;设计效果要集成代码于硬件方得以验证,之后的代码修改工作量很大;对于多个hmi系统开发,代码复用率又很低。
开发之前的需求定义则依赖于oem提供的大量文档和图片,严重存在oem与供应商之间需求描述不精准,沟通效率低等问题;先期无法直观确认设计导致了后期大量更改工作;贯穿于开发周期始末的需求变更,带来重负担的文字工作,由需求变更带来的需求版本管理页将变得非常繁重。
显然传统的车载人机界面开发方式已无法适应如今的hmi需求趋势。必须引进新的开发思路解决以上问题。
三、基于模型的开发手段
采用先进的hmi开发工具,执行基于模型的hmi开发流程是行之有效的凯发娱乐登录的解决方案。
• 可通过专业的hmi开发工具altia、vaps xt等,设计和开发车载人机界面原型
设计人员在工具中快速定义控件及其对外接口、设计界面外观、定义界面流转,整个设计过程零编程;形成符合最初设计需求的直观可操作的界面原型;
该原型自身就是需求描述载体,直观体现了设计理念;成为oem与供应商之间、多方开发角色之间需求沟通的桥梁;是迭代修改设计的承载对象;除此之外,界面原型为后期代码实现提供输入。
altia design开发环境
• hmi功能软件开发,也剔除大部分的手工编码工作,以模型开发为核心任务
建模工程师通过专业的软件建模工具rhapsody(基于uml语言的高效建模工具)、simulink/stateflow等,设计hmi软件系统架构,建立hmi软件逻辑框架,开发算法模块,以模型替代代码设计软件功能;该阶段开发的模型也将为后期代码实现提供输入。
人机界面原型开发与功能模型开发可分别由设计人员和建模工程师并行开展,各自完成之后,将原型与模型集成,以仿真通讯的手段验证效果;一方面,发现功能模型的错误;另一方面,验证人机界面的设计,包括艺术和交互两方面的缺陷。altia、vaps xt等工具自身开放了与第三方模型之间的接口,开发人员无需再开发接口部分,使得早期验证设计需求变得非常方便。
rhapsody与altia通讯
另外,在设计过程中,以用户体验为最终目的,oem可结合各种概念,通过界面原型替代最终产品进行驾驶模拟测试,深入研究人机交互细节设计对于特定驾驶操作的适用性。
车辆驾驶模拟器
• 产品实现阶段,继续充分利用工具替代人工,通过自动代码生成技术将原型和模型转化为能够部署于硬件平台的代码,将基于模型的开发贯穿到底
altia、vaps xt等工具能够将设计好的界面原型针对绝大多数主流系统(操作系统&硬件&图形引擎库)自动生成全开源代码,代码包含图形对象、流转、os&gl&硬件资源;代码经交叉编译便可轻松部署于目标机。而建模工具rhapsdoy、simulink/stateflow也提供专门的自动代码生成技术,能够将模型转化为嵌入式代码,与图形代码集成最终下载运行于目标机。
自动代码生成
下载至硬件平台的人机界面,可进一步得到验证和确认;根据效果,开发人员在上位机快速修改原型与模型,利用高效的自动代码生成技术,将修改的设计快速下载至硬件平台去验证效果;如此迭代,最终得到满意的产品。
四、总结
因此,基于模型的人机界面开发,秉承所见即所得的开发理念,高效实现人机界面开发:
通过界面原型,oem能够尽可能早地明确设计需求,并且更有效地将自身品牌文化植入设计;
通过功能模型与界面原型仿真,尽可能早地验证人机工程效果和软件功能;
通过自动代码生成技术,oem&供应商能够迅速找到艺术与成本的平衡;
通过自动代码生成技术,革命性地加速供应商实现hmi产品。