1. 相关背景
1.1. 研究背景
车联网服务(Telematics即telecommunication information)为安装在车上的资讯系统平台,通过内置在汽车上的计算机系统等设备,以文字、语音、图片、视频等方式,为车主提供广阔的多媒体信息远程服务,起到提高行车的安全性、节省了驾车者的时间等功用[1] 。
Telematics规模增长较快,截止2011年时,产业规模已达到620多亿美元,增长率仍在逐年上升,预计2013年全球产业规模将突破1100亿美元。我国交通部已经将车联网、船联网等列入了“十二五”智能交通发展的主攻方向,工信部则表示将在“十二五”期间从多方面加大对车载信息服务的支持力度,以推进车联网产业的全面发展。
车联网系统服务的关键节点是车载终端和云服务计算处理平台。车载终端由传感器、数据采集器、无线发送模块组成。云服务计算处理平台包括行业平台中间件和云基础架构。图1为典型的车联网系统架构[2] 。
传感器、路边设施和车辆3个独立要素构成了车联网架构:传感器(包括埋地线圈、交叉路口视频检测系统、车载传感器等)实现车辆周边信息以及路况信息采集;路边设施(包括WiMAX基站、3G基站Wi-Fi接入点、卫星等)发布路况信息,为车辆提供接入服务。车辆运行过程中,产生的车辆数据不断回发到后台数据库,形成海量数据,由云计算平台实现对海量数据的“过滤清洗”,数据分析平台对数据进行报表式处理。实现车与路、车与车主、车主与车主、车主与第三方服务商的沟通[3] 。
1.2. 国内外现状
目前车联网服务比较成功的案例有:
1) ONSTAR:OnStar是通用汽车公司的汽车电子公司,是世界上领先的车载安全、保障和通讯服务的供应商。自1995年诞生至今,OnStar系统的技术不断完善和更新,在北美地区拥有600万收费会员。
2) GBOOK:GBOOK是丰田旗下汽车安全信息服务品牌,技术架构、工作原理、服务模式都和通用的ONSTAR非常类似,虽然在全球范围内,GBOOK的运作远不如ONSTAR成功,但在引入中国市场的时机方面,却明显领先,目前在中国的用户也比ONSTAR要多。

