在车辆中使用联网移动设备的系统和方法

文档序号:5865352阅读:201来源:国知局
专利名称:在车辆中使用联网移动设备的系统和方法
技术领域
本发明总地涉及无线网络。
背景技术
移动手持网络设备(例如,移动电话、便携式mp3播放器、个人数字助理,等等)的车内使用近年来已得到巨大增长。然而,在汽车中使用这种设备是困难乃至危险的。为了对其设备进行交互和控制,用户当前除了学习汽车中的新用户界面(UI)系统,或者依靠使用设备上的显示和控制(其对车内使用而言经常是过小而且不便的,并且构成严重的安全危害),几乎没有别的选择。在车内网络计算的领域中,Ford Sync(福特同步)允许使用语音命令。在一些汽车中,用户可以使用汽车的音频控制来控制某些便携式MP3播放器的媒体播放。例如,在 Ford Sync中,或是在移动设备上直接执行应用程序,或是将应用数据传送到车辆的应用程序所要使用的车辆。因此,用户必须学习车辆的原生UI机制。在通用网络计算的领域中,Sim的JINI和UPnP都允许动态发现给定计算环境中的各种组件的功能能力。该特征进而允许该计算环境先前所不知道的新设备使用其他设备的能力并且使得其他设备可以获得该新设备的能力。在JINI和UPnP中,应用界面和/或驱动软件被从主网络移动到与该网络相连的新设备,并且该设备运行所接收到的软件以使用主网络的服务。在UPnP和jmi两者中,用户仍应使用移动设备的UI控制来使用车辆组件的服务,这是不便且危险的。因此,对于更好地支持车辆驾驶员和乘客无缝且直观地使用汽车中的联网手持设备,存在日益增长的需要。

发明内容
本发明公开了通过运行时的动态能力发现和应用程序传送来允许移动设备的应用服务在车辆上运行的新颖方法。车内的仪表盘屏幕、扬声器和其他组件当前被设计为仅支持车内应用。一般而言,车辆被视为提供固定(或者静态)一组应用服务和静态UI控制的封闭系统。通过在运行时动态地将应用软件代码从移动设备移动到车辆,本发明提供了使车辆系统“开放”的新颖方式,使得其可以允许各种第三方应用按需使用其显示和其他设备。从而,在该创造性系统和方法中,移动设备的应用软件被从设备传送到车辆以在车辆上运行。本发明公开了在车辆中使用联网移动设备的创造性系统和方法。该车辆具有车内计算机(本领域一般称为0ΒΕ)、移动设备客户端以及多个车辆组件,并且移动设备具有移动设备代理和一个或多个应用,使得所述移动设备客户端和所述移动设备代理进行通信, 从而实现动态地将所述一个或多个应用传送到OBE并且在运行时利用所述多个车辆组件在OBE上并在移动设备上执行所述一个或多个应用。移动设备客户端对移动设备代理进行认证,并且移动设备代理对移动设备客户端进行认证。认证可以利用数字证书来执行。移动设备客户端将车辆上的车辆组件传送到移动设备代理。移动设备客户端和移动设备代理可以通过蓝牙利用因特网协议(IP)进行通信。车辆组件可以包括具有或者没有用户界面 (UI)机制的仪表盘显示、扬声器以及语音I/O系统。


