CN116745180A - 使用停止轨迹的自动化控制 - Google Patents

使用停止轨迹的自动化控制 Download PDF

Info

Publication number
CN116745180A
CN116745180A CN202280009573.3A CN202280009573A CN116745180A CN 116745180 A CN116745180 A CN 116745180A CN 202280009573 A CN202280009573 A CN 202280009573A CN 116745180 A CN116745180 A CN 116745180A
Authority
CN
China
Prior art keywords
trajectory
computers
mobile machine
stop
stopping
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.)
Pending
Application number
CN202280009573.3A
Other languages
English (en)
Inventor
F·A·穆吉卡
M·P·科洛斯基
J·M·维多
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.)
Apple Inc
Original Assignee
Apple 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 Apple Inc filed Critical Apple Inc
Publication of CN116745180A publication Critical patent/CN116745180A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/617Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T2210/00Detection or estimation of road or environment conditions; Detection or estimation of road shapes
    • B60T2210/30Environment conditions or position therewithin
    • B60T2210/32Vehicle surroundings
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • B60W2050/0292Fail-safe or redundant systems, e.g. limp-home or backup systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2720/00Output or target parameters relating to overall vehicle dynamics
    • B60W2720/10Longitudinal speed
    • B60W2720/106Longitudinal acceleration

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

在实施方案中,自动化控制器周期性地生成停止轨迹并且控制致动器以遵循这些停止轨迹。只要继续生成新的停止轨迹,该自动化控制器就可以遵循由每个停止轨迹的第一部分形成的目的地轨迹。如果在一段时间内没有生成停止轨迹(例如,由于生成这些停止轨迹的一个或多个计算机中的故障),则该自动化控制器可继续遵循最近的停止轨迹并使该移动机器停止。

Description