Figure 1. Typical system architecture of Telematics
图1. 典型的车联网系统架构
3) GBOS:GBOS是苏州海格专属的服务品牌,在客车信息化领域,GBOS系统全球领先,可以为用户提供精准油耗管理、位置管理、驾驶员行为模式分析、车辆身份信息、多维度维保计划等全方位保姆式服务,为提高客运公司提高管理水平提供了十分有用的帮助。
除了OnStar、G-Book、InkaNet等前装T服务外,国内还有车音网、车讯网、车信通、车友互联等后装服务也陆续兴起。但尚无开放的车联网云服务平台。如车音网,或者星软电子的运营中心,都是技术封闭的专有系统[4] 。
对于车联网云服务发展的关键是如何使得服务进入终端,并将和车相关的物联网数据汇集到云平台。建立以车为中心的资讯平台,车载系统的网关中间件是个重要节点。国内外已经有很多的智能网络嵌入式通用中间件的基础研究。迫切需要在产业化的过程中,推进技术的发展和升级。开发类似欧洲SODA和Hydra类似的软件标准和通用中间件,并将之用于实际的产品,是占领物联网制高点的关键[5] 。
中国拥有规模与覆盖范围全球第一的移动通信网络和丰富的带宽资源,汽车保有量很大,发展车联网具有一定优势,也面临诸多问题:
第一,缺乏核心技术,应用出现同质化倾向。车联网要攻克的关键技术包括信息协同技术及标准问题;
第二,没有明确有效的商业模式。前装与后装市场各有优劣势,但都面临很多挑战,用户规模小,渗透率低。
第三,缺少行业标准。中国车企在研发相关系统时,并没有统一的平台和接口作为参考。各自为政造成了系统之间的兼容问题,并可能导致资源浪费。
第四,安全和隐私问题。车联网系统收集的大量数据,包括整个车辆的零部件、运行状态及线路,需要妥善处理。个人客户出于对隐私的保护,对车联网的接受度还有待提升。
第五,中国的车联网行业刚刚起步,电信运营商暂时只能起到管道作用。三大电信运营商出于各自的利益,都没有推出相应的服务资费标准,且通讯资费价格普遍较高,现有的技术在网络覆盖与连接、计算能力、响应速度等方面与车联网的要求还有一定差距[6] 。
1.3. 研究意义
目前国内众多车载应用厂商的系统都是封闭的,传统的嵌入式导航电子系统在兼容性、系统可扩展性和数据一致性等方面存在局限性,不利于产业发展。
基于国际标准OSGi VEG(Open Service Gateway Initiative Vehicle Engineer Group,面向Java的动态模型系统汽车专家组)规范的微内核模组化的车联网终端应用平台,利用标准插件的形式,建立开放的面向车联网云服务的软件框架,是一个有技术和商业前途的发展方向。采用OSGi的优点包括:与操作系统无关,能建立跨平台的车联网中间件;各个厂家能按照规范的标准接口独立开发,集成使用;动态加载和卸载服务。OSGi VEG是针对车联网应用的符合车内驾驶环境下的各项服务,并且针对车载应用对OSGi平台功能进行了优化,方便集成车内各种电子元件功能,以及通讯接口和人机界面。
本系统云加端的车联网开放平台开发的成功,将有助我国汽车电子工业的技术提升,促进车联网云服务应用的落地和发展。而基于云加端的模式,可以协同服务运营商和车载电子硬件厂商间的产业分工合作,促进产业转型[7] 。
2. 研究内容
本系统的研究目标是开发基于OSGi架构的车联网开放式云服务平台,主要包括三大部分:车载嵌入平台的物联网可配置通用中间件及开发工具箱(SDK)、运行于公有或私有云基础架构上的车联网云服务基础平台以及基于Android的车联网云终端解决方案。如图2。
本系统采用“云”加“端”的开发模式,实现基于OSGi的开放式车联网云服务平台。Amdatu平台是基于ApacheFelix和ACE构建的,可运行在公有或私有的基础架构(IaaS)的环境上。在此基础架构上,基于OSGi实现车联网应用开发服务,基础服务接口以及配置管理部署;为最终使服务进入终端,通过开发基于OSGi的车联网终端通用中间件。
2.1. 基于apache开源云计算方案Amdatu的开放式车联网云平台
开放平台是指在软件业和网络中,软件系统通过公开其应用程序编程接口或函数来使外部的程序可

Figure 2. Open cloud services platform based on OSGi
图2. 基于OSGi的开放式联网云服务平台示意图
以增加该软件系统的功能或使用该软件系统的资源,而不需要更改该软件系统的源代码。
图3为项目要开发的车联网开放式云服务平台。从体系上看,该部分内容为在PaaS上开发的开源云计算Amdatu框架。其中,PaaS框架中管理的资源以虚拟机和相关资源的形式提供,资源的管理等同于虚拟资源的管理。
平台采用可配置的核心虚拟镜像[8] ,自动作为可部署的运行时平台在云设施中供使用。这些镜像可以作为运行时业务流程的基础中间件进行实例化,例如,应用界面引擎,数据挖掘引擎、数据存储管理引擎等等。根据框架的实现模式,部署的运行时平台可能是整个或者部分行业解决方案,或者它可以和解决方案进行交互。自制虚拟镜像的扩展点,用于能够简易插入到框架虚拟镜像库中的特殊行业解决方案需求[9] 。基于OSGi架构的开放式服务平台可使汽车制造商和供货商以更短的设计周期开发自主的讯息娱乐解决方案,使其更快地投入生产,而且部署是灵活、可扩充的。
2.2. 基于OSGi的车联网终端通用中间件和开发工具箱
系统需要开发可广泛部署的物联网嵌入式可配置中间件平台,使得各种服务进入终端。采用兼容开放性的国际标准OSGi的面向服务的体系结构,可运行于新的或已存在的分布式有线/无线网络固定/移动设备中。车联网中间件将兼容常用车载终端操作系统的Windows、Linux和Android;能匹配多家通信运营商的M2M接口;支持HTML5.0应用[10] 。
通用中间件应该能够实现不同系统接入的需求,快速适应各种计算能力的终端产品,屏蔽硬件平台、