在后续的详细描述中,参考注明的附图通过本发明的非限制性例示实施例进一步描述了本发明,其中在整个附图中相似的标号表示类似的部件。但是应当明白,本发明不限所示出的确切布置和手段。在附图中图1是该创造性系统的架构概览;图2是该创造性系统的一个实施例中的车载装备的示意图;图3是该创造性系统的一个实施例中的移动设备的示意图;图4是用于传送车辆能力的流程图;并且图5是用于传送应用程序的流程图。
具体实施例方式该创造性系统和方法使得联网移动设备能够与车辆接合(engage),从而通过动态地发现车辆的音频、显示、用户界面(UI)以及其他系统并且按需将应用代码从移动设备移动到车辆,来允许设备的用户与车辆上的这种系统相接口连接并对其进行控制。图1给出了本发明的架构概览。在图1中,车辆装备有称为车载装备(OBE)IO的车内系统。对于本发明的所有实际目的,OBE 10是针对车内使用专门构建的计算机系统。 OBE 10可包括车辆仪表盘显示系统12,该系统为车辆应用提供图形显示区域并且提供用于从车辆乘员获得输入的触摸屏能力。OBE 10还可提供语音输入/输出(IO)系统14,该系统允许用户发出口头命令以与车辆应用进行交互。OBE 10还可包括一个或多个其他UI 系统16,例如方向盘或者车辆的其他区域上的软键、按键,鼠标,键盘,和/或跟踪驾驶员针对车辆仪表盘显示12注意何处的光学设备。虽然图1中的OBE 10被示出为单个设备,但是其功能和界面可以以分布式方式实现在多个实体设备上。像通用计算机一样,OBE 10运行为车辆应用提供运行时环境的操作系统18(例如Linux)以及称为驱动程序的专门软件,车辆应用可使用该专门软件来与车辆的10、音频以及其他系统进行交互。操作系统、驱动程序、应用的概念以及驱动程序的使用在本发明的领域中是公知的。如图1所示,称为移动设备客户端(MDC) 20的专用软件被安装在OBE 10上并且在OBE 10上执行。如名所示,MDC 20是与本发明的服务器端软件(称为移动设备代理 (MDP) 22) —起工作以使车辆的OBE 10和移动设备M紧密结合的客户端应用。MDC 20用来使MDP 22 了解车辆的仪表盘显示12、语音I/O 14以及其他系统16,并且移动并执行来自用户的移动设备M的一个或多个应用。在一个实施例中,MDC 20在车辆制造时被预先安装在车辆的OBE 10上。然而其他方法也是可行的,这些方法包括车辆服务站应客户在车辆制造和购买之后的请求例如经由USB接口在OBE 10上安装MDC 20。如图1所示,OBE 10能够经由网络连接沈与用户的移动设备M通信。具体而言, OBE 10可以经由蓝牙连接与移动设备M通信,并且OBE 10上的MDC 20利用通过蓝牙的 TCP/IP连接与移动设备M上的MDP 22通信。利用通过蓝牙的TCP/IP的实现应用在本发明的领域中是公知的。其他无线技术也可被用于使OBE 10和移动设备M互连。TCP之外的其他传输层协议(例如UDP)也可被用于MDP 22和MDC 20以互相通信。在图1中,用户的移动设备M包括操作系统(0S)28、存储装置30以及多种无线通信能力32。如上面讨论的,移动设备M运行称为移动设备代理(MDP) 22的专用应用,该应用与OBE 10上的MDC 20 —起工作,以便通过动态发现车辆能力以及动态地将应用代码从移动设备M传送到车辆OBE 10,来在车辆的OBE 10上运行来自移动设备M的应用。分别利用车辆和移动设备M上的专用应用(即MDC 20和MDP 22)来将车辆系统信息传送到移动设备M并且将应用代码从移动设备M移动到车辆以在其上执行的创造性方法在车辆环境中的移动计算领域中是独特的。有利地,在本发明中,移动设备M上的所有应用可用于在车辆上运行(假定车辆提供了这些应用所需的必要设备驱动程序),而在现有技术的方法中,用户仅限于车辆提供的那些应用。例如,在其他方法中,如果用户在移动设备M上具有一应用(例如APP-A),而车辆没有能够处理APP-A的数据并且/或者为 APP-A提供适当驱动程序的功能类似的应用,那么用户在车辆上无法使用APP-A。然而,本发明通过将APP-A的可执行应用代码和/或数据从移动设备M移动到车辆并且在该车辆上利用该数据执行该代码,来允许用户在这种车辆上使用APP-A。注意在该示例中APP-A是由移动设备制造商提供的。因此,当在车辆上运行时,APP-A可以提供与其在移动设备对上运行时类似的外观和感觉,这可以极大地降低用户为了在车辆上使用APP-A的学习曲线。图2图示出在本发明的一个实施例中在OBE 10上实现的MDC 20。在图2中,OBE 10提供称为OSGi框架的应用运行时环境。OSGi框架是用于执行和管理称为GSGi软件包 (Bundle)的一类特殊Java应用的生命周期的工业标准技术。OSGi框架和软件包已被车辆基础设施整合联盟(亦称(智能驾驶))用于为OBE实现各种车辆应用。 OSGi框架和软件包的概念对本领域技术人员而言是公知的。如图2所示,MDC 20在本发明的优选实施例中被实现为OSGi软件包。这样,MDC 20可以利用OSGi框架提供的缺省系统服务来实现其功能,包括发现OSGi框架上的其他 OSGi软件包所输出的(Java)应用程序包和服务。例如,可在每个OSGi框架上获得的标准服务之一是设备存取服务,该服务允许其他应用以编程方式发现设备和可在OSGi框架上获得的对应驱动程序,并且将其绑定在一起以在其操作中使用所发现的设备。因此,MDC 20 可以使用OSGi设备存取服务来跟踪运行时车辆上的可用设备和驱动程序。同样,MDC 20还可以使用OSGi服务注册表(其是每个OSGi框架上的另一标准服务)来跟踪OSGi框架上的其他软件包所输出的服务和应用程序包。作为OSGi软件包,MDC 20还具有通过利用OSGi BundleContext (软件包上下文) 和软件包对象的应用编程接口(API)来在运行时动态地安装、启动和停止其他软件包的能力。具体而言,当如下面描述接收到来自MDP 22的应用软件包时,MDC 20首先将所接收到的软件包存储在车辆OBE 10的文件系统中。为了在车辆上安装所接收到的软件包,MDC 20随后使用车辆的OSGi框架所提供的软件包上下文对象的installBimdleO方法;其将通向所接收到的软件包在文件系统上的位置的URL传递给installBimdleO。接着,其调用对 installBundleO所返回的软件包对象的start ()方法来启动新安装的软件包。类似地, MDC 20可以使用同一软件包对象的stopO、update ()和uninstall ()方法来分别停止所接收到的软件包的操作、更新所接收到的软件包的软件以及卸载所接收到的软件包。在图3中,MDP 22被示出为在移动设备M的操作系统(OS)观中运行的应用。与作为(用Java编写的)OSGi软件包的MDC 20不同,MDP 22是为了在移动设备M的OS 28 中运行而专门实现的原生应用。如图3所示,MDP 22管理可被发送到车辆OBE 10并且可在那里执行的一组OSGi软件包。对于每个OSGi软件包,MDP 22跟踪该OSGi软件可能具有的对其他应用的依赖性。在一个实施例中,该依赖性包括OSGi在其操作中使用的(用Java 编写的)程序包的名字。其还可以包括每个依赖程序包的版本信息。MDP 22利用依赖性信息来确定移动设备M的存储装置30中存储的给定OSGi软件包是否可以在车辆OBE 10上运行。在图2和图3的实施例中,MDC 20和MDP 22使用通过蓝牙;34的TCP/IP来与移动设备M上的MDP 22通信。具体而言,MDC 20周期性地向MDP 22针对MDC 20消息进行侦听的公知端口号广播“Hello(问候)”消息。当接收到来自MDC 20的消息时,MDP 22通过向MDC 20针对MDP 22消息进行侦听的另一公知端口号发送其自己的“Hello”消息作为响应。从MDP 22到MDC 20的该响应消息被发往MDP 22从MDC的广播消息的IP头部中取回的IP地址。该响应消息还包括MDP 22针对与MDC 20的进一步通信进行侦听的端口号, 以及唯一地标识出MDP的移动设备M的标识符。UDP可被用于从MDC 20到MDP 22的广播消息以及从MDP 22到MDC 20的响应消息两者。作为替代,TCP或者其他合适的通信技术可被用于在MDC 20和MDP 22直接传送这些消息。图2和图3示出了具有非对称密钥及其数字证书36的MDC 20和MDP 22两者,非对称密钥及其数字证书36用于在MDC 20与MDP 22之间执行相互认证并且保护通信,如在本公开中描述的。用于安装、分发、更新和吊销数字证书36的机制在本发明的领域中是公知的。在本发明的一个实施例中,MDC 20对其“Hello”广播消息进行数字签名,这允许MDP 22对所接收到的“Hello”消息的签名进行验证并对MDC 20进行认证。同样,MDP 22对其 “Hello”响应消息进行数字签名,这允许MDC 20对所接收到的“Hello”响应消息的签名进行验证并对MDP 22进行认证。用于对消息进行签名和利用数字签名对签名进行认证的算法在本发明的领域中是公知的。也可以通过使MDC 20和MDP 22运行TLS、DTLS或者共享密钥管理协议来在MDC 20与MDP 22之间传送用于对称密码加密的创建、交换或者使用以及对应用代码和数据的传送的完整性保护的数据。TLS和DTLS是用于建立安全会话并且在安全会话中传送数据的工业标准通信协议并且在本发明的领域中是公知的。现在描述该创造性系统的操作。MDC 20根据车辆上的OSGi软件包所输出的应用程序包发送车辆能力的列表,并且接收和运行来自移动设备M上的MDP 22的OSGi软件包。一旦MDC 20如上所述检测到MDP 22,那么MDC 20试图判定所检测到的MDP 22是否是合法的,即MDC 20执行关于MDP 22的认证。在一个实施例中,MDP 22可以对其发往MDC 20 的“Hello”响应消息进行数字签名,MDC 20进而在继续进行处理之前对该签名进行验证。如果MDC 20成功地认证了 MDP 22,那么MDC 20向MDP 22发送车辆能力的列表,例如车辆OBE 10上的OSGi软件包所输出的应用程序包和服务。该列表被包含在称为“CAP” 的消息中,该消息发往MDC 20从MDP “Hello”响应消息的IP头部中取回的IP地址以及同一“Hello”响应消息中包括的端口号。该“CAP”消息还包括MDC 20针对来自MDP 22的 OSGi软件包的潜在文件传送进行侦听的端口号,以及关于OSGi将被存储于的OBE 10的文件系统的位置信息。文件传输协议(例如FTP或者安全FTP)可被用于从移动设备M向车辆传送任何 OSGi软件包文件,其中MDC 20担当FTP服务器的角色并且MDP 22担当FTP客户端的角色。 其他方法也是可行的,这些方法包括公知的通过安全外壳(SSH) ,HTTP或者HTTPS的文件传输,其使用传输层安全性。也可利用数据报传输层安全性来支持UDP传输。在发送“CAP”消息之后,MDC 20等待接收来自MDP 22的表明其已接收到“CAP”消息的确认消息。如果在(可配置的)等待时间段内接收到确认,那么MDC 20继而在“CAP” 消息中包括的端口号处针对来自MDP 22的FTP连接请求进行侦听。否则,MDC 20再次发送“CAP”消息并且等待确认。如果MDC 20在(可配置)数目的重试之后仍未接收到确认, 那么MDC 20继而等待当前移动设备M与车辆断开,其过程在下面有描述。当MDC 20在(可配置的)等待时间段内接收到来自MDP 22的FTP连接请求时, MDC 20继而与MDP 22执行FTP协议以接收来自移动设备M的应用程序,即OSGi软件包。 在成功传输OSGi软件包之后,MDC 20将其存储在车辆OBE 10的文件系统上,并且将其安装在车辆的OSGi框架上并启动这些OSGi软件包。如果FTP传输失败,那么MDC 20重试等待来自MDP 22的FTP连接和执行FTP协议的过程。如果FTP传输在(可配置)数目的重试之后仍然失败,那么MDC 20继而等待当前移动设备M与车辆断开。有可能MDC 20在等待来自MDP 22的FTP连接请求的(可配置)数目的重试之后未接收到任何OSGi软件包。在这种情况下,MDC 20认为当前移动设备M没有任何应用要在车辆上运行,并且等待移动设备M与车辆断开。MDP 22也可以向MDC 20发送表明没有可用应用的消息。MDC 20通过向用于“HelIo ”消息广播的同一端口号周期性地发送“Sti 11 There (仍在那里)”消息来检测移动设备M的断开。如果MDP 22在(可配置)数目的重试期间在(可配置)时间段内未以对应的“Still Here (仍在这里)”消息作为响应,那么 MDC 20判定移动设备M已经与车辆断开。这这种情况下,MDC 20停止已经从移动设备M 接收到的任何运行中的OSGi软件包,并且返回以等待新的MDP。图4是一算法的流程图,MDC 20执行该算法来发送车辆能力的列表并且接收并处理来自移动设备M上的MDP 22的OSGi软件包。在步骤Sl中,MDC 20判定MDP 22是否被检测到。如果MDP 22未被检测到(Sl=否),那么MDC 20继续尝试检测MDP 22,从而重复步骤Si。如果MDP 22被检测到(Si =是),那么在步骤S2中MDP 22如上面所述的被验证。 如果MDP不是真实或者合法的(S3 =否),那么处理返回到步骤Si。如果MDP 22是合法的(S3 =是),那么在步骤S4中MDC 20向该合法MDP 22发送车辆能力。MDC 20在步骤S5中等待接收来自MDP 22的应用程序。在步骤S6中,MDC 20 检查对“CAP”消息的确认。如果该消息被确认(S6 =是),那么MDC 20在步骤S7中接收并运行来自MDP 22的应用程序。当程序被运行(在步骤S7中)或者当确认未被接收到(S6=否)时,MDC 20在步骤S8中判定MDP 22是否被断开。如果MDP 22被断开(S8 =是), 那么来自MDP 22的程序在步骤S9中被停止。如果MDP未被断开(S8 =否),那么MDC 20 继续在步骤S8中检查MDP 22是否被断开。移动设备M上的MDP 22 (其运行以将应用传送到车辆上的MDC 20)的操作如下。 当接收到来自MDC 20的“Hello”消息时,MDP 22验证该消息上的签名以认证MDC 20。如果成功,则MDP 22如先前所述的发送其“Hello”响应消息。接着,MDP 22等待来自MDC 20的“CAP”消息。如果在(可配置)次重试之后在 (可配置)等待时间段内未接收到该消息,那么MDP 22返回以等待和处理“Hello”消息。 否则,MDP 22发送对接收到“CAP”消息的确认,从所接收到的“CAP”消息中取回应用程序包和服务的列表,并且试图识别能够在可在车辆上获得的应用程序包和服务的信息(如果适用的话)上执行的OSGi软件包。如果存在能够在车辆上运行应用的OSGi软件包,那么MDP 22为向MDC 20发送该软件包做准备。这种准备包括配置和运行移动设备M上的应用的一些相关组件。例如,移动设备M上可存在文本消息传送应用,该应用的OSGi软件包包括设计为使用车辆的语音识别系统来允许用户口述对给定收件人的文本消息的软件组件,以及用于显示正在车辆的仪表盘显示上编写的文本消息的图形用户界面(GUI)组件。当用户说出“发送消息”时,文本消息传送软件包的另一组件例如在通过蓝牙连接34的IP上将所编写的消息以及收件人信息发送给移动设备M,移动设备M进而利用其消息传输机制发出该消息给该收件人。这类应用要求一些应用组件在这些组件在车辆上执行的同时在移动设备M上运行。在所描述的文本消息传送应用的以上示例中,从车辆接收所编写消息并且将这些消息发送给收件人的一些应用组件应当在移动设备M上运行。为了支持这类应用,MDP 22维护一配置文件,该配置文件为每个OSGi软件包标识出对应的应用组件以及这些应用组件的任何配置和初始化数据。如果OSGi软件包可以在车辆上执行,那么MDP 22首先在移动设备M上配置和运行对应的应用组件然后将OSGi软件包传送到MDC 20。一旦所有OSGi软件包已被传送到MDC 20,MDP 22在移动设备M与车辆断开之前等待。MDP 22通过侦听来自MDC 20的“Mill There”消息并对其进行响应来这么做。当被断开时,MDP 22停止为了支持已被传送到车辆的OSGi软件包而一直运行的所有软件组件,并且返回以等待来自MDC 20的“Hello”消息。图5是一算法的流程图,移动设备M上的MDP 22运行该算法来向车辆上的MDC 20传送应用。在步骤SlO中,MDP 22判定MDC 20是否被检测到,S卩“Hello”消息是否已被接收到。如果MDC 20未被检测到(S10 =否),那么MDP 22继续侦听消息,从而重复步骤 S10。如果MDC 20被检测到(S10 =是),那么在步骤Sll中利用上述过程对其进行认证。如果所检测到的MDC 20是合法的(S12 =是),那么MDP 22在步骤S13中等待接收来自MDC 20的车辆能力。否则,如果MDC 20不是合法的(S12 =否),那么MDP 22返回到步骤SlO并且侦听以检测另一“Hello”消息。在步骤S14中,MDP 22判定是否已经从MDC 20接收到车辆能力。如果车辆能力尚未被接收到(S14=否),那么处理返回到步骤SlO并且MDP 22针对另一“Hello”消息进行侦听。
如果车辆能力已被接收到(S14=是),那么MDP 22在步骤S15中判定是否有任何应用程序匹配这些车辆能力。如果不,那么处理返回到步骤SlO并且MDP 22针对另一 “Hello”消息进行侦听。如果存在匹配车辆能力的一个或多个应用程序(S15 =是),那么在步骤S16中 MDP 22运行与正被发送到MDC 20的那些应用程序相对应的任何应用程序。在步骤S17中, MDP 22向MDC 20发送匹配车辆能力的任何应用程序。在步骤S18中,MDP 22判定MDC 20是否被断开。如果MDC 20未被断开(S18 = 否),那么MDP 22通过重复步骤S18来继续检查MDC 20是否被断开。如果MDP 22判定MDC 20被断开(S18 =是),那么MDP 22中与MDC 20中的那些应用程序相对应的应用程序在步骤S19中被停止。对所描述方法的若干扩展是可能的。例如,可以通过利用诸如TLS或DTLS之类的工业标准安全传输协议来保护MDC 20与MDP 22之间的通信,如先前提到的。此外,MDC 20 可以同时与多个移动设备M通信。通过跟踪来自MDP 22的“Hello”响应消息中的每个移动设备M的IP地址以及相关标识符信息,这是可行的。为了便利在车辆与移动设备之间的初次接触和程序下载之后的更快速的MDP 22 和MDC 20交互,MDC 20可以在OBE 10上保持应用的缓存。OSGi框架允许Java应用驻留在框架中而无需例如在车辆使用间启动。在MDP 22与MDC 20的下一交互(例如驾驶员下次进入车辆)期间,MDC 20将在“Hello”响应消息中向MDP 22发送OBE 10中已经存在的与移动设备M相关的可用应用的列表。MDC 20可以使用MDP的数字证书36来识别移动设备对并使应用与之相关联。被发送到MDP 22的可用应用的列表还可以包括用于标识应用版本的信息。如果移动设备M希望运行的应用已被安装在OBE 10上,但是未在运行,那么MDP 22仅需标识出MDC 20应当启动哪个应用,并且避免了不必要的下载。其可以通过向MDC 20发送 "START (启动)”消息来这么做,该消息标识出在如先前描述的在移动设备M上运行任何对应应用组件之后要启动的应用的列表。“START”消息的接收将使MDC 20取消等待来自MDP 22的FTP连接请求。如果MDP 22基于应用版本确定MDC的应用已过时,那么MDP 22将经由FTP进行连接,并且传送新应用以及执行对应用软件包的OSGi更新的指令。在上面以及先前描述的交互中,每个应用被签名,这帮助MDC 20确定真实性并且确定在下载过程期间是否发生了对程序的任何变更。另外,不论车辆尚未启动、正在启动或者已经启动,无论何时移动设备M处于车辆的无线电范围内时,所描述的MDC 20与MDP 22之间的交互都可以发生。在本发明的优选实施例中,车辆具有无线按键设备(wireless key device),并且仅在车辆已经成功认证具有无线按键设备的用户之后,MDC 20才开始针对MDP进行侦听并且做出响应。这在以下情况下可以实现车辆在OSGi框架上提供一服务,该服务向同一 OSGi框架上的其他应用发布车辆锁定和解锁状态,并且MDC 20订阅该服务。本公开的各个方面可被实现为计算机或者机器可用或可读介质中包含的程序、软件或者计算机指令,其当被在计算机、处理器和/或机器上执行时使得计算机或者机器执行该方法的步骤。有形地包含有可由机器执行以完成本公开中描述的各种功能和方法的指令程序的程序存储设备也被提供。本公开的系统和方法可被实现并运行在通用计算机或者专用计算机系统上。该计算机系统可以是任何类型的已知或者将会知道的系统,并且通常可包括处理器、记忆设备、 存储设备、输入/输出设备、内部总线和/或用于结合通信硬件和软件等与其他计算机系统通信的通信接口。本申请中所使用的术语“计算机系统”和“计算机网络”可包括固定和/或便携的计算机硬件、软件、外围设备和存储设备的各种组合。该计算机系统可包括多个联网或者以其他方式相连以协同工作的独立组件,或者可包括一个或多个独立组件。本申请的计算机系统的硬件和软件组件可包括诸如台式计算机、膝上型计算机、服务器之类的固定和便携的设备并且可被包括在其中。模块可以是设备、软件、程序或者系统中实现某些“功能”的组件,其可被实现为软件、硬件、固件、电路等。上面描述的实施例是例示性的示例并且其不应被解释为本发明限于这些具体实施例。因此,在不脱离如在权利要求中限定的本发明的精神或范围的情况下,本领域技术人员可以实现各种改变和修改。
权利要求
1.一种在车辆中使用联网移动设备的系统, 所述车辆包括车内计算机; 移动设备客户端;以及多个车辆组件;并且所述移动设备包括 移动设备代理;以及一个或多个应用和数据;其中,所述移动设备客户端和所述移动设备代理进行通信,使得能够动态地将所述一个或多个应用和所述数据传送到所述车内计算机并且能够在运行时利用所述多个车辆组件在所述车内计算机上执行所述一个或多个应用并在所述移动设备上执行所述一个或多个应用。
2.如权利要求1所述的系统,其中,所述移动设备客户端对所述移动设备代理进行认证,并且所述移动设备代理对所述移动设备客户端进行认证。
3.如权利要求1所述的系统,其中,所述移动设备客户端将所述车辆上的所述多个车辆组件传送到所述移动设备代理。
4.如权利要求1所述的系统,其中,所述移动设备客户端将关于在所述车辆上缓存的多个应用的信息传送到所述移动设备代理。
5.如权利要求1所述的系统,其中,所述移动设备代理确定要传送到所述车辆的多个应用。
6.如权利要求1所述的系统,其中,所述移动设备代理动态地配置将被传送到所述车辆的多个应用。
7.如权利要求1所述的系统,其中,所述移动设备客户端和所述移动设备代理利用蓝牙连接、因特网协议(IP)连接和安全连接中的至少一种进行通信。
8.如权利要求1所述的系统,其中,所述移动设备客户端和所述移动设备代理进行通信以动态地创建用于加密的密钥、完整性保护以及通信的其他安全保护,或者进行通信以使用现有的用于加密的密钥、完整性保护以及通信的其他安全保护。
9.如权利要求1所述的系统,其中,所述移动设备客户端检测所述移动设备代理已经断开,并且所述移动设备代理检测所述移动设备客户端已经断开。
10.如权利要求1所述的系统,其中,所述移动设备客户端和所述移动设备代理在所述车辆尚未启动、正在启动或者已经启动时进行通信。
11.如权利要求1所述的系统,其中,所述多个车辆组件包括以下各项中的一个或多个具有或者没有内建用户界面机制的仪表盘显示,扬声器,以及语音I/O系统。
12.如权利要求1所述的系统,其中,一个移动设备客户端同时与多个移动设备代理进行通信。
13.一种在车辆中使用联网移动设备的方法,包括以下步骤在所述车辆上的移动设备客户端与所述移动设备上的移动设备代理之间通信; 动态地将一个或多个应用和数据从所述移动设备传送到所述车辆;以及在运行时利用所述车辆上的多个车辆组件在所述车辆上执行一个或多个应用并且在所述移动设备上执行一个或多个应用。
14.如权利要求13所述的方法,还包括由所述移动设备代理对所述移动设备客户端进行认证;以及由所述移动设备客户端对所述移动设备代理进行认证。
15.如权利要求13所述的方法,其中,所述通信步骤还包括将所述多个车辆组件从所述车辆传送到所述移动设备代理。
16.如权利要求13所述的方法,其中,所述通信步骤还包括将关于在所述车辆上缓存的多个应用的信息发送到所述移动设备代理。
17.如权利要求13所述的方法,还包括确定要传送到所述车辆的多个应用的步骤。
18.如权利要求13所述的方法,还包括动态地配置将被传送到所述车辆的多个应用的步骤。
19.如权利要求13所述的方法,其中,利用蓝牙连接、因特网协议(IP)连接和安全连接中的至少一种来执行所述通信步骤。
20.如权利要求13所述的方法,所述通信步骤还包括以下步骤之一 动态地创建用于加密的密钥、完整性保护以及通信的其他安全保护;以及使用现有的用于加密的密钥、完整性保护以及通信的其他安全保护。
21.如权利要求13所述的方法,还包括由所述移动设备客户端检测所述移动设备代理的断开;以及由所述移动设备代理检测所述移动设备客户端的断开。
22.如权利要求13所述的方法,其中,所述通信步骤在所述车辆尚未启动、正在启动或者已经启动时发生。
23.如权利要求13所述的方法,其中,所述多个车辆组件包括以下各项中的一个或多个具有或者没有内建用户界面机制的仪表盘显示,扬声器,以及语音I/O系统。
24.如权利要求13所述的方法,其中,一个移动设备客户端同时与多个移动设备代理进行通信。
25.一种计算机可读介质,其具有用于在计算机上操作以在车辆中使用联网移动设备的计算机可读程序,所述程序包括使所述计算机执行以下步骤的指令在所述车辆上的移动设备客户端与所述移动设备上的移动设备代理之间通信; 动态地将一个或多个应用和数据从所述移动设备传送到所述车辆;以及在运行时利用所述车辆上的多个车辆组件在所述车辆上执行一个或多个应用并且在所述移动设备上执行一个或多个应用。
26.如权利要求25所述的程序,还包括由所述移动设备代理对所述移动设备客户端进行认证;以及由所述移动设备客户端对所述移动设备代理进行认证。
27.如权利要求25所述的程序,其中,所述通信步骤还包括将所述多个车辆组件从所述车辆传送到所述移动设备代理。
28.如权利要求25所述的程序,其中,所述通信步骤还包括将关于在所述车辆上缓存的多个应用的信息发送到所述移动设备代理。
29.如权利要求25所述的程序,还包括确定要传送到所述车辆的多个应用的步骤。
30.如权利要求25所述的程序,还包括动态地配置将被传送到所述车辆的多个应用的步骤。
31.如权利要求25所述的程序,其中,利用蓝牙连接、因特网协议(IP)连接和安全连接中的至少一种来执行所述通信步骤。
32.如权利要求25所述的程序,所述通信步骤还包括以下步骤之一 动态地创建用于加密的密钥、完整性保护以及通信的其他安全保护;以及使用现有的用于加密的密钥、完整性保护以及通信的其他安全保护。
33.如权利要求25所述的程序,还包括由所述移动设备客户端检测所述移动设备代理的断开;以及由所述移动设备代理检测所述移动设备客户端的断开。
34.如权利要求25所述的程序,其中,所述通信步骤在所述车辆尚未启动、正在启动或者已经启动时发生。
35.如权利要求25所述的程序,其中,所述多个车辆组件包括以下各项中的一个或多个具有或者没有内建用户界面机制的仪表盘显示,扬声器,以及语音I/O系统。
36.如权利要求25所述的程序,其中,一个移动设备客户端同时与多个移动设备代理进行通信。
全文摘要
本发明公开了以紧密结合方式在车辆中使用联网移动设备的系统和方法。该车辆具有OBE、移动设备客户端以及车辆组件,并且移动设备具有移动设备代理和应用,使得所述移动设备客户端和所述移动设备代理进行通信,从而实现动态地将所述应用传送到OBE以及在运行时利用所述多个车辆组件在移动设备和OBE上执行所述应用。在一个实施例中,移动设备客户端和移动设备代理相互认证。该认证可以利用数字证书来执行。移动设备客户端可将车辆上的车辆组件传送到移动设备代理。移动设备客户端和移动设备代理可以利用蓝牙进行通信。车辆组件可以包括仪表盘显示、扬声器以及语音I/O系统。
文档编号G01C21/00GK102216731SQ200980140426
公开日2011年10月12日 申请日期2009年8月11日 优先权日2008年8月11日
发明者亨·沈, 斯担利·皮特罗维茨, 涛·张, 约翰·R·伍勒特二世 申请人:Tti发明D有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1