【IT168 技术文章】
本文介绍了当前汽车软件行业的现状,分析了当前汽车消费者对汽车信息娱乐系统软件功能的主要功能和性能的需求,并介绍了风河系统公司的解决方案的特性。这些行业分析和解决方案有助于中国汽车设计工程师掌握当前汽车行业的发展趋势和最新的技术现状。
现在每个汽车制造商都在开展软件业务,并且承受着每个设备软件公司所面临的那种集成压力。通常新产品的市场窗口期非常紧,而复杂性会影响设备质量,成本的上涨也在出现失控局面。即使是最大、最好的工程师队伍也很难满足汽车消费者的所有技术要求。从产业整体来看,有三分之二的设备软件开发项目的完成时间严重滞后于计划进度,超过三分之一的项目严重超出预算。只有很少的设备能够满足基本的性能要求,接近四分之一曾经许诺过的设备开发项目没有完成。
在很多方面,汽车是多种前沿技术首先得到应用的行业。今天汽车消费者想获得的信息通讯功能的数量,以及使用内存受限的实时操作系统将这些功能高效集成的挑战在不久前还似乎遥不可及。连通性是目前最时兴的词眼,在不降低安全性的基础上提供连通能力变得非常重要。在计划和预算内达到这二个目标意味着成功,但在竞争激烈的汽车信息娱乐市场中也同样容易招致失败。
不管在刹车系统还是GPS系统中,软件故障都不是一个小问题,汽车信息娱乐集成系统中各个组件的正确运行对车辆性能和乘客安全来说至关重要。软件系统中的故障可能会导致成本高昂的汽车召回,这对制造商的信誉和成本都会造成严重的负面影响。
消费者期望的软件功能
下面分类列出了汽车消费者通常希望他们的汽车信息娱乐系统能够提供的许多功能和特性,特别是在长途车比较盛行的国家和地区。这份列表也同时综合反应了作为风河(Wind River)用户的汽车制造商的急切需求,以及汽车设备用平台的信息通讯能力。
信息娱乐系统经过蜂窝网络到服务提供商的通信,用于系统状态报告和更新;
通过蓝牙或Wi-Fi建立与短距离无线设备的通信,主要用于连接车主使用的便携式设备;
通过USB建立通信,例如与车主使用的iPod、记忆棒和膝上型电脑的通信;
信息娱乐系统与引擎(UTH)系统之间的通信,可以在汽车仪表盘上显示引擎系统的状态信息;
通过GPS交流位置信息,用于方向、地图、本地服务广告等;
从卫星下载音频、视频和文件,从而方便车主在行进途中访问文件;
通过触摸和图形系统实现人机界面(HMI)的输入和反馈等,采用二维和三维图像实现显示器、按钮、拨号盘、开关;
通过语音识别完成HMI的输入,从而实现电话拨号、收音机换台等功能的语音操作,需要噪声抑制、回声消除功能和众多可插入式模块(例如方言识别、语言、词汇量和声学模块);
通过声音实现HMI的反馈,实现系统音、音乐和音调;
通过语音合成实施HMI反馈,允许系统“回答”车主,需要文本到语音的转换功能;
支持可安装、可升级和可删除的软件,可能需要Java虚拟机和认证;
支持网络服务,实现基于网络的应用到应用的通信;
网络浏览器,可以从信息娱乐系统访问网络;
内部数据通信协议,用于软件组件之间的消息传递;
支持闪存并具有电源安全可靠性的文件系统,在掉电时不会发生数据丢失;
低功耗;
高效的电源管理机制。例如,一些系统在车辆“未启动”时需要电源,但在停用规定的一段时间后应该能自动关机以确保电池的长寿命;
快速启动,当用户一进入车内信息娱乐系统就能马上投入使用;
小型存储器封装以减少系统硬件成本。
风河的解决方案
面对汽车信息娱乐系统设计与开发所面临的挑战,风河系统公司主要从以下五个方面提供解决方案:
汽车设备用平台--用于信息通信设备开发的一体化开发与运行平台(图1);
图1:用于信息通信设备开发的一体化开发与运行平台。
在跨项目、团队、模型和地点的整套集成技术与非常好的实践基础上实现设备开发的标准化;
开放源码架构--该架构支持开放源码硬件与软件初创公司提供的非常好的产品,支持Linux以保证未来的平台投资;
健全的合作伙伴系统--采用预集成、预测试的技术在硬件和中间件级扩展平台功能(图2);
针对高度专业、先进系统的架构设计、定制和优化的工程设计服务。
具有现成BSP的参考设计
用于汽车设备解决方案的风河平台开始于硬件层,对此风河与飞思卡尔公司合作创建了一个针对汽车信息娱乐系统开发需求进行了优化的参考设计。通过合作伙伴系统,可以提供支持用户系统可能需要的大多数外围设备的板级支持包(BSP),例如:来自Ticon公司的三维图形和GUI创建器(GUI builder);Datalight公司提供的即使在断电时也能保护数据的文件系统;StonestreetOne提供的蓝牙技术;Vivid Logic公司对1394的支持,并提供针对音频、视频、CD-ROM、互联网等的基本驱动程序。
飞思卡尔的Media 5200能够满足快速启动用户应用开发的大多数要求。用户可以针对具体项目选择合适的性能、尺寸、形状和存储器外形。当用户切割好板子后,可以使用风河的Ice和Debugger进行设计、调试和固化。
基于Eclipse的开发套件
因为风河的Workbench开发套件是在Eclipse构架基础上创建的,因此用户可以扩展和定制开发环境以容纳来自Eclipse开发社区或自己创建的其它工具。例如增加UML建模工具就可以为整个应用建模,并在实际开发之前诊断出逻辑和流程的问题。用户很容易增加版本控制、特殊编辑器、高分辨率定时器,以及其它用于加快开发进程、增强设备质量的功能。所有与Eclipse兼容的工具都能与Workbench无缝集成,从而使用户的软件开发环境能够轻松达到空前的深度、广度和定制化。
适合低成本、高可靠性应用的VxWorks
针对汽车设备的平台基础是实时操作系统VxWorks 6.x。这一新的版本在优化的微内核中增加了存储器保护、错误管理、实时处理(RTP)、消息通道等,能提供快速处理、高可靠性和小型内存封装等优势,使用户的应用更具鲁棒性和经济性。
预先集成的中间件加速开发过程。功能集成可以节省中间件级的宝贵开发时间,因为用户的信息娱乐系统要求的所有网络、安全和媒体支持功能都已经内置。风河系统公司谨慎选择业界非常好的的软件合作伙伴以完善平台功能,针对风河的平台堆栈对平台合作伙伴的技术进行了预先集成和有效性验证,用户无需再费钱、费时、费力地选择、集成和测试建立应用系统所需的各种组件。
本文结论
贯穿项目、产品、团队和模型的开发平台的标准化不仅可以优化人力资源、加快软硬件开发速度、简化供应商管理、减少应用时的集成问题,而且能够有效地复用知识产权。设备软件开发过程标准化后,可以大幅地减少培训、工具、硬件和合作伙伴技术等方面的成本。对具有鲁棒性、端到端开发平台上的设备开发进行标准化不仅是设备开发取得成功的一个重要因素,而且也是可重复、甚至可外包成功的重要因素。
当汽车制造商在风河平台上对汽车设备用的信息娱乐系统开发进行标准化时,预先集成的硬件和软件合作伙伴的技术能使开发团队顺利越过难关,更早地进入高价值、产品差异化应用开发阶段,从而使他们能在更短的时间内以更低地成本提供更好的产品。由于风河可以提供深层次的技术支持能力,因此汽车制造商在他们产品支持方面拥有可信赖的合作伙伴。
用于汽车设备组件开发的风河平台
VxWorks操作系统
微内核特性
高效地任务管理 --- 占先和循环调度
多任务(任务数量不限)
快速、明确的上下文切换
256个优先级
快速、灵活的任务间通信
二元、计数和互斥
具有优先继承特性的信号量(Semaphore)
VxWorks事件
局部和分布式消息队列
POSIX管道、计数信号量、消息队列、信号和调度
控制套接字
高度灵活的设计,适合各种应用
系统时钟和定时装置
高度灵活的封装
递增的组件链接和加载
快速有效的中断和例外处理
优化的浮点支持
动态存储器管理
目标开发特性
完全兼容ANSI C,增强的C++特性支持例外处理和模板
全面POSIX兼容
作为外挂目标的交互式C语言解释器
功能强大的性能监测
支持集成的闪存文件系统
扩展的内核、任务和系统信息工具
动态的链加载器
超过1,800个API库
自动扩展特性
可以从ROM、闪存、本地磁盘或网络灵活启动
适合各种应用的灵活性设计
通过以太网、串行线、JTAG、BDM或定制手段完成系统级调试
使用JTAG或BDM(可选)加载硬件
中间件组件
连接性
IPv4/v6堆栈2.0,包括主机和路由堆栈
USB 2.0
安全性
增强型IPsec和IKE
防火墙、NAT、自学式网桥(Learning Bridge)
HTTPS--改进和验证过的SSL,兼容第三方SSL解决方案
安全库(密码库、数字认证)
SSL/TLS
RADIUS客户机
管理性
网络服务器
CLI
MIBway
管理集成工具
无线功能
802.11 a/b/g (站点和接入点)
无线安全协议
消息
TIPC
网络服务
XML
SOAP
WSDL
SOAP编译工具
WSDL输入工具
Workbench开发套件组件
Eclipse框架
项目系统
构建系统
编辑器
源分析器
风河调试器
风河开发环境工具
风河界面环境
主机界面
内核界面
VxWorks内核配置器
风河编译器(仅用于VxWorks 6.x)
风河编译器
风河GNU编译器
风河系统阅览器
风河片上调试器
风河ICE
风河探测器
风河VxWorks仿真器
风河ScopeTools