使用停止轨迹的自动化控制
技术领域
本文描述的实施方案涉及自动化移动机器控制,并且更具体地涉及使用停止轨迹对移动机器进行控制。
背景技术
随着更多的公司参与自动化解决方案的开发,移动机器自动化正在快速发展。通常,移动机器自动化可能需要对移动机器操作环境(例如,移动机器所遵循的途径、其他移动机器、静止对象、路径中的障碍物等)进行高度准确的感测。当移动机器内的部件发生故障时,也要求移动机器的控制机构具有高度准确性并且能够抵抗故障,从而保持对移动机器的控制并继续操作或使移动机器停止。
理想地,移动机器从一个位置出发并顺利到达目的地位置,在一些情况下,将有效载荷运送到目的地,而没有任何明显的意外事件或行为的迹象。为了支持该目标,通常在自动化控制器中采用高性能计算机***来感测环境、规划轨迹并通过控制移动机器来实现轨迹。如果发生故障,则自动化控制器可使移动机器停止。然而,确定***中已经发生故障是复杂并且难以实现的。如果自动化控制器过于保守并且检测故障的频率比故障实际发生的频率更高,则它可能表现出意想不到的行为并且有效载荷可能被延迟或中断。另一方面,如果自动化控制器过于积极并且在故障实际发生时没有检测到故障,则移动机器可能无法完成其任务。
附图说明
以下详细描述参考附图,现在对这些附图进行简要描述。
图1是自动化控制器的一个实施方案的框图。
图2是示出图1所示的自动化控制器的动作部分的一个实施方案的操作的流程图。
图3是示出图1所示的控制器的规划部分的一个实施方案的操作的流程图。
图4是实现异常停止(ES)特征的自动化控制器的另一个实施方案的框图。
图5是示出自动化控制器的动作部分的另一个实施方案的操作的流程图。
图6是目的地轨迹和周期性停止轨迹的一个实施方案的框图。
图7是示出停止轨迹的一个实施方案的框图。
图8是示出停止轨迹的另一个实施方案的框图。
图9是示出异常停止感测的框图。
图10是计算机可访问存储介质的实施方案的框图。
尽管本公开中所述的实施方案可受各种修改形式和另选形式的影响,但其具体实施方案在附图中以举例的方式示出并将在本文中详细描述。然而,应当理解,附图和对其的具体实施方式不旨在将实施方案限制为所公开的特定形式,而相反,本发明旨在涵盖落入所附权利要求书的实质和范围内的所有修改、等同物和另选方案。本文所使用的标题仅用于组织目的,并不旨在用于限制说明书的范围。
具体实施方式
图1是自动化***10的一个实施方案的框图。在所示实施方案中,***10可包括多个传感器12、一个或多个第一计算机14、一个或多个第二计算机16以及多个致动器18。传感器12耦接到计算机14,该计算机耦接到计算机16。计算机16耦接到致动器18。
在一些实施方案中,计算机14(例如,从用户输入设备、存储设备、网络接口等)接收目的地。在一些实施方案中,自动化***10使用致动器18将移动机器从其当前位置引导到目的地。例如,全球定位***(GPS)或其他地理位置数据(诸如来自蜂窝塔的三角测量等)可用于确定当前位置,并且地图信息可与各种导航算法一起使用以确定从当前位置到目的地的路线。在一实施方案中,当前环境条件(例如,交通条件、天气条件、路线中的潜在障碍物等)也可在确定路线时纳入考虑,从而尝试最小化行进时间。
更通常地,在一些实施方案中,自动化***10可被配置为控制移动机器在空间中的运动。移动机器可以是能够进行空间移动的任何机器,即使机器能够在其中移动的空间受到限制。例如,移动机器可以是在有限空间内执行任务的机器人。机器人可被固定到地板上,但可具有(在自动化***10的控制下)自动执行所定义的任务(诸如组装、焊接、涂漆等)的附件(例如“臂”)。机器人可以是完全移动的,并且可被设计成在仓库、工厂等中将有效载荷从一个位置移动到另一个位置。机器人可被配置为执行包括运动的任务(例如,自动地对地板进行真空吸尘的真空吸尘器,其中有效载荷可以是由真空吸尘器收集的垃圾;修剪草坪的自动割草机;等等)。移动机器可包括任何类型的基于陆地、水、空中或太空的运载工具,诸如由内燃汽油发动机、柴油发动机、混合动力发动机、全电动发动机等提供动力的汽车。移动机器可包括运输货物的皮卡车和较大卡车(例如,“半拖车”)。移动机器可包括公共汽车和其他公共交通工具。移动机器可包括摩托车。基于水的移动机器可包括小船、轮船、潜艇、帆船等。基于空中的移动机器可包括飞行器(例如,飞机、无人驾驶飞机、飞艇、直升机等)。基于太空的运载工具可包括火箭、太空舱、卫星、空间站等。
移动机器可在自动化***10的控制下沿着路径移动。路径可以是从当前位置到目的地的任何允许的路线,并且可取决于移动机器的特性。例如,路径可以是基于陆地的路径(例如,道路、人行道、限定在建筑物内的路径、覆盖规定区域的途径等)、基于水的路径(例如,通道、航道、河床等)、基于空中的路径(例如,机械臂的移动方向、空中行进路线等)或基于太空的路径(例如,轨道、发射飞行途径等)。路径可包括移动机器可在其中行进的一个或多个途径(例如,道路的车道、多个运输车道、仓库地面上的平行途径、空中飞行途径、轨道途径等)。
自动化***10可被配置为启动移动机器中的运动,使用传感器12(以“传感器数据”的形式与图1中的计算机14通信)感测移动机器周围区域中的路径以及各种其他对象。对象可包括其他移动机器、行人、动物、固定对象诸如建筑物、标志、树木、其他大型植物群等、其他移动对象、用于内部路径的家具和其他室内陈设等。自动化***10可被配置为规划目的地轨迹20,该目的地轨迹将移动机器朝向目的地引导,避开由传感器12检测到的其他对象(例如,障碍物或阻碍物)。目的地轨迹可能不是整个路线,而可能是针对近期而规划的轨迹,但通常沿着该路线到达目的地。目的地轨迹可针对未来的几秒或几分钟进行规划,并且可基于来自传感器12的附加传感器数据和移动机器朝向目的地的进展而进行周期性地更新。目的地轨迹有时也被称为“长期轨迹”。
除了目的地轨迹20之外,当移动机器沿着目的地轨迹移动时,自动化***10还可确定多个停止轨迹。每个停止轨迹可对应于沿着目的地轨迹的点,并且可在***中存在故障并且不能继续更新目的地轨迹和/或不能生成新的停止轨迹的情况下将移动机器从当前点引导到停止点。例如,传感器12可能全部或部分地失效,使得自动化***10具有较少的关于附近对象的信息。计算机14可能全部或部分地失效,从而阻止处理传感器数据以产生新的停止轨迹和更新的目的地轨迹。传感器12与计算机14之间或计算机14与计算机16之间的通信机制可能失效。在一些实施方案中,移动机器自身中的故障可被检测到并导致停止。故障可能是暂时的(例如,传感器阻塞、计算机***14崩溃、部件之间接口上的噪声等)或更永久的硬件故障。“停止”通常可指停止移动机器运动,而不与其他对象碰撞(至少如最近经由传感器12检测到的)或以其他方式损坏移动机器或危及移动机器的有效载荷(如果有的话)。在一个实施方案中,停止可被规划为平稳的,从而以不会扰动或损坏有效载荷的合理速度减速并移动到停止点而不需要任何快速的机动诸如转向等。如果位置允许,则停止点可被规划为离开活动路径(例如,在停止区中),以便不妨碍可能在活动路径上的其他移动机器的移动。如果情况不允许在非行进区域(诸如停止区)中停止,则可以使用在活动路径中停止。
计算机14可被配置为将停止轨迹传输到计算机16,该计算机可被配置为将该轨迹处理成用于致动器18的致动器命令。由于不提供目的地轨迹,计算机16可被简化并且不需要作出关于目的地轨迹何时不再可用(例如,故障已经发生)以及何时需要切换到停止轨迹的决定。计算机16可简单地遵循最近提供的停止轨迹。如果以预期时间间隔(例如,大约100毫秒间隔,或10毫秒间隔,或由***指定的任何时间间隔)提供停止轨迹,则在该间隔内停止轨迹与目的地轨迹之间的差异可以是最小的(例如,小于预定义阈值),并且因此只要没有故障发生就可以遵循目的地轨迹。如果故障确实发生,则计算机16不接收更新的停止轨迹并且可遵循最近提供的轨迹以使移动机器停止。
如图1所示,传感器数据处理进入移动机器控制可以有三个阶段:感测(附图标记22)、规划(附图标记24)和动作(附图标记26)。计算机14可处理感测和规划阶段22和24,并且计算机16可处理动作阶段26。计算机14可从传感器12接收传感器数据并且可处理该数据以生成周围环境和移动机器自身的模型。可通过向规划阶段提供“世界估计”来描述周围环境(例如,对象的位置和标识、路径的位置等)。另外,可生成运动中的对象(和/或移动机器自身)的运动估计,使得规划阶段24可在移动机器向前移动时针对对象的移动进行调整。由传感器12提供的传感器数据可以是原始传感器数据,或者可在传感器12处进行本地处理以产生对象列表和与移动机器的相对位置,或者它们的任何组合。例如,在一个实施方案中,传感器可包括相机、无线电检测和测距(雷达)传感器以及光检测和测距(激光雷达)传感器。雷达和激光雷达传感器数据可被预处理以识别对象,而相机数据可提供原始数据。其他实施方案可实现不同传感器以及经预处理的和/或原始传感器数据的不同组合。
在规划阶段24中,计算机14可使用世界估计、运动估计和目的地信息来更新目的地轨迹20并生成另一停止轨迹。目的地轨迹20可被保持在计算机14本地,而停止轨迹可被传输到计算机16。在一个实施方案中,目的地轨迹20可以不被明确地生成和存储,而是可以是确定停止轨迹的因素。
在动作阶段26中,计算机16可处理当前(最近接收到的)停止轨迹以产生致动器命令来控制移动机器中的致动器。例如,可提供加速、减速和引导(例如,转向)致动器。
在实施方案中,计算机14可以是一个或多个高性能计算机,其实现显著的处理能力以执行感测阶段22和规划阶段24。例如,计算密集型神经网络可用作感测阶段22和/或规划阶段24的一部分,并且计算机14可包括被设计成提供神经网络的高性能处理的神经网络加速器。在实施方案中,可实现一定量的冗余以提供阶段中的失效降级或失效运行操作。
计算机16可能性能稍低,但却是实现不同水平冗余的环境加固计算机。在各种实施方案中,计算机16可以失效运行或部分失效运行。
传感器的任何组合可被放置在移动机器中的各个位置处,并且可被配置为监视移动机器周围的不同视场。例如,可包括诸如相机传感器(相机)、雷达传感器、激光雷达传感器等的传感器。相机可以是捕获视场的可见光图像的任何种类的传感器。相机的输出可以是指示在由相机捕获的帧(或图片)内的该位置处的光的颜色/强度的像素的集合。其他类型的相机可以捕获其他波长的光(例如,红外相机)。如果感测波长在环境中是普遍的并且由环境中的对象反射(例如,可见光)或者由对象主动发射,则相机传感器可以是被动传感器。如果相机主动发射光并观察任何反射光(例如,红外光),则给定的相机传感器可以是主动传感器。
雷达传感器可以是主动传感器,其发射无线电频谱中的电磁波(无线电波)和/或微波频谱中的电磁波,并且观察无线电波/微波的反射以检测反射无线电波的对象。雷达可用于检测对象的范围(例如,位置和距离)、对象的速度等。激光雷达传感器也可以是发射具有光谱中的波长的电磁波(光波)并且观察所发射的波的反射的主动传感器。例如,激光雷达传感器可以从激光器发射红外波脉冲并检测反射脉冲。其他激光雷达传感器可使用发射其他波长的光诸如紫外光、可见光、近红外光等的激光器。像雷达一样,激光雷达传感器可以用于检测距离、速度等。作为上述传感器的补充和/或作为上述传感器的替代,可使用除上述传感器之外的附加传感器(例如,超声波等)。
根据本说明书,在一个实施方案中,自动化***可包括一个或多个第一计算机,该一个或多个第一计算机被配置为周期性地生成移动机器的轨迹,以基于直到生成该轨迹的时间点为止的传感器数据使移动机器停止。传感器数据从移动机器上的多个传感器接收,这些传感器感测移动机器的周围环境。一个或多个第二计算机耦接到一个或多个第一计算机并且被配置为控制移动机器中的多个致动器。一个或多个第二计算机被配置为周期性地从一个或多个第一计算机接收轨迹,并且控制多个致动器以使移动机器遵循轨迹的当前实例。一个或多个第二计算机被配置为用从一个或多个第一计算机接收的轨迹的后续实例替换轨迹的当前实例,并且其中一个或多个第二计算机被配置为控制多个致动器以遵循从一个或多个第一计算机接收的轨迹的后续版本。
如上所述,可以按规则的间隔在各个时间点生成停止轨迹。例如,第一停止轨迹可对应于时间t0。类似地,第二停止轨迹可对应于时间t1;第三停止轨迹可对应于时间t2;等等。t0与t1之间的时间可大致等于t1与t2之间的时间,等等。每个停止轨迹可保持与初始段的目的地轨迹大致平行,直到生成停止轨迹的下一时间点。因此,第一停止轨迹可从时间t0直到时间t1平行于目的地轨迹;第二停止轨迹可从时间t1到时间t2平行于目的地轨迹20,并且第三停止轨迹可从时间t2到时间t3平行于目的地轨迹20。因此,时间t0、t1、t2、t3等可对应于将生成停止轨迹的周期性。也就是说,两个连续时间之间的时间差可以是用于生成停止轨迹(并且也更新目的地轨迹以反映新感测到的对象或运动中的对象的变化)的时段。
初始段可以任何方式生成。例如,可从目的地轨迹20选择初始段,并且剩余段可从目的地轨迹偏离到停止点。另选地,规划阶段24可被配置为生成停止轨迹的初始段,使得它们不偏离超过目的地轨迹20阈值量,直到应当生成下一个停止轨迹之后。
在给定时间点生成的停止轨迹可使移动机器在由规划阶段24选择的位置处停止。通常,可基于一个或多个停止标准来确定停止位置或停止点。停止标准可包括具有在不与任何其他对象碰撞、造成损坏等的情况下操纵到停止点的高可能性的任何期望规则。例如,在存在其他移动机器的情况下,各种交通惯例可适用于移动机器移动(例如,道路惯例、水路惯例、航线惯例等),并且这些惯例可用于识别停止点和到达该停止点的停止轨迹。例如,规划阶段24可尝试选择最少暴露于其他交通的停止位置。停止位置可以是移动机器可到达而不与其他对象碰撞并且对路径中的继续移动阻碍最小的位置。因此,如果在路径的一侧存在停止区,则停止点可以是该停止区。停止区可以是在整个环境中允许或期望停止的路径外的任何位置。在基于陆地的环境中,例如,停止区可包括道路的路肩、车行道、仓库或其他建筑中的指定位置、用于移动机器的充电端口或其他加燃料点等。在基于水的环境中,停止区可包括码头、系泊浮筒、河岸、湖岸、海岸、海洋岸、航道边界等。在基于空中的环境中,停止区可包括降落区、直升机停机坪、空场等。如果不存在停止区,则停止点可在当前途径中。如果存在多条途径,则可使用惯例来选择停止点(例如,最右边途径,随后是最左边途径,随后是途径中,其中右边和左边是基于行进方向)。
因此,在一个实施方案中,自动化***(例如,一个或多个第一计算机)可被配置为基于移动机器正在其中行进的(对于给定路径而言,一个或多个可能途径中的)途径、在该一个或多个途径中存在一个或多个其他移动机器和/或存在与该一个或多个途径毗邻的停止区来生成停止轨迹。例如,一个或多个第一计算机可被配置为基于移动机器与停止区之间的无障碍途径的存在来生成到与移动机器正在行进的路径毗邻的停止区上的点的轨迹。在另一个示例中,一个或多个第一计算机被配置为基于移动机器与停止区之间的一个或多个障碍物来生成要在移动机器的当前行进途径中停止的轨迹。在另一个示例中,一个或多个第一计算机被配置为基于停止区的不存在来生成要在移动机器的当前行进途径中停止的轨迹。在这种情况下,停止区可以是移动机器右侧的停止区。在一些情况下,如果存在移动机器左侧的停止区并且存在(例如,从左行进途径)到左停止区的无障碍途径,则可以使用该停止区。
在实施方案中,自动化***可包括被配置为在多个时间点生成多个轨迹的一个或多个第一计算机。所述多个轨迹中的给定轨迹包括由所述多个时间点中的相应时间点之间的差划定的第一段和第二段。第一段可源自于将移动机器引向目的地的目的地轨迹,并且第二段可源自于基于直到生成给定轨迹的给定时间点为止来自多个传感器的传感器数据将移动机器引向停止的停止轨迹。一个或多个第二计算机耦接到一个或多个第一计算机,其中一个或多个第二计算机可被配置为接收多个轨迹,并且在给定时间被配置为控制移动机器的多个致动器以遵循多个轨迹中最近接收到的轨迹。
图2是示出动作阶段26的某些操作的一个实施方案的流程图。然而,为了便于理解,框图以特定顺序示出,也可使用其他顺序。动作阶段26可包括多个指令,这些指令当由计算机16执行时可引起包括图2中所述的操作的操作。
动作阶段26可包括基于当前停止轨迹生成致动器命令(框40)。也就是说,命令可导致致动器使移动机器沿着停止轨迹移动。动作阶段可基于当前停止轨迹继续生成命令,直到从规划阶段24接收到新的停止轨迹(判定框42,“是”分支)并且新接收到的轨迹被认证和验证(判定框44,“是”分支),此时动作阶段26可以用新的停止轨迹替换当前停止轨迹(框46)。新的停止轨迹因此变成当前停止轨迹,并且可基于新的停止轨迹生成致动器命令(框40)。可以执行认证和验证以确保轨迹确实是由规划阶段24生成的(而不是,例如,通过对***的恶意入侵)并且验证轨迹没有被改变。也就是说,描述新的停止轨迹的数据可被加密签名并且可包括错误检测数据,以允许检测数据的改变(例如,由于在将轨迹传输到动作阶段26过程中的噪声或其他不正确的操作)。在一个实施方案中,所接收到的未通过认证和/或验证的停止轨迹可被视为好像该轨迹未被接收到一样。在一个实施方案中,***中可存在错误日志,并且在一个实施方案中,故障(以及可能数据副本)可被记录在错误日志中。
图3是示出规划阶段24的某些操作的一个实施方案的流程图。然而,为了便于理解,框图以特定顺序示出,也可使用其他顺序。规划阶段24可包括多个指令,这些指令当由计算机14执行时可引起包括图3中所述的操作的操作。
图3中所示的操作可在一个时间间隔期间发生(例如,如上文所论述,时间t0与t1之间、时间t1与t2之间等的差)。规划阶段可处理在间隔期间接收到的传感器数据(并且在一些情况下,来自先前时间间隔的传感器数据)以更新目的地轨迹(框60)。例如,周围环境中新识别的对象可改变目的地轨迹,并且/或者目的地轨迹可被延伸,以用更前方的附加规划部分替换已遍历的部分。
规划阶段24还可以生成新的停止轨迹。停止轨迹的初始段(例如,到下一时间间隔为止所覆盖的距离,其除了时间间隔的大小之外还取决于移动机器的速度)可源自于目的地轨迹的对应段(框62)。例如,停止轨迹的初始段可等于目的地轨迹的对应段。另选地,停止轨迹的初始段与目的地轨迹的对应段可以相差不超过阈值量,这样不会对有效载荷造成扰动(例如,避免损坏易碎有效载荷、防止有效载荷移位或移动、避免以惊动活体有效载荷的方式使活体有效载荷发出刺耳的声音等)。因此,轨迹的初始段可在基于轨迹的实例的周期性的时间段内偏离目的地轨迹小于预定量。
可通过考虑传感器数据中的各种对象和其他信息来生成停止轨迹的剩余段。在一个实施方案中,如果在目的地轨迹上存在遮挡(判定框64,“是”分支),则可以仅在可见区域中生成停止轨迹(框66)。例如,移动机器可能正在接近目的地轨迹转弯的两条路径的交叉点。例如,交叉点可以是道路中的交叉点,或者可以是建筑物中两个走廊的交叉点等。传感器可能无法感测拐角周围,直到移动机器非常靠近拐角(例如,如果在路径一侧存在建筑物、大树、墙壁等)。在此类情况下,停止轨迹可以例如沿着当前路径延伸超过交叉点,而不是尝试转弯。
在可见区域内,规划阶段24可确定是否存在到最右侧停止点的无障碍途径(例如,停止区,或如果不存在停止区,则为正确途径)(判定框68)。如果是(判定框68,“是”分支),则规划阶段24可选择移至最右侧选项(框70)。如果否(判定框68,“否”分支),则规划阶段24可确定移动机器是否在最左侧途径中以及是否存在左停止区(判定框72)。在一些实施方案中,移动机器可以不在最左侧途径中,而是可以在最左侧途径的N个途径内,并且如果存在到左停止区的无障碍途径,则可以使用左停止区。如果存在到左停止区的无障碍途径(判定框72,“是”分支),则规划阶段24可选择移至最左侧轨迹(框74)。在左停止区和右停止区都存在的情况下,规划阶段24还可以考虑在停止区自身中是否存在任何障碍物。如果左停止区没有无障碍途径,或者没有左停止区,或者移动机器不在最左侧途径或N个最左侧途径中(判定框72,“否”分支),则规划阶段24可选择途径轨迹中的停止(框76)。可基于所选择的轨迹生成停止轨迹的剩余段(移至最右侧、移至最左侧或在途径中停止)(框78)。尽管在此示例中最右侧优于最左侧,但其他示例可偏好最左侧而非最右侧。
停止轨迹可包括沿其延伸到所选择的停止点的途径,并且通常还可以包括从当前速度到在该途径上停止的减速。减速可被限定在一个最大速率,使得停止不会扰动有效载荷(如果有的话)。另外,可要求停止在最大时间量(例如,8至10秒,但在各种实施方案中该时间可更长或更短)内发生。由于当故障发生并且没有提供新的停止轨迹时,停止轨迹被遵循至完成,所以停止轨迹的遍历可在没有附加传感器数据输入的情况下被执行(例如,自动化***可能对周围环境中的变化“视而不见”)。因此,限制停止轨迹的长度可减小对象被引入到由停止轨迹描述的途径中的可能性。
在一个实施方案中,自动化***10还可以用自动异常停止(ES)轨迹来增强,该自动ES轨迹可在故障发生之后对象被引入途径中的情况下(“迟显现”(late reveal)对象)修改停止轨迹。如果在遍历停止轨迹时检测到异常停止,由于无法提供新的停止轨迹,异常停止可被激活。例如,迟显现对象可以是在停止轨迹的最近接收的实例(或当前实例)中出现的先前未检测到的对象。迟显现对象可以是运动中的并且意外地移动到停止轨迹中的对象,或者是由于其运动而移动到移动机器上的传感器12的视场中的对象。
图4是包括异常停止特征的自动化***10的一个实施方案的框图。图4中的自动化***10可包括与图1的实施方案类似的传感器12、计算机14、计算机16和致动器18(其中计算机14实施感测阶段22和规划阶段24并存储目的地轨迹20,并且计算机16实施动作阶段26)。另外,自动化***10可包括一个或多个计算机80。计算机80可耦接到传感器12的子集和/或附加传感器82,并且可耦接到计算机14和16。更具体地,计算机80可被配置为从计算机14接收停止轨迹,并且可被配置为向计算机16提供异常停止指示。
在一个实施方案中,计算机16可被配置为检测停止轨迹的一个或多个实例在本应接收到后续实例的时段的至少N次迭代中未被接收到。如果发生其中没有接收到停止轨迹的N次迭代,则计算机16可被配置为启用来自计算机80的异常停止指示(即,对于轨迹数据,计算机80可以是与计算机14不同的源)。在一个实施方案中,如果成功接收到停止轨迹,则计算机16可被配置为禁用异常停止指示。
在“N次迭代”的情况下,“N”可以是正整数,并且在一个实施方案中可被设置为任何期望的迭代次数。例如,在各种实施方案中,N可以是2或3,或甚至更高的数或1。通常,可能期望N大于1以消除间歇性错误,诸如噪声诱发的轨迹损失等,但期望其为相对小的整数,以对来自计算机14的轨迹的持续损失提供快速响应。
异常停止指示可包括被检测到异常停止条件的断言以及异常停止轨迹的描述。在实施方案中,异常停止轨迹可遵循最近的停止轨迹,但可修改轨迹的一个或多个方面。例如,异常停止轨迹可以提前终止原始停止轨迹(例如,异常停止轨迹可包括比原始停止轨迹更快速的减速)。异常停止轨迹可以用规避机动来修改原始停止轨迹,以避免迟显现对象。在其他实施方案中,异常停止轨迹可独立于最近的停止轨迹并且可以与停止轨迹类似的格式提供。
计算机80可从传感器12的子集和/或从一个或多个ES传感器82接收传感器数据。可以使用传感器12的子集和ES传感器82的任何组合。也就是说,设想了仅采用传感器12的子集、仅采用ES传感器82以及传感器12的子集和ES传感器82的组合的实施方案。传感器12可以使用与到计算机14的连接不同的到计算机80的连接来供应ES传感器数据(以防止传感器数据的路径中的故障)。在实施方案中,提供ES传感器数据的传感器12可提供较低带宽的传感器数据流(例如,该数据的分辨率可低于由相应传感器提供给计算机14的数据)。因此,异常停止可以是比计算机14规划目的地轨迹和停止轨迹更粗略的决策过程。在一些实施方案中,异常停止可经受途径中障碍物的更多“误报”识别。然而,由于提供异常停止功能以避免当主***(例如,计算机14或传感器12中的一个或多个)发生故障时的碰撞,所以一些数量的误报可能是可接受的。
计算机80可实施感测阶段84和规划阶段86,以检测停止轨迹中的迟显现对象/障碍物,并生成用于计算机16的异常停止指示。感测阶段84可以类似于感测阶段22的方式处理接收到的ES传感器数据,并且可向ES规划阶段86(或简单地一组对象)提供世界估计,并且ES规划阶段86可基于感测到的对象来规划ES停止轨迹。
图5是示出具有异常停止功能的动作阶段26的一个实施方案的某个操作的流程图。然而,为了便于理解,框图以特定顺序示出,也可使用其他顺序。动作阶段26可包括多个指令,这些指令当由计算机16执行时可引起包括图5中所述的操作的操作。
类似于图2的实施方案,动作阶段26可基于当前轨迹生成致动器命令(框40),并且如果接收到、认证和验证,则可以用新的停止轨迹替换当前轨迹(判定框42和44,“是”分支以及框46)。然而,在图5的实施方案中,当前轨迹可以是最近接收到的停止轨迹或异常停止轨迹。
如果在预期时间点未接收到新的停止轨迹(判定框42,“否”分支)或接收到轨迹但未正确认证或验证(判定框44,“否”分支),则动作阶段26可记录未接收到预期停止轨迹并且可确定是否尚未接收到最近的N个预期停止轨迹(判定框100)。如果尚未接收到N个连续停止轨迹(判定框100,“是”分支),则动作阶段26可启用异常停止功能(框102)。例如,动作阶段26可开始监视或“监听”来自计算机80的异常停止指示。如果接收到异常停止指示(判定框104,“是”分支),则动作阶段26可以用异常停止轨迹替换当前停止轨迹(或者如异常停止指示所指定的那样修改当前停止轨迹)(框106)。动作阶段26可基于经替换/修改的轨迹开始生成致动器命令(框40)。如果未接收到ES停止指示(判定框104,“否”分支),则动作阶段26可继续遵循当前轨迹(框40)。类似地,如果未接收到的连续停止轨迹的数量尚未达到N(判定框100,“否”分支),则动作阶段26可基于当前轨迹继续生成致动器命令(框40)。
如先前所讨论的,设想了各种各样的移动机器和相应的路径,从基于陆地的到基于水的到基于空中的并且甚至基于太空的。可能特别熟悉的一个实施方案是在道路上运行的汽车或其他运载工具。下面就图6至图9给出了关于该实施方案的更多示例。
图6是沿着道路行进的移动机器M1和在M1前方的移动机器M2的一个实施方案的框图。道路包括两条车道,两条车道都具有从左到右的行进方向,如图6所示。对于图6所示的道路的一部分,在路径的右侧(从行进方向观察右侧)存在停止区(例如,路肩、停车场、车行道等)(附图标记30)。停止区终止于图6的中间,并且因此道路的其余部分不存在停止区,如图所示(附图标记32)。
如图6所示,移动机器M1的位置对应于时间t0。目的地轨迹在图6中被示为虚线34。如图所示,移动机器M1继续在右车道中行进,直到它开始追上移动机器M2并且通过改变到左车道而超过移动机器。
图6中还示出了各种停止轨迹36A、36B和36C。停止轨迹36A对应于时间t0。类似地,停止轨迹36B对应于时间t1,停止轨迹36C对应于时间t2。对于初始段,每个停止轨迹可保持大致平行于目的地轨迹34,直到生成停止轨迹的下一时间点。因此,停止轨迹36A平行于目的地轨迹34直到时间t1,停止轨迹36B从t1到t2平行于目的地轨迹34,并且停止轨迹36C从t2到t3平行于目的地轨迹34。因此,时间t0、t1、t2、t3等可对应于将生成停止轨迹的周期性。也就是说,如图6所示,两个连续时间之间的时间差可以是用于生成停止轨迹(并且也更新目的地轨迹34以反映新感测到的对象或运动中的对象的改变)的时段。
初始段可以任何方式生成。例如,可从目的地轨迹34选择初始段,并且剩余段可从目的地轨迹34偏离到停止点。另选地,规划阶段24可被配置为生成停止轨迹的初始段,使得它们不偏离超过目的地轨迹34阈值量,直到应当生成下一个停止轨迹之后。阈值量可基于人类有效载荷的感知:即,如果***中没有故障,则移动机器应当被有效载荷感知为沿着目的地轨迹34平稳地跟随。
在给定时间点生成的停止轨迹36A-36D可使移动机器在由规划阶段24选择的位置处平稳地停止。规划阶段24可尝试选择最少暴露于其他交通的停止位置。也就是说,停止位置可以是移动机器可到达而不与其他对象碰撞并且对道路中的继续交通阻碍最小的位置。因此,如果在道路的右侧存在停止区,则停止点可以是停止区。停止区是图6中的轨迹36A和36B的停止点。如果不存在停止区,则停止点可在右行进车道中,诸如图6中所示的轨迹36C。该轨迹可使移动机器在车道中尽可能向右移动,如图6所示,或者可直接停在车道中。
在其他情况下,不可能向右移动。例如,在图6的点tn-1和tn处,当移动机器M2存在于右侧途径中时,尝试向右侧途径移动可能是不明智的。停止轨迹36D可因此停在左侧途径中,如图6所示。
因此,自动化***(例如,一个或多个第一计算机)可被配置为基于移动机器正在其中行进的(对于给定道路而言,一个或多个可能车道中的)车道、该一个或多个车道中存在一个或多个其他移动机器、以及存在与该一个或多个车道毗邻的停止区来生成停止轨迹。例如,一个或多个第一计算机可被配置为基于移动机器与停止区之间的无障碍途径的存在来生成到与移动机器正在行进的道路毗邻的停止区上的点的轨迹。在另一个示例中,一个或多个第一计算机被配置为基于移动机器与停止区之间的一个或多个障碍物来生成要在移动机器的当前行进车道中停止的轨迹。在另一个示例中,一个或多个第一计算机被配置为基于停止区的不存在来生成要在移动机器的当前行进车道中停止的轨迹。在这种情况下,停止区可以是移动机器右侧的停止区。在一些情况下,如果存在移动机器左侧的停止区并且存在(例如,从左行进车道)到左停止区的无障碍途径,则可以使用该停止区。
在实施方案中,自动化***可包括被配置为在多个时间点生成多个轨迹的一个或多个第一计算机。所述多个轨迹中的给定轨迹包括由所述多个时间点中的相应时间点之间的差划定的第一段和第二段。第一段可源自于将移动机器引向目的地的目的地轨迹,并且第二段可源自于基于直到生成给定轨迹的给定时间点为止来自多个传感器的传感器数据将移动机器引向停止的停止轨迹。一个或多个第二计算机耦接到一个或多个第一计算机,其中一个或多个第二计算机可被配置为接收多个轨迹,并且在给定时间被配置为控制移动机器的多个致动器以遵循多个轨迹中最近接收到的轨迹。
图7和图8是示出用于各种场景的停止轨迹生成的框图。在每个图中,示出了道路的三个车道,其中交通在图中从左向右行进。因此,道路的右侧(基于移动机器的行进方向)在每个图的底部并且左侧在顶部。对于道路的一部分,在道路的左侧和右侧存在停止区(分别为附图标记50和52),而道路的另一部分没有停止区(分别为附图标记54和56)。图7示出了可在交通畅通条件下生成的停止轨迹,并且图8示出了可在交通繁忙条件下生成的停止轨迹。
通常,在该实施方案中,将移动机器移动到道路右侧的停止轨迹可能比其他轨迹更优选。道路的右侧是移动最慢的车辆预期行进的地方(并且也可以存在停止区)。例如,向右移动以允许移动更快的车辆从左侧超越移动机器是移动机器预期在许多位置遵循的交通规则。
如图7所示,如果存在到右停止区52的无障碍途径,则可以生成停止轨迹以使移动机器停在右停止区52中。例如,可生成从任何车道中的移动机器到右停止区52的停止轨迹58A-58C。在右侧不存在停止区56(或者在右停止区52中存在障碍物)的情况下,停止轨迹可将移动机器移动到最右侧车道,诸如轨迹58D-58F。更进一步地,在实施方案中,如果最右侧车道被占用或者不存在到最右侧车道的无障碍途径,则停止轨迹可将移动机器移动到更向右的车道。图7旨在示出交通畅通条件(例如,当几乎没有或没有移动机器紧邻具有所示停止轨迹的给定移动机器时)。因此,例如,在图7中,如果移动机器M1和M2不存在或者在移动机器M3的更前方或更后方,则可以生成轨迹58A。示出了三个移动机器,以说明从任何车道到右停止区或车道的轨迹。
在图8中,示出了针对较繁忙交通条件的各种停止轨迹58G、58H、58J和58K。在较繁忙交通中,在最右侧车道以外的其他车道中行进的移动机器可能没有到右侧的无障碍途径(例如,移动机器M5被移动机器M1和M6阻挡,移动机器M4被移动机器M3和M5阻挡,移动机器M11被移动机器M8和M9阻挡,并且移动机器M10被移动机器M7和M11阻挡)。最右侧车道中的移动机器可停在停止区52中,或者如果不存在停止区(或者在停止区52中存在障碍物),则可停在最右侧车道中。
在实施方案中,左行进车道中的移动机器可生成到左停止区50的停止轨迹58G,或者如果不存在左停止区50或者左停止区50具有障碍物,则可停在最左侧车道中(停止轨迹58J)。中间车道(不是最左侧或最右侧)中的移动机器可在拥挤条件下停在车道中(轨迹58H和58K)。在一些实施方案中,如果存在到左侧的无障碍途径,则在交通繁忙条件下多于一个最左侧车道可尝试向左侧移动。
这样,按照一个实施方案的优选顺序,可生成到右停止区50、从最左侧的一条或多条车道到左停止区52(假设最左侧车道与左停止区之间不存在迎面而来的车辆的车道)或者停在车道中(优选最右侧,或者在当前行进车道中)的停止轨迹。
注意,与图6、图7和图8相关的停止轨迹的生成是根据美国的交通惯例描述的。然而,可根据任何合适的交通惯例(例如,英国的交通惯例等)来确定异常停止轨迹。还应注意,图6、图7和图8中所示的轨迹和其他特征不一定按比例绘制。
图9是示出用于异常停止功能的传感器可具有的各种视场的框图。在移动机器M1上示出了两个传感器S2和S1。传感器S1的视场经由实线形状90示出,而传感器S2的视场通过虚线形状92示出。在图9的顶部,两个传感器的重叠区域(由虚线形状94示出,其使用比形状92更小的虚线)可表示高置信度ES对象检测。也就是说,在由形状94示出的区域中,对象可被传感器S1和S2两者检测到,并且因此存在正确感测到对象的高置信度。在图9的底部,再次示出了形状90和92,但是经由虚线形状96示出了另一个区域(再次使用比形状92更小的虚线)。由形状96表示的该区域可以是用于ES对象检测的中等水平置信度,因为它包括仅由一个传感器S1或S2的视场覆盖的一些区域。然而,感测到对象的附加区域可允许更早地检测到将要进入停止轨迹的迟显现对象/障碍物。
高置信区域94和中等置信区域96的组合可用于向动作阶段26发出异常停止的信号。另选地,可使用区域94或96中的一个。
接下来转向图10,其示出了计算机可访问存储介质200的一个实施方案的框图。一般来讲,计算机可访问存储介质可包括在使用期间能够被计算机访问以向计算机提供指令和/或数据的任何存储介质。例如,计算机可访问存储介质可包括诸如磁性或光学介质的存储介质,例如,盘(固定或可拆卸)、带、CD-ROM、DVD-ROM、CD-R、CD-RW、DVD-R、DVD-RW或蓝光。存储介质还可包括易失性或非易失性存储器介质,诸如RAM(例如,同步动态RAM(SDRAM)、Rambus DRAM(RDRAM)、静态RAM(SRAM)等)、ROM或闪存存储器。存储介质可被物理地包括在存储介质将指令/数据提供至其的计算机内。另选地,存储介质可连接至计算机。例如,存储介质可通过网络或无线链路诸如网络附接存储装置而被连接至计算机。存储介质可通过***接口诸如通用串行总线(USB)而被连接。通常,计算机可访问存储介质200可以非暂态方式存储数据,其中非暂态在该上下文中可指不通过信号传输指令/数据。例如,非暂态计算机可访问存储介质可为易失性的(并且响应于断电而可能会丢失所存储的指令/数据)或为非易失性的。
图10中的计算机可访问存储介质200可存储自动化代码202。自动化代码202可包括指令,这些指令当由一个或多个计算机14、16或80执行时实现针对以上各种代码所述的操作,特别是关于图2、图3和图5所述。载体介质可包括计算机可访问存储介质以及诸如有线或无线传输的传输介质。
更具体地,在一个实施方案中,计算机可访问存储介质200/自动化代码202可包括多个指令,这些指令在被执行时实现包括以下项的操作:在一个或多个第一计算机中在多个时间点处生成多个轨迹,其中所述多个轨迹中的给定轨迹包括由所述多个时间点中的相应时间点之间的差划定的第一段和第二段,其中第一段源自于将移动机器引向目的地的目的地轨迹,并且其中第二段源自于基于直到生成给定轨迹的给定时间点为止来自多个传感器的传感器数据将移动机器引向停止的停止轨迹;以及由耦接到一个或多个第一计算机的一个或多个第二计算机控制移动机器的多个致动器以遵循多个轨迹中的最近接收到的轨迹。在实施方案中,这些指令当在一个或多个第二计算机上执行时在所述多个轨迹中的后续一个或多个轨迹未在相应预期时间点被接收到的情况下继续遵循最近接收到的轨迹。在实施方案中,这些指令当在一个或多个第二计算机上执行时基于未能在相应的执行时间点接收到多个轨迹中的N个轨迹而启用与一个或多个第一计算机不同的源,其中N为正整数,并且其中不同的源被配置为基于在最近接收到的轨迹中检测到至少一个障碍物而提供自动异常停止轨迹。
***
本公开包括对“实施方案”或“实施方案”的组(例如,“一些实施方案”或“各种实施方案”)的引用。实施方案是所公开概念的不同具体实施或实例。对“实施方案”、“一个实施方案”、“特定实施方案”等的引用并不一定是指相同的实施方案。设想了大量可能的实施方案,包括具体公开的那些,以及落入本公开的实质或范围内的修改或替代。
本公开可讨论可由所公开的实施方案产生的潜在优点。并非所有这些实施方案的具体实施都将必然表现出任何或所有潜在优点。特定具体实施是否实现了优点取决于许多因素,其中一些因素在本公开的范围之外。事实上,存在许多原因导致落入权利要求范围内的具体实施可能不表现出任何所公开的优点中的一些或全部。例如,特定具体实施可包括在本公开的范围之外的其他电路***,结合所公开的实施方案中的一个实施方案,该其他电路***否定或减弱一个或多个所公开的优点。此外,特定具体实施(例如,具体实施技术或工具)的次优设计执行也可能否定或减弱所公开的优点。即使假设有技术的具体实施,优点的实现仍可取决于其他因素,诸如部署具体实施的环境情况。例如,提供给特定具体实施的输入可防止本公开中解决的一个或多个问题在特定场合发生,结果可能无法实现其解决方案的益处。考虑到本公开外部的可能因素的存在,本文所述的任何潜在优点都不应理解为是为了证明侵权行为而必须满足的权利要求限制。相反,此类潜在优点的识别旨在示出受益于本公开的设计者可用的一种或多种改进类型。永久性地描述此类优点(例如,陈述特定优点“可能出现”)并非旨在传达关于此类优点实际上是否可被实现的疑问,而是认识到此类优点的实现通常取决于附加因素的技术现实。
除非另行指出,否则实施方案是非限制性的。也就是说,所公开的实施方案并非旨在限制基于本公开起草的权利要求的范围,即使仅针对特定特征描述单个示例的情况下也是如此。本发明所公开的实施方案旨在为示例性的而非限制性的,而无需在本发明中进行任何相反的陈述。因此本申请意在允许涵盖所公开实施方案的权利要求、以及此类替代形式、修改形式和等价形式,这对知晓本公开有效效果的本领域技术人员将是显而易见的。
例如,本申请中的特征可以任何合适的方式组合。因此,在本专利申请(或要求享有其优先权的专利申请)进行期间可针对特征的任何此类组合作出新的权利要求。具体地讲,参照所附权利要求,从属权利要求的特征在适当的情况下可与其他从属权利要求的特征组合,包括从属于其他独立权利要求的权利要求。类似地,在适当的情况下,可组合来自相应独立权利要求的特征。
因此,虽然所附从属权利要求可撰写成使得每个从属权利要求从属于单个其他权利要求,但也可设想附加从属关系。可设想符合本公开的从属特征的任何组合,并且这些组合可在本专利申请或另一专利申请中受权利要求书保护。简而言之,组合不限于所附权利要求中具体列举的那些。
在适当的情况下,还预期以一种格式或法定类型(例如,装置)起草的权利要求旨在支持另一种格式或法定类型(例如,方法)的对应权利要求。
***
因为本公开是法律文件,所以各种术语和短语可受到管理和司法解释的约束。特此给出公告,以下段落以及贯穿本公开提供的定义将用于确定如何解释基于本公开起草的权利要求。
除非上下文另有明确规定,否则对单数形式的项目的引用(即,前面有“一个”、“一种”或“该”的名词或名词短语)旨在表示“一个或多个”。因此,在不伴随上下文的情况下,对权利要求中的“项目”的引用并不排除该项目的附加实例。“多个”项目是指两个或更多个项目的集合。
词语“可”在本文中在允许的意义上(即,具有潜在可能的,能够的)进行使用,而不是在强制意义上(即,必须)进行使用。
术语“包含”和“包括”及其形式是开放式的,并且意指“包括但不限于”。
当在本公开中相对于选项列表使用术语“或”时,除非上下文另有提供,否则一般将理解为以包含性意义使用。因此,表述“x或y”等同于“x或y,或两者”,因此涵盖1)x但不是y,2)y但不是x,以及3)x和y两者。另一方面,短语诸如“x或y中的任一者,但不是两者都”使得清楚“或”以排他性意义使用。
表述“w、x、y或z,或它们的任何组合”或“...w、x、y和z中的至少一者”旨在涵盖涉及最多至该集合中元件总数的单个元件的所有可能性。例如,给定集合[w,x,y,z],这些短语涵盖集合中的任何单个元素(例如,w但不是x、y或z)、任何两个元素(例如,w和x,但不是y或z)、任何三个元素(例如,w、x和y,但不是z)以及所有四个元素。短语“...w、x、y和z中的至少一者”因此是指集合[w,x,y,z]中的至少一个元素,从而涵盖该元素列表中的所有可能的组合。该短语不应被解释为要求存在w的至少一个实例、x的至少一个实例、y的至少一个实例和z的至少一个实例。
在本公开中,各种“标签”可先于名词或名词短语。除非上下文另有提供,否则用于特征(例如,“第一电路”、“第二电路”、“特定电路”、“给定电路”等)的不同标签是指特征的不同实例。除此之外,除非另有说明,否则标签“第一”、“第二”和“第三”在应用于特征时并不暗示任何类型的排序(例如,空间、时间、逻辑等)。
短语“基于”或用于描述影响确定的一个或多个因素。此术语不排除可能有附加因素可影响确定。也就是说,确定可仅基于指定的因素或基于所指定的因素及其他未指定的因素。考虑短语“基于B确定A”。此短语指定B是用于确定A的因素或者B影响A的确定。此短语并不排除A的确定也可基于某个其他因素诸如C。此短语也旨在覆盖A仅基于B来确定的实施方案。如本文所用,短语“基于”与短语“至少部分地基于”是同义的。
短语“响应于”和“响应”描述了触发效应的一个或多个因素。该短语不排除附加因素可影响或以其他方式触发效应的可能性,这些因素与指定因素联合使用或独立于指定因素。也就是说,效果可以仅仅响应于这些因素,或者可以响应于指定的因素以及其他未指定的因素。考虑短语“响应于B执行A”。该短语指定B是触发A的执行或触发A的特定结果的因素。该短语不排除执行A也可能响应于某些其他因素,诸如C。该短语也不排除执行A可响应于B和C而联合执行。此短语也旨在覆盖A仅响应于B而执行的实施方案。如本文所用,短语“响应”与短语“至少部分地响应于”是同义的。类似地,短语“响应于”与短语“至少部分地响应于”是同义的。
***
在本公开内,不同实体(其可被不同地称为“单元”、“电路”、其他部件等)可被描述或声称成“被配置为”执行一个或多个任务或操作。此表达方式—被配置为[执行一个或多个任务]的[实体]—在本文中用于指代结构(即,物理的事物)。更具体地,此表达方式用于指示此结构被布置成在操作期间执行一个或多个任务。结构可被说成“被配置为”执行某个任务,即使该结构当前并非正***作。因此,被描述或表述为“被配置为”执行某个任务的实体指代用于实施该任务的物理的事物,诸如设备、电路、具有处理器单元的***和存储有可执行程序指令的存储器等。此短语在本文中不被用于指代无形的事物。
在一些情况下,各种单元/电路/部件在本文中可被描述为执行一组任务或操作。应当理解,这些实体“被配置为”执行那些任务/操作,即使没有具体指出。
术语“被配置为”并不旨在意指“可配置为”。例如,未编程的FPGA不会被认为是“被配置为”执行特定功能。然而,该未编程的FPGA可以“可配置为”执行该功能。在适当编程之后,FPGA然后可认为“被配置为”执行特定功能。
在本公开中可描述不同的“电路”。这些电路或“电路***”构成硬件,该硬件包括各种类型的电路元件,诸如组合逻辑、时钟存储设备(例如,触发器、寄存器、锁存器等)、有限状态机、存储器(例如,随机存取存储器、嵌入式动态随机存取存储器)、可编程逻辑阵列等。电路***可以是定制设计的,或取自标准库。在各种具体实施中,电路***可以视情况包括数字部件、模拟部件或两者的组合。某些类型的电路可通常被称为“单元”(例如,解码单元、算术逻辑单元(ALU)、功能单元、存储器管理单元(MMU)等)。此类单元也指电路或电路***。
因此,在附图中示出并在本文中描述的所公开的电路/单元/部件和其他元件包括硬件元件,诸如前面段落中描述的那些硬件元件。在许多情况下,硬件元件在特定电路中的内部布置可通过描述该电路的功能来指定。例如,特定的“解码单元”可被描述为执行“处理指令的操作码并将该指令路由到多个功能单元中的一个或多个”的功能,这意味着解码单元“被配置为”执行该功能。对于计算机领域的技术人员而言,该功能规范足以暗示用于电路的一组可能的结构。
在各种实施方案中,如前面段落中所讨论的,电路、单元和由它们被配置为实现的功能或操作限定的其他元件,相对于彼此的布置和此类电路/单元/部件以及它们进行交互的方式形成硬件的微架构定义,该硬件最终在集成电路中制造或被编程到FPGA中以形成微架构定义的物理具体实施。因此,微架构定义被本领域的技术人员认为是可导出许多物理具体实施的结构,所有这些物理具体实施均落入由微架构定义所描述的更广泛的结构中。即,具有根据本公开提供的微架构定义的技术人员可在没有过度实验的情况下并且利用普通技术人员的应用,通过以硬件描述语言(HDL)诸如Verilog或VHDL编码电路/单元/部件的描述来实现该结构。HDL描述常常以可显现为功能性的方式来表达。但是对于本领域的技术人员而言,该HDL描述是用于将电路、单元或部件的结构转换为下一级具体实施细节的方式。此类HDL描述可采用以下形式:行为代码(其通常为不可合成的)、寄存器传输语言(RTL)代码(其与行为代码相比通常为可合成的)、或结构代码(例如,指定逻辑门及其连接性的网表)。可针对为给定集成电路制造技术设计的单元库来顺序地合成HDL描述,并可出于定时、功率和其他原因而被修改,以获得被传输到工厂以生成掩模并最终产生集成电路的最终的设计数据库。一些硬件电路或其部分也可在示意图编辑器中被定制设计并且与合成电路***一起被捕获到集成电路设计中。该集成电路可包括晶体管和其他电路元件(例如,无源元件,诸如电容器、电阻器、电感器等),以及晶体管和电路元件之间的互连件。一些实施方案可实现耦接在一起的多个集成电路,以实现硬件电路,和/或可在一些实施方案中使用离散元件。另选地,HDL设计可被合成为可编程逻辑阵列诸如现场可编程门阵列(FPGA),并且可在FPGA中实现。一组电路的设计与这些电路的后续低级具体实施之间的这种解耦通常导致这样的情形:其中电路或逻辑设计者从来不指定超出对电路被配置为做什么的描述的用于低级具体实施的一组特定结构,因为该过程是在电路实施过程的不同阶段执行的。
可使用电路元件的许多不同低级组合来实现电路的相同规格的事实导致该电路的大量等效结构。如所指出的那样,这些低级电路具体实施可根据制造技术、被选择用于制造集成电路的铸造厂、为特定项目提供的单元库等的变化而变化。在许多情况下,通过不同设计工具或方法进行的产生这些不同具体实施的选择可以是任意的。
此外,对于给定实施方案,电路的特定功能规范的单个具体实施通常包括大量设备(例如,数百万个晶体管)。因此,该信息的剪切体积使得提供用于实现单个实施方案的低级结构的完整叙述是不切实际的,更不用说大量等同的可能具体实施。为此,本公开描述了使用工业中常用的功能简写的电路的结构。
一旦充分了解了上面的公开,许多变型和修改对于本领域的技术人员而言将变得显而易见。本公开旨在使以下权利要求书被阐释为包含所有此类变型和修改。

