0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

车企工程师的视角是如何看待智能网联汽车的?

ml8z_IV_Technol 来源:未知 作者:胡薇 2018-10-10 09:07 次阅读

为了满足智能网联汽车多源信息早期集成的要求,提出了智能化设备的概念与模型,识别出智能化设备的重要特征:具备解释性语言的开放接口。针对这一特征并根据实时性及安全性的要求,对车载嵌入式设备的早期集成给出了三种解决方案:Web CGI 方案、Java 方案和分布式方案。针对分布式解决方案,从软件工程的角度,提出了利用高抽象级别的 RMI 来解决嵌入式设备互联的方法,采用 CORBA 构件互联协议,以智能手机控制媒体播放设备的原型实现来进行平台中间件的验证。

随着汽车技术从机械化到“三电化”的发展,以智能化网联化为重要特征的驾驶自动化系统(Driving Automation System)的开发毫无疑问地成为汽车产业发展的重要方向。产品开发要适应市场的需要,产品需求要符合用户需求特征。从计算机行业的大型机到个人计算机再到消费电子的发展历程来看,智能网联汽车以消费电子和共享服务为特征的功能需求多样化和用户体验个性化将成为整车厂产品研发的关注点。

另一方面,自动驾驶的主动安全系统,感知和监视车辆内外状态环境,识别周边事物及对车辆、占有物和道路使用者的潜在危险,通过驾驶员告警、车辆系统调整、和车辆子系统主动控制等手段,自动介入而帮助避免或减轻碰撞。其中, 通过对目标和事件的感知、识别、分类和预判来监视驾驶环境,及对目标及事件反应与执行,均需要将大量的传感器集成在汽车电子电器系统上,大量的单片机及 ECU(Electronic Control Unit )等复杂设备都迫切需要智能互联,以满足 HMI ( Human Machine Interface )、 MMI(Machine to Machine Interface)操作的便利性、复杂性以及智能地驾驶员信息传达和部件间信息传递的要求。

汽车研发将以系统研发平台化技术、零部件快速集成与验证技术为支撑点,以快速迭代的生产模式为方向进行变革。而平台开发的中间件技术以及基础软件设计规范及接口的定义,必将成为各整车厂引领本次变革的制高点和必须掌握的核心技术。

1系统设计目标与要求

平台中间件的设计与开发须达成以下目标。

1)支持零部件灵活部署

2)支持零部件快速集成

3)支持产品早期验证

4)支持快速迭代的生产模型

根据 HMI 架构平台设计目标,平台中间件的设计要达到以下目标。

1)支持HMI架构上显示与功能逻辑的分离;

2)形成企业标准的车载应用逻辑开放接口规范(Profile);

3)灵活配置 HMI功能;

4)快速切换 HMI风格;

5)支持迭代开发,缩短 HMI新功能开发周期;

6)缩短 HMI与 Tier1&2集成开发时间,整车开发周期由通常两年半降低为一年半;

7)减少信息源部署的物理制约,支持 TBox及多传感器信息源与 HU 的快速集成;

8)减少显示屏幕部署的物理制约,支持仪表、中控屏、副驾屏、前视镜、后视镜及后排娱乐屏快速开发。

智能网联汽车电子电器系统构成如图1 所示,其中的平台中间件部分在整车系统集成中占有中心位置。

图 1 系统构成概念图

基于以太网总线的智能网联系统零部件部署拓扑结构如图 2 所示。

图 2 零部件部署拓扑图

2设计方案

为了便于设备执行机构与外界的交互,HMI 界面及模块间交互语言一般采用解释性的高级语言。交互语言为解释性语言的设备我们称之为智能化设备(SmartDevice)。从概念上图3中的设备智能化模型应包括脚本语言、解释引擎和执行机构三部分。

图 3 设备智能化模型

对原始嵌入式系统设备的智能化,至少要满足以下几方面要求。

1)系统的安全性。对原生系统的安全性影响最小。汽车 ECU等原生系统对安全性要求很高,不能因为虚拟化后的外围设备功能逻辑程序执行的崩溃而影响原生系统的工作。

2)交互的便利性。采用解释性高级语言对被虚拟化的外围设备编程进行交互,以满足对目标设备操作的功能逻辑不断变化的要求。

3)部署的自适性。智能 HMI与原生嵌入式系统能有灵活的连接和部署。

HMI操作的实时性。对操作实时性的要求,根据用户体验及应用模块之间调用的时间要求,应有适当的指标。如果要求在几十毫秒级别,在设计上能有更多的方案可供选择。兼顾系统的实时性和可用性综合考虑,智能网联汽车应用系统架构设计采用实时性相对 IPC(Inter ProcessCommunication)和 RPC(Remote Process Call) 较 低 的 RMI(Remote MethodInvoke)。图4的进程间通信抽象度模型(IPCParadigms)表示,越往顶层抽象度越高,可用性越好,而实时性越差。

图 4 进程间通信模型

2.1Web方案

智能网联汽车应用系统的嵌入式设备智能化的 Web 方案如图 5 所示。执行设备使用 Web 的 CGI(Common GatewayInterface)和外部进行交互。访问端使用XHTML 语言及AJAX 技术, 利用 JavaScript 解释引擎来访问执行机构。执行机构内嵌 Web 服务前端,在其中部署 CGI,用 C 语言或 PHP、Python 等解释引擎来解释前端过来的指令,并调用执行机构的服务。

图 5 嵌入式设备智能化 Web 方案

2.2 Java方案

智能网联汽车应用系统的嵌入式设备智能化的 Java 方案如图 6 所示。HMI 采用 JAVA 语言,在 Java 虚拟机空间解释执行。解释后的代码与设备的 Native 空间交互,进行对设备的操作。

图 6 嵌入式设备智能化 JAVA 方案

2.3 分布式方案

考虑到智能网联汽车电子电器体系架构的可扩展性及零部件的冗余性,兼顾消息通信的实时性,采用多主机分布式体系架构设计方案如图7所示。该方案把原生系统作为智能设备的附属设备(AccessaryUtilities),HMI和执行机构采用分布式架构,分别部署在两台主机的不同系统中。双系统在 TCP Socket 或 BlueTooth Socket 上进行远程方法调用(RMI)。

图 7 嵌入式设备分布式方案

3原型验证

采用Android 智能手机与嵌入式设备互联, 把智能手机作为 HMI,嵌入式设备作为执行设备。两系统的连接采用 WIFI 或 BlueTooth 进行无线连接。考虑到双系统间通信的实时性,和两个系统平台不一致性,选用了CORBA(Common Object Request Broker Architecture)作为 RMI 通信协议。CORBA 组件天生为实现平台无关和透明传输而生,故采用 CORBA 这类跨平台组件是上佳的选择。

实现的原型是在 Linux 和 Android 两个操作系统平台上部署一个媒体播放的分布式应用程序。其中,Android 系统上的 APP 提供用户操作界面及应用功能逻辑,Linux 系统上的 Service 实现媒体解码和媒体播放的执行机构。

3.1执行机构设计

执行机构侧的 Linux 系统和 Android 系统交互需要满足以下条件。

1)Linux和 Android同时部署相同版本omniORB(AT&T)支持库。为避免数据原语可能的不一致性,特地同时为 Linux 和 Android移植了 ominORB相同版本。本方案采用 omniORB4.2.0版本。

2)Linux和 Android能通过 TCP/IP彼此可访问。Linux和 Android能彼此通过TCP/IP“看”到对方,在它们上可部署omniNamesCORBA对象寻址服务。这样, 通过对象名字能访问对象实体,而不用 关心对象实体在部署在哪里。

omniORB 对 Linux 平台支持很好,Linux 侧omniORB 的移植相对容易,移植要点如下。

1)交叉编译

因为编译过程对omniORB IDL 编译工具的依赖, 需要先编译出“ omniidl ”, “omkdepend” , “omnicpp”三个程序build-host 的版本。具体操作方式是先用cmake 生成修改 Makefile 文件,然后修改目录“src/tool”中的 Makefile 文件,把其中的编译器更换为 build-host 版本。

2)交叉编译器的选择

交叉编译选择 GCC。ARM平台有很多Linux移植版,编译时需要参照处理器指令集类型和 Linux用户层支持库进行选择。本次原型验证采用 TIDRA7xx的

Linux 平台配型的“arm-linux-gnueabihf” 工具链。

3)omniORB运行时环境

生成的 omniORB 运行库若非直接安装到系统的“LIB”路径,则需要在运行omniNames 前把 omniORB 的 lib 路径加入到“LD_LIBRARY_PATH”环境变量中。

图 8 嵌入式设备智能化设计

如图 8 所示,执行机构的 Linux 服务程序是一个媒体播放器。选用开源媒体播放框架FFmpeg(http://ffmpeg.org/)作为解码器,然后又选用了mplayer(http://www.mplayerhq.hu/)作为播放器的 shell,ALSA 作为声音通道。执行机构执行过程,是 omniORB 封装着拿到 IPlaylist和IMediaPlayer 对象,IPlaylist 和 IMediaPlayer 与媒体播放器实体进行交互。

3.2 HMI设计

HMI 侧的 omniORB 的移植基本和 Linux 侧的相同,但需要注意的是omniORB官方不支持Android平台。而 Android原生 bionic库只实现了 POXICstandardClibrary的子集(bionic相对POXIC标准缺少了大约 200条函数实现),这样omniORB对 Android 的支持有限。在移植过程中仅遭遇到数条需要补充的 C函数。Android版本 的 toolchain 选 用 Android NDK的 API level-19,指令集设置为“-march=armv7-a”。HMI APP 是一个Android 应用程序,结构如图 9 所示。

图 9 智能化设备 HMI 设计

下面是用CORBA IDL 语言定义的远程调用接口。

module MediaPlayer

{

interface IMediaPlayerListener { void onSeekComplete(in longmsec);

};

interface IMediaPlayer { void pause();

void seekTo(in long msec); void start();

void stop(); voidforward();

void backward();

void settOnSeekCompleteListener(in IMediaPlayerListener listener);

};

};

4 性能评测

本次试验评测了高通的面向 IoT 的 AllJoyn 方案和本次omniORB 方案的RMI 通信延时和资源占用情况。本次的测试环境和测试方案如下。

1)测试环境:Intel(R) Xeon(R) CPUE3-1226

2) 测试计时已去除 STDIO 操作;

3)测试两类 API:一类是只单向发送,另一类是带 callback;

表中显示的使用 nanosecond单位计时, 每次测试数据是调用测试 API1000次的结果。

5 结 论

经测试验证,这种双主机双系统之间的 RMI调用时延不超过 1ms,服务启动时间不超 5ms,完全满足车机操作实时性及服务快速加载的要求。系统稳定,可靠性、扩展性强,在汽车电子电器架构智能驾驶应用领域及 Telematics 都有广泛应用前景。另外,本方案全部采用开源代码进行开发,开发周期短,见效快,能较好地满足商业软件对软件开发周期及成本的要求。

参考文献

[1] AT&T. omniORB : Free CORBA ORB[CP/OL]. http://www.omniorb-support.com

[2] 朱赛春. 嵌入式通信总线的体系结构设计与原形实现[D]. 南开大学,2005:10-11

[3] J. Weber. Automotive Development Processes: Processes for Successful Customer Oriented Vehicle Development[M]. New York: Springer, 2009.

[4] E. Hanawalt and W. Rouse. Car wars: Factors underlying the success or failure of new car programs[J]. Systems Engineering, 2010, 13(4).

[5] B. Broekman and E. Notenboom. Testing Embedded Software[M]. Boston: Addison-Wesley, 2003.

[6] A. Sangiovanni-Vincentelli and M. Di Natale. Embedded system design for automotive applications[J]. Computer, 2007, 40(10): 42–51.

[7] A. Abdallah, E. M. Feron, G. Hellestrand, and M. Wolf. Hardware/software codesign of aerospace and automotive systems[J]. Proceedings of the IEEE, 2010, 98(4): 584–602.

[8] M. S. Fisher. Software verification & validation: An engineering & scientific approach[M]. New York: Springer, 2007

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 自动驾驶
    +关注

    关注

    781

    文章

    13449

    浏览量

    165278
  • 智能网联汽车

    关注

    9

    文章

    975

    浏览量

    30991

原文标题:智能网联汽车多源信息集成平台技术研究

文章出处:【微信号:IV_Technology,微信公众号:智车科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    欧美集体“抛弃”电动汽车,“不玩了”?

    电子发烧友网报道(文/梁浩斌)最近不少博主声称“欧美集体抛弃电动汽车,只剩中国在坚持”,甚至还有博主表示“苹果、奔驰、宝马都不玩电动
    的头像 发表于 03-11 00:13 6109次阅读

    正是拼的年纪|65岁电子工程师上班VLOG #65岁退休 #电子工程师 #搞笑 #上班vlog

    电子工程师
    安泰小课堂
    发布于 :2024年07月25日 11:31:02

    数字证书如何工作?汽车智能网联V2X通信安全的基石#智能网联

    智能网联
    北汇信息POLELINK
    发布于 :2024年07月12日 13:33:30

    芯驰科技出席第十一届国际智能网联汽车技术年会

    驰科技创始人兼董事仇雨菁女士受邀参加主论坛,发表主题为“场景驱动,打造面向未来EE架构的智能车芯”的演讲,与来自长安汽车、比亚迪、梅赛德斯-奔驰、宝马等车的重磅嘉宾,一起围绕路云一
    的头像 发表于 06-20 09:52 379次阅读

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件工程师是软件开发领域中的一种专业工程师,他们主要负责设计和开发嵌入式软件,
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    企业老工程师和高校老师有啥区别

    电子工程师硬件
    电子发烧友网官方
    发布于 :2024年02月28日 17:50:00

    #人工智能 #FPGA 怎么成为一个合格的FPGA工程师

    fpga工程师
    明德扬助教小易老师
    发布于 :2023年12月18日 21:19:01

    智能网联汽车隐私开发方法与流程探究

    本报告针对智能网联汽车用户的隐私泄露的问题,对智能网联汽车隐私开发方法与流程进行分析。
    的头像 发表于 12-16 11:31 823次阅读
    <b class='flag-5'>智能</b><b class='flag-5'>网联</b><b class='flag-5'>汽车</b>隐私开发方法与流程探究

    华为BU独立 不止是长安汽车后续更多将加入

    华为BU独立 不止是长安汽车后续更多将加入 长安汽车与华为共同设新公司的消息引发广泛关注。华为和长安
    的头像 发表于 11-28 19:01 1708次阅读