CN116583801A - 环境中各区之间的机器人导航管理 - Google Patents
环境中各区之间的机器人导航管理 Download PDFInfo
- Publication number
- CN116583801A CN116583801A CN202180076038.5A CN202180076038A CN116583801A CN 116583801 A CN116583801 A CN 116583801A CN 202180076038 A CN202180076038 A CN 202180076038A CN 116583801 A CN116583801 A CN 116583801A
- Authority
- CN
- China
- Prior art keywords
- threshold
- waypoint
- robot
- zone
- server
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 63
- 238000004891 communication Methods 0.000 claims abstract description 6
- 230000004888 barrier function Effects 0.000 claims description 39
- 238000007726 management method Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 14
- 239000003550 marker Substances 0.000 description 13
- 238000013507 mapping Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 239000000047 product Substances 0.000 description 9
- 238000003860 storage Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000004806 packaging method and process Methods 0.000 description 3
- 230000037361 pathway Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0214—Control 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G1/00—Storing articles, individually or in orderly arrangement, in warehouses or magazines
- B65G1/02—Storage devices
- B65G1/04—Storage devices mechanical
- B65G1/137—Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed
- B65G1/1373—Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed for fulfilling orders in warehouses
- B65G1/1378—Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed for fulfilling orders in warehouses the orders being assembled on fixed commissioning areas remote from the storage areas
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0234—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0238—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0287—Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
- G05D1/0291—Fleet control
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0287—Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
- G05D1/0291—Fleet control
- G05D1/0297—Fleet control by controlling means in a control room
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Aviation & Aerospace Engineering (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Electromagnetism (AREA)
- Mechanical Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Warehouses Or Storage Devices (AREA)
- Manipulator (AREA)
Abstract
提供了用于机器人导航管理的系统和方法,所述系统包括服务器,所述服务器被配置为:定义环境内的第一区和相邻的第二区、沿着所述第一区与所述第二区之间的边界的门槛和与所述门槛相关联的航点。与所述服务器通信的一个或更多个自主机器人被配置为:确定跨越所述门槛从所述第一区到所述第二区的路线,所述路线包括航点;以及沿着从所述第一区到所述第二区的所述路线为所述机器人导航,包括与跨越所述门槛相结合地穿越所述航点。
Description
相关申请的交叉引用
本申请要求于2020年9月11日提交的美国申请No.17/017,801的优先权的权益,该美国申请通过引用合并于此。
技术领域
本发明涉及机器人导航,更具体地涉及具有多个不同区域或区的环境内的机器人导航管理。
背景技术
通过互联网订购产品以实现送货上门是一种极为流行的购物方式。至少可以这样说,以及时、准确且高效的方式履行此类订单在物流上是有挑战性的。点击虚拟购物车中的“结账”按钮创建“订单”。订单包括将被运送到特定地址的物品的清单。“履行”的过程涉及以物理方式从大型仓库取或“拣选”这些物品,对其进行包装,并且将其运送到指定地址。订单履行过程的一个重要目标因此是为了在尽可能短的时间内运送尽可能多的物品。
订单履行过程通常在包含许多产品(包括订单中列举的那些产品)的大型仓库中进行。因此在订单履行的任务当中,有穿越仓库以寻找和收集订单中列举的各种物品的任务。另外,最终将被运送的产品首先需要被接收在仓库中并在仓库各处以有序方式存储或“放置”在储存仓中,使得能够容易地取回它们以便运送。
在大型仓库中,正在交付和订购的商品能够被存储在彼此分开很远的仓库中并分散在大量的其他商品当中。在订单履行过程情况下,仅使用人类操作员来放置和拣选商品需要操作员做大量行走并且可能是效率低且费时的。由于履行过程的效率是每单位时间运送的物品数量的函数,所以增加时间降低效率。
为了提高效率,可以使用机器人来执行人类的功能,或者可以使用它们来补充人类的活动。例如,机器人可以被指配为将许多物品“放置”在分散在仓库各处的各种位置中或者从各种位置“拣选”物品以供包装和运送。拣选和放置可以由机器人单独完成或在人类操作员的协助下完成。例如,在拣选操作的情况下,人类操作员将从架子拣选物品并将它们放置在机器人上,或者在放置操作的情况下,人类操作员将从机器人拣选物品并将它们放置在架子上。
一些仓库或其他环境被划分成各种不同区域。例如,一些产品可能需要温度控制,因此位于诸如冷藏库的温度控制区域中。一些产品可能需要较高的安全性,因此被放置在通过屏障与其他产品分开的区域中。一些环境具有位于不同高度下的区域,这些区域可以经由倾斜地板或电梯访问。一些不同区域被诸如墙的物理屏障分开,然而其他不同区域可能没有使它们分开的物理屏障。在此类区域之间导航可能导致低效选路或者导致多个机器人之间或机器人与人类操作员之间的交通拥堵。
发明内容
本文提供的是用于具有多个区的环境或导航空间中的机器人导航管理的方法和系统。
在一个方面中,提供了一种用于将自主机器人从环境内的第一区导航到第二相邻区的方法。所述方法包括:由服务器定义所述环境内的所述第一区和所述第二区、沿着所述第一区与所述第二区之间的边界的门槛和与所述门槛相关联的航点;为所述自主机器人确定跨越所述门槛从所述第一区到所述第二区的路线,所述路线包括所述航点;以及沿着从所述第一区到所述第二区的所述路线为所述机器人导航,包括与跨越所述门槛相结合地穿越所述航点。在一些实施例中,所述航点由航点位姿定义,并且确定路线的步骤包括确定到所述航点位姿的路线分段。穿越所述航点的步骤能够包括穿越所述航点位姿而不在所述航点位姿处停顿或在跨越所述门槛之前在所述航点位姿处停顿。所述航点能够与所述门槛间隔开一定距离或者沿着所述门槛位于所述边界上。
在一些实施例中,所述方法还包括:由所述服务器定义与所述门槛相关联的第二航点,所述航点和所述第二航点位于所述门槛的相对侧。在一些实施例中,所述两个相邻区之间的所述边界是物理屏障,并且所述门槛位于所述物理屏障中的开口处。在一些实施例中,所述两个相邻区之间的所述边界是虚拟屏障,并且所述门槛是沿着所述虚拟屏障的定义位置。在一些实施例中,所述方法还包括:由所述服务器定义沿着所述相邻区之间的所述边界的第二门槛,以及与所述第二门槛相关联的第二航点。在一些实施例中,所述方法还包括:由所述服务器将所述门槛定义为允许机器人在第一方向上通行;以及将沿着所述相邻区之间的所述边界的第二门槛定义为允许机器人在与所述第一方向相反的方向上通行。
在一些实施例中,所述方法还包括:由所述机器人加入等待通过门槛的机器人的队列。在一些实施例中,所述方法还包括:由所述机器人用相机、激光探测器或雷达探测器、或它们的组合来探测所述门槛中的障碍物。在一些实施例中,每一个所述区是安全区域、温度控制区域、仓库区域、或具有与相邻区域不同的高度的区域、或它们的组合。
在另一个方面中,提供了一种用于将自主机器人从环境内的第一区导航到第二相邻区的系统。所述系统包括:服务器,所述服务器被配置为:定义所述环境内的所述第一区和所述第二区、沿着所述第一区与所述第二区之间的边界的门槛和与所述门槛相关联的航点;自主机器人,所述自主机器人与所述服务器通信,所述机器人包括处理器和存储器,所述存储器存储有指令,所述指令在由所述处理器执行时,使所述机器人:确定跨越所述门槛从所述第一区到所述第二区的路线,所述门槛包括所述航点;以及沿着从所述第一区到所述第二区的所述路线为所述机器人导航,包括与跨越所述门槛相结合地穿越所述航点。在一些实施例中,所述航点由航点位姿定义并且所述存储器还存储有指令,所述指令在由所述处理器执行时,使所述自主机器人确定到所述航点位姿的路线分段。在一些实施例中,所述存储器还存储有指令,所述指令在由所述处理器执行时,使所述机器人穿越航点位姿而不在所述航点位姿处停顿或在跨越所述门槛之前在所述航点位姿处停顿。在一些实施例中,所述航点与所述门槛间隔开一定距离或者沿着所述门槛位于所述边界上。在一些实施例中,所述服务器被配置为:定义与所述门槛相关联的第二航点,所述航点和所述第二航点位于所述门槛的相对侧。
在一些实施例中,所述两个相邻区之间的所述边界是物理屏障,并且所述门槛位于所述物理屏障中的开口处。在一些实施例中,所述两个相邻区之间的所述边界是虚拟屏障,并且所述门槛是沿着所述虚拟屏障的定义位置。在一些实施例中,所述服务器被配置为:定义沿着所述两个相邻区之间的所述边界的第二门槛,以及与所述第二门槛相关联的第二航点。在一些实施例中,所述机器人导航服务器被配置为:将所述门槛定义为允许机器人在第一方向上通行,并且将沿着所述第一区与所述第二区之间的所述边界的第二门槛定义为允许机器人在与所述第一方向相反的方向上通行。
在一些实施例中,所述存储器还存储有指令,所述指令在由所述处理器执行时,使所述自主机器人加入等待通过所述门槛的机器人的队列。在一些实施例中,所述存储器还存储有指令,所述指令在由所述处理器执行时,使所述自主机器人用相机、激光探测器或雷达探测器、或它们的组合来探测所述门槛中的障碍物。
在一些实施例中,每一个所述区是安全区域、温度控制区域、仓库区域、或具有与相邻区域不同的高度的区域、或它们的组合。在一些实施例中,所述服务器还包括以下中的一者或更多者:仓库管理系统、订单服务器、独立服务器、包括多个机器人中的至少两个机器人的存储器的分布式系统、或它们的组合。
本发明的这些和其他特征将从以下详细描述和附图中清楚,在附图中:
附图说明
图1是订单履行仓库的顶部平面图;
图2A是在图1所示的仓库中使用的机器人之一的基部的前立视图;
图2B是在图1所示的仓库中使用的机器人之一的基部的立体图;
图3是图2A和图2B中装备了衔铁并停放在图1所示的架子前面的机器人的立体图;
图4是使用机器人上的激光雷达创建的图1的仓库的部分地图;
图5是描绘了用于定位分散在仓库各处的基准标记并存储基准标记位姿的过程的流程图;
图6是基准标识到位姿映射的表;
图7是仓位置到基准标识映射的表;
图8是描绘了产品SKU到位姿映射过程的流程图;
图9是用于与本发明的方法和系统一起使用的机器人系统的实施例的框图;
图10是划分成多个区的环境的地图;
图11是示例性计算系统的框图;以及
图12是示例性分布式网络的网络图。
具体实施方式
参照在附图中描述和/或图示的并在以下描述中详述的非限制性实施例和示例来更充分地说明本公开及其各种特征和有利细节。应当注意,附图中图示的特征不一定按比例绘制,并且即使在本文中未显式地陈述,也可以如技术人员将认识到那样与其他实施例一起采用一个实施例的特征。可以省略公知组件和处理技术的描述以便避免不必要地使本公开的实施例混淆。本文使用的示例仅仅旨在方便理解能够以之实践本公开的方式,并且进一步使得本领域的技术人员能够实践本公开的实施例。因此,本文的示例和实施例不应当被解释为限制本公开的范围。此外,应注意,相同的附图标记在附图的若干视图中自始至终表示类似的部分。
本发明涉及机器人导航管理。尽管不局限于任何特定机器人应用,但是本发明可以用于的一个合适的应用是订单履行。机器人在此应用中的使用将被描述成为机器人导航管理提供上下文,但是不限于该应用。
参照图1,典型的订单履行仓库10包括填满了能够被包括在订单中的各种物品的架子12。在操作中,来自仓库管理服务器15的订单16的传入流到达订单服务器14。订单服务器14可以尤其对订单进行优先级排序和分组,以便在引导过程期间指配给机器人18。随着机器人被操作员引导,在处理站(例如站100)处,订单16被以无线方式指配和传送给机器人18以供执行。本领域的技术人员应理解,订单服务器14可以是具有被配置为:与仓库管理系统服务器15和仓库管理软件互操作的分立软件系统的分开的服务器,或者订单服务器功能可以被集成到仓库管理软件中并在仓库管理服务器15上运行。
在优选实施例中,图2A和图2B中示出的机器人18包括具有激光雷达22的自主轮式基部20。基部20也特载使得机器人18能够从订单服务器14和/或其他机器人接收指令并向订单服务器14和/或其他机器人发送数据的收发器(未示出)以及一对数码光学相机24a和24b。机器人基部还包括用于对给自主轮式基部20供电的电池重新充电的电气充电端口26。基部20还特载从激光雷达以及相机24a和24b接收数据以捕获表示机器人的环境的信息的处理器(未示出)。如图3所示,存在与处理器一起工作以执行与仓库10内的导航相关联的各种任务以及导航到放置在架子12上的基准标记30的存储器(未示出)。基准标记30(例如二维条形码)对应于所订购的物品的仓/位置。在下面关于图4-8详细地描述本发明的导航方法。根据本发明的一个方面,基准标记也用于识别充电站,并且导航到此类充电站基准标记与导航到所订购的物品的仓/位置相同。一旦机器人导航到充电站,就使用更精确的导航方法来将机器人与充电站对接,并且在下面描述这样的导航方法。
再次参照图2B,基部20包括能够存储周转箱或仓来搬运物品的上表面32。也示出了啮合多个可互换衔铁40(其中的一者被示出在图3中)中的任何一者的联接件34。图3中的特定衔铁40特载用于搬运接纳物品的周转箱44的周转箱支持器42(在这种情况下为架子),以及用于支撑平板48的平板支持器46(或膝上型电脑/其他用户输入装置)。在一些实施例中,衔铁40支撑用于搬运物品的一个或更多个周转箱。在其他实施例中,基部20支撑用于搬运接纳的物品的一个或更多个周转箱。如本文所使用的,术语“周转箱”包括但不限于货物支持器、仓、笼、架子、能够从其悬挂物品的杆、小盒子、板条箱、机架、支架、架柱、容器、箱、金属罐、器皿和储存库。
尽管机器人18擅长在仓库10四处移动,但是利用当前的机器人技术,由于与对象的机器人操纵相关联的技术困难,其不擅于迅速地且高效地从架子拣选物品并将它们放置在周转箱44中。拣选物品的更高效方式是使用通常为人类的本地操作员50来执行以物理方式从架子12移除订购的物品并将其放置在机器人18上(例如,放置在周转箱44中)的任务。机器人18经由本地操作员50能够读的平板48(或膝上型电脑/其他用户输入装置)或通过将订单发送到本地操作员50所使用的手持装置来将订单传送给本地操作员50。
在从订单服务器14接收到订单16时,机器人18进行到第一仓库位置,例如,如图3所示。其基于存储在存储器中并由处理器执行的导航软件这样做。导航软件依靠如由激光雷达22所收集的有关环境的数据、存储器中识别与仓库10中能够找到特定物品的位置相对应的基准标记30的基准标识(“ID”)的内部表以及相机24a和24b来导航。
在到达正确的位置(位姿)时,机器人18将其自己停放在上面存储了物品的架子12前面,并且等待本地操作员50从架子12取回物品并将其放置在周转箱44中。如果机器人18具有其他物品要取回,则其进行到那些位置。由机器人18取回的物品然后被交付给处理站100(图1),在那里它们被包装和运送。虽然处理站100已经关于此图被描述为能够引导和卸载/包装的机器人,但是其可以被配置为:使得机器人在站处被引导或卸载/包装,即它们可能局限于执行单个功能。
本领域的技术人员应理解,每个机器人可能正在履行一个或更多个订单并且每个订单可以由一个或更多个物品构成。通常,将包括某种形式的路线优化软件以提高效率,但是这超出本发明的范围,因此在本文中不作描述。
为了简化本发明的描述,描述了单个机器人18和操作员50。然而,如从图1显然的,典型的履行操作包括许多机器人和操作员在仓库中相互工作以满足订单的连续流。
在下面关于图4-8详细地描述本发明的基线导航方法、以及要取回的物品的SKU到与仓库中物品所位于的基准标记相关联的基准ID/位姿的语义映射。
使用一个或更多个机器人18,必须创建仓库10的地图,并且必须确定分散在仓库各处的各种基准标记的位置。为了做这个,一个或更多个机器人18在它们正在航行于仓库时,它们利用其激光雷达22和同时定位与绘图(SLAM)来建立/更新地图10a(图4),这是构建或更新未知环境的地图的计算问题。流行的SLAM近似解方法包括粒子滤波器和扩展卡尔曼滤波器。SLAM GMapping方法是优选方法,但是也能够使用任何合适的SLAM方法。
机器人18利用其激光雷达22来随着机器人18在空间各处行进从而基于其在激光雷达扫描环境时接收的反射识别空间中的开放空间112、墙壁114、对象116和其他静态障碍物(诸如架子12)来创建仓库10的地图10a。
在构建地图10a(或者此后更新它)的同时,一个或更多个机器人18使用相机26来浏览仓库10以扫描环境,以在接近在其中存储了物品的仓(诸如32和34,图3)的架子上定位分散在仓库各处的基准标记(二维条形码)。机器人18使用已知起点或原点作为参考,诸如原点110。当基准标记(诸如基准标记30,图3和图4)由机器人18使用其相机26定位了时,仓库中相对于原点110的位置被确定。
通过使用车轮编码器和航向传感器,能够确定矢量120以及机器人在仓库10中的方位。使用所捕获的基准标记/二维条形码的图像及其已知大小,机器人18能够确定基准标记/二维条形码相对于机器人的定向和离机器人的距离,即矢量130。在矢量120和130已知的情况下,可以确定原点110与基准标记30之间的矢量140。从矢量140和所确定的基准标记/二维条形码相对于机器人18的定向,能够确定基准标记30的由四元数(x、y、z、ω)定义的位姿(位置和定向)。
描述了基准标记定位过程的流程图200(图5)被描述。这个是在初始映射模式下并且随着机器人18在执行拣选、放置和/或其他任务的同时在仓库中遇到新的基准标记而执行的。在步骤202中,机器人18使用相机26来捕获图像,并且在步骤204中,在所捕获的图像内搜索基准标记。在步骤206中,如果在图像中找到基准标记(步骤204),则确定该基准标记是否已经被存储在位于机器人18的存储器34中的基准表300(图6)中。如果基准信息已经被存储在存储器中,则流程图返回到步骤202以捕获另一图像。如果基准信息不在存储器中,则根据上述过程来确定位姿,并且在步骤208中,将其添加至基准到位姿查询表300。
在可以被存储在每个机器人的存储器中的查询表300中,包括了每个基准标记的基准标识1、2、3等,以及与每个基准标识相关联的基准标记/条形码的位姿。位姿由仓库中的x、y、z坐标以及定向或四元数(x、y、z、ω)构成。
在也可以被存储在每个机器人的存储器中的另一查找表400(图7)中,是仓库10内与特定基准ID 404(例如数字“11”)相关的仓位置(例如402a-f)的列表。在此示例中,仓位置由七个字母数字字符构成。前六个字符(例如L01001)和仓库内的架子位置有关,并且最后字符(例如A-F)识别架子位置处的特定仓。在此示例中,存在与基准ID“11”相关联的六个不同仓位置。可以存在与每个基准ID/标记相关联的一个或更多个仓。
因为与仓库10中存储了物品的物理位置相对应,所以字母数字仓位置对人类(例如操作员50,图3)是可以理解的。然而,它们对机器人18没有意义。如本文所描述的,通过将位置映射到基准ID,机器人18能够使用表300(图6)中的信息来确定基准ID的位姿,然后导航到该位姿。
在流程图500(图8)中描述了根据本发明的订单履行过程。在步骤502中,从仓库管理系统15,订单服务器14获得订单,该订单可以由一个或更多个要取回的物品构成。应当注意,订单指配过程相当复杂并且超出本公开的范围。一个这样的订单指配过程在于2016年9月1日提交的标题为Order Grouping in Warehouse Order Fulfillment Operations的共同拥有的美国专利申请序号15/807,672中有所描述,该美国专利申请通过引用整体地并入本文。也应当注意,机器人可以具有允许单个机器人执行多个订单的周转箱阵列,每仓或隔间各有一个订单。此类周转箱阵列的示例在于2016年9月1日提交的标题为Item StorageArray for Mobile Base in Robot Assisted Order-Fulfillment Operations的美国专利申请序号15/254,321中有所描述,该美国专利申请通过引用整体地并入本文。
继续参照图8,在步骤504中由仓库管理系统15确定物品的SKU编号,并且从SKU编号,在步骤506中确定仓位置。订单的仓位置的列表然后被发送到机器人18。在步骤508中,机器人18使仓位置与基准ID相关联,并且从基准ID,在步骤510中获得每个基准ID的位姿。在步骤512中机器人18导航到如图3所示的位姿,其中操作员能够从适当的仓拣选要取回的物品并将其放置在机器人上。
由仓库管理系统15/订单服务器14获得的诸如SKU编号和仓位置的物品特定信息能够被发送到机器人18上的平板48,使得当机器人到达每个基准标记位置时,能够向操作员50告知要取回的特定物品。
在SLAM地图和基准ID的位姿已知的情况下,机器人18能够使用各种机器人导航技术来容易地导航到基准ID中的任何一者。优选方法涉及考虑到仓库10中的开放空间112以及墙壁114、架子(诸如架子12)和其他障碍物116的知识来设置到基准标记位姿的初始路线。当机器人开始使用其激光雷达26穿越仓库时,其确定在其路径中是否存在任何障碍物,无论是固定的还是动态的,诸如其他机器人18和/或操作员50,并且将其路径迭代地更新到基准标记的位姿。机器人每50毫秒重新规划其路线大约一次,从而不断地寻找最高效且有效的路径,同时避开障碍物。
利用与SLAM导航技术组合的产品SKU/基准ID到基准位姿映射技术(两者在本文中有所描述),机器人18能够非常高效地且有效地航行于仓库空间,而不必使用通常使用的涉及网格线和中间基准标记的更复杂导航方法来确定仓库内的位置。
在SLAM地图和基准ID的位姿已知的情况下,机器人18能够使用各种机器人导航技术容易地导航到任何一个基准。优选方法涉及考虑到仓库10中的开放空间112以及墙壁114、架子(诸如架子12)和其他障碍物116的知识来设置到基准标记位姿的初始路线。随着机器人开始使用其激光雷达22穿越仓库,其确定在其路径中是否有任何障碍物,无论是固定的还是动态的,诸如其他机器人18和/或操作员50,并且将其路径迭代地更新到基准标记的位姿。机器人每50毫秒重新规划其路线大约一次,从而不断地寻找最高效且有效的路径,同时避开障碍物。机器人在仓库内的定位能够例如通过在SLAM地图上运行的多对多多分辨率扫描匹配(M3RSM)来实现。M3RSM在2019年8月20日发布的标题为“MULTI-RESOLUTIONSCAN MATCHING WITH EXCLUSION ZONES”的美国专利No.10,386,851中有所描述,该美国专利的公开内容通过引用并入本文。能够使用如2019年10月1日发布的标题为“DYNAMICWINDOW APPROACH USING OPTIMAL RECIPROCAL COLLISON AVOIDANCE COST-CRITIC”的美国专利No.10,429,847中同样描述的。
图9示出了用于在如本文所描述的机器人导航系统中使用的机器人18的一个实施例的系统视图。机器人系统600包括数据处理器620、数据存储装置630、处理模块640和传感器支持模块660。处理模块640如此可以包括路径规划模块642、驱动控制模块644、地图处理模块646、定位模块648和状态估计模块650。传感器支持模块660可以包括距离传感器模块662、传动系/车轮编码器模块664和惯性传感器模块668。
数据处理器620、处理模块640和传感器支持模块660能够与针对机器人系统600本文示出或描述的任何组件、装置或模块进行通信。可以包括收发器模块670来发送和接收数据。收发器模块670可以向管理机系统或向一个或其他机器人发送数据和信息,并且从管理机系统或从一个或其他机器人接收数据和信息。发送和接收数据可以包括地图数据、路径数据、搜索数据、传感器数据、位置和定向数据、速率数据以及处理模块指令或代码、机器人参数和环境设置和机器人系统600的操作所必需的其他数据。
在一些实施例中,距离传感器模块662可以包括以下中的一者或更多者:扫描激光器、雷达、激光测距仪、测距仪、超声障碍物探测器、立体视觉系统、单眼视觉系统、相机和图像单元。距离传感器模块662可以扫描机器人周围的环境以确定一个或更多个障碍物相对于机器人的位置。在一些实施例中,传动系/车轮编码器664包括用于对车轮方位进行编码的一个或更多个传感器和用于控制一个或更多个车轮(例如,地面啮合车轮)的方位的致动器。机器人系统600还可以包括地面速度传感器,包括速度计或基于雷达的传感器或旋转速率传感器。旋转速率传感器可以包括加速度器和积分器的组合。旋转速率传感器可以为数据处理器620或其任何模块提供观测旋转速率。
在一些实施例中,传感器支持模块660可以提供平移数据、位置数据、旋转数据、水平数据、惯性数据和航向数据,包括速率转变、方位、旋转水平、航向和惯性数据的瞬时量度随时间的历史数据。可以参照机器人环境中的一个或更多个固定参照点或静止对象来探测平移或旋转速率。平移速率可以被表达为一方向上的绝对速度或者被表达为机器人位置对时间的一阶导数。旋转速率可以被表达为角单位的速度或者被表达为角位置对时间的一阶导数。平移速率和旋转速率可以是针对原点0,0(图4)和相对于绝对或相对坐标系0度的支撑点而表达的。处理模块640可以使用与探测旋转速率组合的观测平移速率(或位置对时间的测量结果)来估计机器人的观测旋转速率。
在一些实施例中,由自主或半自主机器人进行的导航需要机器人的环境的某种形式的空间模型。空间模型在美国专利No.10,386,851中进一步描述。空间模型可以通过位图、对象图、地标图和其他形式的二维和三维数字表示来表示。仓库设施的空间模型可以表示仓库和内部的障碍物,诸如墙、天花板、屋顶支撑件、窗户和门、货架和储存仓。障碍物可以是固定的或移动的,例如,诸如在仓库内运行的其他机器人或机械,或者可以随着仓库物品被进货、拣选和补货而是相对固定但变化的,诸如临时隔板、托板、架子和仓。空间模型也可以表示目标位置,诸如标记有为了执行任务可以将机器人引导到的基准的架子或仓或临时保持位置或充电站的位置。空间模型也能够包括虚拟障碍物和对象,诸如屏障、门槛交叉点和RFID通道。
在一些环境中,机器人可以使用地图来确定其在环境内的位姿并且规划和控制其在避开障碍物时沿着路径的移动。此类地图可以是表示紧接在机器人或目标位置附近的空间特征的“局部地图”,或者可以是表示区域或设施上包含一个或更多个机器人的运行范围的特征的“全局地图”。可以从外部监管系统向机器人提供地图,或者机器人可以使用机载测距和定位传感器来构建其地图。一个或更多个机器人可以合作地绘制共享环境,所得的地图随着机器人导航、收集和共享关于环境的信息而进一步增强。
在一些实施例中,监管系统可以包括对制造仓库或其他设施中的多个机器人执行监管的中央服务器,或者监管系统可以包括由一个或更多个服务器构成的分布式监管系统,所述一个或更多个服务器在本文描述的方法和系统的应用中在不失一般性的情况下完全远程地或部分地在设施内或在没有设施的情况下运行。监管系统可以包括具有至少用于执行监管系统的计算机处理器和存储器的一个或多个服务,并且可以进一步包括用于将信息传达给在仓库或其他设施中运行的一个或更多个机器人的一个或更多个收发器。监管系统可以被托管在计算机服务器上,或者可以被托管在云中并且经由本地收发器与本地机器人进行通信,所述本地收发器被配置为:通过有线通信介质和/或无线通信介质(包括通过因特网)从机器人和监管系统接收信息和向机器人和监管系统发送信息。
本领域的技术人员将认识到,出于本发明的目的,能够在不失一般性的情况下使用本领域中已知的方法来执行机器人绘图。对用于机器人绘图的方法的进一步讨论能够在通过引用并入本文的Sebastian Thrun,“Robotic Mapping:A Survey”,Carnegie-MellonUniversity,CMU-CS-02-111,2002年2月中找到。
机器人导航管理
诸如仓库的一些导航空间或环境能够被划分成两个或更多个区。此类区能够包括例如但不限于用于需要更大安全性的产品的安全区域、诸如冷藏库的温度控制区域、用于特定类型的商品的区域、或高度与相邻区域不同的区域。如上所述,区能够包括例如装满了要包括在订单中的物品的架子12。区可以没有架子或其他障碍物,例如,以适应机器人在环境内的快速移动。
区能够由诸如固定墙或可移动隔板的物理屏障定界。区能够由其中不存在物理屏障的虚拟屏障定界。物理屏障能够在其中包括门或其他可移动封闭物。具有不同高度的相邻区能够经由倾斜地板或电梯可访问。
本文描述的是用于机器人导航管理以便使得机器人18能够航行于划分成两个或更多个区的环境的系统和方法。图10是示出了已经被划分成五个区901、902、903、904、905的导航空间或环境900的地图。可以理解的是,环境能够被划分成任何期望数量和类型的区。相邻区之间的边界能够由物理屏障或虚拟屏障、或它们的组合定界。如图10所示,第一区901经由诸如图9中由实线912、914指示的墙的物理屏障与第二区902和第三区903定界。在墙914中设置了门932,所述门能够被打开以允许机器人或人类通过或者能够被关闭以防止机器人或人类通过。第二区902与第三区903之间的边界部分地由实线所指示的物理墙918定界,并且部分地由虚线所指示的虚拟屏障918定界。第三区903与第四区904和第五区905之间的边界由虚线所指示的虚拟屏障922定界。第四区904与第五区905之间的边界类似地由虚线所指示的虚拟屏障924定界。
地图也指示了穿过边界的通路或门槛,其中机器人18或人类50可以从一个区通过到相邻区。在图10所示出的实施例中,位于第一区901与第三区903之间的墙914中的门932位于沿着边界的门槛942处。虚拟门槛944位于形成第二区902与第三区903之间的边界的虚拟屏障918中并且位于形成第三区903与第四区904之间的边界的虚拟屏障中。两个虚拟门槛946、948位于形成第三区903与第五区905之间的边界的虚拟屏障922中。可以为RFID通道以使得能够跟踪跨越门槛的机器人的门槛952位于第三区903和第五区905。门槛不位于第一区901与第二区902之间的物理屏障中或者不位于第四区904与第五区905之间的虚拟屏障中。虚拟屏障的提供允许在不必建立物理墙的情况下对仓库进行分段。可以视需要而定通过改变虚拟屏障来改变分段。另外地,如指示的,例如,在区905的情况下,可以跟踪机器人经由RFID通道进入到区905中,该RFID通道被示出在区905的入口处。
能够将门槛定义为允许机器人在两个方向上或在仅一个方向上通过。例如,门槛932和946被定义为允许在由双头箭头指示的两个方向上通过。门槛952被定义为允许在一个方向上通过,从区903进入到区905中,并且门槛948被定义为允许在相反方向上通过,从区905进入到区903中。
至少一个航点与每个门槛相关联。在一些实施例中,两个航点与每个门槛相关联。在一些实施例中,能够在与边界隔开一定距离的位置处定义航点。在一些实施例中,能够沿着门槛在边界上定义航点。在一些实施例中,能够与在沿着门槛的边界的相对侧的位置处隔开的门槛相关联地定义两个航点。在一些实施例中,两个航点能够定义跨越门槛的通路的起点和终点,例如,以提供沿着通路的高效单向行进。
能够通过参照原点110定义航点,如以上关于图4所描述的。因此,每个航点能够由至少x和y坐标或由x、y和z坐标定义。每个机器人18被提供有存储在存储器中的阐述每个航点的坐标的查找表,从而使得机器人能够导航到每个航点。查询表还能够包括与每个航点相关联的位姿。因此,如上所述,查找表能够包括定向或四元数(x、y、z、ω)。在一些实施例中,基准标记能够与一个或更多个航点相关联,但是与航点相关联的基准标记对于如本文所描述的机器人导航而言不是必要的。如以上结合图4所描述的,提供有航点的坐标的机器人能够例如利用车轮编码器和航向传感器来导航到该航点。在到达期望航点时,机器人能够定向在与该航点相关联的期望位姿位置中。
为了管理这种导航,如图10所示,能够给仓库管理系统服务器或订单服务器提供地图900。设法在环境内导航的每个机器人18与服务器通信。一般而言,就每个机器人18正在导航空间内运行而言,其可能正在运行以履行安排好的任务清单的一个或更多个任务,如上所述。基于其规定的任务清单,每个机器人能够确定如上所述的优化路线,这可能需要机器人穿越门槛。例如,机器人能够利用如上所述的路径规划模块642和探路者算法。
在一些实施例中,机器人可以被配置为:越过航点,并且穿越门槛而不停止。在一些实施例中,在到达航点时,机器人可以被配置为:在穿越门槛之前停顿。在一些实施例中,在航点处停顿之后,机器人可以在跨越门槛之前例如如上所述使用相机、激光探测器或雷达探测器、或它们的组合来确定门槛是否没有交通。在一些实施例中,在到达航点时,机器人能够从机器人监控服务器接收有关是否穿越门槛的进一步指令或命令。此类指令或命令能够被从服务器自动地推送,或者可以是机器人对请求的响应。通过要求机器人越过航点或在航点处停顿,机器人跨越门槛的导航被控制,从而引导机器人跨越区边界(物理的或虚拟的)通过。
在一些实施例中,机器人可以被配置为:加入等待穿越门槛的机器人的队列。例如,另一机器人可能已经在定义航点的位姿位置处停顿。而且,一个或更多个其他机器人可能正在队列位置中等待以在适当的时间也跨越门槛。新到达的机器人能够加入与航点的位姿位置偏移和/或与在队列中等待穿越门槛的其他机器人的位姿位置偏移的队列槽或位置。机器人的排队可以例如由导航服务器或仓库管理服务器15管理。
例如,当一个或更多个机器人试图导航到被另一机器人占据的空间时,为机器人创建替代目的地以将它们放置在队列中并且避免“竞赛条件”发生。当另一机器人试图导航到被占据位姿时,机器人被重新定向到临时保持位置或与被占据位姿偏移的队列槽。考虑到仓库的动态环境,队列槽的位置可能是不均匀的且可变的。队列槽可以根据观测底层全局地图以及局部地图的现有障碍物和约束的排队算法偏移。排队算法也可以考虑在接近目标位置/位姿的空间中排队的实际限制以避免阻塞交通、干扰其他位置并创建新障碍物。
另外,能够管理机器人进入队列的适当的队列开槽,使得具有占据位姿的第一优先级的机器人可以在第一队列槽中排队,然而其他机器人基于它们相应的优先级在其他队列槽中排队。优先级可以由机器人进入到接近位姿的区中的顺序确定。当机器人从位姿(目标位置)移动时,下一个机器人从队列槽移动到位姿,并且任何其他机器人能够分别在队列槽方位上前进。因此,机器人被导航到队列槽并最终导航到目标位置的方式是通过暂时将它们从目标位置的位姿重新定向到队列槽的位姿来完成的。换句话说,当确定了机器人必须被放置在队列槽中时,其目标位姿被暂时调整到与它被指配到的队列槽的位置相对应的位姿。随着其在队列中的位置上升,位姿被再次暂时调整到具有次最高优先级的队列槽的位姿,直到其能够到达其原始目标位置,此时位姿被重置为原始目标位姿。机器人的排队在于2019年12月24日发布的标题为“ROBOT QUEUING IN ORDER FULFILLMENT OPERATIONS”的美国专利No.10,513,033中进一步描述,该美国专利的公开内容通过引用并入本文。
在一些实施例中,路线可以要求机器人导航到具有高度与相邻区的高度不同的区。在一些实施例中,门槛可以跨越各区之间的倾斜表面或斜面。在一些实施例中,取决于斜坡度,两个航点能够定义跨越门槛沿着斜坡的通路的起点和终点。在一些实施例中,能够提供电梯来将机器人从一个区运输到另一区。能够在电梯门处定义门槛,使得机器人能够到达与电梯相关联的航点并且能够请求和/或发出指令来呼叫电梯,打开电梯门使得机器人能够进入电梯,并且将电梯引导到下一个区。
通过进一步描述,在没有在虚拟屏障中定义的门槛的情况下,机器人可能确定靠近物理屏障的终点通过的路线是到目的地的最短路线。例如,图9中由虚线指示的机器人18’被示出为靠近墙的终点通过从而走较短的更高效的路线。然而,较短的路线可能导致更多的拥堵或否则是不希望的。因此,通过在确定位置中定义门槛和关联的航点,在这种情况下沿着边界与墙的终点隔开更远,机器人18’被迫对于门槛采取越过航点或在航点处停顿的路线。因此,避开了机器人通常会采取的不太希望的但可能更可能的路线。
服务器可以是能够跟踪仓库内的机器人和/或人类操作员活动的任何服务器或计算装置,包括例如仓库管理系统15、订单服务器14、独立服务器、服务器的网络、云、机器人平板48的处理器和存储器、机器人18的基部20的处理器和存储器、包括至少两个机器人平板48和/或基部20的存储器和处理器的分布式系统。在一些实施例中,航点信息能够被从机器人监控服务器902自动地推送给机器人18。在其他实施例中,能够响应于来自机器人18的请求来发送航点信息。
因此,导航管理系统和方法能够有利地引导机器人更高效地穿过已经被划分成区的导航空间,其中碰撞风险较低,并且能够防止机器人任务完成方面的低效延迟。
非限制性示例计算装置
图10是依照如以上参照图1-9描述的各种实施例的如能够使用的示例性计算装置1210或其部分的框图。计算装置1210包括用于存储用于实现示例性实施例的一个或更多个计算机可执行指令或软件的一个或更多个非暂时性计算机可读介质。非暂时性计算机可读介质可以包括但不限于一种或更多种类型的硬件存储器、非暂时性有形介质(例如,一个或更多个磁性存储盘、一个或更多个光盘、一个或更多个闪存驱动器)等。例如,包括在计算装置1210中的存储器1216能够存储用于执行本文公开的操作的计算机可读和计算机可执行指令或软件。例如,存储器能够存储被编程为执行如关于图1-9所讨论的各种所公开的操作的软件应用1240。计算装置1210还能够包括可配置和/或可编程处理器1212和相关核1214,并且可选地包括一个或更多个额外可配置和/或可编程处理器件,例如,处理器1212'和相关核1214'(例如,在计算装置具有多个处理器/核的情况下),以用于执行存储在存储器1216中的计算机可读和计算机可执行指令或软件以及用于控制系统硬件的其他程序。处理器1212和处理器1212'可以各自是单核处理器或多核(1214和1214')处理器。
能够在计算装置1210中采用虚拟化,使得能够动态地共享计算装置中的基础设施和资源。能够提供虚拟机1224来处理在多个处理器上运行的进程,使得该进程看起来正在使用仅一个计算资源而不是多个计算资源。也能够用一个处理器来使用多个虚拟机。
存储器1216能够包括计算装置存储器或随机存取存储器,诸如但不限于DRAM、SRAM、EDO RAM等。存储器1216也能够包括其他类型的存储器、或它们的组合。
用户能够通过诸如计算机监视器的视觉显示装置1201(111A-D)与计算装置1210交互,该视觉显示装置1201能够显示能够依照示例性实施例提供的一个或更多个用户界面1202。计算装置1210能够包括用于从用户接收输入的其他I/O装置,例如,键盘或任何合适的多点触摸接口1218、指点装置1220(例如,鼠标)。键盘1218和指点装置1220能够耦接到视觉显示装置1201。计算装置1210能够包括其他合适的常规I/O外围装置。
计算装置1210也能够包括一个或更多个存储装置1234,诸如但不限于硬盘、CD-ROM、或其他计算机可读介质,以用于存储执行本文公开的操作的数据和计算机可读指令和/或软件。示例性存储装置1234也能够存储用于存储实现示例性实施例所需要的任何合适的信息的一个或更多个数据库。能够在任何合适的时间手动地或自动地更新数据库以添加、删除和/或更新数据库中的一个或更多个项目。
计算装置1210能够包括被配置为通过各种连接经由一个或更多个网络装置1232来与一个或更多个网络(例如,局域网(LAN)、广域网(WAN)或互联网)接口的网络接口1222,该各种连接包括但不限于标准电话线、LAN或WAN链路(例如,802.11、T1、T3、56kb、X.25)、宽带连接(例如,ISDN、帧中继、ATM)、无线连接、控制器区域网络(CAN)、或上述中的任一者或全部的某种组合。网络接口1222能够包括内置网络适配器、网络接口卡、PCMCIA网卡、卡总线网络适配器、无线网络适配器、USB网络适配器、调制解调器、或适合于将计算装置1210接口到能够通信并执行本文描述的操作的任何类型的网络的任何其他装置。此外,计算装置1210可以是任何计算装置,诸如工作站、台式计算机、服务器、膝上型电脑、手持计算机、平板计算机、或能够通信并具有足够的处理器能力和存储器容量来执行本文描述的操作的其他形式的计算或电信装置。
计算装置1210能够运行任何操作系统1226,诸如以下中的任一者:操作系统(微软,华盛顿雷德蒙德)的任何版本、Unix和Linux操作系统的不同发行版本、用于Macintosh计算机的MAC/>(苹果公司,加利福尼亚州库比蒂诺)操作系统的任何版本、任何嵌入式操作系统、任何实时操作系统、任何开源操作系统、任何专有操作系统、或能够在计算装置上运行并执行本文描述的操作的任何其他操作系统。在示例性实施例中,能够在本机模式或仿真模式下运行操作系统1226。在示例性实施例中,能够在一个或更多个云机器实例上运行操作系统1226。
图11是某些分布式实施例的示例计算装置框图。尽管图1-9和以上示例性讨论的部分参考了各自在各个或公共计算装置上工作的仓库管理系统15、订单服务器14或机器人跟踪服务器902,但是一个人将认识到,仓库管理系统15、订单服务器14或机器人导航服务器902中的任何一者可以替代地跨网络1305分布在分开的服务器系统1301a-d中,并且可能分布在诸如信息亭、台式计算机装置1302或移动计算机装置1303的用户系统中。例如,订单服务器14可以分布在机器人18的平板48之中。在一些分布式系统中,仓库管理系统软件和/或订单服务器软件中的任何一者或更多者的模块能够分开地位于服务器系统1301a-d上并且能够跨网络1305彼此通信。
虽然本发明的上述描述使得普通技术人员能够做出和使用目前被认为是其最佳模式的东西,但是普通技术人员将理解和领会在本文中存在特定实施例和示例的变化、组合和等同形式。本发明的上述实施例旨在仅为示例。本领域的技术人员可以在不背离本发明的范围的情况下对特定实施例实现变更、修改和变化,本发明的范围仅由所附权利要求限定。本发明因此不受上述实施例和示例限制。
在已经描述了本发明及其优选实施例后,声称为新的且由专利证书担保的内容是。
Claims (25)
1.一种用于将自主机器人从环境内的第一区导航到相邻的第二区的方法,所述方法包括:
由服务器定义所述环境内的所述第一区和第二区、沿着所述第一区与所述第二区之间的边界的门槛和与所述门槛相关联的航点;
为所述自主机器人确定跨越所述门槛从所述第一区到所述第二区的路线,所述路线包括所述航点;以及
沿着从所述第一区到所述第二区的所述路线为所述机器人导航,包括与跨越所述门槛相结合地穿越所述航点。
2.根据权利要求1所述的方法,其中,所述航点由航点位姿定义,并且确定路线的步骤包括确定到所述航点位姿的路线分段。
3.根据权利要求2所述的方法,其中,穿越所述航点的步骤包括穿越所述航点位姿而不在所述航点位姿处停顿或在跨越所述门槛之前在所述航点位姿处停顿。
4.根据权利要求1所述的方法,其中,所述航点与所述门槛隔开一定距离或者沿着所述门槛位于所述边界上。
5.根据权利要求1所述的方法,所述方法还包括:由所述服务器定义与所述门槛相关联的第二航点,所述航点和所述第二航点位于所述门槛的相对侧。
6.根据权利要求1所述的方法,其中,两个相邻区之间的所述边界是物理屏障,并且所述门槛位于所述物理屏障中的开口处。
7.根据权利要求1的方法,其中,两个相邻区之间的所述边界是虚拟屏障,并且所述门槛是沿着所述虚拟屏障定义的位置。
8.根据权利要求1所述的方法,所述方法还包括:由所述服务器定义沿着相邻区之间的所述边界的第二门槛,以及与所述第二门槛相关联的第二航点。
9.根据权利要求1所述的方法,所述方法还包括:由所述服务器将所述门槛定义为允许机器人在第一方向上通行,并且将沿着相邻区之间的所述边界的第二门槛定义为允许机器人在与所述第一方向相反的方向上通行。
10.根据权利要求1所述的方法,所述方法还包括:由所述机器人加入等待通过所述门槛的机器人的队列。
11.根据权利要求1所述的方法,所述方法还包括:由所述机器人用相机、激光探测器或雷达探测器、或它们的组合来探测所述门槛中的障碍物。
12.根据权利要求1所述的方法,其中,每一个所述区是安全区域、温度控制区域、仓库区域、或具有与相邻区域不同的高度的区域、或它们的组合。
13.一种用于将自主机器人从环境内的第一区导航到相邻的第二区的系统,所述系统包括:
服务器,所述服务器被配置为:定义所述环境内的所述第一区和所述第二区、沿着所述第一区与第二区之间的边界的门槛和与所述门槛相关联的航点;
自主机器人,所述自主机器人与所述服务器通信,所述机器人包括处理器和存储器,所述存储器存储有指令,所述指令在由所述处理器执行时,使所述机器人:
确定跨越所述门槛从所述第一区到所述第二区的路线,所述路线包括所述航点;以及
沿着从所述第一区到所述第二区的所述路线为所述机器人导航,包括与跨越所述门槛相结合地穿越所述航点。
14.根据权利要求13所述的系统,其中,所述航点由航点位姿定义,并且所述存储器还存储有指令,所述指令在由所述处理器执行时,使所述自主机器人确定到所述航点位姿的路线分段。
15.根据权利要求13所述的系统,其中,所述存储器还存储有指令,所述指令在由所述处理器执行时,使所述机器人穿越航点位姿而不在所述航点位姿处停顿或在跨越所述门槛之前在所述航点位姿处停顿。
16.根据权利要求13所述的系统,其中,所述航点与所述门槛隔开一定距离或者沿着所述门槛位于所述边界上。
17.根据权利要求13所述的系统,其中,所述服务器被配置为:定义与所述门槛相关联的第二航点,所述航点和所述第二航点位于所述门槛的相对侧。
18.根据权利要求13所述的系统,其中,所述两个相邻区之间的所述边界是物理屏障,并且所述门槛位于所述物理屏障中的开口处。
19.根据权利要求13所述的系统,其中,所述两个相邻区之间的所述边界是虚拟屏障,并且所述门槛是沿着所述虚拟屏障定义的位置。
20.根据权利要求13所述的系统,其中,所述服务器被配置为:定义沿着两个相邻区之间的所述边界的第二门槛,以及与所述第二门槛相关联的第二航点。
21.根据权利要求13所述的系统,其中,所述机器人导航服务器被配置为:将所述门槛定义为允许机器人在第一方向上通行,并且将沿着所述第一区与所述第二区之间的所述边界的第二门槛定义为允许机器人在与所述第一方向相反的方向上通行。
22.根据权利要求13所述的系统,其中,所述存储器还存储有指令,所述指令在由所述处理器执行时,使所述自主机器人加入等待通过所述门槛的机器人的队列。
23.根据权利要求13所述的系统,其中,所述存储器还存储有指令,所述指令在由所述处理器执行时,使所述自主机器人用相机、激光探测器或雷达探测器、或它们的组合来探测所述门槛中的障碍物。
24.根据权利要求13所述的系统,其中,每一个所述区是安全区域、温度控制区域、仓库区域、或具有与相邻区域不同的高度的区域、或它们的组合。
25.根据权利要求13所述的系统,其中,所述服务器还包括以下中的一者或更多者:仓库管理系统、订单服务器、独立服务器、包括多个机器人中的至少两个机器人的存储器的分布式系统、或它们的组合。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/017,801 US20220083062A1 (en) | 2020-09-11 | 2020-09-11 | Robot navigation management between zones in an environment |
US17/017,801 | 2020-09-11 | ||
PCT/US2021/049553 WO2022056056A1 (en) | 2020-09-11 | 2021-09-09 | Robot navigation management between zones in an environment |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116583801A true CN116583801A (zh) | 2023-08-11 |
Family
ID=78074008
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180076038.5A Pending CN116583801A (zh) | 2020-09-11 | 2021-09-09 | 环境中各区之间的机器人导航管理 |
Country Status (8)
Country | Link |
---|---|
US (1) | US20220083062A1 (zh) |
EP (1) | EP4196861A1 (zh) |
JP (1) | JP2023540813A (zh) |
KR (1) | KR20230084504A (zh) |
CN (1) | CN116583801A (zh) |
AU (1) | AU2021339659B2 (zh) |
CA (1) | CA3192437A1 (zh) |
WO (1) | WO2022056056A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4348380A1 (en) * | 2021-06-04 | 2024-04-10 | Boston Dynamics, Inc. | Directed exploration for navigation in dynamic environments |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7657468B1 (en) * | 2002-10-22 | 2010-02-02 | PPI Technology Services, LP | Method for continuous asset verification |
KR20090077547A (ko) * | 2008-01-11 | 2009-07-15 | 삼성전자주식회사 | 이동 로봇의 경로 계획 방법 및 장치 |
US10513033B2 (en) * | 2016-03-25 | 2019-12-24 | Locus Robotics Corp. | Robot queuing in order fulfillment operations |
CN107390689B (zh) * | 2017-07-21 | 2019-05-14 | 北京图森未来科技有限公司 | 实现车辆自动运输的系统及方法、相关设备 |
US10429847B2 (en) | 2017-09-22 | 2019-10-01 | Locus Robotics Corp. | Dynamic window approach using optimal reciprocal collision avoidance cost-critic |
US10386851B2 (en) | 2017-09-22 | 2019-08-20 | Locus Robotics Corp. | Multi-resolution scan matching with exclusion zones |
CN107981790B (zh) * | 2017-12-04 | 2020-06-09 | 深圳市无限动力发展有限公司 | 室内区域划分方法及扫地机器人 |
WO2019136019A1 (en) * | 2018-01-05 | 2019-07-11 | Irobot Corporation | Mapping, controlling, and displaying networked devices with a mobile cleaning robot |
CN109316134B (zh) * | 2018-11-12 | 2021-07-30 | 上海岚豹智能科技有限公司 | 一种扫地机的清扫方法和扫地机 |
-
2020
- 2020-09-11 US US17/017,801 patent/US20220083062A1/en active Pending
-
2021
- 2021-09-09 AU AU2021339659A patent/AU2021339659B2/en active Active
- 2021-09-09 JP JP2023516146A patent/JP2023540813A/ja active Pending
- 2021-09-09 CA CA3192437A patent/CA3192437A1/en active Pending
- 2021-09-09 KR KR1020237012073A patent/KR20230084504A/ko unknown
- 2021-09-09 CN CN202180076038.5A patent/CN116583801A/zh active Pending
- 2021-09-09 WO PCT/US2021/049553 patent/WO2022056056A1/en active Application Filing
- 2021-09-09 EP EP21786305.9A patent/EP4196861A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4196861A1 (en) | 2023-06-21 |
AU2021339659B2 (en) | 2024-10-10 |
WO2022056056A1 (en) | 2022-03-17 |
US20220083062A1 (en) | 2022-03-17 |
KR20230084504A (ko) | 2023-06-13 |
CA3192437A1 (en) | 2022-03-17 |
AU2021339659A1 (en) | 2023-04-20 |
JP2023540813A (ja) | 2023-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102502325B1 (ko) | 컨텍스트 증강 맵 계층을 제공하기 위한 구역 엔진 | |
KR102580084B1 (ko) | 로봇 혼잡 관리 | |
CN110998620B (zh) | 排队完成订单操作的机器人 | |
JP7179192B2 (ja) | ロボット支援人員ルーティング | |
JP2023541405A (ja) | 注文の物品に対して機能を実行する順序の調整 | |
AU2021339659B2 (en) | Robot navigation management between zones in an environment | |
KR102580082B1 (ko) | 근접 로봇 물체 검출 및 회피 |
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 |