具有基于主方向的坐标校正的航位推算引导系统和方法与流程

文档序号:35968990发布日期:2023-11-09 09:42阅读:53来源:国知局
具有基于主方向的坐标校正的航位推算引导系统和方法与流程
具有基于主方向的坐标校正的航位推算引导系统和方法
本技术是申请日为2019/11/26,国家申请号为201911173234.5,题为“具有基于主方向的坐标校正的航位推算引导系统和方法”的发明专利申请的分案申请。
技术领域
1.本公开总体上涉及航位推算(dead-reckoning)引导系统,并且更具体地涉及确定要应用于当前坐标的坐标校正的系统,其中,坐标校正是根据所行驶的距离和主方向来确定的。
附图说明
2.现将通过示例的方式参照附图描述本发明,其中:
3.图1是根据一个实施例的用于车辆的航位推算引导系统的图;
4.图2是根据一个实施例的图1的系统所遇到的场景;
5.图3a和图3b组合地示出了根据一个实施例的操作图1的系统的方法。
具体实施方式
6.现在将详细参照实施例,在附图中图示出这些实施例的示例。在以下详细描述中,阐述了众多具体细节以便提供对各个所描述的实施例的透彻理解。然而,对本领域的普通技术人员将显而易见的是,可在没有这些特定细节的情况下实践各个所描述的实施例。在其他实例中,并未对公知方法、程序、组件、电路以及网络进行详细描述,以免不必要地使实施例的各方面模糊。
[0007]“一个或多个(one or more)”包括:由一个要素执行的功能、由不止一个要素例如以分布式方式执行的功能、由一个要素执行的若干功能、由若干要素执行的若干功能、或上述的任何组合。
[0008]
还将理解的是,虽然在一些实例中,术语第一、第二等在本文中用于描述各种要素,但这些要素不应受这些术语的限制。这些术语仅用于将一个要素与另一个区别开来。例如,第一接触件可被称为第二接触件,并且类似地,第二接触件可被称为第一接触件,而没有背离各个所描述的实施例的范围。第一接触件和第二接触件二者都是接触件,但它们并非相同的接触件。
[0009]
在对本文中各个所描述的实施例的描述中所使用的术语仅出于描述实施例的目的,而非旨在构成限制。如在对各种所描述的实施例和所附权利要求的描述中所使用的,单数形式“一(a)”、“一(an)”和“所述(the)”旨在也包括复数形式,除非上下文以其他方式明确指出。还将理解的是,本文所使用的术语“和/或”是指并且包含相关联的所列项目中的一个或更多个的所有可能的组合。将进一步理解的是,术语“包括(include)”、“包括有(including)”、“包含(comprise)”和/或“包含有(comprising)”当在本说明书中使用时指明所陈述的特征、整数、步骤、操作、要素和/或组件的存在,但并不排除一个或多个其它特征、整数、步骤、操作、要素、组件和/或其群组的存在或添加。
[0010]
如本文中所使用的,取决于上下文,术语“如果(if)”可选地被解释为表示“当

时或“在

后”或“响应于确定”或“响应于检测到”。类似地,取决于上下文,短语“如果被确定”或“如果检测到(所陈述的状况或事件)”被可选地解释为表示“在确定

后”或“响应于确定”或“在检测到(所陈述的状况或事件)后”或“响应于检测到(所陈述的状况或事件)”。
[0011]
图1示出了航位推算引导系统10(在下文中通常被称为系统10)的非限制性示例,该系统10用于跟踪车辆(例如,主车辆12)的位置坐标。如本文中所使用的,航位推算是在主车辆12移动时跟踪位置坐标的手段,该航位推算在更传统的位置跟踪手段不是选项或暂时不可用时是尤其有用的,该更传统的位置跟踪手段使用位置检测器来从作为例如全球导航卫星系统(gnss)(该gnss可被一些人称为全球定位系统(gps))的一部分的卫星接收信号以确定坐标(例如,纬度、经度、海拔)。如本领域技术人员将认识到的,gps有时是不可用的,因为例如主车辆12行驶在隧道或城市峡谷(urban canyon)中,在该隧道或城市峡谷中,来自卫星的信号被阻挡和/或反射,从而导致由多路径或设备故障引起的位置模糊。就是说,航位推算引导可以被表征为gps的备用,但是,应认识到这并不是系统10可能有用的唯一情况。
[0012]
主车辆12可被表征为自动车辆,并且可被一些人称作按需自动移动(amod)类型的车辆。如本文中所使用,术语自动车辆可应用于主车辆12正以自动模式14(即,完全自主模式)被操作的情况,其中主车辆12的操作人员(未示出)可以仅指定目的地以便操作主车辆12。然而,完全自动化不是必需的。设想了本文中所呈现的教导在主车辆12以手动模式16操作时是有用的,在该手动模式16下,自动化的程度或水平可能仅是向大体上控制着主车辆12的转向、加速器和制动器的人类操作员提供可听或可视信息。例如,系统10可以仅仅在需要时指示至目的地的路线的即将到来的转弯来帮助人类操作者。
[0013]
系统10包括车轮传感器18的一个或多个实例,该车轮传感器18可操作用于检测主车辆12的一个或多个车轮的移动,这指示或建议主车辆12的移动。适于用作车轮传感器18的设备是已知的并且可商购获得。这样的设备可以输出车轮信号20的一个或多个实例,该车轮信号20的一个或多个实例可以是电脉冲串或运转(tick)串(即,电脉冲系列或运转系列),其中每个脉冲或运转或转变指示车轮已经旋转了某个已知量,例如,五度角(5
°
∟)。如将认识到的,如果车轮或轮胎的直径或周长是已知的,则可以根据车轮信号20确定主车辆12的车辆速度22和/或行驶距离24。行驶距离24可以是在两个点之间行驶的直线距离,而无关乎横摆角速度(yaw-rate),即无关乎两个点之间的行驶路径中的任何曲率、或弧距(如果横摆角速度不为零(即,两个点之间的路径是弯曲的)的话)。
[0014]
系统10可以包括惯性测量单元26(imu 26),该惯性测量单元26可以配备有例如但不限于陀螺仪(例如,电子陀螺仪)、一个或多个加速度计(例如,诸如侧向加速度计之类的线性加速度计的一个或多个实例)、和/或诸如横摆传感器之类的角度加速度计的一个或多个实例。如本领域技术人员将认识到的,imu 26和构成imu 26的设备的合适示例是已知的并且可商购获得的。
[0015]
系统10包括控制器电路30,该控制器电路30经由输入28与一个或多个车轮传感器通信。该通信可以是通过电线、光缆或无线通信的方式进行。控制器电路30(以下有时称为控制器30)可以包括处理器32的一个或多个实例,诸如,微处理器或者诸如包括如对本领域的技术人员显而易见的用于处理数据的专用集成电路(asic)的模拟和/或数字控制电路系
统之类的其他控制电路系统的一个或多个实例。尽管本文描述的系统10通常参照具有控制器30的单个实例来被描述,但是所认识到的是,控制器30的功能可以在控制器的若干实例之间共享或分布,该控制器的若干实例各自被配置用于某个特定任务。在下文中,对被配置成用于某些事情的控制器30的任何引用也将被解释为建议该处理器32也可以被配置成用于相同的事情。还认识到在控制器30的任何实例中可能存在处理器的多个实例。控制器30可包括存储器34,即非瞬态计算机可读存储介质,包括非易失性存储器,诸如用于存储一个或多个例程、阈值和捕获到的数据的电可擦除可编程只读存储器(eeprom)。存储器34可以是处理器32的一部分,或者是控制器30的一部分,或者与控制器30分开,诸如存储在云中的远程存储器。如本文所描述的,一个或多个例程可由控制器30或处理器32执行以执行用于基于由控制器30接收到的信号来确定主车辆12的位置坐标的步骤。
[0016]
控制器电路30被配置成(例如,被编程为)基于来自车轮传感器18的一个或多个实例的车轮信号20来确定主车辆12的车辆速度22,该车辆速度22可以在自主车辆12的先前坐标38被确定以来的时间间隔36内被平均,或可以是该时间间隔36期间的样本中的瞬时最小或最大值。例如,控制器30可以在时间间隔36期间累积车轮运转或车轮信号转变或对其进行计数,并随后将车轮运转的计数乘以米/运转值(基于车轮/轮胎的周长的预定值),随后除以时间间隔36,以确定车辆速度22(以例如米/秒或千米/时为单位)。替代地,可以基于通过激光雷达/雷达标测检测到的物体的相对位置来计算车辆速度22。通过与以程序方式被确定为固定的物体相比观看车辆的移动,可以计算出车辆速度22或所行驶的距离。
[0017]
由于确定了主车辆12的先前坐标38,因此控制器电路30还被配置成(例如,被编程为)确定主车辆12在时间间隔36期间的行驶距离24。如本文中所使用的,先前坐标38是主车辆12在时间间隔36的起始或开始处(即在一段行驶的起始或开始处)的位置坐标。如稍后将更详细解释的,本文所述的系统10可使用来自imu 26和/或车轮传感器18的数据,用以使用已知的航位推算技术来更新或跟踪当主车辆12移动时主车辆12的位置坐标。也就是说,来自imu 26和/或车轮传感器18和/或激光雷达/雷达单元的数据可用于确定所行驶的距离以及方向或航向(heading)的变化,以生成与主车辆的移动相对应的虚拟面包屑踪迹(bread-crumb trail)。定期地(例如,在时间间隔36的结束处),系统10可以将位置坐标保存为当前坐标40,并且可能地将坐标校正42应用于当前坐标40以最小化可能通过使用来自imu 26和/或车辆信号20的数据跟踪主车辆12的位置坐标而导致的误差。即,在行驶的多个段上跟踪主车辆12的行驶路径,其中,基于时间间隔36确定或选择每个段的开始和结束。分析每个段以确定是否可以或应该进行某种形式的校正或误差降低以防止位置坐标中的误差的长期累积。可以使用坐标校正42来校正一个段的结束处的当前坐标40,并且随后将该值(当前坐标40或当前坐标40加上全部或部分的坐标校正42(如果被计算了的话))用作行驶的下一个后续段的先前坐标38。可以设想,与当前坐标40相关联的航向也可以被校正或调整以用于行驶的后续段。
[0018]
图2示出了系统10可能遇到的场景44的非限制性示例。已经观察到,道路通常与罗盘的主方向46(例如,北/南或东/西)对齐。这样,如果满足某些标准或条件,则系统10可以基于以下假设来确定坐标校正42:主车辆12所行驶的道路与主方向46的四个选项(北、南、东或西)中的一个对齐。在图2中,主方向为东,从而假设了其中图2的北是向上的地图的典型取向。在时间t1处,主车辆12处于t1

t2时间间隔的先前坐标38处。可以基于但不限于
gps(如果在时间t1处或紧接在时间t1之前是可用的话)、或基于使用航位推算确定的在前坐标、或基于对地标的光学检测来确定t1处的先前坐标38的值,或者如果没有其他手段可用于确定主车辆12在t1处的位置,则将t1处的先前坐标38的值简单地设置为零(0,0,0)。
[0019]
为了确定在t2处的当前坐标40,系统10或控制器30被配置成用于确定主车辆12在自主车辆12的先前坐标38被确定以来的时间间隔36期间的行驶航向48,即从先前坐标38到当前坐标40的方向。作为示例而非限制,行驶航向48可以最初基于来自罗盘读数的先前航向或来自t1之前的gps指示的航向。在t1之后,并且可选地,如果不再能够依靠gps,则可以基于检测到的由来自imu 26和/或车轮传感器18的数据所指示的方向的变化来调整或更新行驶航向48。例如,imu可以指示横摆角速度50的非零值,并且该数据可以用于确定行驶航向48与先前航向相比的变化。可以直接利用imu 26的陀螺仪测量横摆角速度50,或者使用其他手段来估计横摆角速度50,所述其他手段诸如,指示主车辆12的车轮的转向角处于除了直的之外的某个角度、或者由imu 26的侧向加速度计所指示的侧向加速度、和/或指示左车轮正以与右车轮不同的速度旋转的车轮运转差异。控制器30随后基于行驶距离24和行驶航向48确定主车辆12的当前坐标40(t2处)。
[0020]
在某些情况下,假设主车辆12在与主方向46的实例对齐的道路上行驶可能是不利的,因此确定用于坐标校正42的值可能是不利的。当发生这种情况时,更好的是仅接受因使用航位推算来跟踪主车辆12的位置坐标而引起的任何误差。一种避免依赖航位推算情况可能是当主车辆12移动缓慢时,因为imu 26中的传感器可能不够灵敏且不够准确以提供具有足够信噪比的数据。这样,一项可能的测试是确定车辆速度22何时大于速度阈值52。如果车辆速度22大于速度阈值52,则确定用于坐标校正42的值可能是有利的。
[0021]
另一种情况是:仅在与主方向46的偏差或差异大于系统噪声,但仍与主方向46足够接近以表明道路可能与主方向46对齐时,才确定或应用坐标校正42。这样,控制器30(或处理器32)被配置成确定行驶航向48何时与主方向46(北、南、东、西)相差大于噪声阈值54(例如,两度角)并且小于角度阈值56(例如,十五度角)两者。即,行驶航向48与主方向46的绝对差值必须在噪声阈值54的值与角度阈值56的值之间,以使坐标校正42有用。
[0022]
控制器30被配置成用于:响应于确定车辆速度22大于速度阈值52并且行驶航向48与主方向46相差大于噪声阈值54并且小于角度阈值56两者,确定要应用于当前坐标40的坐标校正42的值,以便校正或补偿由于正使用航位推算来更新位置坐标而导致的位置坐标中的潜在误差。在该示例中,根据(即基于)但不限于行驶距离24、行驶航向48以及主方向46来确定坐标校正42。
[0023]
在坐标校正42被确定并被应用于当前坐标40之后,该校正的结果可以用作t2至t3时间间隔的先前坐标38a,并且重复确定从先前坐标38a至t3处的后续坐标的航向和距离的过程,并且另一坐标校正可被确定。即,在每个时间间隔36的结束处,可以确定并应用坐标校正的新的值,以最小化由航位推算引起的误差。其他因素可影响坐标校正42的值,下面描述该其他因素中的一些。
[0024]
控制器30或处理器32还可被配置成或被编程为确定在时间t2与t3之间的时间间隔36期间的校正航向48a,该校正航向48a可在行驶的后续段期间用作行驶航向48的值。可以使用已知的几何技术根据或基于行驶距离24和坐标校正42来计算校正航向48a,所述几何技术可以包括使用以下描述的技术/算法的可选加权。
[0025]
并非将坐标校正42的应用限制为二进制判定(即,应用坐标校正42的“是”或“否”判定),而是提议对坐标校正42加权或混合(blend)或部分应用到当前坐标40。在一个实施例中,主车辆12的横摆角速度50用于确定加权因子58,以应用于(例如,乘以)坐标校正42。例如,当横摆角速度相对低(例如,小于每秒三度角)并且表现出多个符号(sign)变化(例如,多于两个符号变化)时,可以在时间间隔36期间将加权因子58设置为一(1)。即,根据加权因子58来确定坐标校正42,该加权因子58被表征为取决于主车辆12的横摆角速度50。
[0026]
可以基于来自但不限于横摆传感器、侧向加速度计、方向盘角度和/或左/右车轮速度差的信号中的任何一个或组合来确定横摆角速度50。加权因子58可被表征为是成反比的,例如,与1/横摆或1/横摆^2成比例。还可以设想,加权因子58的计算可以包括偏移和/或限制。例如,对于小于每秒三度角的横摆角速度,可以将加权因子58设置为一(1),对于大于每秒十五度角的横摆角速度,可以将加权因子58设置为零(0),并且随后使用1/横摆或1/横摆^2函数以针对在每秒三度角与每秒十五度角之间的横摆角速度将加权因子从1平滑地转变到0。即,控制器电路30(或处理器32)被配置成当横摆角速度50大于横摆阈值60(每秒十五度角)时,将加权因子58设置为零(0)。将加权因子58设置为零已经被一些人描述为冻结坐标校正过程。
[0027]
如上所述,如果在时间间隔36期间左车轮速度与右车轮速度始终不同(例如,在该时间间隔期间左车轮速度62(例如,左前轮的旋转速度)比右车轮速度64(例如,右前轮的旋转速度)大超过差异阈值66),则在假设左车轮和右车轮的周长基本上相等的情况下,可以指示主车辆正执行右转弯。因此,控制器电路30可以被配置成基于左车轮信号20a确定左车轮速度62,基于右车轮信号20b确定右车轮速度64,并且在左车轮速度62与右车轮速度64相差大于差异阈值66时将加权因子58设置为零。在基于车轮信号20确定车辆速度22的情况下,可以为每个单独的车轮确定每个脉冲或每个运转的距离值,可以将该每个脉冲或每个运转的距离值乘以车辆速度22以确定在时间间隔36期间由每个车轮所行驶的距离。可以通过确定在直线行驶时来自gps的所行驶的距离,并随后将该距离除以在相同的时间段期间在左车轮信号20a和右车轮信号20b中看到的脉冲的总数来进行校准这些距离/脉冲值。随后可以将该值输入具有单位增益的低通滤波器,并且当控制器30没有接收到脉冲时不进行计算。
[0028]
认识到,当主车辆12沿相对直的线行驶时,一些变量(诸如,横摆角速度50和/或左车轮速度62与右车轮速度64之间的差异)的符号(例如,+、-)可能会在这些值围绕零抖动时波动。这样,在一个实施例中,控制器电路30可以被配置成用于确定横摆角速度50的横摆符号68以及左车轮速度62与右车轮速度64之差的车轮符号70,并随后在横摆符号68与车轮符号70不匹配时将加权因子58设置为零。这假设横摆符号68和车轮符号70被确定为使得例如在主车辆正执行右转弯时两者均为正(+)。
[0029]
图3a和图3b示出了操作航位推算引导系统10的方法100的非限制性示例。
[0030]
步骤105,确定先前坐标,可以包括:使用在gps变得不可用之前使用gps确定的最新坐标,或者接受使用航位推算确定的位置坐标,该位置坐标可以已用或不用坐标校正42调整,如上所述。先前坐标38被用作时间间隔36的下一个实例期间的一段行驶的起点,其中,使用航位推算来跟踪主车辆12的位置坐标。如本领域技术人员将认识到的,航位推算依赖于车辆数据(诸如,来自imu 26和/或车轮传感器18的数据)来跟踪/更新主车辆12的坐标
位置。
[0031]
步骤110,接收车轮信号(多个),可以包括从一个或多个车轮传感器18接收车轮信号20,该车轮传感器20可操作用于检测主车辆12的一个或多个车轮的移动。车轮信号20可以通过有线或无线方式被传送给控制器30。在一个实施例中,车轮信号20由脉冲串或脉冲序列组成,其中每个脉冲指示某个已知的车轮旋转量,例如,五度。
[0032]
步骤115,确定行驶距离,可以包括确定主车辆12在自主车辆12的先前坐标38在步骤105中被确定以来经过的时间间隔36期间的行驶距离24。例如,可以基于在时间间隔36期间从车轮传感器18接收到的脉冲的数量来确定行驶距离24。
[0033]
步骤120,确定车辆速度,可以包括基于来自一个或多个车轮传感器18的车轮信号20来确定主车辆12的车辆速度22。车辆速度22可以是但不限于是,在时间间隔36内平均的平均值、或者在时间间隔36期间检测到的最大值或最小值。
[0034]
步骤125,确定行驶航向,可以包括确定主车辆12在自主车辆12的先前坐标38被确定以来的时间间隔36期间的行驶航向48。行驶航向48可以基于主车辆12在先前坐标38处的航向或使用主车辆12在先前坐标38处的航向来发起,并随后在时间间隔36期间响应于从imu 26和/或车轮传感器18接收到的信号(例如,检测到的横摆和/或侧向加速度)而被更新。
[0035]
步骤130,确定当前坐标,可以包括基于行驶距离24和行驶航向48确定主车辆12的当前坐标40。当前坐标40与先前坐标38加上指示由imu 26和/或车轮传感器18检测到的移动的任何航位推算更新相对应。如本文其他地方所描述的,可以预期的是,这些航位推算更新可能包括一些误差,在某些情况下,这些误差可以如下所述被校正或减少。
[0036]
步骤135,车辆速度22》速度阈值?,可包括确定在步骤120中确定的车辆速度22何时大于速度阈值52(例如,十五千米每小时(15kph)),该速度阈值52是存储在控制器30中的校准值。可以使用经验测试和/或工程判断来确定对用于速度阈值52的值的确定。如果车辆速度太低,即小于速度
[0037]
步骤140,|行驶航向

主方向|》噪声阈值并且|行驶航向

主方向|《角度阈值?,可包括确定行驶航向48何时与主方向46相差大于噪声阈值54并且小于角度阈值56两者。执行此测试是为了避免在如下情况下对位置坐标应用校正:行驶航向48非常靠近主方向46以至于大部分差异可能是噪声,以及行驶航向48远离主方向46,主车辆的道路或行驶路径很可能与主方向46不一致。
[0038]
步骤145,确定左车轮速度以及右车轮速度,该步骤145是可选步骤,可包括基于左车轮信号20a确定左车轮速度62,基于右车轮速度64确定右车轮速度64,并且在左车轮速度62与右车轮速度64相差大于差异阈值66时将加权因子58设置为零。如果左车轮速度62和右车轮速度64相差大于差阈值66,则指示主车辆正在弯曲的路径(即,不是直的路径)上行驶,因此不能基于主车辆12正沿主方向46行驶的假设来确定坐标校正的值。
[0039]
步骤150,确定横摆角速度,可以包括从imu 26和/或车轮传感器18接收数据,并随后基于该数据计算横摆角速度50。横摆角速度50可以在该时间间隔期间被计算一次或多次,并且可以是采样横摆角速度的平均值或检测到的采样横摆角速度中的最大值或最小值。
[0040]
步骤155,横摆角速度>横摆阈值?,可包括当横摆角速度50大于横摆阈值60(例
如,每秒十五度角)时,将加权因子58设置为零(参见步骤165),因为主车辆12正在执行转弯并且坐标校正42是基于如下的假设或条件被确定的:主车辆12沿相对直的线并且在大体上与主方向46对齐的方向或航向上行驶。
[0041]
步骤160,横摆符号=车轮符号?,该步骤160是可选测试,可包括确定横摆角速度50的横摆符号68以及左车轮速度62与右车轮速度64之差的车轮符号70,并在横摆符号68与车轮符号70匹配时将加权因子58设置为零(步骤165)。横摆符号68与车轮符号70匹配可以指示主车辆12正沿曲线行驶,因此不应使用用于航位推算的坐标校正42。
[0042]
步骤165,设置加权因子=0,可以包括当检测到步骤155和160中的条件时将加权因子58设置为零。
[0043]
步骤170,确定加权因子,可以包括基于诸如横摆角速度50之类的多个因素来计算加权因子58。
[0044]
步骤175,确定坐标校正,可包括:响应于确定车辆速度22大于速度阈值52并且行驶航向48与主方向46相差大于噪声阈值54并且小于角度阈值56两者,而确定要应用于当前坐标40的坐标校正42。根据行驶距离24和主方向46确定坐标校正42。例如,步骤175可以包括根据加权因子58来确定坐标校正42,该加权因子58被表征为取决于主车辆12的横摆角速度50。
[0045]
步骤180,设置先前坐标=校正坐标,可以包括用在t2处确定的校正坐标来代替用于t1至t2时间间隔的先前坐标38,并随后将该值用作t2至t3时间间隔的先前坐标38a。
[0046]
本文描述的是第一设备30,该第一设备30包括:一个或多个处理器32;存储器34;以及存储在存储器34中的一个或多个程序105-180。一个或多个程序105-180包括用于执行方法100中的全部或部分的指令。此外,本文中所描述的是非瞬态计算机可读存储介质34,该非瞬态计算机可读存储介质34包括用于由第一设备30的一个或多个处理器32执行的一个或多个程序105-180,该一个或多个程序105-180包括指令,当由一个或多个处理器32执行时,该指令致使该第一设备执行方法100中的全部或部分。
[0047]
相应地,提供了航位推算引导系统(系统10)、用于系统10的控制器30、以及操作系统10的方法100。系统10和方法100提供了这样的手段,通过该手段,在位置坐标(例如,纬度、经度、海拔)的航位推算更新期间产生至少一些误差。
[0048]
尽管已经根据本发明的优选实施例描述了本发明,然而并不旨在受限于此,而是仅受所附权利要求书中所阐述的范围限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1