Figure 3. Function framework of open cloud services platform
图3. 车联网云服务平台功能框架
操作系统、无线网络和数据源的差异性,主要工具集都以OSGi服务的形式提供。
为方便客户开发车联网应用,开发系统的同时需要开发基于Eclipse的应用开发工具箱(SDK)。Eclipse是一个开放源代码的、基于插件机制开发的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。在Eclipse基础上开发车载物联网开发工具箱,效率高,可扩展性强[11] 。
中间件的开发要求具有以下特性:
1) 可配置性:通用中间件应该能封装和隔离不同移动设备之间的各种差异,用户应该可以通过不同的配置手段,在中间件基础上,快速建立适合业务需求的应用[12] ;
2) 开放性:通用中间件应该能将各种物联网标准和技术统一起来,将不同的技术整合进来,让它们之间具有互通性且 更加的智能。
3) 适应性:通用中间件可以感知运行环境变化、与应用运行的物理设备相关的因素、用户上下文和环境上下文的变化,使应用系统根据动态变动的执行环境,及时调整自己的行为,更好的完成任务。
4) 服务的发现和绑定:随着SOA和普适计算的发展,普适服务的部署将日益普遍。由于主机的移动和链路的多变性,服务不再固定而稳定,因此通用中间件必须支持快速的服务动态发现。如:服务如何动态发布、服务信息的失效、临近服务查询等[13] 。
5) 快速开发支持工具包:通用中间件应该能够实现不同系统接入的需求,快速适应各种计算能力的终端产品,屏蔽硬件平台、操作系统、无线网络和数据源的差异性,将环境感知、适配、资源管理等所有技术难点进行统一封装,中间件客户只需专注于自己的业务所长,从而缩短产品开发周期[14] 。
2.3. Android车联网云终端解决方案
本系统将开发基于Freescale和Android4.0的车载设备,充分利用ARM微处理器的高性能、高效率、高稳定性等特点,同时考虑了Android操作系统可移植性、扩展性、易维护和开源等,将两者结合起来可使系统具有兼容性强、稳定性高、跨平台、低成本、易于维护和升级等优点,为车联网应用提供了一个很好的完整的“云加端”解决方案[15] 。
3. 技术路线
3.1. 相关关键技术
开源云集算平台Amdatu的服务中间件开发:
Ÿ 混合网络数据服务支持;
Ÿ 核心虚拟镜像,自动作为可部署的运行时平台在云设施中供使用;
Ÿ 备用编程模型,带有支持形成无代码开发人员工作区的开发工具;
Ÿ 自助服务管理门户;
Ÿ 从PaaS框架输出的扩展。
基于OSGi的车联网通用中间件和开发工具箱SDK:
Ÿ 自适应性;
Ÿ 开放性;
Ÿ 环境和上下文感知能力。
Android平台的车载物联网云终端解决方案:
Ÿ 快速冷启动;
Ÿ 多屏幕互动[16] 。
3.2. 技术路线
本系统开发基于Amdatu提供用于车联网的公共云服务[17] 。硬件环境如图4所示。
3.2.1. OSGi
OSGi技术是一些规范的集合,这些规范形成了一个基于java的动态组件系统。由此形成了一个开发模式,在这个模式上应用可以由许多不同的可复用组件组成。OSGi规范使得组件间相互隐藏了实现细节,并通过服务来通信,这些服务是专门用来在组件间通信的共享对象。采用OSGi技术,可以显著减少几乎所有方面的开发复杂度,编码更加容易书写和验证,重用增加开发系统变得更加容易,调度更容易管理,系统缺陷更早的发现,运行时提供的各种监视机制可以更好的监督正在运行的程序。
OSGi服务平台标准的核心是提供一个通用、安全并且可管理的Java框架,该框架支持可扩展部署和下载的应用程序(称之为bundle)。OSGi设备可以下载和安装bundle,并且可以在不需要的时候将其移除。在一个OSGi环境中,bundle的安装、更新由框架统一动态管理。由于Java平台的独立性和和动态代码加载能力,bundle的开发者可以很容易的开发出在嵌入设备上也能大规模部署的程序[18] 。
3.2.2. Amdatu
Amdatu是通用云计算平台,基于Java,利用OSGi服务模型来创建模块化平台,方便外部拓展,而无需引入复杂的开发模型。此外,Amdatu目的是提供按需使用的应用框架和基础服务,以便开发者更多

Figure 4. Hardware environment of open cloud services platform
图4. 车联网云服务平台硬件环境
关注他们的业务逻辑而非基础架构。
Amdatu高度模块化,因此系统划分为提供核心功能和机制的Amdatu 平台以及一些提供应用框架和基础服务的Amdatu子项目。Amdatu 平台是基于ApacheFelix和ACE构建的,可运行在公有或私有的基础架构(IaaS)的环境上。其基于开放标准,提供OSGi基础具备集群、多租户特点,利用ApacheWink,实现JAX-RS标准。部署利用ACE,一分钟内即可创建新的云节点。Apache ACE是个软件分发框架,可以集中管理和分发软件组件、配置数据等[19] 。
3.2.3. 中间件
本系统设计还包括了车联网的中间件。为Android系统增加了支持车联网应用的微内核中间件。其结构如图5、图6。
系统软件架构采用“B/C”模式,即客户端和服务端。客户端基于Java、Javascript,HTML语言,实现各种车载应用,包含媒体播放器,导航/LBS,维护/支付等;服务端通过车联网服务中间件,实现各种车联网服务请求。中间件包含各种接口:本地应用服务接口,M2M物联网接口,设备输入接口等;各种服务:多媒体播放,导航,故障收集,实时交通信息等;中间件微内核还具备生命周期管理、版本管理和动态更新。
3.2.4. Android
基于ARM 微处理器和 Android 操作系统开发的嵌入式车载导航系统终端信息平台,主要设计目标是实现车辆自动定位、行车路线设计、路径引导服务、无线通信等基本功能,将驾驶员和管理者、公路和车辆三位一体有机地结合在一起。中国联通、中国移动、中国电信都为M2M终端规定了接入标准;

Figure 5. Microkernel architecture software
图5. 微内核软件结构

Figure 6. System Software Architecture
图6. 系统软件架构
本系统的车载Android 终端能兼容这些接口。本系统设备的硬件结构如图7,采用Freescale iMX53。硬件配置:应用处理器主频1G,DDR2内存1G,支持WIFI,GPRS,蓝牙通讯;支持MPEG-4/MPEG2、H.264/H263、VC-1、DivX的视频编解码1080p@30fps;3D硬件加速,支持OGL-1.1&2.0、OpenVG1.0。

Figure 7. Cloud terminal hardware design of Telematics
图7. 车联网云终端硬件设计方案
4. 结论
车联网系统服务的关键节点是:车载终端和云服务计算处理平台。车载终端由传感器、数据采集器、无线发送模块组成;云服务计算处理平台包括行业平台中间件和云基础架构。
而本设计的特色就是“云”加“端”的解决方案,可以帮助服务商快速落地,帮助消费电子开发商向上扩展云服务,还能汇聚小企业的云应用服务和创意,提供终端车联网客户丰富的内容。一方面车载应用商店和基于Hadoop + Hive云计算架构的车联网云集算应用支持环境,为应用开发者提供车联网应用的技术支撑环境和商业配套接口。另一方面跨平台的车联网中间件,开发匹配电信,移动和联通等运营商的M2M接口,实现兼容。开发过程充分利用OSGi的优点,与操作系统无关性,能建立跨平台的车联网中间件;各个厂家能按照规范的标准接口独立开发,集成使用;动态加载和卸载服务。
本设计采用云加端的开发模式,实现的基于OSGi开放式的车联网云服务平台,将有助于我国汽车电子工业的技术提升,促进车联网云服务应用的落地和发展。
基金项目
项目来源:2012广东省产学研结合项目。