论文题名: | Design and Implement an Osgi Based Vehicle Interface Module |
关键词: | OSGi框架;车载接口;汽车制造;远程管理 |
摘要: | 目前,不同汽车厂商、产品类型和总线类型提取车辆信息的方式各不相同。每个汽车制造商对CAN总线信息的编码也大不相同。大多数汽车制造商都采用了CAN标准,所以车辆之间的应用层协议和消息格式的互操作性仍然不存在,因为每个厂商都有自己对发展,安全,成本等的考虑。 OSGi框架具有便携性、动态性、模块化和远程管理等特点,应用于车载平台上会使汽车制造厂商更独立,服务(部署单位)抽象层度更高和服务生命周期更长。OSGi作为SOA服务基本框架引入开发中,能有效降低开发和维护成本,动态的发现应用程序。应用程序在框架中以插件(Bundle)的形式存在,在运行时可以被动态的安装、启动、停止和卸载。通过OSGi框架也能远程管理车载接口,使用户不去服务站也能安装新应用程序。 近年来,车辆状态的监控已变得越来越重要,尤其是在车辆测试的阶段。为了处理这些状态信息,我们需要一个稳定和直观的计算机系统。目前,存在的这些系统都需要运行在特定硬件上,因此这样的系统开发费用相当昂贵。现有的实现方式是为特定的CAN设备开发一套设备驱动程序;它们基于字符设备,并且功能相对较少。通常,只有一个特定硬件的设备驱动提供字符设备接口从控制器发送和接收原始的CAN帧。 必须克服的另一个问题是,车载接口模块应用于不同的车型,而在应用程序是一直的。为了避免需要为每种车型设计一个应用程序的情况,采用OSGi设备管理树(DMT)这个机制。OSGi的DMT提供高层访问设备的命名方案,它可以根据不同的汽车厂商映射成不同的本体。DMT以XML形式来提供映射,将车辆的专有的内部结构隐藏起来。这种方法也使得命名方案独立于实际传感器网络;因此,传感器和状态元素可以划分为一个逻辑的方式,将使应用程序的程序员更容易理解。 本文的主要工作是在车载环境下实现包含SocketCAN框架的OSGi平台。实验结果表明,这个方案是可行的。本论文工作中,我们提出了一个动态的OSGi平台,把控制器区域网络(CAN)接口抽象为服务提供给车载应用。我们定义了一个基于OSGi的标准车载接口,应用程序可以通过这个车载接口访问车辆相关的状态信息。车载接口模块独立于底层车辆设备,通过该接口能从CAN总线接收CAN帧。该模块完具备处理这些小而快速的数据的能力。通过加载虚拟驱动器对VIM的进行测试,结果显示VIM完全能满足CAN监控需要的所有要求。 我们选择Linux中SocketCAN框架的驱动程序,原因是这个框架有很多长处和优点。我们使用设备管理树(DMT)技术来存储和管理车辆信息和远程访问的状态元素集合,例如:后台服务器采用OMADM规范,它允许应用程序远程访问状态元素信息。当前的工作将不涉及OMADM层的详细规范,而将侧重于从本地应用接入车载数据。设备管理树与OSGi的模块化体系结构相结合,提供了一个非常灵活的系统,全面增强了汽车的可扩展性,是汽车产业未来的发展方向。更值得注意的是系统无需重新编译,在运行时就能添加和删除应用Bundle,使它能重新收到新的CAN帧。 VIM能满足下面的需求:VIMAPI能独立于车辆底层设备,提供一个能访问状态元素的接口给本地用户,同时,本地用户也能通过轮训机制查询状态元素的值。当状态元素的值发生改变时将通知本地用户。使用DMT会话机制能通过应用程序在车载设备树中添加或者删除状态元素。多用户可以并发的访问状态元素。更值得注意的是系统无需重新编译,在运行时就能添加和删除应用Bundle,使它能重新收到新的CAN帧。 最后,通过实现和测试表明CAN和OSGi的接口是成功的。 未来的应用扩展应该提供OMA设备管理协议的实现。OMA设备管理协议允许远程管理车辆,是汽车产业未来的发展方向。不再是离开汽车厂商就无法管理车辆的局面。上述方案,能使汽车厂商与车辆“保持联系”,为高层用户的需求提供应用更新、bug修复和新的服务。 |
作者: | FAHMI AMEEN ABDO ALKUBATI |
专业: | 计算机科学与技术 |
导师: | 罗娟 |
授予学位: | 硕士 |
授予学位单位: | 湖南大学 |
学位年度: | 2014 |
正文语种: | 中文 |