Claims (20)

1.一种自动化***,包括:
一个或多个第一计算机,所述一个或多个第一计算机被配置为周期性地生成移动机器的轨迹,以基于直到生成所述轨迹的时间点为止的传感器数据使所述移动机器停止,其中所述传感器数据是从所述移动机器上的感测所述移动机器的周围环境的多个传感器接收的;和
一个或多个第二计算机,所述一个或多个第二计算机被配置为控制所述移动机器中的多个致动器,其中所述一个或多个第二计算机耦接到所述一个或多个第一计算机并且被配置为周期性地从所述一个或多个第一计算机接收所述轨迹,并且控制所述多个致动器以使所述移动机器遵循所述轨迹的当前实例,并且其中所述一个或多个第二计算机被配置为用从所述一个或多个第一计算机接收的所述轨迹的后续实例替换所述轨迹的所述当前实例,并且其中所述一个或多个第二计算机被配置为控制所述多个致动器以遵循从所述一个或多个第一计算机接收的所述轨迹的后续版本。
2.根据权利要求1所述的***,其中所述一个或多个第一计算机被配置为基于所述移动机器正在一个或多个途径中的哪个途径行进、在所述一个或多个途径中存在一个或多个其他移动机器、以及存在与所述一个或多个途径毗邻的停止区来生成所述轨迹。
3.根据权利要求1或2所述的***,其中所述一个或多个第一计算机被配置为基于所述移动机器与所述停止区之间的无障碍途径的存在来生成到与所述移动机器正在行进的路径毗邻的停止区中的点的所述轨迹。
4.根据权利要求3所述的***,其中所述一个或多个第一计算机被配置为基于所述移动机器与所述停止区之间的一个或多个障碍物来生成要在所述移动机器的当前行进途径中停止的所述轨迹。
5.根据权利要求3或4所述的***,其中所述一个或多个第一计算机被配置为基于不存在所述停止区来生成要在所述移动机器的当前行进途径中停止的所述轨迹。
6.根据权利要求3所述的***,其中所述停止区在所述移动机器的右侧。
7.根据权利要求3所述的***,其中所述停止区在所述移动机器的左侧。
8.根据任一前述权利要求所述的***,其中所述一个或多个第二计算机被配置为检测所述轨迹的所述后续实例在本应接收到所述后续实例的时段的至少N次迭代中未被接收到,其中N是正整数,并且其中所述一个或多个第二计算机被配置为基于所述检测启用来自与所述一个或多个第二计算机不同的源的异常停止指示。
9.根据权利要求8所述的***,其中所述不同的源被配置为基于一个或多个附加传感器检测到先前未检测到的对象处于所述轨迹的所述当前实例中来提供自动异常停止指示。
10.根据任一前述权利要求所述的***,其中所述一个或多个第一计算机被配置为生成引向所述移动机器的目的地的另一轨迹,并且其中所述轨迹的初始段在基于所述轨迹的实例的周期性的时间段内偏离所述另一轨迹小于预定量。
11.根据任一前述权利要求所述的***,其中:
所述一个或多个第一计算机被配置为在多个时间点生成多个轨迹,其中所述多个轨迹中的给定轨迹包括由所述多个时间点中的相应时间点之间的差划定的第一段和第二段,其中所述第一段得自于将所述移动机器引向目的地的目的地轨迹,并且其中所述第二段得自于基于直到生成所述给定轨迹的给定时间点为止来自多个传感器的传感器数据将所述移动机器引向停止的停止轨迹;并且
所述一个或多个第二计算机被配置为接收所述多个轨迹,并且在给定时间被配置为控制所述移动机器的多个致动器以遵循所述多个轨迹中最近接收到的轨迹。
12.根据权利要求11所述的***,其中所述一个或多个第二计算机被配置为在所述多个轨迹中的后续一个或多个轨迹未在相应预期时间点被接收到的情况下继续遵循所述最近接收到的轨迹。
13.根据权利要求11或12所述的***,其中所述一个或多个第二计算机被配置为基于在相应的执行时间点未接收到所述多个轨迹中的N个轨迹而启用与所述一个或多个第一计算机不同的源,其中N是正整数。
14.根据权利要求13所述的***,其中所述不同的源被配置为基于在所述最近接收到的轨迹中检测到至少一个障碍物而提供异常停止轨迹。
15.根据权利要求14所述的***,其中所述不同的源耦接到所述多个传感器的子集以检测所述障碍物。
16.根据权利要求13所述的***,其中所述异常停止轨迹遵循所述最近接收到的轨迹,但在较早的点终止。
17.根据权利要求11至16中任一项所述的***,其中所述一个或多个第一计算机被配置为生成所述目的地轨迹,但是所述一个或多个第一计算机被配置为不向所述一个或多个计算机传输所述目的地轨迹。
18.一种包括多个指令的非暂态计算机可访问存储介质,所述指令当在一个或多个第一计算机和耦接到所述一个或多个第一计算机的一个或多个第二计算机上执行时实现包括以下的操作:
由所述一个或多个第一计算机周期性地生成移动机器的轨迹,以基于直到生成所述轨迹的时间点为止的传感器数据使所述移动机器停止,其中所述传感器数据是从所述移动机器上的感测所述移动机器的周围环境的多个传感器接收的;以及
由所述一个或多个第二计算机控制所述移动机器中的多个致动器,其中所述一个或多个第二计算机被配置为周期性地从所述一个或多个第一计算机接收所述轨迹并且控制所述多个致动器以使所述移动机器遵循所述轨迹的当前实例;
由所述一个或多个第二计算机用从所述一个或多个第一计算机接收的所述轨迹的后续实例替换所述轨迹的所述当前实例;以及
由所述一个或多个第二计算机控制所述多个致动器以遵循从所述一个或多个第一计算机接收的所述轨迹的后续版本。
19.根据权利要求18所述的非暂态计算机可访问存储介质,还包括:
由所述一个或多个第二计算机检测所述轨迹的所述后续实例在本应接收到所述后续实例的时段的至少N次迭代中未被接收到,其中N是正整数;以及
基于所述检测启用来自与所述一个或多个第二计算机不同的源的异常停止指示。
20.根据权利要求19所述的非暂态计算机可访问存储介质,其中所述不同的源被配置为基于一个或多个附加传感器检测到先前未检测到的对象处于所述轨迹的所述当前实例中而提供所述异常停止指示。
CN202280009573.3A 2021-01-12 2022-01-12 使用停止轨迹的自动化控制 Pending CN116745180A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163136308P 2021-01-12 2021-01-12
US63/136,308 2021-01-12
PCT/US2022/012144 WO2022155220A1 (en) 2021-01-12 2022-01-12 Automation control using stop trajectories

Publications (1)

Publication Number Publication Date
CN116745180A true CN116745180A (zh) 2023-09-12

Family

ID=80122643

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280009573.3A Pending CN116745180A (zh) 2021-01-12 2022-01-12 使用停止轨迹的自动化控制

Country Status (4)

Country Link
US (1) US12032378B2 (zh)
EP (1) EP4278238A1 (zh)
CN (1) CN116745180A (zh)
WO (1) WO2022155220A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2022227763A1 (en) * 2021-02-25 2023-09-28 Autonomous Solutions, Inc. Intelligent urgent stop system for an autonomous vehicle

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6393362B1 (en) 2000-03-07 2002-05-21 Modular Mining Systems, Inc. Dynamic safety envelope for autonomous-vehicle collision avoidance system
US11009874B2 (en) 2017-09-14 2021-05-18 Uatc, Llc Fault-tolerant control of an autonomous vehicle with multiple control lanes
US10983522B2 (en) * 2018-03-09 2021-04-20 Baidu Usa Llc Emergency stop speed profile for autonomous vehicles
US10747223B1 (en) * 2018-04-10 2020-08-18 Aurora Innovation, Inc. Redundant lateral velocity determination and use in secondary vehicle control systems

Also Published As

Publication number Publication date
EP4278238A1 (en) 2023-11-22
WO2022155220A1 (en) 2022-07-21
US12032378B2 (en) 2024-07-09
US20220221868A1 (en) 2022-07-14

Similar Documents

Publication Publication Date Title
CN111712829B (zh) 检测阻塞静止车辆
US11727497B2 (en) Safe state to safe state navigation
Leonard et al. A perception‐driven autonomous urban vehicle
CN114127655B (zh) 封闭车道检测
US11574089B2 (en) Synthetic scenario generator based on attributes
US20200410063A1 (en) Synthetic scenario simulator based on events
CN115551758A (zh) 非结构化车辆路径规划器
US10860025B2 (en) Modeling graph of interactions between agents
KR102581482B1 (ko) 차량의 자율 주행 컨트롤러의 동작 방법 및 장치
US20230202504A1 (en) Dynamic route information interface
US10620634B2 (en) Vehicle interface for autonomous vehicle
EP3822140B1 (en) Operational design domain validation coverage for road and lane type
US11415997B1 (en) Autonomous driving simulations based on virtual simulation log data
US10775509B2 (en) Sensor field of view mapping
KR102176483B1 (ko) 차선 정보를 래스터화하여 활용하는 딥러닝 기반 차량 경로 예측 방법 및 장치
US11702044B2 (en) Vehicle sensor cleaning and cooling
US20230037142A1 (en) Method and system for developing autonomous vehicle training simulations
WO2020264276A1 (en) Synthetic scenario generator based on attributes
CN116745180A (zh) 使用停止轨迹的自动化控制
Cao et al. Lidar-based object detection failure tolerated autonomous driving planning system
CN113335273A (zh) 车辆控制***
US11572731B2 (en) Vehicle window control
US20230356733A1 (en) Increasing autonomous vehicle log data usefulness via perturbation
KR102233226B1 (ko) LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템
KR101934297B1 (ko) 3차원 LiDAR를 이용한 선분추출 기반의 교차로 인식 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination