CN102878992A - 导航应用接口 - Google Patents

导航应用接口 Download PDF

Info

Publication number
CN102878992A
CN102878992A CN2012102413673A CN201210241367A CN102878992A CN 102878992 A CN102878992 A CN 102878992A CN 2012102413673 A CN2012102413673 A CN 2012102413673A CN 201210241367 A CN201210241367 A CN 201210241367A CN 102878992 A CN102878992 A CN 102878992A
Authority
CN
China
Prior art keywords
navigation
function
navigation solution
information
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012102413673A
Other languages
English (en)
Other versions
CN102878992B (zh
Inventor
R.哈斯
R.奥德
S.蒙蒂尔格雷
R.博菲利加
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harman International Industries Inc
Crown Audio Inc
Original Assignee
Crown Audio Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Crown Audio Inc filed Critical Crown Audio Inc
Publication of CN102878992A publication Critical patent/CN102878992A/zh
Application granted granted Critical
Publication of CN102878992B publication Critical patent/CN102878992B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Navigation (AREA)
  • Stored Programmes (AREA)

Abstract

导航系统设置有应用编程接口以实现导航解决方案到导航平台中的有效集成。系统包括客户端-服务器结构,且API使用分别在客户端和服务器中定义的标准化的一组请求和响应功能来实现。API包括用于独立于特定的导航平台而实现导航解决方案的快速原型化接口部件。信息发现和交换接口部件使导航平台(客户端)能够发现和检索从导航解决方案(服务器)导航解决方案可得到的信息。

Description

导航应用接口
技术领域
本申请涉及导航系统的领域,包括车辆导航系统。更具体地,本申请涉及包括应用编程接口(API)的导航系统。
背景技术
导航系统可以是车载系统或便携式设备,例如执行导航应用的指定手持式单元或移动电话。常常,在车辆导航系统的情况下,系统是向车辆用户提供娱乐和信息服务的较大信息系统的部分。导航系统一般包括导航平台和也称为导航解决方案的底层导航核心应用。导航平台一般包括硬件结构和软件框架(包括操作系统),以及相关的用户接口以支持导航解决方案的执行和与导航解决方案的用户交互。导航解决方案一般是“后端”软件和提供核心导航功能例如路线规划和指导以及地图、地址和兴趣点(POI)信息的相关数据库。
导航系统(特别是车辆导航系统)已发展成复杂和定制的系统,其从历史观点上说由原始设备制造商(OEM)发展为嵌入式信息系统,其中导航平台和导航解决方案都被发展并一起构造为单一的系统。最近的趋势是OEM利用外部导航解决方案专业知识并对于导航解决方案指望外部卖主。在一般发展周期中,导航或信息娱乐系统OEM可基于客户例如车辆制造商所限定的需要来设计导航平台。导航系统OEM又将需要能够满足对集成到导航系统中的特定需要的定制导航解决方案。集成导航解决方案的步骤常常是复杂和繁杂的,因为导航平台配置成以特定和复杂的方式与导航解决方案通过接口连接。因此,特定的提供商发展的导航解决方案将特别适合于特定的OEM导航平台,并将需要平台以非常明确和常常复杂的方式与解决方案通过接口连接。依赖于导航解决方案的特定提供商的导航系统OEM可能为了获得未来的解决方案而被稍微委托给该提供商。导航系统发展的经济情况以增加的成本和低效率为特征,这可能减轻,如果为将导航解决方案集成到导航平台中提供更大的灵活性。
另一问题涉及导航平台和导航解决方案的不同的相应发展周期。导航平台发展可以每年一次地或以车辆模型周期来循环,而导航解决方案发展周期没有被如此限制且一般更快速。新的技术可实现对导航解决方案中的特征和功能的频繁升级。另一方面,将这样的特征和功能集成到导航系统中可能必须等待,直到下一代导航平台被发展。作为例子,考虑以适当的数据库信息来升级以提供向用户建议最佳交通车道的新的车道推荐特征的导航解决方案。在当前的技术和经济环境中,将这样的特征添加到OEM导航系统通常将需要导航平台的重大修改来或甚至完全重新设计,以便使用新的特征。因此提供使导航平台发现并集成在导航解决方案中可用的新功能的方式是有利的。
又一问题是导航解决方案的性能和兼容性通常不能被充分评估,直到导航解决方案集成到主机导航平台中。类似地,导航系统OEM在使用平台测试导航解决方案的兼容性方面有困难,直到平台和解决方案都被完成。因此,使导航解决方案的原型化能够继续下去而不依赖于主机导航平台的发展将是合乎需要的。
因此,在本领域中对处理前述问题并便于导航解决方案到导航平台中的更有效和灵活的集成的改进的需要。前述缺点和其它缺点由根据本发明的方面的导航系统和有关的方法处理。
发明内容
本发明提供利用标准化应用编程接口(API)的导航系统。API提供导航解决方案的地层复杂性的抽象。因此,在解决方案内的复杂的导航功能可由导航平台使用相对简单的请求来访问。而且,导航平台和导航解决方案都被发展以通过预先确定的API来经由接口连接,因此实现在发展和集成中的更大的灵活性和效率。
API包括用于快速原型化、初始化、视图设置、信息发现和交换、车辆位置、路线指导、导航音频的接口部件和交通信息频道(TMC)部件。这些接口部件由功能的标准集定义,以完成导航平台和导航解决方案之间的高级交互作用。
快速原型化接口部件可包括对确保导航解决方案和导航平台的有效集成最低限度地必需的一组API功能。主机导航平台和导航解决方案可配置成根据快速原型化部件通过接口连接,且兼容性由此被保证。导航解决方案因此可被发展和原型化,而不需要完全集成到现有的导航平台中。初始化接口部件为导航解决方案和平台提供标准初始化序列。
信息发现和交换接口部件使导航平台能够发现和利用导航解决方案所提供的所有信息和功能。因此,可以在不需要导航平台的修改的情况下发现和利用在导航解决方案中提供的所公开的功能。
根据本发明的实现的实施例,API可以在客户端-服务器结构中实现。导航平台可包括配置成通过API与使用导航解决方案所提供的导航服务器部件通过接口连接的导航客户端部件。导航客户端部件可向导航服务器部件发出请求命令。类似地,导航服务器部件向客户端部件发出响应命令或消息。请求和响应消息可被实现为高级功能调用并用面向对象的编程语言例如C++来定义。
当审查下面的附图和详细描述时,本发明的其它设备、装置、系统、方法、特征和优点对本领域技术人员将或将变得明显。在这个描述内的所有这样的额外系统、方法、特征和优点被规定为在本发明的范围内,且被所附权利要求保护。
附图说明
通过参考下面的附图将更好地理解本发明。附图中的部件不一定按比例,相反重点放在说明本发明的原理上。在附图中,相似的参考数字在不同的附图中始终表示相应的部件。
图1是根据本发明的一个实现的实施例的导航系统的方框图。
图2是根据本发明的实现的实施例的可应用于包括API的图1的导航系统的导航系统结构的方框图。
图3是示出根据本发明的一个实现的实施例的图1的导航系统的部件和接口的方框图。
图4是示出根据本发明的实现的实施例的API的接口部件的方框图。
图5是示出初始化接口的请求-响应对话的一个实施例的序列图。
图6是示出适合于实现信息发现和交换接口部件的信息树结构的一个实施例的信息树图示。
图7是示出用于信息发现和交换的示例性过程的序列图。
图8是示出用于在信息发现和交换接口中获得国家信息的过程的一个实施例的序列图。
图9A和9B示出说明用于在信息交换接口中获得状态信息的示例性过程的序列图。
图10是示出由导航音频接口部件执行的示例性过程的序列图。
具体实施方式
本领域技术人员将理解和认识到,结合包括在本申请中的附图描述的一个或多个过程、子过程或过程步骤可由硬件和/或软件执行。如果过程由软件执行,软件可存在于适当的电子处理部件或系统例如在附图中示意性描绘的一个或多个功能部件或模块中的软件存储器中。软件存储器中的软件可包括用于实现逻辑功能(即,能以数字形式例如数字电路或源代码或以模拟形式例如模拟电路或模拟源代码如模拟电、声音或视频信号实现的“逻辑”)的可执行指令的有序列表,并可选择性地体现在任何计算机可读介质中,用于由或结合指令执行系统、装置或设备例如基于计算机的系统、包含计算机的系统或可选择性地从指令执行系统、装置或设备取出指令并执行指令的其它系统来使用。在本公开的背景下,“计算机可读介质”是可包含或存储由或结合指令执行系统、装置或设备来使用的程序的任何装置。计算机可读介质可以选择性地是例如但不限于电子、磁性、光学、电池、红外或半导体系统、装置或设备。计算机可读介质的更具体的例子但然而是非排他列表将包括下列项:便携式计算机磁盘(磁性)、RAM(电子)、只读存储器“ROM”(电子)、可擦可编程只读存储器(EPROM或闪存)(电子)和便携式光盘只读存储器“CDROM”(光学)。注意,计算机可读介质可以甚至是纸或永久地安装有程序的另一适当的介质,因为程序可以经由例如纸的光学扫描、穿孔卡片或其它介质的读取而被电子地捕获,接着如果必要则以适当的方式被编译、解释或否则被处理,并然后存储在计算机存储器中。如本文公开的处理器可包括微处理器、中央处理单元(CPU)、数字信号处理器或构成用于执行存储在计算机可读介质中的指令的机器的其它数字或模拟部件。
图1是根据本发明的一个实现的实施例的导航系统100的方框图。导航系统100包括通过应用编程接口130协作的导航平台110和导航解决方案120,如将在下面详细描述的。导航平台110包括导航计算机140、人机接口(HMI)150、车载传感器170和通信单元180。
导航计算机140通常包括经由总线146进行电子通信的处理器142和存储器144。存储器144是提供信息的存储的电子存储部件,并可包括对处理器142和固定存储器(内部硬盘或集成固态存储器)以及可移动存储部件(闪存、可移动存储卡等)的数据和指令。如将认识到的,存储元件144代表本地存储器以及远程存储器(例如,经由网络连接可远程访问的基于云的存储部件)。存储器144为处理器142提供对数据146和指令的存储。指令可提供操作系统148和经由处理器142在操作系统148内执行的用于执行指定任务的一个或多个应用149。总线146也可与图形处理单元141通信,图形处理单元141包括指定的图形处理部件,并向显示器152提供信号。导航计算机140可通过车辆总线接口143与车辆子系统通信。
HMI150实现用户与导航平台110的交互作用,并可包括显示器152、语音输入设备154、音频输出设备156和触觉输入设备158,触觉输入设备158可包括键盘、触摸屏、仪表板或控制台控制或允许用户以触觉方式与导航平台100交互作用的其它设备。
可包括符合控制器区域网(CAN)总线标准的总线的车载总线160实现车辆子系统的部件和导航计算机144之间的电子通信。车载传感器170可包括GPS、速度、陀螺仪和其它参数的传感器。通信单元180可包括无线广域网(WAN)或其它连接。
如普通技术人员将认识到的,导航解决方案120和API 130虽然被示为与导航平台110处于特定的关系中,但可以用不同的方式与导航平台110协作。例如,导航解决方案120和API 130可以被实现为在本地存储在存储器144中的应用。可选地,导航解决方案120可被设置为在云计算和/或软件即服务模型下通过通信单元180经由无线链路可访问的远程服务。
图2是示出导航系统的结构配置的方框图。该系统结构包括导航平台层200、API层220、导航解决方案层240和设备层260。导航平台层200包括上面关于图1描述的HMI 150、以及与API层220协作的客户端部件210,HMI 150将通过客户端部件210访问导航解决方案层240。如将认识到的,客户端部件210可集成到HMI 150中或配置为单独的部件,如图2所示。客户端部件210提供经由API层220与导航解决方案层240通过接口连接的功能,如将在下面更详细地解释的。
导航解决方案层240包括核心导航应用242,其提供服务器部件244并与导航数据库246和地图类型/配置数据库248协作。导航数据库246包括与导航路线、道路、兴趣点有关的信息或其它行进相关的信息。地图类型/配置数据库248包括与地图类型有关的信息和与一般被显示为与路线指导图形组合的层(即,道路图示)的图形地图显示有关的呈现/显示偏好。导航核心应用232还与可视化引擎241交互作用,可视化引擎241提供使用户能够以图形形式可视化核心导航应用242的输出所必需的输出。服务器部件244与API层220协作,如将在下面更详细地解释的。
设备层260包括与导航解决方案层240协作的多个设备和相应的接口。这些包括图形处理单元141、定位引擎242、TMC设备244和文本到语音(TTS)设备246。相应的接口设置成允许这些设备与导航解决方案层240(包括图形API 250、定位API 252、交通媒体中心API 254和语音API 256)协作。定位引擎244从传感器170获得车辆传感器信息。如将认识到的,即使设备层260和图1所示的导航平台110一样可具有元件例如传感器和HMI元件,为了概念目的,设备层260在图2中被示为单独的层。
普通技术人员将理解,可设置与服务器部件244相关的一个或几个服务器。例如,一个服务器可提供用于导航核心应用242的基本路线指导能力的功能,而另一服务器可提供用于导航核心应用242的三维城市观测仪或地球缩放能力的功能。
图3是示出关于根据本发明的方面的导航系统中的客户端-服务器结构的更多细节的方框图。导航应用编程接口130便于客户端部件210和导航服务器部件240之间的交互作用。根据本发明的方面,客户端部件210提供很多请求功能212,以便向服务器部件240发起请求。服务器部件240提供很多响应功能242,以产生对客户端部件210的响应。进程间通信(IPC)通道250在客户端部件210和服务器部件240所执行的进程当中提供数据(包括消息)的进程间交换。如将对普通技术人员明显的,IPC通道可通过已知的方法例如消息传递、同步、共享存储器和远程过程调用(RPC)来实现。而且,用于实现IPC通道的方法可基于线程之间的通信的带宽和时延以及正被传递的数据的类型来改变。IPC通道可利用用于消息处理的IPC库部件252。服务器部件还包括到系统级资源的接口,系统级资源可包括图形输出库260、导航定位(NP)库270和音频输出库280。
下面是适合于实现根据本发明的方面的导航API的示例性功能的列表。该列表并不以任何方式规定为是无遗漏的或自我限制的。此外,对所述功能的术语是任意的,且并不以任何方式被规定为是限制性的。每个术语的功能也被包括,但功能被实现的方式在本申请中所述的实现中不以任何方式被限制。
本领域的普通技术人员将认识到,这些功能可以用适当的编程语言、面向对象的编程语言例如C++实现。而且,对普通技术人员来说显然,将“请求”术语合并在功能名称中的命名法表示在导航客户端部件上实现的功能调用。类似地,合并“响应”术语的功能名称表示在导航服务器部件上实现的功能调用。下面将描述用于实现前述接口部件的适当功能。括号中的用于表示功能所传递的示例性值或参数。
如将认识到的,由导航解决方案的服务器部件提供的示例性响应功能提供在导航解决方案内的复杂功能的抽象层。因此,导航平台可通过请求功能来访问导航解决方案内的全功能,请求功能被制定为相对简单的命令且不需要与导航解决方案的底层复杂性相关的复杂过程。
根据本发明的方面,如图4所示,根据本发明的示例性API包括由总API的功能的子集实现的多个功能接口部件。这些接口部件包括快速原型化接口部件410、初始化接口部件412、信息交换接口部件414、车辆位置信息接口部件516、导航路线接口部件518、导航音频接口部件520和交通媒体频道(TMC)接口部件522。下面将更详细地解释每个部件。
快速原型化接口部件
根据本发明的方面,快速原型化接口部件被实现来使导航解决方案的快速原型化成为可能。快速原型化接口部件提供独立于主机导航平台的存在而实现导航解决方案的功能评估和测试所必需的最少的一组功能。快速原型化接口部件便于初始化、滚动、旋转和路线指导功能。这些功能使导航解决方案的开发者能够评估其解决方案,而不需要到现有的OEM导航平台中的以前合并。这使任何解决方案与对资源和开发时间的最小量的努力的结合能够评估在真实生活环境中的解决方案。定义示例性快速原型化接口部件的功能在接下来的描述中被详述,且附图在本申请中被参考。
requestInit(VID)–功能requestInit由导航客户端部件216调用来在导航客户端部件216在系统中启动之后初始化导航服务器部件238。功能调用可将视觉部件ID(VID)传递到导航服务器部件作为设备层240的底层图形子系统的标识符。导航服务器部件在发出responseInit消息之前成功地初始化自己并执行所需的步骤,例如到系统接口的传递或内部数据初始化,而没有来自导航客户端部件的交互作用。
responseInit(errorCode)-功能调用responseInit在requestInit被调用之前向客户端提供回答,服务器使用responseInit来响应,传递不等于零的错误代码,如果任何东西防止导航服务器部件被正确地初始化。errorCode参数表示在服务器和客户端侧上预先定义和公布的错误代码。错误代码是导航解决方案供应商特定的。等于零的错误代码指示无错误的初始化。
requestSetScreenViewport(xTopLeft,yTopLeft,xBottomRight,yBottomRight)–这个功能调用将导航解决方案的视觉输出定位在屏幕上,并可被调用来通过指定导航视觉部件的左上和右下角而限定位置。屏幕可以从在(0,0)处的左上角测量。所有绝对屏幕坐标从(0,0)角开始。因此,功能调用可传递四个坐标xTopLeft、yTopLeft、xBottomRight和yBottomRight作为参数。
requestSetMeasurementSystem(unitSystem)–这个功能调用将设置用于视觉和非视觉操作的导航解决方案的当前测量系统。它可以在初始化期间以及在运行时间期间被调用。测量系统指定对从导航客户端部件216传递到导航服务器部件238并传递回的正确的距离相关的信息是必要的。unitSystem可被定义为具有未定义的英国码、英国尺或度量的可能值的枚举数据类型。
requestSetCoordinateSystem(eCoordinateSystem,CoordinateSystem)-导航解决方案的当前坐标系统由可能在初始化期间以及在运行时间期间调用的requestSet-CoordinateSystem功能设置。坐标系统指定对从客户端侧传递到服务器并传递回的正确的位置相关的信息是必要的。eCoordinateSystem参数可被定义为具有表示可用的坐标系统的值的枚举数据类型。
requestSetZoomScale(double,zoomscale)该功能用于放大或缩小视觉输出,考虑到当前的单元测量系统。参数zoomScale表示每显示厘米的以米为单位的视觉输出的标尺,其中自我位置(汽车)被定位。这也适用于透视图。例如,传递500的值导致在显示器上每厘米是世界坐标中的500米。该关系在穿过当前自我位置(汽车)的水平线上是正确的。
requestSetRotation(degree,threshold)-该功能从服务器请求视觉输出的旋转。度参数代表以度为单位的视觉输出的旋转量。0代表北,有效值范围从0°到359°和-1°到-359°。负角导致逆时针旋转,正角导致顺时针旋转。阈值参数指示旋转水平,在该旋转之后,中间框架必须被绘制。-1的参数值定义没有中间框架,而是到特定角的中间旋转。如果阈值大于度值,阈值将被忽略,且没有中间框架将被绘制。
requestSetPosition(xCoordinate,yCoordinate,coordinateType)–该功能考虑到当前坐标系统而将视觉输出定位在过去的世界或显示坐标(由coordinateType指示)处。当前用户位置可被定义为“自我”位置且与两个不同的坐标集相关,一个坐标集是从屏幕的零点测量的绝对坐标,而一个坐标集是从视口的零点测量的相对坐标集。
requestSetOrientation(eOrientation,orientation)-根据已被传递的方位参数设置视觉输出的方位。该参数可以是具有northUp(标识北方位)、headingUp(标识航向方位)或destinationUp(标识目的方位)的可能值的枚举数据类型。
requestScrolling(mode,direction,speed)–该功能将使视觉导航输出滚动,阻止输出滚动,并跳回到当前自我位置。该功能可以设置有参数的不同组合。模式参数可以是具有start(标识滚动的开始)、stop(标识滚动停止)、jumpBackToCarPosition(标识滚动的停止加上跳回到汽车位置)或detachFromCarPosition(滚动从汽车位置分离)的可能值的枚举数据类型。该参数规定用于这个滚动请求的模式。只有参数改变时,使用start的多个请求才改变,否则该调用被忽略。除了第一个调用以外,使用其它模式的随后调用将被忽略。stop停止在当前位置处的滚动,其中jumpBackToCarPosition停止滚动并使该位置跳回到汽车位置。在stop被调用之后,对start的调用开始在当前位置滚动,对jumpBackToCarPosition的调用使该位置跳回到汽车位置。方向参数代表以度为单位的所请求的滚动方向(0表示北,有效值范围从0到359度)。速度参数代表每个滚动步骤滚动的像素的量。
requestSetVisible(visibleState)-该功能控制导航的视觉输出的可见性和不可见性。visibleState参数是指示可见性是开启还是关闭的二进制指示符。
requestSetAppearanceStyle(appearanceStyle)-导航的视觉输出的风格通过调用requestSetAppearanceStyle例如白天或夜晚时间模式来控制。该风格设置的颜色一般对导航平台供应商是特定的。参数appearanceStyle指示将显示在视觉输出上的值,且可以是具有day(白天颜色)、night(夜晚颜色)或autoStyle(标识自动设置)的值的枚举数据类型。枚举可以被处理为位掩码以支持对白天和夜晚的交通醒目性。如果白天和夜晚被设置,只有白天设置被显示。
requestTranslateDestinationToCoordinate–位置输入基于EIS(编码信息串)类型。在从拼写程序或从所存储的目的地取回目的地串之后,编码串需要通过调用requestTranslateDestinationToCoordinate来转换成坐标以用作中途停留地或目的地。
responseTranslateDestinationToCoordinate–在EIS被传递到导航服务器以转换成坐标之后,服务器通过调用本身传递坐标的responseTranslateDestinationTo-Coordinate来对该请求作出响应,如果EIS可被成功地转换的状态和已经传递的EIS本身以使该响应匹配相应的请求。
requestSetDestination(xCoordinate,yCoordinate)–作为中途停留地的一个目的地或多个目的地可使用requestSetDestination来设置。
requestStartRoute()-该功能在至少一个目的地被设置之后被调用。路线指导的所请求的模式作为参数被传递,且路线指导立即开始。参数被处理为32位位掩码以支持组合的路线。如果没有目的地被requestSetDestination设置,该调用将被忽略。所设置的目的地仅仅对开始路线的第一请求是有效的。每个新的请求在开始路线之前需要有相应的目的地。
requestStopRoute()该功能通知路线指导。如果路线指导是活动的,路线选择可通过调用requestSto-pRoute来停止。该调用将被忽略,如果路线指导不是活动的。
requestSetDemoMode(demoState,xCoordinateCar,yCoordinateCar)-该功能启用或禁用导航演示模式。在演示模式中,路线指导可以在没有GPS设备的情况下开始。导航设备将独立地行进。xCoordinateCar和yCoordinateCar参数代表演示汽车位置的坐标。如果demoState参数指示演示模式将被关掉,已传递的演示汽车位置值将被忽略。
informDemoModeEnabled-该功能向导航客户端提供演示模式状态。在初始化之后和改变时,服务器发送信号一次。
上面的功能定义根据本发明的方面的示例性快速原型化接口部件。除了上面描述的快速原型化接口功能以外,并再次参考图4,根据本发明的方面的预先定义的API功能可包括用于初始化、视图设置(视觉输出配置)、信息发现和交换、车辆定位、路线指导、导航音频和TMC的功能。这些将在下面被描述。
初始化接口部件
上面描述的requestInit和responseInit功能也将属于初始化工具集,但已经被涵盖在快速原型化接口部件功能列表中。
requestShutdown–这是请求关闭导航服务器部件的来自客户端部件的功能调用。
responseShutdown–该功能将响应于关闭请求而关闭服务器部件。
视图设置接口部件
requestSetViewType(viewType)–该功能设置地图的视图类型。参数viewType是具有view2D(2D视图)、view3D(3D视图)、viewBird(没有高度信息的透视图)、viewGarage(只显示在预览车库中的车辆模型的3D透视图)和viewPreview(识别路线预览地图)的可能值的枚举。
requestSetComponentContext–该功能使视觉部件听从随后的调用。所有随后的调用只与支持单个导航客户端的多个地图有关。该调用可以是排他的,使客户端的所有其它视觉部件忽略调用,直到其上下文由这个请求激活。在其上下文被激活之后,该调用支持待调用的不同的地图。不同的输出可由不同的客户端支持。
requestSetScreenViewportFrame-该功能将设置对随后操作的屏幕视口框架。屏幕视口框架不影响屏幕视口的分辨率。框架设置成支持对纵览例如路线纵览或缩放到交通事故的有限屏幕区域。
requestSetVisualAssistance-该功能启用和禁用对视觉上削弱的用户的视觉辅助。
requestBlock-该功能块进一步更新到视觉输出。然后随后的请求将只设置在服务器侧上的状态,而不在屏幕上引起任何再现或绘制。状态设置请求可以被存储,且服务器一被下面的功能requestUnblock解锁就稍后被应用于绘制。锁定只应用于发送客户端的视觉输出,且对其它客户端没有影响。
requestUnblock–该功能将对被上面的requestBlock功能锁定的视觉输出的更新解锁。从客户端提取的随后请求将导致立即的绘制。解锁功能只适用于调用客户端的视觉输出,对其它客户端没有影响。
responseUnblock–在视觉输出被解锁且完整的因而产生的框架被绘制之后,该功能对客户端作出响应。如上面关于requestBlock功能所述的,来自客户端的所有存储的状态设置请求将应用于因而产生的框架。在所有存储的状态设置请求的应用之后,响应将被发送到客户端。
requestSetEgoPosition–该功能将自我位置设置在视觉导航部件的屏幕视口内的屏幕上的相对屏幕坐标中。自我位置可由适当的图标例如汽车的顶置图像指示,以指示在屏幕上的当前位置。该位置是相对屏幕坐标。
requestGetEgoPosition-该功能获得在视觉导航部件的屏幕视口内的屏幕上的相对屏幕坐标中的当前自我位置。
responseGetEgoPositionOnScreen–该功能返回在视觉导航部件的屏幕视口内的屏幕上的相对屏幕坐标中的当前自我位置。
进一步关于图5所示的序列图来解释上面描述的初始化和视图设置功能及其在示例性导航系统的客户端-服务器结构中的交互作用。该序列以向服务器提交requestInit功能的客户端部件开始。requestInit功能将在这种情况(16)中代表视觉部件ID的参数传递到服务器。服务器接着开始初始化过程,其将包括导航解决方案的初始化。服务器初始化独立于客户端而发生,因此服务器部件将需要建立与所有系统部件例如系统图形库和传感器的通信。当完成时,服务器部件经由responseInit命令(包括指示初始化是否是成功的错误标记)作出响应。
在服务器对初始化请求作出响应之后,客户端使用上面描述的功能向服务器发出很多状态设置消息。这些消息将设置启动值,例如对视觉输出或所请求的缩放水平的视口。启动值可在每当需要时被设置,但一般在导航服务器被请求执行进一步的行动之后被设置。直到现在,不请求服务器再现或显示任何视觉输出。在从服务器产生所有状态设置请求之后,requestSetVisible命令从客户端发出以指示服务器在导航平台上的图形输出设备上再现绘制的框架。
信息发现和交换接口部件
根据本发明的一个方面,提供信息交换接口部件以使导航平台能够发现信息的类型,且因此发现在导航解决方案上可用的能力和功能,并与导航解决方案交换信息。信息交换接口部件可以被实现为一组请求和响应功能,如将在下面进一步描述的。
示例性系统可利用编码信息串(EIS)来实现在导航解决方案中可用的并由导航平台检索的信息的识别。EIS包括由<>形式的标志或标签识别的信息。例如,标志<IFT>表示信息类型标识符,<CTR>标识国家信息,<ITR>表示标识交叉路口(通过交叉或第二街道)的信息。另一例子EIS将在下面的一些功能描述中被使用。
参考图6进一步解释信息发现和交换接口部件414,图6示出用于组织信息类型、通过导航解决方案变得可用的相关EIS标签(由“<>”表示)和信息值的示例性信息树。此外,图7、8、9A和9B是序列图,其利用在图6中的示例性信息树中描述的信息,并示出使导航平台(客户端)发现从导航解决方案(服务器)可得到的信息的类型的序列,以及作为例子检索选定的国家和州位置信息。
如可在图6中看到的,从导航解决方案可得到的信息可包括根标识符(信息类型),其可在EIS中被表示为例如<IFT>。在这个例子中,导航解决方案提供由导航平台使用的四种类型的信息:(1)位置输入;(2)兴趣点;(3)地图;以及(4)TMC信息类型。这些信息类型每个包括由信息树中的相应分支表示的额外的子类型。例如,位置输入类型信息包括子类型:国家、州和邮政编码。每个子类型由在导航客户端所作出的请求和导航服务器所给出的响应中的适当EIS表示。
requestGetAvailableInformation(inpurEIS)-该功能请求对当前信息的下一可用改进的列表。参数inpurEIS是代表所请求的信息的编码信息串(EIS),并将包括在特定水平处的所有可用信息类型的列表和每种类型可用的项目的计数。如果NULL-指针(空串)被传递,则可用信息的顶部和根部水平返回到客户端。
responseGetAvailableInformation(inpurEIS,availableTypesEIS)–该服务器响应功能将根据所传递的信息提供在信息树结构中的下一可用信息类型的列表,在该信息树结构中,提供在导航解决方案上可得到的信息。参数输入EIS是与在请求命令中传递的相同的EIS,使得客户端侧可使来自服务器的响应与所发出的原始请求匹配。返回的参数availableTypesEIS代表可得到的信息类型,每个信息类型具有总项目计数作为值。NULL指针使响应无效。
requestGetDetails(inputEIS,requestedFields)–该功能基于关于inputEIS串提供的信息来请求详细的信息。在所请求的字段中的串都将被格式化为被标签指示符<>包围的EIS标志。例如,<GEO>或<ALL>。参数requestedFields代表导航服务器提供的所请求的字段。
responseGetDetails(inpurEIS,validState,requestedFields,outputEIS)。这是返回关于响应于requestGetDetails命令而提供的信息的细节的响应功能。参数validState是具有有效或无效的可能值以指示状态的有效性的枚举,其指示请求是否是成功的。requestedFields参数包含在请求命令中所请求的相同字段,以便使请求与响应匹配。outpurEIS参数包含具有添加的字段的输出EIS。
requestGetList(inpurEIS,startIndex,resultCount,sortOptions,fieldOptions,cancelState)-该功能请求输入EIS的信息的列表。参数startIndex表示在1开始计数的列表窗的第一元素。resultCount表示窗口的所请求的数量的项目。较少的将被返回,可用计数小于所请求的数量。-1的值指示返回所有可用的项目。参数sortOption表示对数据分类的方法,默认分类串是“Default”。参数sortOption是具有defaultSort(识别默认串)、ascending(升序分类)、descending(降序分类)、nearFirst(最接近的第一分类)、farFirst(较远的第一串)、hierarchicalSort(较高等级的第一分类)、hierarchicalDescSort(较低等级的第一分类)的可能值的枚举。参数fieldOptions表示具有所请求的字段的串阵列结构以返回当前请求。默认字段串是“Default”。参数cancelState表示取消状态。真值用于在以前的请求使用相同的参数做出时取消当前未决的请求;该信息将作为具有被设置为真的完整标志的响应而被发送,假值将作为单独的请求而被处理。信息的列表也可作为在共享存储器中的文件而不是在itemList中的条目而被返回,如果客户端紧接着在输入EIS中的<IFT>标签之后添加标签<VIM>、<PATH>和<LANG>。
responseGetList(inpurEIS,validState,startIndex,resultCount,sortOptions,fieldOptions,itemList,outputEIS,completeState)–该功能提供所请求的信息的列表。该响应的行为是灵活的,以通过标记具有假值的完整标志来支持在一个响应或只有一些所请求的结果的部分结果中的所有所请求的数据。因此,可能接收对单个requestGetList调用的多个响应。如果在输入EIS中指定的<PATH>是针对预先计算的列表,则实际<PATH>将在outpurEIS中被返回。validState表示指示请求是否是成功的状态。如在requestGetList命令中解释了startIndex、resultCount、sortOptions和fieldOptions。ItemList是所请求的项目的列表。参数outpurEIS包含额外的信息,如果不同于原始请求。参数completeState指示列表是否是完整的。
requestGetListInformation(inputEIS)–该功能请求当前信息的可能的分类和字段数据类型。当用于语音识别时,导航客户端也可包括紧接着在EIS中的<IFT>(信息类型)标签之后的<VIM>(语音输入模式)标签,以请求关于特定的语音输入类型的信息。
responseGetListInformation(inpurEIS,validState,sortOptions,fieldOptions,output EIS)-该功能提供所请求的信息的可能的分类和字段数据类型。提供该列表是否被预先编译<PCP>或将由服务器动态地产生的信息。该数据将被客户端利用来决定如何将信息显示给用户。服务器只需要在客户端在请求<VIM>中提供语音输入模式时提供该信息。参数validState指示请求是否是成功的。参数sortOptions是代表当前节点的可用分类选项的矢量的StringArray结构。参数fieldOptions是代表字段选项的矢量的StringArray。参数outputEIS包括添加的字段,包括<PCP>标签(如果以<VIM>来请求)。应为每种可用语言提供<LANG>标签(如果以<VIM>来请求)。
requestGetSpell(inputEIS)–该功能请求用于基于在EIS记录中的最后一个选择标准来拼写当前信息(由inpurEIS表示)的可用字符集。
responseGetSpell(inpurEIS,validState,nextAvailableCharacters,count,isFullMatch)–该功能提供下一可用字符和在inputEIS中表示的信息的剩余计数。参数validState指示请求是否是成功的。参数nextAvailableCharacters表示剩余的下一可用字符集。参数计数表示匹配当前输入的项目的计数。参数isFullMatch指示输入的串是否完全规定项目。
参考图7所示的序列图,从导航解决方案(图7中的导航服务器)可得到的信息首先使用上面描述的示例性requestGetAvailableInformation功能经由来自导航平台(导航客户端)的请求被发现。零值在命令中给出以指示对可用信息的根请求。服务器使用包括inputEIS值(在这种情况下是零,并为了消息控制/记账目的而被提供回到客户端)的responseGetAvailableInformation消息作出响应。结果代码指示来自根请求的一个结果,该结果是“InfoType”并指示(4)的值。导航客户端接着发出GetList请求以请求与根InfoType相关的四种信息类型的列表。在响应中,服务器提供responseGetList消息,其提供四种类型的信息的列表:LDB、LI、POI和TMC。因此,导航解决方案向导航平台识别可用于使用的信息的类型。
图8是示出来自导航解决方案的位置信息的进一步检索的序列图。客户端现在使用规定InfoType作为位置信息(LI)的EIS发出GetAvailableInformation请求。在availableInfo字段中从服务器返回的信息是“Country(国家)”信息类型的标识符和规定两个另外的信息类型的参数。GetList请求接着由客户端发出以检索两个“country”信息类型的列表。(2)的项目计数和指示“CANADA”和“USA”的列表从服务器返回。
图9A和9B示出用于检索状态位置信息的类似序列图。在客户端和服务器之间的交换以类似于上面描述的国家信息过程的方式进行。然而,由于在availableInfo字段(53个州)中返回的大量结果,GetSpell功能被使用两次以集中于来自服务器的信息的检索。第一GetSpell响应返回可用字符的列表和满足“State=”标准(53)的结果的数量。第二GetSpell请求配置成检索以字母“M”开始的状态的子集,并引起指示8个项目和可用字符“AIO”的响应。GetSpell功能再次用于获得满足标准的状态的列表。
如将明显的,上述功能和序列可用于实现可识别从导航解决方案可用的所有信息的信息发现和交换接口部件414。用于编码从导航解决方案可用并经由信息交换接口的信息的方案不限于四种示例性信息类型,而是扩展到路线和交叉路口信息和实质上通过导航解决方案变得可用的所有类型的信息。
作为另一例子,可如在步骤和相关请求以及下述响应功能中阐述的来利用交叉路口信息:
向服务器发送请求以获得下一可用类型–
requestGetAvailableInformation(“<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>Ann Arbor<*>”)
具有可用信息的来自服务器的响应-
responseGetAvailableInformation(“<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>AnnArbor<*>”,
“<STR>301<*>”)
向服务器发送请求以获得街道的列表-
names:requestGetList("<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>Ann
Arbor<*><STR><*>",1,3,defaultSort,“Default”,false)
具有街道列表的来自服务器的响应-
responseGetList("<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>Ann
Arbor<*><STR><*>",valid,1,3,defaultSort,“Default”,
{“<STR>3ls Dr<*>”,“<STR>3rd St<*>”,”<STR>4th St<*>”},false)
向服务器发送请求以得到下一可用类型–
requestGetAvailableInformation(“<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>Ann
Arbor<*><STR>3rd St<*>”)
具有可用信息的来自服务器的响应–
responseGetAvailableInformation(“<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>Ann Arbor<*><STR>3rd
St<*>”,“<HNO>1<*><ITR>20<*>”)
向服务器发送请求以获得下一拼写程序字符–
requestGetSpell("<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>Ann
Arbor<*><STR>3rd St<*><ITR><*>")
具有下一拼写程序字符的来自服务器的响应–
responseGetSpell("<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>Ann
Arbor<*><STR>3rdSt<*><ITR><*>",valid,
“CDHJKLMW”,20,false)
向服务器发送请求以获得交叉路口街道名称的列表–
requestGetList("<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>Ann
Arbor<*><STR>3rdSt<*><ITR>C<*>",1,3,defaultSort,
“Default”,false)
具有交叉路口列表的来自服务器的响应-
responseGetList("<IFT>LI<*><CTR>United
States<*><STA>Michigan<*><CTY>Ann
Arbor<*><STR>3rd St<*><ITR>C<*>",valid,1,3,
defaultSort,“Default”,{“<STR>Chapin St<*>”},false)
作为另一例子,使用信息发现和交换接口部件414,导航平台可请求对路线中的所有路段的整个路线列表。这样的请求可通过参考具有零值的路线元素<RTE>通过规定来指定。这说明路线信息可如何使用限定信息发现和交换接口部件414的功能来从导航解决方案获得。
向服务器发送请求以获得所有路线路段的计数:
requestGetAvailableInformation(“<IFT>RT<*><RTH>888<*
><RTE>0<*>”)
具有可用信息的来自服务器的响应:
responseGetAvailableInformation(“<IFT>RT<*><RTH>888<*
><RTE>0<*>”,“<RSG>13<*>”)
向服务器发送请求以获得对路线句柄888的路线选项的列表:
requestGetList("<IFT>RT<*><RTH>888<*><RTE>0<*><RSG
><*>",1,13,defaultSort,“Default”,false)
具有路线选项的来自服务器的响应:
responseGetList
("<IFT>RT<*><RTH>888<*><RTE>0<*><RSG><*>",
valid,1,1,defaultSort,“Default”,
{"<RTE>1<*><RSG>0<*><MNT>6<*><MNN>192<*><ST
R>Unnamed road<*><MND>670<*><GEO>-83.431103
42.496809<*><TRT>14000<*>",
"<RTE>1<*><RSG>2<*><MNT>13<*><MNN>192<*><ST
R>W12Mile Rd<*><MND>3190<*><GEO>-83.430575
42.497113<*><TRT>20000<*>",
"<RTE>1<*><RSG>3<*><MNT>3<*><MNN>0<*><STR>
W12Mile Rd<*><MND>16840<*><GEO>-83.427043
42.497289<*><TRT>118000<*>",
"<RTE>2<*><RSG>4<*><MNT>13<*><MNN>242<*><ST
Figure BDA00001878009500201
%s EB
Detroit<*><ICON>/tmp/nng_rs_icon_0.bmp<*><TXT>M-
5<*><MND>13550<*><GEO>-83.447696
42.496640<*><TRT>92000<*>",
"<RTE>2<*><RSG>15<*><MNT>3<*><MNN>0<*><STR>
1660Brookdale Dr<*><MND>0<*><GEO>-83.430684
42.296395<*><TRT>0<*>"},false)
如将认识到的,全路线列表的每个列表项目应包含它所属的<RTE>。
对普通技术人员来说也显然,识别从导航解决方案可得到的信息的这个方面适应由导航解决方案提供的新类型的信息的添加以及通过导航平台的信息的发现。也就是说,在下一代导航解决方案上变得可用的新功能和信息可由现有的导航平台利用而不使导航平台升级。例如,可通过添加新信息类型对导航平台识别关于导航解决方案的车道推荐特征的添加和相关的可用信息,该新信息类型使用在图6所示的信息树上的一组新的EIS标志和相应的额外分支(未示出)的“车道推荐”来表示。
车辆位置信息接口部件
requestVehicleLocationInformationDetails(updateMode,updateInterval)-该功能基于规定的时间间隔来启用或禁用位置信息更新。updateMode参数指示方位的更新应如何被发送,且是具有disable(禁用更新)、once(更新一次)、onChange(关于方位中的变化的更新)和frequency(更新的限定的频率)的可能值的枚举。updateInterval参数表示位置更新将被提供给客户端的最大速率。将一般只提供关于变化的更新。值以ms为单位。
informVehicleLocationInformationDetails(posInfo)-该功能提供由posInfo规定的当前位置的细节。这包括自我位置、航向和所有可用的国家、州、城市、当前街道信息、最近的交叉街道等。它还可能包括速度限制、时区、车道推荐。
导航路线接口部件
requestBlockRoute(operation,items)-该功能从路线计算添加或移除项目,并可用于规定代表在每条路线上要全局地和/或局部地避免的路线或路段的矢量或其它项目。如果路线句柄的空列表被提供,则锁定的项目将被全局地应用,并影响所有新的路线计算和当前活动的路线。每路线一次只有一个距离块被这个功能支持。如果第二个块被指定,它将代替前一个距离块。操作参数表示应在路线计算期间根据考虑添加或移除的路段,并且是可具有将根据考虑移除路段的值AddBlock或将使路段从锁定的列表移除且因此被重新考虑的路段的值RemoveBlock的枚举。参数项目是代表从路线计算移除的项目的EIS的列表,并可包括道路路段、路线演戏或路线上向前的一段距离。
responseBlockRoute(operation,items,validState)–这是对requestBlockRoute的服务器响应。操作和项目参数如上所述。参数validstate指示请求是否是成功的。
requestNewTrip(destinations,routeModes)–该功能创建新的旅程。将有新的路线句柄,识别由对每组规定的路线选项创建的特定的路线模式定义的所计算的路线的唯一标识符。参数destinations是代表在路线计算中使用的路线元素的元素的列表。参数routeModes是代表路线模式的元素的列表。将对经过的每个路线模式创建路线元素。
responseNewTrip(destinations,routeModes,validState,handles)-该功能返回所规定的每组路线选项的路线句柄标识符。参数handles是路线句柄的列表。在列表中的路线句柄的顺序匹配规定的路线选项的顺序。零的路线句柄值识别具有在位置零处的路线选项的路线。
requestKillTrip(handles)–破坏路线句柄的列表。转弯列表和路线细节在与路线相关的信息树中将不再是可用的。破坏活动的路线句柄将取消指导。在这种情况下,下面解释的功能informActiveRouteDescription将相应地被更新。
responseKillTrip(handles)-该功能是对已破坏的路线句柄的服务器响应。
requestStartGuidance(routeHandle)-该功能开始与routeHandle所表示的规定路线句柄相关的路线。功能informActiveRouteDescription将相应地被更新。
requestStopGuidance()-停止所有路线选择。ActiveRouteDescription将相应地被更新。当指导被停止时,在ActiveRouteDescription中的路线句柄将是-1。
informActiveRouteDescription(routeDesc)–识别也称为目的地的活动的路线元素和也称为演习的活动的路线路段。-1的路线句柄指示没有路线是活动的。参数routeDesc表示当前活动的路线描述信息。
informNextManeuverInfo(timeDist,nextManInfo)–向下一演习提供剩余的时间和距离。该功能仅在ActiveRouteDescription包含有效的路线句柄时是有效的。
informNextDestinationInfoFunction(nextDestInfo)–提供到下一目的地的剩余时间和距离。只有当ActiveRouteDescription包含有效的路线句柄时是有效的。参数nextDestInfo表示关于下一目的地的信息。
informCalculationState(routeHandle,calcState,calcPercent)-该功能返回对变化的路线计算状态的信息。该响应被发送以通知客户端路线何时被规划、计算、重新计算,或目的地已到达。这是对获得路线路段列表(转弯列表)的触发器。参数routeHandle表示改变的路线句柄,calcState表示新的计算状态(空闲、规划、被规划、计算、被计算、路线选择、被选择路线或出故障),而calcPercent表示被计算的路线的总百分比(0到100或-1,如果不可用)。
上面的功能可为导航平台提供有利的方式来影响导航解决方案所提供的路线选择功能。例如,为了向导航解决方案发出使特定路线在向前一段规定距离阻塞的命令,可利用requestBlockRoute和responseBlockRoute功能。例如,为了阻塞向前5000米的路线,客户端将发送下面的命令:
requestBlockRoute(AddBlock,
{“<IFT>RT<*><RTH>888<*><RRD>5000<*>”})
且服务器将使用下面的命令作出响应:
responseBlockRoute(AddBlock,
{“<IFT>RT<*><RTH>888<*><RRD>5000<*>”},valid)
如将认识到的,导航路线接口部件功能可用于实现各种路线阻塞功能,例如移除前面的块,阻塞整个路线路段,仅阻塞路线路段的演习。而且,信息交换接口部件的GetAvailableInformation功能可与存储在与图6所示的信息树结构类似的信息树结构中的路线信息一起被利用,例如以检索对特定的路线句柄的路线块的列表:
向服务器发送请求以获得下一可用的类型:
requestGetAvailableInformation(“<IFT>RT<*><RTH>888<*
>”)
具有可用信息的来自服务器的响应:
responseGetAvailableInformation(“<IFT>RT<*><RTH>888<
*>”,“<RTO>1<*><RTE>1<*><BLK>2<*>”)
阻塞的路段<BLK>将包含路线的所有类型的被阻塞的项目,包括被阻塞的路段演习和被阻塞的道路距离。
向服务器发送请求以获得对路线句柄888的阻塞的路段的列表:
requestGetList("<IFT>RT<*><RTH>888<*><BLK><*>",1,3,
defaultSort,“Default”,false)
具有阻塞的路段的来自服务器的响应:
responseGetList(“<IFT>RT<*><RTH>888<*><BLK><*>”,
valid,1,3,defaultSort,“Default”,
{“<IFT>RT<*><RTH>888<*><BLK>1<*><STR>From
Street–To Street<*><BET>1<*><GEO>-83.2242.53<*>”,
“<IFT>RT<*><RTH>888<*><BLK>2<*><STR>From Street
–To Street<*><BET>2<*><GEO>-83.42
42.23<*>”,“<IFT>RT<*><RTH>888<*><BLK>3<*><MNT>
25<*><STR>Street<*><BET>3<*><GEO>-83.12
42.73<*>”},false)
下面的例子说明可使用上述功能实现的路线选项树扩展:
向服务器发送请求以获得下一可用的类型:
requestGetAvailableInformation(“<IFT>RT<*><RTH>888<*
>”)
具有可用信息的来自服务器的响应:
responseGetAvailableInformation(“<IFT>RT<*><RTH>888<
*>”,“<RTO>1<*><RTE>1<*><BLK>0<*>”)
向服务器发送请求以获得对路线句柄888的阻塞的路段的列表:
requestGetList("<IFT>RT<*><RTH>888<*><RTO><*>",1,1,
defaultSort,“Default”,false)
具有路线选项的来自服务器的响应:
responseGetList("<IFT>RT<*><RTH>888<*><RTO><*>",
valid,1,1,defaultSort,“Default”,
{“<RTO>9<*><URO>8<*><RAT>136<*><RCS>4<*><RRD
>24532 0<*><TRT>3756324<*>”},false)
上面返回的EIS指示下列项:所请求的路线选项,<RTO>fastest|avoidMotorways<*>;无法实现的路线选项,<URO>avoidMotorways<*>;路线上的避免类型,<RAT>avoidMotorways|avoidUnpaved<*>;路线计算状态,<RCS>Calculated;真实道路距离(分米),<RRD>245320<*>;剩余行进时间(ms),<TRT>3756324<*>。
导航音频接口部件
导航音频接口部件包括用于使导航客户端部件能够利用导航服务器部件所提供的音频服务的功能。
informPromptReady(audioSource)–该功能在导航服务器上被提供并向客户端指示提示准备好了。参数audioSource可以是具有audioIde(默认导航音频源(指示没有导航音频当前正播放))、audioAutomatic(导航核心发起的音频源,例如由车辆接近演习位置而触发的转弯推荐)、audioManual(用户发起的音频源,例如用户请求导航提示的重复)的可能值的枚举。
requestPromptReady(audioSource)-该客户端功能向导航服务器指示可在指定的音频源上播放提示。
requestSetADA(adaState)该功能启用或禁用声驱动公告(ADA)。参数adaState是二进制状态指示符。具有相同的二进制状态的随后调用可被忽略。
informADAIsEnabled(isEnabled)-该功能指示ADA被启用或禁用。如果IsEnabled为真,导航音频公告将被播放。如果IsEnabled为假,导航音频公告将不被播放。
requestCancelADA()–这是取消当前的声驱动公告(ADA)的功能。该功能调用只影响当前输出的ADA,且对随后的ADA没有影响。
requestRepeatADA()–这是重复最后一个ADA的功能。最后一个ADA将被重复。如果到目前为止没有ADA被输出,则调用将被忽略。
informActiveAudioSource(audioSource)–该功能将返回当前播放的音频源。由audioSource表示的状态可以是空闲、自动和手动。参数audioSource表示当前播放的音频源。
现在将参考图10解释利用上面的功能的示例性序列。导航客户端可在相应的音频将被播放之前发起requestPromptReady功能。因此,在序列中的第一步骤是导航服务器发出informPromptReady消息以用信号通知准备播放音频提示。这跟随有以requestPromptReady命令的形式的来自HMI(和导航客户端部件)的确认,指示导航解决方案开始音频分发的许可。接着,导航服务器使用informActiveAudio源作出响应,将活动的音频源从空闲改变到手动。当客户端接收到informPromptReady消息时,它将音频属性设置到当前音频源并开始播放音频。当它结束时,它将AudioPrompt属性设置为空闲。HMI可使用这个触发器来改变音频源。
交通消息频道接口部件
交通消息频道接口部件包括用于使导航平台能够利用由导航解决方案提供的TMC相关的功能的一组功能。
requestSetTMCMode(tmcMode)该功能在处理TMC信息时启用和禁用服务器。当TMC被禁用时,消息可以从所显示的地图移除,且TMC消息列表被清除。
informTMCMode(tmcState)-通知客户端新的TMC信息已被接收到。该信息是对请求所监控的TMC信息的触发器。服务器将在初始化之后和改变时发送一次信号。参数tmcState是用于指示TMC处理将被开启或关掉的二进制指示符。
requestSetTMCRouteMode(tmcRouteMode,minutes)-该功能在服务器由于TMC事件而提供新路线时设置可选的路线的接受模式。参数tmcRouteMode可以是具有tmcOff(表示在路线计算期间将不考虑TMC消息)、tmcAutomatic(表示在路线计算期间将不考虑TMC消息,且服务器将自动接受所计算的路线)、tmcManual(表示在路线计算期间将不考虑TMC消息,但服务器将不自动接受所计算的路线)、或tmcDelay(表示如果规定的延迟时间被当前路线超过,则服务器将只改变当前路线)的值的枚举。参数minutes表示最小剩余的时间差。只有当新路线比当前路线快给定的时间差时,服务器才提供新路线。如果该差小于给定的时间,则所计算的路线将结束。
informTMCRouteMode(tmcRouteMode,minutes)–该功能通知客户端当前的TMC路线模式。服务器将在初始化之后和在改变时发送信号一次。
informTMCInfoChanged(tmcInfo)–该功能通知客户端新的TMC信息已被接收到。该信息是对请求所监控的TMC信息的触发器。
informTMCOnRouteChanged-通知客户端关于规定的路线句柄的新的TMC信息已被接收到。该信息是对请求所监控的TMC信息的触发器。
informTMCRoutesAvailable(routeList,tmcNewEvents,tmcDeletedEvents)–该功能通知客户端当接受模式是tmcManual时基于所接收的TMC信息可用的可选路线。参数routeList表示具有更新的TMC信息的路线句柄的列表。参数tmcNewEvents表示引起可选路线的计算的最重要的新tmc事件的列表。参数tmcDeletedEvents表示引起可选路线的计算的最重要的删除的tmc事件的列表。该信息是对请求所监控的TMC信息的触发器。
requestTMCIgnore-这是规定事件或TMC事件的组忽略或停止忽略的功率。从对路线计算的考虑中,将移除忽略的TMC消息和组。所忽略的TMC消息将在信息接口中在<IFT>TMC<*><RQT>IgnoredMessages<*>处是可用的。所忽略的TMC消息组将在信息接口中在<IFT>TMC<*><RQT>IgnoredMessageGroups<inform处是可用的。TMCIgnoresChanged将在TMCIgnore之后被服务器调用。功能已完成。这将通知客户端忽略被更新。
informTMCIgnoresChanged-通知所忽略的TMC信息已改变的功能。该信息是对请求所监控的TMC信息的触发器。
requestTMCAvoid-规定要避免或停止避免的TMC的事件或组。所避免的TMC消息和组应为了路线计算目的而在它们上施加额外惩罚。所避免的TMC消息将在信息接口中在<IFT>TMC<*><RQT>AvoidedMessages<*>处是可用的。所避免的TMC消息将在信息接口中在<IFT>TMC<*><RQT>AvoidedMessageGroups<*>处是可用的。功能informTMCAvoidsChanged将在tmc避免功能完成之后被服务器调用。这将通知客户端避免已被更新。
informTMCAvoidsChanged-这通知客户端避免TMC信息已改变。该信息是对请求所监控的TMC信息的触发器。
普通技术人员将认识到,上述实现说明了本发明。API提供用于导航解决方案中的底层复杂性的抽象层。例如,不是要求导航平台向导航解决方案发出大量复杂的编程水平命令以提取出具有可选路线的复杂路线纵览,导航平台可发出相对较少的命令,例如与高级步骤相关的上面公开的高级示例性功能,因为导航解决方案根据定义示例性API的功能的预先定义的标准集来配置。而且,API实现导航解决方案到导航平台中的灵活和有效的集成,独立于主机导航平台的发展的导航解决方案的快速原型化,以及从任何导航解决方案可得到的信息类型和功能的发现。
为了说明和描述的目的提出了实现的前述描述。它不是排他的,且并不将所要求保护的发明限制到所公开的精确形式。修改和变化根据上面的描述是可能的,或可以从实践本发明中获取。权利要求及其等效形式限定本发明的范围。

Claims (11)

1.一种包括导航平台的导航系统,所述导航平台包括用于与导航解决方案连接的应用接口,所述接口包括适合于与由所述导航解决方案提供的相应功能协作的一组预先定义的功能。
2.如权利要求1所述的导航系统,其中所述应用接口包括用于使导航解决方案能够在功能上独立于所述导航平台而被评估的快速原型化接口部件。
3.如权利要求2所述的导航解决方案,其中所述用于配置所述导航解决方案的视觉输出的功能包括用于将所述导航解决方案的视觉输出定位在所述导航平台上的显示设备上的功能。
4.如权利要求1所述的导航系统,其中所述预先定义的功能配置成作出对所述导航解决方案的请求并从所述导航解决方案接收响应,从而实现客户端-服务器结构。
5.如权利要求1所述的导航平台,其中所述应用接口包括用于发现从所述导航解决方案可得到的信息的信息发现和交换接口部件。
6.如权利要求5所述的导航平台,其中所述信息交换接口部件包括用于确定从所述导航解决方案可得到的信息的类型的至少一个功能。
7.如权利要求5所述的导航平台,其中所述信息交换接口部件包括用于请求从所述导航解决方案可得到的信息类型的列表的至少一个功能。
8.如权利要求1所述的导航平台,还包括用于允许所述导航平台和导航解决方案之间的进程间通信的进程间通信接口。
9.一种将导航解决方案集成到导航平台中的方法,所述方法包括:
在所述导航平台上设置应用编程接口,所述应用编程接口包括一组预先定义的功能;
给导航解决方案提供所述应用编程接口;
经由所述组预先定义的功能从所述导航解决方案请求信息。
10.如权利要求9所述的方法,其中所述应用编程接口包括快速原型化接口部件,且所述方法还包括使用所述快速原型化接口部件来评估所述导航解决方案的步骤。
11.如权利要求9所述的方法,其中所述应用编程接口包括信息发现和交换部件,且所述方法还包括使用所述信息发现和交换部件来发现从所述导航解决方案可得到的信息的步骤。
CN201210241367.3A 2011-07-12 2012-07-12 导航应用接口 Active CN102878992B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/181,379 US9542241B2 (en) 2011-07-12 2011-07-12 Navigation application interface
US13/181,379 2011-07-12

Publications (2)

Publication Number Publication Date
CN102878992A true CN102878992A (zh) 2013-01-16
CN102878992B CN102878992B (zh) 2018-05-25

Family

ID=46717704

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210241367.3A Active CN102878992B (zh) 2011-07-12 2012-07-12 导航应用接口

Country Status (4)

Country Link
US (1) US9542241B2 (zh)
EP (1) EP2546741A1 (zh)
JP (2) JP6276910B2 (zh)
CN (1) CN102878992B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509194A (zh) * 2017-02-28 2018-09-07 谷歌有限责任公司 导航应用编程接口
CN109634567A (zh) * 2018-12-07 2019-04-16 武汉瓯越网视有限公司 一种信息创建方法、装置、终端及存储介质

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9378601B2 (en) 2012-03-14 2016-06-28 Autoconnect Holdings Llc Providing home automation information via communication with a vehicle
US9384609B2 (en) 2012-03-14 2016-07-05 Autoconnect Holdings Llc Vehicle to vehicle safety and traffic communications
US9082238B2 (en) 2012-03-14 2015-07-14 Flextronics Ap, Llc Synchronization between vehicle and user device calendar
US20140309853A1 (en) 2013-04-15 2014-10-16 Flextronics Ap, Llc Vehicle diagnostics and roadside assistance
US9082239B2 (en) 2012-03-14 2015-07-14 Flextronics Ap, Llc Intelligent vehicle for assisting vehicle occupants
US9412273B2 (en) 2012-03-14 2016-08-09 Autoconnect Holdings Llc Radar sensing and emergency response vehicle detection
CN104321620A (zh) 2013-04-15 2015-01-28 弗莱克斯电子有限责任公司 基于用户简档信息通过改变的地图路线进行行为修改
US10054463B2 (en) 2013-09-26 2018-08-21 Google Llc Systems and methods for providing navigation data to a vehicle
WO2015048307A1 (en) * 2013-09-26 2015-04-02 Google Inc. Systems and methods for providing navigation data to a vehicle
CN105205226A (zh) * 2015-08-28 2015-12-30 武汉理工大学 二维海事仿真系统
US9688225B2 (en) * 2015-10-09 2017-06-27 Livio, Inc. Methods and systems for a mobile device to emulate a vehicle human-machine interface
US10692126B2 (en) 2015-11-17 2020-06-23 Nio Usa, Inc. Network-based system for selling and servicing cars
US10169110B2 (en) * 2016-03-25 2019-01-01 Google Llc Navigation application programming interface
US10061625B2 (en) * 2016-03-25 2018-08-28 Google Llc Navigation application programming interface to accommodate multiple waypoint routing
US20180012197A1 (en) 2016-07-07 2018-01-11 NextEv USA, Inc. Battery exchange licensing program based on state of charge of battery pack
US9928734B2 (en) 2016-08-02 2018-03-27 Nio Usa, Inc. Vehicle-to-pedestrian communication systems
US9963106B1 (en) 2016-11-07 2018-05-08 Nio Usa, Inc. Method and system for authentication in autonomous vehicles
US10694357B2 (en) 2016-11-11 2020-06-23 Nio Usa, Inc. Using vehicle sensor data to monitor pedestrian health
US10410064B2 (en) 2016-11-11 2019-09-10 Nio Usa, Inc. System for tracking and identifying vehicles and pedestrians
US10708547B2 (en) 2016-11-11 2020-07-07 Nio Usa, Inc. Using vehicle sensor data to monitor environmental and geologic conditions
US11064453B2 (en) * 2016-11-18 2021-07-13 Nokia Technologies Oy Position stream session negotiation for spatial audio applications
US10699305B2 (en) 2016-11-21 2020-06-30 Nio Usa, Inc. Smart refill assistant for electric vehicles
US10249104B2 (en) 2016-12-06 2019-04-02 Nio Usa, Inc. Lease observation and event recording
US10074223B2 (en) 2017-01-13 2018-09-11 Nio Usa, Inc. Secured vehicle for user use only
US10031521B1 (en) 2017-01-16 2018-07-24 Nio Usa, Inc. Method and system for using weather information in operation of autonomous vehicles
US9984572B1 (en) 2017-01-16 2018-05-29 Nio Usa, Inc. Method and system for sharing parking space availability among autonomous vehicles
US10471829B2 (en) 2017-01-16 2019-11-12 Nio Usa, Inc. Self-destruct zone and autonomous vehicle navigation
US10286915B2 (en) 2017-01-17 2019-05-14 Nio Usa, Inc. Machine learning for personalized driving
US10464530B2 (en) 2017-01-17 2019-11-05 Nio Usa, Inc. Voice biometric pre-purchase enrollment for autonomous vehicles
US10897469B2 (en) 2017-02-02 2021-01-19 Nio Usa, Inc. System and method for firewalls between vehicle networks
US10234302B2 (en) 2017-06-27 2019-03-19 Nio Usa, Inc. Adaptive route and motion planning based on learned external and internal vehicle environment
US10710633B2 (en) 2017-07-14 2020-07-14 Nio Usa, Inc. Control of complex parking maneuvers and autonomous fuel replenishment of driverless vehicles
US10369974B2 (en) 2017-07-14 2019-08-06 Nio Usa, Inc. Control and coordination of driverless fuel replenishment for autonomous vehicles
US10837790B2 (en) 2017-08-01 2020-11-17 Nio Usa, Inc. Productive and accident-free driving modes for a vehicle
US10635109B2 (en) 2017-10-17 2020-04-28 Nio Usa, Inc. Vehicle path-planner monitor and controller
US10935978B2 (en) 2017-10-30 2021-03-02 Nio Usa, Inc. Vehicle self-localization using particle filters and visual odometry
US10606274B2 (en) 2017-10-30 2020-03-31 Nio Usa, Inc. Visual place recognition based self-localization for autonomous vehicles
US10717412B2 (en) 2017-11-13 2020-07-21 Nio Usa, Inc. System and method for controlling a vehicle using secondary access methods
US10369966B1 (en) 2018-05-23 2019-08-06 Nio Usa, Inc. Controlling access to a vehicle using wireless access devices

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256578B1 (en) * 1998-01-26 2001-07-03 Toyota Jidosha Kabushiki Kaisha Navigation system and navigation data processing method
CN1746629A (zh) * 2004-09-07 2006-03-15 乐金电子(中国)研究开发中心有限公司 一种提供导航服务的终端、系统及方法
US7610148B1 (en) * 2002-09-18 2009-10-27 Garmin Ltd. Methods and systems to interface navigation operations
CN101681380A (zh) * 2007-06-04 2010-03-24 通腾科技股份有限公司 位置引入数据传递设备、位置数据引入系统以及位置数据引入方法
US20110071881A1 (en) * 2009-09-18 2011-03-24 Microsoft Corporation Mining life pattern based on location history
CN102053251A (zh) * 2010-11-11 2011-05-11 深圳市江波龙电子有限公司 一种扩展卡、扩展导航系统及导航系统数据访问处理方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6047280A (en) 1996-10-25 2000-04-04 Navigation Technologies Corporation Interface layer for navigation system
WO1999003000A1 (en) * 1997-07-09 1999-01-21 Massachusetts Institute Of Technology Integrated flight information and control system
JP3739615B2 (ja) * 1999-11-30 2006-01-25 三菱電機株式会社 車載用情報処理装置および記録媒体
EP1111338B1 (en) 1999-12-20 2009-02-25 Navteq North America, LLC Map data architecture for vehicle computer system
US6385541B1 (en) * 2000-02-29 2002-05-07 Brad Wayne Blumberg Global positioning-based real estate database access device and method
US7266513B2 (en) * 2001-03-14 2007-09-04 United Parcel Service Of America, Inc. System and method for initiating returns over a network
JP2002318702A (ja) 2001-04-19 2002-10-31 Mitsubishi Electric Corp 車載情報システム
US7013216B2 (en) 2002-09-18 2006-03-14 Garmin Ltd. Methods and systems to interface navigation operations
US7296023B2 (en) 2004-01-15 2007-11-13 International Business Machines Corporation Method and apparatus for persistent real-time collaboration
US7584193B2 (en) * 2004-12-16 2009-09-01 Sap Ag Client-server data communication
JP2006247343A (ja) 2005-03-11 2006-09-21 Navteq North America Llc コンピュータゲーム開発に地理的データを使用する方法及びシステム
US8584171B2 (en) 2005-05-06 2013-11-12 Starz Entertainment Group Llc Local context navigation system
JP2006350469A (ja) 2005-06-13 2006-12-28 Xanavi Informatics Corp ナビゲーション装置
US7634354B2 (en) * 2005-08-31 2009-12-15 Microsoft Corporation Location signposting and orientation
US9311398B2 (en) 2005-11-15 2016-04-12 Ebay Inc. Method and system to process navigation information
US20070130153A1 (en) 2005-12-02 2007-06-07 Palm, Inc. Techniques to communicate and process location information from communications networks on a mobile computing device
US7612712B2 (en) 2006-04-25 2009-11-03 Rx Networks Inc. Distributed orbit modeling and propagation method for a predicted and real-time assisted GPS system
US8161454B2 (en) 2007-01-22 2012-04-17 Ford Motor Company Software architecture for developing in-vehicle software applications
TWI379072B (en) 2008-08-29 2012-12-11 Asustek Comp Inc Apparatus and method for displaying gps interface

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256578B1 (en) * 1998-01-26 2001-07-03 Toyota Jidosha Kabushiki Kaisha Navigation system and navigation data processing method
US7610148B1 (en) * 2002-09-18 2009-10-27 Garmin Ltd. Methods and systems to interface navigation operations
CN1746629A (zh) * 2004-09-07 2006-03-15 乐金电子(中国)研究开发中心有限公司 一种提供导航服务的终端、系统及方法
CN101681380A (zh) * 2007-06-04 2010-03-24 通腾科技股份有限公司 位置引入数据传递设备、位置数据引入系统以及位置数据引入方法
US20110071881A1 (en) * 2009-09-18 2011-03-24 Microsoft Corporation Mining life pattern based on location history
CN102053251A (zh) * 2010-11-11 2011-05-11 深圳市江波龙电子有限公司 一种扩展卡、扩展导航系统及导航系统数据访问处理方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509194A (zh) * 2017-02-28 2018-09-07 谷歌有限责任公司 导航应用编程接口
CN108509194B (zh) * 2017-02-28 2021-09-21 谷歌有限责任公司 导航应用编程接口
CN109634567A (zh) * 2018-12-07 2019-04-16 武汉瓯越网视有限公司 一种信息创建方法、装置、终端及存储介质
CN109634567B (zh) * 2018-12-07 2022-02-22 武汉瓯越网视有限公司 一种信息创建方法、装置、终端及存储介质

Also Published As

Publication number Publication date
CN102878992B (zh) 2018-05-25
US20130019252A1 (en) 2013-01-17
US9542241B2 (en) 2017-01-10
EP2546741A1 (en) 2013-01-16
JP2018049648A (ja) 2018-03-29
JP2013019902A (ja) 2013-01-31
JP6276910B2 (ja) 2018-02-07

Similar Documents

Publication Publication Date Title
CN102878992A (zh) 导航应用接口
US9057624B2 (en) System and method for vehicle navigation with multiple abstraction layers
US7542846B2 (en) Navigation system utilizing XML/SVG map data converted from geographic map data and layered structure of XML/SVG map data based on administrative regions
KR100707568B1 (ko) 네비게이션 방법, 네비게이션 시스템을 위한 처리 방법,지도 데이터 관리 장치, 지도 데이터 관리 프로그램, 및컴퓨터 프로그램
CN113748314B (zh) 交互式三维点云匹配
US11983010B2 (en) Systems and methods for automated testing of autonomous vehicles
JP3842799B2 (ja) 地図データ提供装置
CN1965212A (zh) 地图更新系统
US11480964B2 (en) Distributed system execution using a serial timeline
US9243926B2 (en) Electronic map system
US11847385B2 (en) Variable system for simulating operation of autonomous vehicles
CN109669450A (zh) 下车位置设定装置
US20220092233A1 (en) Architecture for configurable distributed system simulation timing
EP3246662A1 (en) Poi information provision server, poi information provision device, poi information provision system, and program
WO2022067295A1 (en) Architecture for distributed system simulation timing alignment
WO2022049022A1 (en) Generation and provision of control data for vehicle automated driving systems
WO2020139959A1 (en) Architecture for simulation of distributed systems
CN103512578A (zh) 用于按类别更新对象的导航装置及其更新方法
EP3961153A1 (en) Navigation system with high definition mapping mechanism and method of operation thereof
EP2518446A1 (en) Vehicle Navigation System Indicating a Lane Marking
US20170154386A1 (en) Vehicle manufacture tracking
US20220092232A1 (en) Architecture for distributed system simulation with realistic timing
US20100161212A1 (en) Road guidance service method and navigation system for implemening the method
JP2006017464A (ja) 車載情報提供システム
JP6747097B2 (ja) サーバ装置及びコンピュータプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant