CN114341760A - 用于定位和路径规划的传感器融合 - Google Patents
用于定位和路径规划的传感器融合 Download PDFInfo
- Publication number
- CN114341760A CN114341760A CN202080062119.5A CN202080062119A CN114341760A CN 114341760 A CN114341760 A CN 114341760A CN 202080062119 A CN202080062119 A CN 202080062119A CN 114341760 A CN114341760 A CN 114341760A
- Authority
- CN
- China
- Prior art keywords
- electronic device
- sensors
- area
- path
- location
- 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
- 230000004927 fusion Effects 0.000 title description 7
- 230000033001 locomotion Effects 0.000 claims abstract description 65
- 238000000034 method Methods 0.000 claims description 311
- 238000005259 measurement Methods 0.000 claims description 52
- 244000025254 Cannabis sativa Species 0.000 claims description 35
- 230000004044 response Effects 0.000 claims description 28
- 238000001514 detection method Methods 0.000 claims description 11
- 239000003550 marker Substances 0.000 claims 2
- 230000008569 process Effects 0.000 description 105
- 238000013507 mapping Methods 0.000 description 42
- 238000010586 diagram Methods 0.000 description 35
- 230000006870 function Effects 0.000 description 27
- 101100206395 Caenorhabditis elegans tag-250 gene Proteins 0.000 description 20
- 238000004891 communication Methods 0.000 description 14
- 230000003068 static effect Effects 0.000 description 14
- 238000012545 processing Methods 0.000 description 13
- 238000009966 trimming Methods 0.000 description 11
- 230000036961 partial effect Effects 0.000 description 7
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 7
- 241001465754 Metazoa Species 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000005520 cutting process Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000004807 localization Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 239000000428 dust Substances 0.000 description 3
- 238000003032 molecular docking Methods 0.000 description 3
- 239000002245 particle Substances 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 2
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 238000013138 pruning Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 239000011435 rock Substances 0.000 description 2
- 230000009182 swimming Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 244000144972 livestock Species 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000000059 patterning Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000002689 soil Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000014616 translation Effects 0.000 description 1
- 235000019801 trisodium phosphate Nutrition 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01D—HARVESTING; MOWING
- A01D34/00—Mowers; Mowing apparatus of harvesters
- A01D34/006—Control or measuring arrangements
- A01D34/008—Control or measuring arrangements for automated or remotely controlled operation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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/0227—Control of position or course in two dimensions specially adapted to land vehicles using mechanical sensing means, e.g. for sensing treated area
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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/027—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
- G05D1/028—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal
-
- G05D1/241—
-
- G05D1/246—
-
- G05D1/617—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/251—Fusion techniques of input or preprocessed data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/803—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of input or preprocessed data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01D—HARVESTING; MOWING
- A01D2101/00—Lawn-mowers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/10—Recognition assisted with metadata
Abstract
一种电子设备,其包括配置为生成运动信息的第一组传感器。电子设备还包括配置为从多个锚定点接收信息的第二组传感器。电子设备还包括配置为生成供电子设备在区域内行驶的路径的处理器。处理器配置为接收运动信息。处理器配置为基于接收的信息生成测距信息。当电子设备沿着路径行驶时,处理器配置为基于运动信息来识别电子设备在区域内的位置和前进方向。处理器配置为基于测距信息来修改电子设备的位置和前进方向的估计值。处理器配置为基于位置和前进方向来根据路径在区域内行驶。
Description
技术领域
本公开总体上涉及自主机器人和控制自主机器人的方法。更具体地,本公开涉及自主剪草机的标测(mapping)和定位。
背景技术
执行诸如地板清洁、游泳池清洁和草坪修剪的住宅功能的自主机器人现在是易得的消费产品。可以对自主机器人进行编程以修剪草坪区域。机器人剪草机是用于修剪草坪的草的自主机器人。必须注意防止此类机器人在预期区域之外进行剪草,并且避免在待剪草区域内出现永久性的和动态的障碍物。
发明内容
技术问题
本公开的实施例提供用于控制电子设备的系统和方法。在某些实施例中,电子设备是横贯(traverse)区域并修剪草的自动剪草机、横贯区域以收集污垢和碎屑的地板清洁器(诸如真空清洁器或拖把)、或者横贯区域以收集污垢和碎屑的水池清洁器。电子设备可以通过识别在电子设备横贯区域时的轨迹来执行覆盖区路径规划。应当注意,区域可以是包括草坪的院子。例如,草坪是院子内的草地区域。院子还可以包括不具有草的区域,并且自动剪草机要避开这些区域,这些区域诸如树木、花坛、水体、由于海拔的突然变化而导致的陡降等。自动剪草机可以识别覆盖区路径,从而允许电子设备横贯草坪以便修剪草坪的草,同时避开院子的不要被横贯的区域。
问题的解决方案
本公开提供了用于定位和路径规划的传感器融合。
在一个实施例中,提供了一种电子设备。该电子设备包括可操作地连接到第一组传感器和第二组传感器的处理器。第一组传感器配置为生成运动信息。第二组传感器配置为从位于遍布区域的固定位置处的多个锚定点接收信息。处理器配置为生成供电子设备在区域内行驶的路径。处理器还配置为从第一组传感器接收运动信息。处理器还配置为基于经由第二组传感器从多个锚定点接收的信息来生成测距信息。当电子设备沿着路径行驶时,处理器配置为基于运动信息来识别电子设备在区域内的位置和前进方向。此外,处理器配置为基于测距信息来修改电子设备的位置和前进方向。处理器还配置为基于电子设备的位置和前进方向来控制电子设备根据路径在区域内行驶。
在另一个实施例中,提供了一种用于控制电子设备的方法。该方法包括生成供电子设备在区域内行使的路径。该方法还包括从第一组传感器接收运动信息。该方法还包括基于经由第二组传感器从位于遍布区域的固定位置处的多个锚定点接收的信息来生成测距信息。当电子设备沿着路径行驶时,该方法还包括基于运动信息来识别电子设备在区域内的位置和前进方向。该方法还包括基于测距信息来修改电子设备的位置和前进方向。此外,该方法包括基于电子设备的位置和前进方向来控制电子设备根据路径在区域内行驶。
根据以下附图、描述和权利要求书,本领域的技术人员可以容易明白其它技术特征。
在进行以下详细描述之前,阐述贯穿本专利文献中使用的某些词语和短语的定义可能是有利的。术语“联接”及其派生词是指两个或更多元件之间的任何直接或间接的通信,不管这些元件是否彼此物理接触。术语“发送”、“接收”和“通信”及其派生词涵盖直接和间接通信。术语“包括”和“包含”及其派生词意味着包括但不限于。术语“或”是包含性的,意指和/或。短语“与……相关联”及其派生词意指包括、被包括在……内、与……互连、包含、被包含在……内、连接到……或与……连接、联接到……或与……联接、可与……通信、与……协作、交错、并列、与……紧邻、被结合到……或与……结合、具有、具有……特性、与……有关系或具有与……的关系等。术语“控制器”是指控制至少一个操作的任何设备、系统或其部分。这种控制器可以以硬件或硬件和软件和/或固件的组合实现。无论是本地的还是远程的,与任何特定控制器相关联的功能可以是集中式或分布式。短语“至少一个”,当与项目列表一起使用时,意味着可使用所列项目中的一个或更多的不同组合,并且可以仅需列表中的一个项目。例如,“A、B和C中的至少一个”包括以下组合中的任何一个:A、B、C、A和B、A和C、B和C以及A和B和C。
此外,下文所描述的各种功能可以由一个或更多计算机程序实施或支持,每个计算机程序由计算机可读程序代码形成并体现于计算机可读介质中。术语“应用”和“程序”是指适于以合适的计算机可读程序代码实施的一个或更多计算机程序、软件组件、指令集、过程、功能、对象、分类、实例、相关数据或其一部分。短语“计算机可读程序代码”包括任何类型的计算机代码,包括源代码、目标代码和可执行代码。短语“计算机可读介质”包括能由计算机访问的任何类型的介质,诸如只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器、光盘(CD)、数字视频光盘(DVD)或任何其它类型的存储器。“非暂时性”计算机可读介质排除了传输瞬时电信号或其它瞬时信号的有线、无线、光或其它通信链路。非暂时性计算机可读介质包括能永久存储数据的介质,以及能存储数据并随后重写数据的介质,诸如可重写光盘或可擦除存储器设备。
贯穿本专利文献提供了其它某些词语和短语的定义。本领域的普通技术人员应当理解,在许多情况(如果不是大多数情况)下,此类定义适用于如此定义的词语和短语的先前以及将来使用。
发明的有益效果
根据本公开的实施例,电子设备执行路径规划,然后横贯规划的路径,使得草坪的极少区域不被横贯。根据本公开的实施例,电子设备还执行使用最少电池的覆盖区路径规划。根据本公开的实施例,电子设备能够区分不同类型的边界并且可以相应地沿边界导航。根据本公开的实施例,电子设备还可以识别新的障碍物并在其周围导航,诸如躺在预先识别的覆盖区路径中的宠物。
本公开的实施例使电子设备能够利用该区域来定位自己。定位包括电子设备的X-Y坐标位置和前进方向。在某些实施例中,使用多个传感器来识别定位和前进方向。示例性传感器包括但不限于双向测距系统(诸如超宽带(UWB)频率)、全球定位系统(GPS)、轮子编码器和惯性测量单元(IMU)。来自各种传感器的数据可以融合在一起以用于生成的定位估计值。此外,来自不同定位模型的数据可以被一起使用以生成改进的位置估计值。在某些实施例中,可以在整个院子中放置诸如固定基础设施的锚定点,以通过诸如UWB双向测距的双向测距系统来提高定位精度。本公开的实施例还包括用于基于定位精度的估计值来修改某些类型的覆盖区路径规划的方法,该定位精度是通过使用不同的定位公式而获得的,该不同的定位公式可利用多个传感器得到。
此外,本公开的实施例描述了生成路径规划,该路径规划引导电子设备在减少的时间内覆盖院子的增加的区域。此外,通过减少电子设备横贯该区域的时间,可以有效提高锚定点电池的寿命。除了减少电子设备的操作时间之外,本公开的实施例还描述了延长锚定点电池的寿命的方法。例如,基于一个或更多触发事件,本公开的实施例包括用于将锚定点置于功率节省模式以延长锚定点的电池的系统和方法(如果锚定点由电池供电,而不是直接从电网接收电力)。
每次电子设备避开动态障碍物(新的障碍物)时,它可能没有横贯特定区域。例如,当电子设备为自动剪草机时,当自动剪草机避开先前未知的障碍物时(诸如在沿着覆盖区路径检测到动物或人或新的花园时),自动剪草机可能会留下一些未修剪的区域。因此,本公开的实施例提供了用于在最初规划的路径结束时修剪由于动态障碍物或路径跟踪失败而导致的所有未修剪区域的系统和方法。例如,自动剪草机可以使用有限视野马尔可夫决策过程或旅行商问题的解决方案,以便重新规划到未修剪区域的路径。
本公开的实施例还提供用于修剪靠近边界的区域的系统和方法。在某些实施例中,电子设备可以识别不同类型的边界。基于边界的类型,电子设备可以确定是横贯边界线本身还是保持在边界内(并且不跨越边界线)。
此外,本公开的实施例提供用于基于收集关于区域本身的信息(诸如边界和永久障碍物的位置)来生成所规划路径的系统和方法。为了生成横贯该区域的路径,电子设备首先生成该区域的初始地图。为了生成该区域的初始地图,电子设备识别外部边界以及边界内的永久障碍物的位置。该区域的边界是草坪的外围(防止电子设备越界进入私有财产区)。障碍物可以包括树木、灌木、装饰性岩石、雕塑、固定装置、花坛、水体等,电子设备无法避开或被指示避免横贯这些障碍物。在某些实施例中,电子设备可以识别该区域的边界,而无需使用沿边界本身定位的栅栏或传感器。
附图说明
为了更全面地理解本公开及其优点,现在参考结合附图的以下描述,在附图中相似的附图标记表示相似部分,其中:
图1示出根据本公开的实施例的示例性电子设备;
图2A示出包括根据本公开的实施例的电子设备和锚定点的示例性环境;
图2B示出根据本公开的实施例的电子设备上的示例性传感器布置;
图2C示出根据本公开的实施例的电子设备的示例性框图;
图3A示出根据本公开的实施例的获取信息以识别电子设备的位置的示例性方法;
图3B示出根据本公开的实施例的用于识别电子设备的位置的示例性方法;
图3C、图3D和图3E示出根据本公开的实施例的用于融合传感器数据以识别电子设备的位置的示例性方法;
图4A和图4B示出根据本公开的实施例的用于传感器更新的示例性方法;
图5A示出根据本公开的实施例的电子设备在区域内的示例性图;
图5B和图5C示出根据本公开的实施例的用于选择噪声方差的示例性方法;
图5D示出根据本公开的实施例的用于选择噪声方差的示例性曲线图;
图5E示出根据本公开的实施例的部分测量损失的示例;
图5F示出根据本公开的实施例的用于计算部分测量损失的曲线图;
图6A示出根据本公开的实施例的带有障碍物的示例性区域;
图6B和图6C示出根据本公开的实施例的用于横贯该区域的示例性方法;
图6D示出根据本公开的实施例的用于识别未修剪区域的示例性方法;
图6E示出根据本公开的实施例的根据图6D的方法的示例性未修剪区域;
图6F示出根据本公开的实施例的在未修剪位置内行进的示例性方法;
图7A示出根据本公开的实施例的示例性路径规划;
图7B和图7C示出根据本公开的实施例的用于识别定位精度的示例性方法;
图8A示出根据本公开的实施例的用于修改路径的用户辅助的示例性方法;
图8B示出根据本公开的实施例的基于图8A的方法的示例性经修改路径规划;
图9A示出根据本公开的实施例的基于边界类型的路径规划的示例性方法;
图9B示出根据本公开的实施例的基于软边界的示例性路径;
图9C示出根据本公开的实施例的基于硬边界的示例性路径;
图10A示出根据本公开的实施例的示例性功耗曲线图;
图10B示出根据本公开的实施例的传感器的部件的示例性框图;
图10C示出根据本公开的实施例的用于功率节省触发事件的示例性方法;
图11A和图11B示出根据本公开的实施例的用于标测区域的示例性方法;
图11C示出根据本公开的实施例的具有带有起始点的多个部分的区域的示例;
图11D示出根据本公开的实施例的、电子设备识别某些区域的示例性图;
图11E示出根据本公开的实施例的、电子设备基于螺旋图案执行边界和障碍物标测的示例性图;
图11F示出根据本公开的实施例的用于检测区域的边界的示例性图;
图11G示出根据本公开的实施例的用于检测障碍物的示例性图;
图11H示出根据本公开的实施例的用于边界和障碍物标测的示例性方法;
图11I示出根据本公开的实施例的用于障碍物标测的示例性方法;
图11J、图11K和图11L示出根据本公开的实施例的用于边界标测的示例性方法;以及
图12示出根据本公开的实施例的用于控制电子设备的示例性方法。
具体实施方式
下文所论述的图1至图12以及本专利文献中的用于描述本公开的原理的各种实施例仅仅是为了举例说明,而不应以任何方式解释为限制本公开的范围。本领域技术人员将理解,本公开的原理可以在任何适当布置的系统或设备中实现。
本公开的实施例提供用于控制电子设备的系统和方法。在某些实施例中,电子设备是横贯区域并修剪草的自动剪草机、横贯区域以收集污垢和碎屑的地板清洁器(诸如真空清洁器或拖把)、或者横贯区域以收集污垢和碎屑的水池清洁器。电子设备可以通过识别在电子设备横贯通过区域时的轨迹来执行覆盖区路径规划。应当注意,区域可以是包括草坪的院子。例如,草坪是院子内的草地区域。院子还可以包括不包括草的区域,并且自动剪草机要避开这些区域,这些区域诸如树木、花坛、水体、由于海拔的突然变化而导致的陡坡等。自动剪草机可以识别覆盖区路径,从而允许电子设备横贯草坪以便修剪草坪的草,同时避开院子的不要被横贯的区域。
根据本公开的实施例,电子设备执行路径规划,然后横贯规划的路径,使得草坪的极少区域不被横贯。根据本公开的实施例,电子设备还执行使用最少电池的覆盖区路径规划。根据本公开的实施例,电子设备能够区分不同类型的边界并且可以相应地对边界进行导航。根据本公开的实施例,电子设备还可以识别新的障碍物并在其周围导航,诸如躺在预先识别的覆盖区路径中的宠物。
本公开的实施例使电子设备能够利用该区域来定位自己。定位包括电子设备的X-Y坐标位置和前进方向。在某些实施例中,使用多个传感器来识别定位和前进方向。示例性传感器包括但不限于双向测距系统(诸如超宽带(UWB)频率)、全球定位系统(GPS)、轮子编码器和惯性测量单元(IMU)。来自各种传感器的数据可以融合在一起以用于生成定位估计值。此外,来自不同定位模型的数据可以一起使用以生成改进的位置估计值。在某些实施例中,可以在整个院子中放置诸如固定基础设施的锚定点,以通过诸如UWB双向测距的双向测距系统来提高定位精度。本公开的实施例还包括用于基于定位精度的估计值来修改某些类型的覆盖区路径规划的方法,该定位精度是通过使用不同的定位公式而获得的,这些不同的定位公式可利用多个传感器获得。
此外,本公开的实施例描述了生成路径规划,该路径规划引导电子设备在减少的时间内覆盖院子的增加的区域。此外,通过减少电子设备横贯该区域的时间,可以有效提高锚定点电池的寿命。除了减少电子设备的操作时间之外,本公开的实施例还描述了延长锚定点电池的寿命的方法。例如,基于一个或更多触发事件,本公开的实施例包括用于将锚定点置于功率节省模式以延长锚定点的电池的系统和方法(如果锚定点由电池供电,而不是直接从电网接收电力)。
每次电子设备避开动态障碍物(新的障碍物)时,它可能没有横贯特定区域。例如,当电子设备为自动剪草机时,当自动剪草机避开以前未知的障碍物时(诸如在沿着覆盖区路径检测到动物或人或新的花园时),自动剪草机可能会留下一些未修剪的区域。因此,本公开的实施例提供了用于在最初规划的路径结束时修剪由于动态障碍物或路径跟踪失败而导致的所有未修剪区域的系统和方法。例如,自动剪草机可以使用有限视野马尔可夫决策过程或旅行商问题的解决方案,以便重新规划到未修剪区域的路径。
本公开的实施例还提供用于修剪靠近边界的区域的系统和方法。在某些实施例中,电子设备可以识别不同类型的边界。基于边界的类型,电子设备可以确定是横贯边界线本身还是保持在边界内(并且不跨越边界线)。
此外,本公开的实施例提供用于基于收集关于区域本身的信息(诸如边界和永久障碍物的位置)来生成规划路径的系统和方法。为了生成横贯该区域的路径,电子设备首先生成该区域的初始地图。为了生成该区域的初始地图,电子设备识别外部边界以及边界内的永久障碍物的位置。该区域的边界是草坪的周界(防止电子设备越界进入私有财产区)。障碍物可以包括树木、灌木、装饰性岩石、雕塑、固定装置、花坛、水体等,电子设备无法避开或被指示避免横贯这些障碍物。在某些实施例中,电子设备可以识别该区域的边界,而无需使用沿边界本身定位的栅栏或传感器。
图1示出根据本公开的实施例的示例性电子设备100。在一些实施例中,电子设备100是自动剪草机,其横穿诸如院子的部分区域以修剪草。在一些实施例中,电子设备100是横穿区域并收集灰尘、污垢和/或碎屑的自动真空吸尘器、自动拖把或水池清洁器。在其它实施例中,电子设备100能够横贯区域同时避开障碍物并执行特定功能。
如图1所示,电子设备100包括天线105、通信单元110、发射(TX)处理电路115、麦克风120和接收(RX)处理电路125。通信单元110可以包括例如射频(RF)收发器(诸如能够发送和接收UWB频率的传输器)、蓝牙收发器、WIFI收发器、ZIGBEE收发器、红外收发器等。电子设备100还包括扬声器130、处理器140、输入/输出(I/O)接口(IF)145、输入部150、显示器155、存储器160和传感器165。存储器160包括操作系统(OS)161、一个或更多应用162以及先前生成的路径信息163。
通信单元110从天线105接收从接入点(诸如锚定点(在下面的图2A中描述)、基站、WIFI路由器或蓝牙设备)或网络102(诸如WI-FI、蓝牙、蜂窝、5G、LTE、LTE-A、WiMAX或任何其它类型的无线网络)的其它设备发送的传入RF信号。通信单元110对传入RF信号进行下变频转换,以生成中频或基带信号。将中频或基带信号发送到RX处理电路125,该RX处理电路通过对基带或中频信号进行滤波、解码和/或数字化来生成经处理的基带信号。RX处理电路125将经处理的基带信号发送至扬声器130(诸如用于语音数据)或处理器140以用于进一步处理(诸如用于web浏览数据)。
TX处理电路115从麦克风120接收模拟或数字语音数据或从处理器140接收其它传出基带数据。传出基带数据可以包括网络数据、电子邮件或交互式视频游戏数据。TX处理电路115对传出基带数据进行编码、多路复用和/或数字化,以生成经处理基带或中频信号。通信单元110从TX处理电路115接收传出经处理的基带或中频信号并且将基带或中频信号上变频转换为经由天线105发射的RF信号。
处理器140可以包括一个或更多处理器或其它处理设备。处理器140可以执行存储在存储器160中的指令,诸如OS 161,以便控制电子设备100的整体操作。例如,处理器140可以根据公知的原理,通过通信单元110、RX处理电路125和TX处理电路115来控制正向信道信号的接收以及反向信道信号的发射。处理器140可以包括呈任何合适的布置的任何合适数量和类型的处理器或其它设备。例如,在一些实施例中,处理器140包括至少一个微处理器或微控制器。示例性类型的处理器140包括微处理器、微控制器、数字信号处理器、现场可编程门阵列、应用专用集成电路和离散电路。
处理器140还能够执行驻留在存储器160中的其它过程和程序,诸如通过提供位置信息等来接收、存储和定时指示的操作。处理器140可以根据执行处理的需要,将数据移入或移出存储器160。在一些实施例中,处理器140配置为基于OS 161或响应于从外部源或操作者接收的信号来执行多个应用162。例如,应用162可以包括位置应用、物体避开应用等。处理器140还联接到I/O接口145,其向电子设备100提供连接到其它设备(诸如客户端设备106至114)的能力。I/O接口145是这些附件与处理器140之间的通信路径。
处理器140还联接到输入部150和显示器155。电子设备100的操作者可以使用输入部150来将数据或输入键入到电子设备100中。输入部150可以是键盘、触摸屏、鼠标、轨迹球、语音输入端、位于电子设备的外表面上的按钮或者能够充当用户接口以允许用户与电子设备100交互的其它设备。例如,输入部150可以包括来自诸如膝上型计算机、平板电脑、远程控制器、电器、一个或更多锚定点、台式个人计算机(PC)或任何其它电子设备的用户设备的无线传输。输入部150还可以取决于基于语音输入的语音识别处理。在另一个示例中,输入部150可以包括触摸面板、(数字)笔传感器、键或超声输入设备。触摸面板可以以诸如电容性方案、压敏方案、红外方案或超声方案中的至少一个方案识别例如触摸输入。输入部150可以通过向处理器140提供额外输入而与传感器165和/或相机相关联。在一些实施例中,传感器165包括一个或更多惯性测量单元(IMU)(诸如加速度计、陀螺仪和磁力计)、运动传感器、光学传感器、相机、压力传感器、GPS、轮子编码器、高度计等。输入部150还可以包括控制电路。在电容性方案中,输入部150可以识别触摸或接近。
显示器155可以是液晶显示器(LCD)、发光二极管(LED)显示器、有机LED(OLED)、有源矩阵OLED(AMOLED)或能够诸如从网站、视频、游戏和图像等渲染文本和/或图形的其它显示器。
存储器160联接到处理器140。存储器160的一部分可以包括RAM,并且存储器160的另一部分可以包括快闪存储器或其它ROM。存储器160可以包括表示能够存储和有助于信息(诸如数据、程序代码和/或其它合适的信息)的检索的任何结构的永久性存储装置(未示出)。存储器160可以包括支持更长期数据存储的一个或更多部件或设备,诸如只读存储器、硬盘驱动器、快闪存储器或光盘。
在某些实施例中,存储器还可以包括路径信息163。例如,路径信息163是所生成的电子设备的路径规划。也就是说,经由通信单元110使用一个或更多传感器165和UWB频率的电子设备100可以生成该区域的地图,该地图指示该区域的外部边界(或界限)以及内部障碍物。该区域的障碍物和外部边界可以被识别为永久的,使得从一个运行时间到下一个运行时间障碍物和外部边界不会改变。
电子设备100还包括一个或更多传感器165,该一个或更多传感器可以计量物理量以识别电子设备的位置以及电子设备100附近的障碍物,并将所计量或所检测到的信息转换成电信号。例如,传感器165可以包括用于触摸输入的一个或更多按钮、相机、姿态传感器、IMU传感器(诸如陀螺仪或陀螺仪传感器和加速度计)、轮子编码器、GPS、气压传感器、磁性传感器或磁力计、握持传感器、接近传感器、颜色传感器、生物物理传感器、温度/湿度传感器、照度传感器、紫外光(UV)传感器、肌电(EMG)传感器、脑电(EEG)传感器、心电(ECG)传感器、IR传感器、超声波传感器、虹膜传感器、指纹传感器等。传感器165还可以包括用于控制包括在其中的传感器中的任一个的控制电路。这些传感器165中的任一个都可以位于电子设备100内。
尽管图1示出电子设备的示例,但可以对图1进行各种改变。例如,图1中的各种部件可以组合、进一步细分或省略,并且可以根据特定需要添加附加部件。作为特定示例,处理器140可以划分为多个处理器,诸如一个或更多中央处理单元(CPU)。此外,如同计算和通信,电子设备和服务器可以有多种配置,并且图1并不将本公开限制于任何特定的电子设备。
图2A示出根据本公开的实施例的示例性环境200。环境200包括电子设备210。在某些实施例中,电子设备210可以代表图1的电子设备100。在其它实施例中,电子设备210中包括的部分部件可以包括在不同的设备中,诸如远程服务器或多个设备。图2B示出根据本公开的实施例的图260。图260示出电子设备210上的示例性传感器放置。图2C示出根据本公开的实施例的电子设备210的示例性框图。
环境200示出院子202内的电子设备210。如图所示的院子是一片草地。如图所示,电子设备210是自动剪草机,其在修剪草的同时横贯院子202。环境200包括锚定点204a、锚定点204b、锚定点204c和锚定点204d(统称为锚定点204)。信息206a在电子设备210与锚定点204a之间传输。信息206b在电子设备210与锚定点204b之间传输。信息206c在电子设备210与锚定点204c之间传输。信息206d在电子设备210与锚定点204d之间传输。
电子设备210包括标签250。标签250在锚定点204之间接收和发送信息206a、信息206b、信息206c和信息206d(统称为信息206)。在某些实施例中,电子设备210使用信息206来生成相距每个锚定点的测距信息。例如,电子设备210基于经由信息206识别的不同距离来识别其在院子202内的位置。
信息206可以是使用UWB测距的双向测距。UWB双向测距系统包括一个或更多锚定点,诸如位于院子202内的固定位置的锚定点204,以及一个或更多标签,诸如附接到电子设备210的标签250。UWB测距生成指示每个标签250与每个锚定点204之间的距离的测距信息。因此,当电子设备210在整个院子202中移动时,信息206用于对院子内的电子设备210进行三角测量和定位。在某些实施例中,可以使用其它测距系统,如在60GHz下运行或使用蓝牙或WiFi的那些。
标签250可以对来自锚定点204的测距信息进行轮询。接收轮询请求的锚定点204之后向标签250发送和提供测距信息。电子设备210(或标签250)之后使用测距信息来识别其在院子202内的位置。
在电子设备210上使用多个标签250可以增加电子设备的行进方向估计值。例如,每个标签可以用于标识其自己的位置和行进方向。基于环境,可以阻止一个或更多锚定点和/或一个或更多标签接收信息206。因此,利用电子设备210上的多个标签250和各种位置,诸如由电子设备210a到210i所示,可以提高测距信息的精度,因为每个标签250可以生成其自己的到一个或更多锚定点204的测距信息。图2B的图260示出标签250的各种数量和布置。
例如,电子设备210a包括位于中心前部的标签250。电子设备210b包括位于中心前部和中心后部的标签250。电子设备210c包括标签250,该标签呈三角形定位并向前方定位。电子设备210d包括位于中心后部的标签250。电子设备210e与电子设备210b类似,但标签250位于中心左侧和右侧。电子设备210f与电子设备210c类似,但标签250呈三角形定位并向前方定位。电子设备210g包括位于每个角落附近的标签250。电子设备210h包括四个标签250,而电子设备210i包括三个标签。
如上所述,电子设备210类似于图1的电子设备100。例如,图3的框图示出电子设备210的各种部件。电子设备210可以包括传感器220。传感器220可以类似于图1的传感器165。电子设备210还包括驱动系统230、定位生成器240和信息存储库245。
传感器220包括第一组传感器222、第二组传感器224和避障传感器226。例如,第一组传感器222可以包括一个或更多IMU和一个或更多轮子编码器。第一组传感器222用于识别电子设备210在区域内的位置(定位)。IMU传感器使用一个或更多传感器(诸如加速度计、陀螺仪等)来测量电子设备的力、角速率、取向。轮子编码器是这样一种类型的传感器,其对电机旋转的次数进行计数。轮子编码器的输出用于基于电机的每次旋转来识别电子设备210已行进的距离。应注意,由于环境问题,诸如当地面潮湿时,轮子可能会自由旋转,从而提供不正确的位置。例如,如果轮子自由旋转,则基于旋转次数测量的行进距离将与实际行进距离不同。
第二组传感器224可以包括图2A和图2B的标签250。第二组传感器224可以用于从位于整个区域的固定位置的多个锚定点204接收信息206。电子设备210可以基于信息206生成测距信息。可以基于标签的数量以及与锚定点通信的能力生成不同组测距信息。例如,测距信息的数量可以对应于电子设备210上的标签250的数量。
避障传感器226可以包括各种传感器以识别电子设备210与院子202内的物体之间的距离。避障传感器226可以包括任意数量的激光雷达传感器、彩色相机、超声波传感器等。例如,当电子设备210横贯院子202时,可以经由一个或更多避障传感器226检测新的障碍物,诸如玩具。因此,可以引导电子设备210避开该物体。
驱动系统230可以包括一个或更多轮子和电机,它们配置为在整个院子202中推动和操纵电子设备210。例如,驱动系统230可以包括两个或更多轮子,当它们由电机或驱动机构旋转时会推进电子设备穿过院子202。电机可以包括(i)从电池或燃料电池供电的电动机;(ii)由车载燃料源供电的内燃/外燃发动机;(iii)由上述动力源供电的液压/气动电机;(iv)压缩空气等。一个或更多轮子旋转以帮助导航或调整电子设备210的偏航。一个或更多轮子可以被单独地提供旋转动力以帮助导航或调整电子设备210的偏航。
定位生成器240使用来自第一组传感器222和第二组传感器224的信息来定位院子202内的电子设备210。定位生成器240可以融合来自各种传感器的位置信息以识别电子设备210在院子202内的位置。下面的图3A更详细地描述了定位生成器240。
信息存储库245表示能够存储和有助于信息(诸如数据、程序代码或者基于临时或永久原则的其它合适信息)的检索的任何合适结构。信息存储库245可以表示图1的存储器160。信息存储库245可以是RAM或任何其它合适的易失性或非易失性存储设备。信息存储库245可以是永久性存储装置,并且包括支持更长期数据存储的一个或更多部件或设备,诸如ROM、硬盘驱动器、快闪存储器或光盘。
在某些实施例中,信息存储库245包括生成的路径规划。路径规划可以在电子设备210的训练期间生成。路径规划可以包括院子的边界以及位于草坪内并且要避开的周边物体(诸如障碍物)。信息存储库245还可以指示边界的类型。例如,软边界可以是界址线之间的边界,因此电子设备210可以横贯边界本身。在另一示例中,硬边界是电子设备不应跨越的边界,诸如草坪与水体之间的边界。因此,在检测到硬边界时,电子设备210停留在院子内距边界线预定距离处。
基于定位生成器240、来自传感器220的信息,驱动系统230可以使电子设备沿着路径在区域内行驶。该路径可以包括横贯该区域的平行线。该路径可以包括螺旋形。螺旋路径可以从该区域的中心开始并向外朝向界限导航。替代性地,螺旋路径可以从该区域的边界开始并朝向中心导航。图7A示出平行和螺旋路径两者。
尽管图2A、图2B和图2C示出电子设备210及其环境,但是可以对图2A、图2B和图2C做出各种改变。例如,可以使用电子设备210的部件的任何其它合适的布置、任何数量的锚定点204或任何数量的传感器位置。
图3A示出根据本公开的实施例的获取信息以识别电子设备的位置的示例性方法300。图3B示出根据本公开的实施例的用于识别电子设备的位置的示例性方法310。图3C、图3D和图3E分别示出根据本公开的实施例的用于融合传感器数据以识别电子设备的位置的示例性方法320、330和340。方法300、310、320、330和340可以由图1的电子设备100和图2C的电子设备210的定位生成器执行。为了便于解释,方法300、310、320、330和340由电子设备210执行。
本公开的实施例考虑到电子设备210的定位精度可能由于恶劣的天气条件、潮湿的草坪或由于这些传感器的固件缺陷导致的数据丢失而降低。此外,UWB测距可能在锚定点204与标签250之间的非视线(NLOS)场景中受到影响,这会影响电子设备210到锚定点204的距离估计的精度。此外,可以帮助定位的第一组传感器222(如IMU或轮子编码器或GPS)也可能产生较差的结果,诸如当其中一个轮子由于草坪潮湿而打滑时。因此,根据本公开的实施例,图2C的定位生成器240将来自各种传感器220的结果融合在一起以生成准确的定位估计值,其中每个传感器补充其它传感器的缺点。例如,为了具有准确的前进方向(其对路径规划至关重要),某些实施例具有固定在电子设备210上的多个UWB标签250,这可以帮助提供前进方向估计值的稳健性,如上面在图2B中所讨论的。
图3A的方法300示出图2C的定位生成器240接收各种输入以识别电子设备210的位置。在某些实施例中,定位生成器240经由第一组传感器获得前进方向。在某些实施例中,定位生成器240还经由第二组传感器从一个或更多传感器获得测距信息。测距信息指示电子设备距区域中的一个或更多固定位置(诸如锚定点204)的位置。定位生成器240还可以从第一组传感器222、第二组传感器224或先前定位过程的输出生成一个或更多位置估计值。基于前进方向、测距信息和一个或更多位置估计值,定位生成器240识别电子设备210的位置和行进方向。
当存在多个传感器时,来自传感器的信息可以被划分以提供给运动和/或测量模型,从而产生不同的设计构思和性能结果。在一些实施例中,轮子编码器可以提供线速度,而IMU(诸如陀螺仪)可以提供运动模型中的角速度。在其它实施例中,轮子编码器可以提供角速度,而IMU(诸如加速度计)可以提供测量模型中的线速度估计值。
图3B的方法310示出图2C的定位生成器240不断地修改电子设备在该区域内的位置。例如,在步骤312中,定位生成器240基于运动来预测电子设备的位置。例如,使用诸如陀螺仪、轮子编码器、加速度计的第一组传感器222中的一个或更多,定位生成器240预测电子设备的位置。然后在步骤314中,定位生成器240基于经由从锚定点获得的测距信息所得的测量值来更新电子设备的状态或姿态。然后在步骤312中使用更新的状态来基于由第一组传感器222检测到的运动来进一步细化和预测电子设备的新位置。随着电子设备在整个区域中移动,该过程继续进行。
在某些实施例中,定位生成器240对第一组传感器222和第二组传感器224的结果进行滤波以识别电子设备的位置。例如,贝叶斯滤波器(Bayes filter)可以用于跟踪电子设备。Syntax(句法)(1)描述了使用贝叶斯滤波器的过程。
Syntax(1)
Bayes filter(bel(Xt-1),Ut,Zt)
for all Xt:
endfor
return bel(Xt)
在Syntax(1)中,Xt是电子设备在时间t的状态(姿态),Ut是控件(例如里程计信息),并且Zt是测量值(例如来自GPS或UWB测距系统)。电子设备210处于状态X,记为bel(X)。给定事件B的事件A的条件概率表示为p(A|B)。应注意,bel(X)=p(Xt|Xt-1,Ut,Zt)。
应注意,η是使bel(Xt)成为有效概率分布的归一化项。为了实现Syntax(1)的贝叶斯滤波器(可以使用流行的卡尔曼(Kalman)滤波或粒子滤波方法来完成),可以使用来自于测量模型的、驱动知识p(Zt|Xt)的模型以及来自于状态转换/运动模型的p(Xt|Ut,Xt-1)。
从多个传感器获得的信息连同它们的误差中的已知统计数据可以用于得出知识p(Zt|Xt)和p(Xt|Ut,Xt-1)。以下示例是如何导出知识。
为了将里程计信息(来自轮子编码器或IMU或两者)与GPS-RTK和/或UWB测距融合,可以使用以下模型。如果角速度和线速度可用,则可以使用公式(1)中描述的运动模型。在公式(1)中,(Xt,Yt)表示电子设备的X-Y坐标,并且θt是在时间t相对于锚定点坐标系的前进方向。线速度和角速度由υ′和ω′给出。
公式(1)
在某些实施例中,电子设备210可能无法取得线速度和角速度的准确值。测量的速度给出为其中ε1、ε2是测量中的噪声。运动模型可以近似如公式(2)所示。如公式(2)所示,N(0,Rt)是具有协方差Rt的高斯噪声。
公式(2)
公式(3)中描述了用于融合来自GPS和/或UWB测距的信息的另一种可能的测量模型。其中向量是电子设备的状态,是相对于与θ相同的坐标系的锚定点位置(假设有4个锚定点,但可以扩展到任意数量的锚定点),并且d是多个UWB标签在电子设备上的相对放置。
公式(3)
应注意,N(0,Qt)是具有已知协方差Qt的高斯噪声。此外,T是从全局世界坐标系到局部坐标系的已知变换矩阵(用于估计电子设备姿态)。函数h()将状态和关于锚定点和标签放置的其它元信息映射到测量值。对于UWB测距测量值rUWB,该函数计算标签与给定电子设备状态的锚定点的真实距离。对于GPS测量值rGPS,该函数给出仅作为状态本身的输出。
在某些实施例中,当电子设备210位于位置(x,y)时,两个标签定位如下。电子设备的姿态基于向量来描述,其中θ是基于第一标签与电子设备之间的距离(表示为d1)和第二标签与电子设备的距离(表示为d2)。标签1的位置可以表示为(x+d1cosθ,y+d1cosθ),而标签2的位置可以表示为(x-d2cosθ,y-d2cosθ)。
根据本公开的实施例,多个定位过程可以并行运行。通过并行运行多个定位过程,生成多个位置估计数据306。可以组合多个位置估计数据306以用于电子设备210的定位。
例如,可以组合来自第一标签250的测距信息、来自第二标签250的测距信息、以及GPS信号以生成表示为p(Zt|Xt)的单个估计值。类似地,来自轮子编码器和IMU的信息可以生成估计值p(Xt|Xt-1,Ut)。在这个示例中,Xt是状态并且由向量定义,并且U2由向量定义。然后可以将这些估计值组合以便定位。
公式(4)包括描述传感器融合过程的多个公式,该过程采用扩展卡尔曼滤波器并融合来自监听P个锚定点的K个UWB标签、直接提供位置估计值作为测量值的任何传感器或任何其它来源(例如GPS-RTK)的信息,并且里程表信息以线速度或角速度表示如下。扩展卡尔曼滤波器仅用于示例性目的,并且实施例也可以扩展到使用粒子滤波器或任何其它滤波器,如无迹卡尔曼滤波器。将S表示为状态空间的大小。在以下示例中,S=3,但通常状态空间可以具有除3以外的任何维度。
公式(4)
Lawn_mower_localization(剪草_机_定位)
∑=Gt∑t-1Gt 2+VtMtVt T,其中第一PK项对应于来自K个锚定点的UWB标签1的测量噪声,然后是来自K个锚定点的UWB标签2,依此类推。最后的S项来自GPS测量噪声的方差,或者来自直接提供位置估计值作为测量值的任何其它传感器或任何其它来源的方差。
Kt=∑Ht T(Ht∑Ht T+Qt)-1
在某些实施例中,可能需要动态调整的参数是和调整与如何将来自轮子编码器和IMU的信息融合在一起以为定位过程提供线速度和角速度估计值有关。的调整与了解由标签从其每个传感器获得的范围测量值的质量有关。质量可以通过视线(LOS)或NLOS场景进行量化,但不限于此。一些传感器在电子设备210上不可用也是可能的。例如,由于硬件或固件故障,一些传感器可能会不期望地停止为定位过程提供输入。因此,在这种情况下,可能需要切换到定位过程的替代变量。
此外,当用于推导运动模型的里程计信息不可得到时,还有替代公式。例如,可以存在基于公式的其它滤波器,其中运动模型不包括来自里程计的输入,如ν、ω,而是使用不依赖于ν、ω的知识的替代运动动态模型。针对另一示例,定位过程也可以存在基于非滤波的方法。例如,可以用非线性最小二乘法(NLS)或一般的非线性优化公式来解决仅使用UWB双向测距的定位问题。例如,公式(5)中描述了一种优化公式
公式(5)
如公式(5)所示,在锚定点索引上求和,并且Xa,i指示锚定点位置。X表示要定位的UWB标签的位置。这里,函数q(A)计算向量A到原点的距离,并且ri是从不同锚定点到标签的测距测量值。损失函数l(·)可以只是平方运算,也可以是任何其它函数。优化问题可以使用如Levenberg Marquardt的标准NLS优化器来解决。对电子设备上的多个标签的位置估计值可以给出电子设备的前进方向。
在某些实施例中,多个传感器驱动运动模型和测量模型。IMU和/或轮子编码器都可以驱动运动模型。也就是说,通过使用这些传感器中的一个或两个进行的测量,可以使线速度和角速度信息可用于定位过程。在其它实施例中,多个传感器驱动测量模型、一个或更多UWB双向测距标签和/或GPS-RTK。通过传感器向运动和测量模型提供输入的这种冗余度可以用于自适应地补充每个传感器的弱点。例如,轮子编码器通常对线性运动更准确,而IMU对旋转运动更准确。
在将速度估计值v、ω提供给定位生成器240之前,可以首先组合估计值vwheel、ωwheel和vimu,ωimu以便以高置信度识别运动的类型。该类型的运动与旋转相比可以以直线移动。这种组合操作可以改变运动模型中的噪声协方差Rt。来自两个传感器IMU和轮子编码器的信息可以融合,从而具有较小的噪声协方差。
例如,图3C的方法320示出如何将由轮子编码器和IMU估计的速度融合在一起以用于定位的示例。在步骤322中,定位生成器240识别场景。方法320描述了三个场景(场景324a、场景324b至场景324n),然而方法320中可以包括更多或更少的场景。
场景324a指示电子设备210正在直线移动。基于场景324a,函数326a可以在运动模型中使用基于轮子编码器的速度。
场景324b指示电子设备正在旋转。基于场景324b,函数326b可以在运动模型中使用基于IMU的速度。
场景324n指示电子设备既在旋转又在平移。基于场景324n,函数326n可以基于IMU和轮子编码器两者对线速度和角速度估计值进行线性组合。此外,当发生更多旋转时,可以为IMU分配更多权重。类似地,当发生更多平移时,可以为轮子编码器分配更多权重。
根据所识别的场景,定位生成器240在定位过程中使用对应的函数。例如,当识别的场景是场景324a时,函数326a的线速度和角速度(v,ω)被提供给定位生成器240。在另一个示例中,当识别的场景是场景324b时,函数326b的线速度和角速度(v,ω)被提供给定位生成器240。
图3D的方法330描述了识别指示基于IMU(而不是轮子编码器)的运动数据被用于运动模型的事件。在步骤331中,电子设备210、轮子编码器和IMU运动数据用于生成线速度和角速度的单个位置估计值。在步骤332中,电子设备210使用单步运动模型来分别生成轮子编码器和IMU的位置估计值。在步骤333中,电子设备210经由诸如测距信息(诸如UWB)和/或GPS的其它传感器获得附加运动信息。
在步骤334中,轮子编码器的位置估计值(步骤332)、IMU的位置估计值(步骤332)、基于IMU和轮子编码器两者的位置估计值(步骤331)以及来自其它传感器的位置估计值(步骤333)被存储在图2C的信息存储库245中。在步骤335中,电子设备210确定轮子是否打滑。例如,如果来自轮子编码器的姿态估计值在多个帧上超过(指示电子设备210比其它位置估计值更远)其它传感器预设阈值,则电子设备声明轮子正在打滑。帧数是呈现给步骤335的决策的估计值的数目。例如,单个估计值可能无法包括足够的信息来确定轮子是否打滑。
如果电子设备210确定轮子没有打滑,则在步骤336中,电子设备210使用轮子编码器和IMU估计值两者来执行定位。如果电子设备确定轮子正在打滑,则在步骤337中,电子设备使用基于IMU的运动而不是结合轮子编码器来执行定位。也就是说,在步骤337中,电子设备210仅使用来自IMU传感器的运动数据来向运动模型提供线速度和角速度估计值。
方法340描述了并行使用多个定位过程和使用不同传感器的组合。方法340默认使用单个过程,但是响应于触发事件,定位过程将使用另一个过程来执行电子设备的定位。例如,为了提高定位过程的精度,方法340描述了使用连同在何时选择哪个过程的选择标准实现的多个定位过程。例如,方法340描述了如何一起使用NLS和基于滤波器的方法。由于基于NLS的定位(步骤343)是无记忆的并且仅依赖于锚定点204与标签250之间的当前测距测量值,因此一旦剪草机和传感器通电,它就可以开始给出合理的定位输出。相反,基于滤波器的方法,诸如步骤341和342中的那些方法,通常需要一些时间来初始化。因此,定位过程可以使用基于NLS的输出来更好地初始化滤波器,然后长期使用滤波器。应注意,有时IMU和/或轮子编码器可能会由于与环境的相互作用而导致错误的读数,在这种情况下,滤波器可能会给出错误的行进方向或X-Y位置预测值。当IMU和/或轮子编码器提供错误的行进方向或X-Y位置预测值时,NLS可以用作备份以重新初始化基于滤波器的定位算法。
在步骤341中,电子设备210初始化基于贝叶斯滤波器的定位过程。在步骤342中,电子设备210使用UWB(测距信息)、IMU和轮子编码器融合来运行基于贝叶斯滤波器的定位过程。上面针对公式(1)描述了基于贝叶斯滤波器的定位过程。在步骤343中,电子设备对多个UWB标签执行基于NLS的定位过程。上面针对公式(5)描述了用于多个UWB标签的基于NLS的定位过程。应值得,步骤342和343可以同时或接近同时进行。这使得步骤344的决策能够将步骤342的结果与步骤343的结果进行比较。
在步骤344中,电子设备将步骤342和343的结果与一组参数进行比较。例如,电子设备确定(i)行进方向估计值(来自步骤342和343)是否在预定义度数内,(ii)位置估计值(来自步骤342和343)是否在预定义距离内,或者(iii)时间<T(来自步骤342和343)。
当行进方向估计值在预定义距离内、位置估计值在预定义距离内或者时间<T时,电子设备在步骤345处使用来自步骤342的贝叶斯滤波器的位置估计值来执行路径规划。应注意,步骤344的结果被提供给步骤342并且用于步骤342的贝叶斯滤波器的后续迭代。
当行进方向估计值不在预定义距离内、位置估计值不在预定义距离内并且时间>T时,电子设备210在步骤346处使用来自步骤343、342的位置估计值来执行路径规划。应注意,当路径规划使用来自步骤343的位置估计值时,重新初始化步骤341的贝叶斯滤波器。
尽管图3A、图3B、图3C、图3D和图3E示出示例性方法,但是可以对图3A、图3B、图3C、图3D和图3E进行各种改变。例如,虽然示出为一系列步骤,但图3A、图3B、图3C、图3D和图3E中的各个步骤可以重叠、并行发生或发生任意次数。
图4A和图4B示出根据本公开的实施例的用于传感器更新的示例性方法。特别地,图4A示出用于图3A至图3E中描述的定位过程的不同时期的UWB的自适应噪声方差的方法400。图4B示出用于图3A至图3E中描述的定位过程的传感器的基于时序信息的自适应噪声方差的方法410。
本公开的实施例考虑到并非所有传感器输入同时可用,并且来自不同传感器的更新速率可能不同。因此,可以基于传感器的更新速率以及来自不同传感器的信息如何与定位过程的每个时期相关联来执行不同的定位过程。例如,图4A的方法400示出UWB测距的更新速率以10Hz完成(步骤402),而IMU和/或轮子编码器的更新速率为20Hz(步骤404)。如果轮子编码器和IMU能够实现可靠的相对运动预测,则可能需要以20Hz运行定位过程(步骤406)。由于在每个迭代时期都可获得新的UWB测量值,因此可以针对定位过程的每个迭代时期调整噪声方差。
对于另一个示例,图4B的方法410示出传感器更新的时间可以不同。例如,最近的传感器1测量值可以在时间T1(步骤412),而最近的传感器2测量值可以在时间T2(步骤414)。因此,定位过程可以在当前时间T3运行(步骤416)。如果时间T3与T1之间的差大于T(其中T是预定值),则可以使用传感器1的高噪声方差。替代性地,如果时间T3与T1之间的差小于T,则可以使用传感器1的小噪声方差。此外,如果T3与T2之间的差大于T’(其中T’是预定值),则使用传感器1的高噪声方差。替代性地,如果时间T3与T2之间的差小于T’,则可以使用传感器1的小噪声方差。
虽然图4A和图4B示出示例性方法,但是可以对图4A和图4B进行各种改变。例如,虽然示出为一系列步骤,但图4A和图4B中的各个步骤可以重叠、并行发生或发生任意次数。
图5A、图5B、图5C、图5D、图5E和图5F示出用于基于LOS或NLOS选择噪声方差的示例性方法。图5A示出根据本公开的实施例的电子设备在区域内的示例性图500。图5B和图5C示出根据本公开的实施例的用于选择噪声方差的示例性方法510和520。图5D示出根据本公开的实施例的用于选择噪声方差的示例性曲线图528。图5E示出根据本公开的实施例的部分测量损失的示例530。图5F示出根据本公开的实施例的用于计算部分测量损失的曲线图540。特别地,曲线图540描述了通过修改测量模型来解决部分测量损失。方法510和520可以由图1的电子设备100和图2C的电子设备210的定位生成器执行。为了便于解释,方法510和520由电子设备210执行。
图5A的图500示出由电子设备210横贯的、具有三个不同草坪的院子,这些草坪由区域(诸如主区域506a、区域A 506b和区域B 506c)来区分。院子还包括永久性障碍物,诸如树504a、树504b、房屋504c和栅栏504d。在该示例中,栅栏504d将区域A 506b与区域B 506c分开。位于主区域506a内的底座503可以是充电底座,当电子设备210没有横贯院子502时,它为电子设备210充电。当电子设备210没有横贯院子502时,底座503还可以保护电子设备210免受元素(雨雪、冰雹等)的影响。位于区域B 506c中的锚定点508可以类似于图2A的锚定点204。由于栅栏504d,电子设备210在区域509中时可能无法从锚定点508接收测距信息。也就是说,由于栅栏504d的高度,电子设备210可能与锚定点508具有NLOS,并且因此无法从锚定点508获得测距信息。
根据本公开的实施例,可以通过观察诸如区域509的环境的静态地图来识别其中来自某些锚定点的UWB测距估计值可能不准确的区域。例如,电子设备210可以首先利用锚定点放置的知识来识别这种区域。为了识别此类区域,可以追踪从锚定点位置到地图上的任何点的线,并且识别是否至少有一个障碍物与这条线相交。针对每个锚定点到草坪内每个可能姿态的电子设备的视线(LOS)/NLOS条件信息被作为输入馈送给表示为LOSmap的定位过程。定位过程通过将UWB测距估计值中的噪声方差选择为或来为每个标签-锚定点测距测量值选择适当的值,这取决于估计的电子设备位置是否具有到基于LOSmap的锚定点的LOS或NLOS链接。
图5B的方法510描述了生成环境的静态地图以识别LOS和NLOS区域两者然后使用静态地图的LOS和NLOS区域来改进以上关于图3A至图3E描述的定位过程的过程。在步骤512中,电子设备接收环境的静态地图。静态地图可以类似于图2A的院子202,其示出底座503的位置、各种障碍物(诸如树504a、树504b、房子504c和栅栏504d)和锚定点(诸如图2A的锚定点204和图5A的锚定点508)。
在步骤514中,电子设备210生成LOS地图。在某些实施例中,通过执行光线跟踪过程来生成LOS地图。生成的LOS地图包括地图上所有位置的列表以及对应的LOS锚定点。即,所生成的LOS地图将具有LOS的区域指示给锚定点并且将具有NLOS的区域指示给锚定点(诸如图5A的区域509)。
在步骤516中,电子设备210在定位过程中使用生成的LOS地图,这在上面的图3A至图3E中进行了描述。在步骤518中,电子设备210基于生成的LOS地图更新定位过程。例如,如果先前的状态是Xt,那么基于LOS地图,可以为每个锚定点选择合适的以用于定位过程的下一步更新。
应注意,方法510基于静态地图,其包括不随时间显著变化的障碍物,诸如构筑物、树、栅栏等。然而,动态对象,诸如在院子里行走的人,可能会阻挡电子设备210与锚定点(诸如图2A的锚定点204和图5A的锚定点508)之间的LOS。因此,由于动态阻挡,由于动态对象,如方法510中识别的在实践中可能不准确。在这种情况下,电子设备210基于UWB标签报告的品质因数对噪声进行动态调整。应注意,并非所有标签(诸如标签250)都需要包括识别动态阻挡的特征。
在某些实施例中,为了从UWB测距生成准确的定位结果,对于基于UWB测距的定位结果,可能希望具有至少K个(例如K=4)锚定点的LOS覆盖区。因此,下面的过程描述了最大化由草坪中的K个LOS锚定点覆盖的区域的步骤。通过使用在方法510中生成的静态地图,电子设备210可以识别附加锚定点的潜在位置,以在电子设备210横贯院子时最大化其LOS覆盖区。首先,将锚定点1放置在地图中的增加LOS的位置处。其次,将锚定点2放置在锚定点1的整个LOS覆盖区内,并在锚定点1与锚定点2之间的最小距离内。应注意,当有多个候选位置时,电子设备210会选择具有到锚定点1的最大距离的位置。电子设备将i锚定点(iAnchor)设置为3。第三,电子设备放置锚定点iAnchor以增加与锚定点1到i锚定点-1的LOS覆盖区的重叠,并且任意两个锚定点之间具有最小距离D。如果有多个候选者,则选择锚定点之间的所有成对距离的最小值最大的那个。设置iAnchor=iAnchor+1。重复第三步,直到iAnchor=K+1。第四,电子设备在图2C的信息存储库245中记录地图m中的由集合Φ中的至少K个锚定点覆盖的所有位置。第五,当N≥i锚定点时,放置锚定点iAnchor以最大化可以添加到Φ的新区域。如果没有新的区域可以通过添加一个锚定点而被添加到Φ中,则选择具有最大LOS覆盖区域的锚定点的位置。设置iAnchor=iAnchor+1。必要时重复第五步。
图5C的方法520描述了使用UWB信号的原始信道脉冲响应来实时估计信号是LOS还是NLOS的过程。在步骤521中,电子设备从UWB标签接收品质因数。例如,UWB标签将品质因数报告给电子设备210的处理器(诸如处理器140)。在步骤522中,电子设备210还访问从UWB锚定点到标签的信号的原始信道脉冲响应。在步骤524中,电子设备210基于标准来估计品质因数。在步骤526中,电子设备210从步骤521的接收的品质因数或步骤524的估计的品质因数中选择适当的噪声协方差。也就是说,定位过程基于品质因数为LOS或NLOS来选择合适的噪声协方差。
在某些实施例中,定位过程还解决来自某些传感器的部分或全部测量损失。图5E可以用于由卡尔曼滤波器或其变型驱动的定位过程,以解决某些传感器的部分或全部测量损失。对于如粒子滤波器的其它滤波范例,可以通过在这种情况下设置非常大的测量值Zmax来修改测量模型以解决部分测量损失。这等效于针对具有任意大噪声方差而言包括非零的概率,该噪声方差导致此类公式中的测量损失。
图5D的示例530示出解决基于卡尔曼滤波器的定位过程的部分测量损失。示例530包括卡尔曼增益块532、新息(innovation)块534和校正块536。术语m是由于测量损失而丢失的新息。电子设备为卡尔曼滤波器(或变型)的特定迭代删除卡尔曼增益块532中的第m列和新息块534中的第m行以生成校正块536。
尽管图5A至图5F示出示例性方法,但是可以对图5A至图5F进行各种改变。例如,虽然示出为一系列步骤,但图5B和图5C的任何方法中的各个步骤可以重叠、并行发生或发生任意次数。
图6A、图6B、图6C、图6D、图6E和图6F描述了电子设备210规划在区域内的路径的过程。该区域可以在室内区域(诸如自主真空清洁器或自主拖把使用的区域)、室外区域(诸如自主剪草机使用的区域)或游泳池(诸如自动泳池清洁器使用的区域)中。为了规划区域内的路径,电子设备210识别使电子设备210能够在给定区域内的所有期望点上移动的路径。图7A示出各个区域内的示例性路径。即,电子设备210首先生成路径以横贯边界内的区域同时避开已知障碍物。然而,如果在环境中存在未规划的(先前不知道的)障碍物,则电子设备210会偏离其路径而留下一些未被横贯的区域。除了由于先前未知的障碍物导致的已知偏差外,还可能存在由于定位错误而未被横贯的未知区域。因此,图6A、图6B、图6C、图6D、图6E和图6F描述了电子设备210规划在区域内的路径并在先前未知的障碍物周围横贯并在稍后时间尝试横贯先前遗漏的区域的过程。
图6A示出根据本公开的实施例的带有障碍物的示例性区域600。图6B和图6C示出根据本公开的实施例的用于横贯该区域的示例性方法605和610。图6D示出根据本公开的实施例的用于识别未修剪区域的示例性方法630a。应注意,方法630a可以包括在图6C的方法610中。图6E示出根据本公开的实施例的根据图6D的方法的示例性未修剪区域。图6F示出根据本公开的实施例的在未修剪位置内行进的示例性方法660a。应注意,方法660a可以包括在图6C的方法610中。方法605、610、630a和660a可以由图1的电子设备100和图2C的电子设备210的定位生成器执行。为了便于解释,方法605、610、630a和660a由电子设备210执行。
图6A的区域600示出具有多个永久障碍物的示例性草坪。区域600可以是诸如图5A的图500的院子,或者是诸如住宅或办公大楼的建筑物内部的区域。电子设备210能够从开始位置602a横贯区域600到结束位置602b,同时尽可能多地横贯该区域。在电子设备行进通过区域600并到达结束位置602b之后,在返回对接站/主站(诸如图5A的底座503)之前,电子设备210可以识别没有横贯的小块,诸如未修剪区域604a、604b和604c。未修剪区域604a、604b和604c可能是由定位错误(其导致电子设备遗漏横贯区域600的特定部分)引起的。此外,未修剪区域604a、604b和604c可能由动态障碍物引起,诸如留在区域600中的玩具、位于区域600中的动物(诸如宠物或牲畜)或人。动态障碍物可以是由图2C的避障传感器226检测到的物体。也就是说,动态障碍物是在区域600的训练阶段期间没有位于区域600中的对象,诸如结构、树木或灌木。
根据本公开的实施例,电子设备210在抵达所有未修剪区域604a、604b和604c时,识别从当前电子设备位置(结束位置602b)到开始位置602a的最短可能路径(最小路径长度)。也就是说,在电子设备210到达结束位置602b之后识别未修剪区域604a、604b和604c。然后,电子设备210在抵达所识别的未修剪区域604a、604b和604c中的每一个时识别并行进其当前位置与其对接/初始位置之间的最短路径。应注意,如图6A所示,未修剪区域的位置和形状可以彼此不同。此外,即使在电子设备210抵达未修剪区域之后,有可能动态障碍物仍然存在,从而使得即使在再次尝试之后也无法修剪(横贯)未修剪区域。通过生成有效的路径策略,可以减少剪草时间,这可以增加电子设备和锚定点204的电池寿命。
图6B的方法605示出电子设备在执行路径覆盖以识别和重抵任何遗漏区域的同时操作的上位性(high-level)方法。在步骤606中,电子设备210在规划的路径上行驶。也就是说,电子设备210从开始位置602横贯区域600到结束位置602b并且避开任何已知的障碍物。在电子设备完成其规划路径并到达终点位置(诸如终点位置602b)后,电子设备210识别遗漏区域(步骤607)。遗漏区域是电子设备在其横贯区域600时未覆盖的位置。在步骤608中,电子设备生成新路径以横贯遗漏区域。也就是说,电子设备210重新规划路径,以便抵达并横贯所识别的遗漏区域。
图6C的方法610提供了图6B的方法605的详细描述。电子设备210开始在规划的路径上行进。然而,当电子设备210在其规划的路径上行进时,可能会遇到动态障碍物。如果动态障碍物持续超过时间阈值,则电子设备210重新规划其路径以绕过障碍物。电子设备210在其导航时一直跟踪其位置。在到达结束位置后,它使用图6D的方法630a计算草坪中的未修剪区域的估计值。例如,电子设备210可以基于其历史位置识别多个未考虑到的未修剪区域,诸如图6E中所示的区域。
在某些实施例中,当电子设备210避开动态障碍物时,它可以基于其它传感器将未修剪区域标记为潜在永久障碍物或临时障碍物。例如,相机图像可显示出障碍物是人,他有可能会在一段时间内移开。如果相机图像显示出草坪上放置了重物,如家具,那么它移动的概率就会减少。因此,方法630a的输出也可以是具有对应半径的圆心和相关联的质量指示符Q,该质量指示符Q指示障碍物移开的可能性有多大。
在步骤612中,电子设备210开始在规划的路径上行进。例如,电子设备210从开始位置602a开始并以平行线或螺旋线横贯区域600,同时避开已知的障碍物。在步骤614中,电子设备210确定是否有未知障碍物(诸如动态障碍物)阻挡其路径。当电子设备210确定未知障碍物阻挡其路径时,在步骤622中,电子设备210继续在其最初规划的路径上横贯区域600。替代性地,当电子设备210确定未知障碍物阻挡其路径时,在步骤616中,电子设备210等待预定时间段。在该时间段期满时,电子设备在步骤618中确定障碍物是否仍阻碍路径。例如,如果障碍物是动物,则电子设备可能会吓到动物,从而使其移离原始路径。如果物体没有移动,则在步骤620中,电子设备210修改最初规划的路径以避开障碍物。也就是说,电子设备210修改最初规划的路径以考虑新的障碍物。因此,避开障碍物会造成遗漏区域。如果物体移动,则在步骤622中,电子设备210继续在其最初规划的路径上横贯区域600。
在步骤624中,电子设备210基于其当前位置确定其是否处于完成位置,诸如图6A的结束位置602b。当电子设备210未在结束位置时,返回步骤614,电子设备210确定是否有障碍物阻挡了规划的路径,这会阻碍电子设备210向前移动。替代性地,在确定电子设备210处于结束位置时,在步骤630中,电子设备210识别未修剪区域(由于动态障碍物或不良定位而遗漏的区域)。例如,基于定位过程,电子设备210识别区域600中遗漏的部分,诸如未修剪区域604a、604b和604c。图6D的方法630a描述了识别由于动态障碍物或不良定位而遗漏的区域的过程。在步骤660中,电子设备210生成新路径以抵达未修剪区域(由于动态障碍物或不良定位而遗漏的区域)。图6F的方法660a描述了生成新路径的过程。
图6D的方法630a描述了图6C的步骤630的、识别遗漏区域的过程。在步骤632中,电子设备210识别感兴趣区域的边界,其可以是图6A的区域600的周边。在步骤634中,电子设备210在感兴趣区域内生成路径。生成的路径可以是平行线或螺旋线。生成的路径避开已知的障碍物。在步骤636中,电子设备210在规划的路径上行进,类似于图6C的步骤612。当在规划的路径上行进时,电子设备210维护其位置和/或行进方向的日志。维护的日志可以是从其运行开始到在步骤640到达结束位置之间的所有时间时期。
在步骤630中,电子设备210将该区域的地图像素化为网格,以识别网格的被横贯的单元(或像素)以及未被横贯的单元。应注意,网格大小可以是固定的,也可以基于定位精度而变化。当网格大小可变时,电子设备210识别定位过程的精度(步骤642)。例如,定位过程可以基于从不同传感器接收到的输入质量来指示定位精度。然后在步骤644中,电子设备将该区域像素化成尺寸为D的网格,该尺寸D取决于网格大小,该网格大小取决于步骤642的定位过程的精度。例如,如果定位精度高,则网格大小可能较小,并且如果定位精度较差,则网格大小可能较大。网格大小是可变的,因为它可以基于定位精度从一次运行到下一次运行发生更改。替代性地,当网格大小固定时,从方法630a省略步骤642。因此,在步骤644中,每个网格的大小被固定为预定大小。
在步骤646中,基于经像素化的地图,电子设备210基于其位置标记每个单元。可以将单元标记为已被横贯(电子设备210横贯经过该单元,并且因此该单元对应于已被修剪的区域)。可以将单元标记为未被横贯(电子设备210没有横贯经过该单元,或者部分横贯经过该单元,并且因此该单元对应于遗漏或未修剪的区域)。
在步骤648中,电子设备将彼此接触的单元聚集成未修剪区域。在步骤650中,电子设备识别每个集群的形心和半径。例如,图6E示出集群652a和集群652b。集群652a和652b由指示电子设备210没有行进或部分行进经过的位置的多个单元组成。电子设备210能够识别集群652a的形心654a和集群652b的形心654b。基于形心在集群内的位置,电子设备210还识别半径,该半径是从形心到集群的外周边的距离。半径656a是从形心654a到集群652a外部的距离。类似地,半径656b是从形心654b到集群652b外部的距离。
图6F的方法660a描述了图6C的步骤660的、生成新路径以抵达未修剪区域的过程。在步骤662中,电子设备210接收遗漏区域的输入列表。输入列表可以包括未被电子设备横贯或部分横贯的Q个圆的列表。该列表可以通过图6D的方法630a生成,并且列表中的每个圆对应于被识别的单元集群并且对应于遗漏区域。
在步骤664中,电子设备210创建或生成要重抵的圆心的列表。在某些实施例中,电子设备210使用旅行商问题(Traveling Salesman Problem,TSP)的解决方案来创建圆心的有序列表以从其当前位置抵达其初始位置(诸如开始位置602a或对接/初始位置)。在步骤666中,对接/初始位置初始化每个圆被抵达的次数的计数器。在某些实施例中,电子设备210初始化每个圆被抵达的次数的计数器到ni=0,其中I是圆心从1到N的索引。应注意i=1。电子设备210还初始化未修剪区域的新的空列表L,设置M=0。
在步骤668中,电子设备210行进至圆。在某些实施例中,圆可以是距其当前位置的最短距离。在步骤670中,电子设备210确定它是否可以到达如图6C的步骤650中识别的半径和形心所指示的圆心。如果电子设备能够到达圆心,则在步骤676中,电子设备210沿预定轨迹行进。例如,电子设备可以从圆心以螺旋形(其大小会增加)的方式行进,直到它到达圆的外周边,从而完全横贯(和修剪)圆。
替代性地,如果在步骤670中,电子设备210确定它无法到达圆心,则在步骤672中,电子设备210等待预定时间段。在该时间段到期之后,电子设备210在步骤674确定它是否可以到达如图6C的步骤650中识别的半径和形心所指示的圆心。如果电子设备能够到达圆心,则在步骤676中,电子设备210沿预定轨迹行进。例如,电子设备可以从圆心以螺旋形(其大小会增加)的方式行进,直到它到达圆的外周边,从而完全横贯(和修剪)圆。
如果在步骤674中,电子设备210确定出它无法到达圆心,则在步骤678中,电子设备210确定是否发生触发事件。例如,电子设备210设置计数器ni=ni+1。如果ni的值大于阈值,则电子设备210确定触发事件发生。又例如,如果电池寿命小于阈值,则电子设备210确定触发事件发生。应注意,可以检测其它触发事件,诸如一天中的时间。例如,在当前达到预定时间(诸如下午6:00)时,可能会检测到触发事件。
在确定出没有发生触发事件(步骤678)之后,电子设备210在步骤680中将当前圆包含到新列表L中。电子设备210还初始化抵达计数器ni,并将M的值(在步骤666中设置为零)加一。
在电子设备210在圆内沿预定轨迹行进(步骤676)、触发事件发生(步骤678)、或者在当前圆被添加到新列表L(步骤680)之后,电子设备210在步骤682中,确定变量i是否小于等于n。在步骤666中设置变量i和n。当变量i小于或等于n时,变量i加1,并且方法返回步骤668,并且电子设备210行进至下一个圆。替代性地,如果变量i大于n,则电子设备210在步骤684中确定新列表L(其是在步骤680中创建的)是否为空。如果新列表L为空,则在步骤688中,电子设备210行进至初始位置,诸如开始位置602a。替代性地,如果新列表L不为空,则在步骤686中,电子设备210用列表L重置列表Q,使得N被设置为M。然后,电子设备启动未修剪区域的新的空列表L,并将M的值设置为零,并且将i的值设置为1。在执行步骤686之后,电子设备210返回到步骤664以生成要重抵的圆心的新列表。该列表取决于在方法630a中被识别但之前在步骤676中未抵达的圆。
图6F描述了使用TSP以得出未修剪区域的列表的初始顺序。在其它实施例中,可以使用有限时间马尔可夫决策过程(MDP)或任何其它过程来得出抵达未修剪区域的策略,来取代解决旅行商问题(TSP)以提出未修剪区域的列表的初始顺序的过程。在某些实施例中,如果抵达计数较大,则意味着尽管多次抵达未修剪区域,该区域仍然不可到达。在这种情况下,电子设备210根据T(n)等待更长的时间以检查这次障碍物是否移开。应注意,T(n)不一定是n的递增函数,并且也可能是常数。
在某些实施例中,方法660a的变型可以如下。如果对圆的抵达受阻,则电子设备210可以在尝试抵达原始列表中的每个圆结束时创建未抵达圆的新列表,而不是将圆附加到未修剪圆的列表。然后可以使用TSP或MDP或任何其它算法重新优化抵达新列表中的未修剪圆的顺序,并且在下一次尝试抵达这些圆时遵循该顺序。
以下是MDP公式的示例,以用于解决识别抵达未修剪区域的顺序的问题。将时间用k表示。系统的状态由(xk,Uk)表示。在剪草机的上下文中,状态变量xk可以根据电子设备210在草坪上的X-Y坐标来表示电子设备210的位置。状态变量Uk可以表示空间中未修剪区域的列表(例如,作为图6C的方法630a的结果的圆心)。在时间0处,电子设备210位于某个位置x0,其中空间中的N个未修剪区域由列表U0表示。电子设备210必须尝试抵达有限水平MDP公式中的所有未修剪区域,使得在N个时间步之后(等于空间中的未修剪区域的数量)。在时间k处的动作uk∈Uk是决定抵达空间中特定的未修剪区域(uk表示下一个要抵达的位置)。系统的动力学是x(k+1)=uk和U(k+1)=Uk\{uk}。在状态xk中进行动作uk的成本由g(xk,uk,wk)给出,其中wk是捕获环境中的随机性的随机变量(例如,尽管决定抵达区域uk,电子设备210可能无法到达那里或者在到达该位置之前可能必须处理其它不确定性)。示例g(.)如下给出。g(xk,uk,wk)=||uk-xk||2,这是该时间步的开始位置与结束位置之间的欧几里得距离(应注意,此建模方法中不涉及随机性wk)。如果每个未修剪区域都与先前的抵达计数相关联(诸如图6F中),那么函数g(.)也可以是抵达计数的函数。例如,如果n是uk的抵达次数,则g(xk,uk,wk)=(||uk-xk||2)2。该函数还可以是与动作uk相关联的质量Qk的函数,这表明未修剪区域k可能仍然将被阻挡且无法进行修剪的可能性有多大。例如,其指示未修剪区域可用于修剪的可能性越小,抵达该未修剪区域以便进行另一次修剪尝试的成本就越高。以下公式(5)和公式(6)描述了最终成本gN(xN)可以表示从空间中最后抵达的未修剪区域返回初始位置或对接站的成本。运算符E表示对由wi给出的模型中的随机性的期望。应注意,优化变量是u0,…,u(N-1),它们表示我们抵达空间中的N个未修剪区域的顺序。
公式(5)
公式(6)
以下公式(7)描述了基于本公开修改的有限水平MDP公式。可以使用反向归纳来解决这个问题。应注意,一步状态动力学(one step state dynamics)由fk(xk,uk,wk)=x(k+1)表示。
公式(7)
(a)JN(xn)=gn(xn)终端成本。选择具有最小终端成本的xn
(b)For k=0,1,...,N-1
尽管图6A至图6F示出示例性方法和图,但是可以对图6A至图6F进行各种改变。例如,虽然示出为一系列步骤,但图6B、6C、6D和6F的任何方法中的各个步骤可以重叠、并行发生或发生任意次数。
图7A示出根据本公开的实施例的示例性路径规划700。区域702a示出电子设备210在其周围行驶的各种障碍物704。障碍物可以是动态障碍物或已知障碍物。如图所示,电子设备210从位置S开始并且在整个区域702a中沿路径704a行进,直到它到达位置F。应注意,电子设备210在到达位置F后不会重抵任何障碍物704。区域702b示出电子设备210沿着路径704b螺旋行驶。即,电子设备210首先横贯区域702b的周界,然后以螺旋运动向中心行进。区域702c示出电子设备210沿着路径704b沿着平行线行驶。应注意,路径704b的线之间的距离由距离δ706a表示,并且路径704c的线之间的距离由距离δ706b表示。
在某些实施例中,每当定位精度不好时,可能需要具有较小的δ值。应注意,δ值越大,由于两条路径之间的距离越大,所提供的功率节省量就越多,从而导致覆盖该区域所需的路径越少。本公开的实施例使电子设备能够自动改变诸如图7B和图7C所示的距离δ,或者由外部源(诸如由用户)手动改变,以便确保电子设备210不会遗漏区域,如下文图8A和图8B中所述的那样。
图7B和图7C示出根据本公开的实施例的用于识别定位精度的示例性方法710和720。方法710和720可以由图1的电子设备100和图2C的电子设备210的定位生成器执行。为了便于解释,方法710和720由电子设备210执行。
方法710和720描述了使用基于由电子设备210估计的定位精度的自适应δ。在某些实施例中,如果定位精度差,则电子设备210为δ设置较小的值,从而导致更密集的路径,并且如果定位精度良好,则为δ设置较大的值,从而导致更稀疏的路径。应注意,仅具有两种可能的δ值仅作为示例给出,并且可以存在其中δ可以被量化的多种状态。
图7B的方法710示出如何识别用于选择δ值的定位精度。如图所示,电子设备210执行三个单独的定位过程(定位过程712a、定位过程712b和定位过程712m),诸如上述的定位过程。可以执行更多或更少的定位过程。在步骤714中,电子设备210从定位过程712a、定位过程712b和定位过程712m执行获得位置估计值的点云和前进方向。在步骤716中,电子设备210将X-Y点云分类成好或坏。此外,在步骤716中,电子设备210将前进方向分类成好或坏。如果X-Y点云和前进方向都好,则电子设备210将点云分类成好。在步骤718中,电子设备估计最终的定位输出。例如,电子设备210基于不同模型估计最终的定位输出,并将输出用于路径规划过程,其中选择的δ值取决于点云被分类成好还是坏(步骤716)。
图7C的方法720是图7B的方法710的更详细示例。如图所示,电子设备210执行四个单独的定位过程(定位过程722a、定位过程722b、定位过程722c和定位过程722d),诸如上述定位过程那样。定位过程722a可以基于利用K个标签所得的UWB测距以及轮子编码器。定位过程722b可以基于利用K个标签所得的UWB测距以及IMU。定位过程722c可以基于利用K个标签所得的UWB测距。定位过程722d可以基于利用K个标签所得的UWB测距、IMU和轮子编码器。
在步骤724中,电子设备210从定位过程722a、定位过程722b、定位过程722c和定位过程722d执行得出点云位置估计值和前进方向。在步骤726中,电子设备210确定k>Lmin模型在前进方向的差值方面是否具有θo。如果模型不在θo内,则在步骤728中,电子设备210将前进方向的最终估计值识别为k个前进方向的平均值。然后,在步骤738中,电子设备210为δ选择较大的值。替代性地,如果模型在θo内,则电子设备210确定K不大于Lmin,然后在步骤730中,电子设备根据标准Chead从模型之一中选择行进方向估计值并且为δ选择小的值。电子设备还在步骤732中确定至少K>Lmin模型在X-Y估计值的差值方面是否小于阈值距离。如果模型在阈值距离内,则在步骤734中,电子设备210将X-Y位置的最终估计值识别为K个位置的平均值。然后,在步骤738中,电子设备210为δ选择较大的值。替代性地,如果模型大于阈值距离,则电子设备210根据标准CLoc从模型之一中选择位置估计值并且为δ选择小的值。
以下是用于选择定位过程的示例性标准。(1)选择在定位过程的前一个时间步中使用的过程。(2)基于其中对角线条目的最小平均值在Qt中的模型选择过程。(3)基于其中对角线条目的最小平均值在Rt中的模型选择过程。(4)基于其中对角线条目的最小平均值在Qt中以及其中对角线条目的最小平均值在Rt中的模型选择过程。(5)选择具有所有可用传感器的任何过程。(6)选择使用所选择的传感器的子集合的过程。
尽管图7A至图7C示出示例性方法和图,但是可以对图7A至图7C进行各种改变。例如,虽然示出为一系列步骤,但图7B和图7C的任何方法中的各个步骤可以重叠、并行发生或发生任意次数。
例如,图8A和图8B描述了改变路径密度的过程。特别地,图8A示出根据本公开的实施例的用于修改路径的用户辅助的方法800。方法800可以由图1的电子设备100和图2C的电子设备210的定位生成器执行。为了便于解释,方法800由电子设备210执行。图8B示出根据本公开的实施例的基于图8A的方法800的示例性经修改路径规划。
有可能在草坪的某些区域中,定位误差可能足够大,使得存在电子设备210不知道的未修剪区域。因此,外部源可以指示电子设备210减少特定区域中的δ值以便增大路径的密度。在某些实施例中,外部源可以是通过用户界面修改δ值的人。在其它实施例中,外部源可以是电子设备210上的相机或者可以识别未修剪区域的其它传感器。
例如,在步骤802中,电子设备210横贯该区域。电子设备可以是自动剪草机,它横贯院子并修剪草坪的草。在电子设备210完成横贯草坪之后,在步骤804中,人或电子设备210上的传感器可以检查草坪以识别任何未修剪的区域。例如,如草坪808a所示,电子设备210沿路径802a行进。区域804a是可以由用户或电子设备210本身识别的未修剪区域。
此后,在步骤806中,由于指定区域中的定位精度损失,电子设备210修改其路径以在指定区域中包括更密集的路径。例如,如果位置(x0,y0)附近存在未修剪区域,则电子设备210可以在这些区域中执行额外的螺旋运动或额外的往复运动以覆盖未修剪区域。例如,如草坪808b所示,电子设备210沿路径802b行进。路径802b是路径802a的修改版本,因为路径802b包括如区域806a中所指示的额外轨迹。
虽然图8A和图8B示出示例性方法和图,但是可以对图8A和图8B进行各种改变。例如,虽然示出为一系列步骤,但图8B的任何方法中的各个步骤可以重叠、并行发生或发生任意次数。
图9A、图9B和图9C描述了沿着草坪边界(或界限)的路径规划过程。图9A示出根据本公开的实施例的基于边界类型的路径规划的示例性方法900。图9B示出根据本公开的实施例的基于软边界的示例性路径。图9C示出根据本公开的实施例的基于硬边界的示例性路径。方法900可以由图1的电子设备100和图2C的电子设备210的定位生成器执行。为了便于解释,方法900由电子设备210执行。
例如,当电子设备210是自动剪草机时,由于电子设备210的尺寸和刀片的布置,可能无法完全修剪靠近边界的草。此外,一些边界可以是包括要修剪的草的邻近界址(诸如邻居),使得如果电子设备210越过边界则不会发生伤害。替代性地,一些边界可以是花坛、水体(诸如水池、河流、湖泊等),如果电子设备210穿过,可能对景观或电子设备210本身造成伤害。因此,本公开的实施例提供了用于区分边界类型的系统和方法。
在步骤902中,电子设备210识别边界类型。在某些实施例中,电子设备210上的传感器(如相机)可以将一些边界识别为硬边界,这表明电子设备210无法超出这些边界。例如,如果相机检测到草坪区域外的栅栏或水,它会将对应的边界小块声明为严格的。但是,也可能存在宽松的边界。例如,在草坪空间之外,它可能只是平坦的土地或土壤或人行道。如果传感器(如相机)能够识别这一点,那么它将这些区域标记为空间中的宽松边界。在这种情况下,电子设备210可以将其路径规划到边界之外,从而有效地修剪靠近草坪边界的区域。其它传感器(如超声波)也可以帮助识别硬边界,例如边界旁边是否有一堵墙。用户也可以在图形用户界面上指示硬边界和软边界。计算机视觉过程(诸如对象识别)可以用于基于相机图像来识别软边界或硬边界。图9B和图9C示出具有硬边界和软边界的规划路径。
在步骤904中,当电子设备210识别软边界时,电子设备210不必明确地执行更复杂的运动模式来修剪靠近边界的区域。例如,电子设备210可以沿着边界线横贯。在步骤906中,当电子设备210识别出硬边界时,电子设备210必须明确地执行更复杂的运动模式来修剪边界附近的区域。例如,电子设备210可以在边界线附近的草坪内横贯。
图9B示出电子设备210沿路径横贯并遇到软边界。电子设备210包括用于修剪草的刀片212。应注意,刀片212可以是用于吸起灰尘和碎屑的吸入口。图9B示出时间910a、910b和910c的三个不同的时间实例。首先在时间910a,电子设备210正沿着路径912行进并且检测与路径922交叉的边界914。然后在时间910b,电子设备210识别出边界914是软边界。在识别出边界914是软边界后,电子设备210将路径912修改为路径912a,然后沿着边界行进。最后,在时间910c,电子设备210继续沿路径返回。
图9C示出电子设备210沿路径横贯并遇到硬边界。电子设备210包括用于修剪草的刀片212。应注意,刀片212可以是用于吸起灰尘和碎屑的吸入口。图9C示出时间920a和时间920b的两个不同的时间实例。首先在时间920a,电子设备210正沿着路径922行进并且检测与路径922交叉的边界924。然后在时间920b,电子设备210识别边界924是硬边界。在识别出边界924是硬边界时,电子设备210将路径922修改为路径922a。路径922a在草坪内与边界924保持预定距离。
尽管图9A、图9B和图9C示出示例性方法和图,但是可以对图9A、图9B和图9C做出各种改变。例如,虽然示出为一系列步骤,但图9A的任何方法中的各个步骤可以重叠、并行发生或发生任意次数。
图10A、图10B和图10C描述了根据本公开的实施例的高功效覆盖区路径规划。特别地,图10A示出根据本公开的实施例的示例性功耗曲线图1000。图10B示出根据本公开的实施例的传感器的部件的示例性框图1010。图10C示出根据本公开的实施例的用于功率节省触发事件的示例性方法1020。方法1020可以由图1的电子设备100和图2C的电子设备210的定位生成器执行。为了便于解释,方法1020由电子设备210执行。
在某些实施例中,电子设备210修改用于定位的传感器的占空比,以执行高功效覆盖区路径规划。例如,如果一些现成的超宽带(UWB)双向测距传感器整天运行的话,那么它的电池寿命会持续一天。如果这种UWB收发器用于定位电子设备以便进行覆盖区路径规划任务,由于电池必须每天被更换,电池寿命会引起不便。因此,本公开的实施例为用于定位的UWB锚定点提供了功率节省模式。
图10A示出曲线图1000,其描述了作为标签/锚定点参与双向测距系统的传感器的典型功率消耗。如该示例中所示,与空闲时段或主动发送或接收信息相比,深度睡眠模式下的功率消耗要小得多。
图10B的框图1010描述了电子设备210的功率管理系统1012。功率管理系统1012与各种功能/传感器通信,诸如蓝牙收发器(配置成使设备手动处理如SPI(串行端口接口)的通信接口或者运行任何其它用户特定应用的其它无线电控件)1016a、UWB无线电和MAC控件1016b(即控制是否为双向测距协议激活UWB收发器)、用户应用1016c、定位引擎1016d(类似于图2的定位生成器240)、有线/无线通信接口1016e。当处于深度睡眠模式时,功率管理系统1012中的实时时钟(RTC)1014可以指示功能/传感器1016a至1016e关闭。RTC 1014始终开启,但是由于功能/传感器1016a至1016e已断电,深度睡眠模式可以引起显著的功率节省。在唤醒模式中,所有功能1016a至1016e都可以激活。在某些实施例中,在功率节省模式下,RTC 1014启用功能/传感器1016a至1016e的周期性深度睡眠模式,随后是唤醒时间。
在某些实施例中,电子设备210可以指示一个或更多锚定点进入功率节省模式(其有意地引入测量损失),以便增加锚定点204的电池寿命,因为如上所述的那样定位过程可以处理信息丢失。例如,当电子设备210与锚定点的部分位于院子的相反侧上时,电子设备210可以向近侧锚定点发送消息以指示远侧锚定点进入功率节省模式。在另一个实施例中,当电子设备210与锚定点的部分位于院子的相反侧上时,电子设备210可以向那些锚定点发送消息,从而指示那些锚定点进入功率节省模式。
图10C示出描述基于某些标准C为锚定点触发功率节省模式的方法1020。应注意,如图10B所示的那样,可以通过改变传感器的占空比来获得功率节省。
电子设备210可以识别一个或更多触发事件/标准,诸如触发事件1024a、触发事件1024b和触发事件1024c。触发事件1024a可以是当UWB标签断电并且电子设备210没有主动修剪草坪时的情况。触发事件1024b可以是标签与锚定点之间的距离大于阈值时的情况。触发事件1024c可以是当电子设备210与锚定点之间的距离小于阈值时的情况。
当电子设备210识别到触发事件1024a时,电子设备210可以指示锚定点A进入功率节省模式1并通知其它锚定点进入功率节省模式1026a。在功率节省模式1026a期间,RTC1014在一个周期内启用预定义时间的深度睡眠模式,随后发出唤醒命令。
当电子设备210识别出触发事件1024b时,电子设备210可以指示锚定点A通知其它锚定点进入功率节省模式1026b。在功率节省模式1026b期间,RTC 1014在一个周期内启用预定义时间的深度睡眠模式,随后发出唤醒命令。应注意,预定义时间在功率节省模式1026a与功率节省模式1026b之间可以不同。
当电子设备210识别到触发事件1024c时,电子设备210可以指示锚定点A进入性能高效模式1026c并通知其它锚定点也进入性能高效模式1026c。在性能高效模式1026c期间,RTC 1014在一个周期内启用深度睡眠达预定时间(该预定时间大于功率节省模式1026a和功率节省模式1026b的预定义时间),随后发出唤醒命令。
应注意,在一些实施例中,触发事件可以由锚定点本身来识别。例如,响应于锚定点A检测到触发事件1024a,锚定点A通知其它锚定点进入功率节省模式1026a,并且也进入功率节省模式1026a。又例如,响应于锚定点A检测到触发事件1024b,锚定点A通知某些其它锚定点进入功率节省模式1026b。又例如,响应于锚定点A检测到触发事件1024c,锚定点A进入性能高效模式1026,并通知其它锚定点也进入性能高效模式1026c。
标准C可以取决于锚定点距电子设备210的距离。例如,电子设备210可以识别标签250与锚定点204之间的距离。然后,电子设备210可以确定到一个或更多锚定点的距离超出阈值距离。在确定出从电子设备210到一个或更多锚定点的距离超过阈值距离时,电子设备可以向任一锚定点204发送指示某个锚定点将进入功率节省模式的消息。
又例如,标准C可以取决于电子设备210(或通常在UWB TWR网络上具有注册标签的所有电子设备)是否断电,或者如果电子设备210通电但电子设备210没有执行预定义的功能(诸如剪草),则取决于所有锚定点是否都可以处于功率节省模式。
又例如,标准C可以基于日程。例如,如果电子设备210被安排在每天的某个时间修剪草坪并在某个时间完成修剪,则在该窗口之外的任何其它时间,锚定点会自动进入深度睡眠模式。
尽管图10A、图10B和图10C示出示例性方法和图,但是可以对图10A、图10B和图10C做出各种改变。例如,虽然示出为一系列步骤,但图10C的任何方法中的各个步骤可以重叠、并行发生或发生任意次数。
图11A至图11L描述了根据本公开的实施例的用于边界和障碍物检测的各种实施例。图11A和图11B示出根据本公开的实施例的用于标测区域的示例性方法1100a和1100b。图11C示出根据本公开的实施例的具有带有起始点(seed)的多个部分的区域1110的示例。图11D示出根据本公开的实施例的、电子设备识别某些区域的示例性图1115。图11E示出根据本公开的实施例的、电子设备基于螺旋图案执行边界和障碍物标测的示例性图1120。图11F示出根据本公开的实施例的用于检测区域的边界的示例性图1125。图11G示出根据本公开的实施例的用于检测障碍物的示例性图1128。图11H示出根据本公开的实施例的用于边界和障碍物标测的示例性方法1130。图11I示出根据本公开的实施例的用于障碍物标测的示例性方法1140。图11J、图11K和图11L示出根据本公开的实施例的用于边界标测的示例性方法1150、1160和1180。方法1100a、1100b、1130、1140、1150、1160和1180可以由图1的电子设备100和图2C的电子设备210的定位生成器执行。为了便于解释,方法1100a、1100b、1130、1140、1150、1160和1180由电子设备210执行。
本公开的实施例考虑到电子设备(诸如自主剪草机、自主真空吸尘器、自主拖把等)中的覆盖区路径规划涉及提出这样一种路径,其使得电子设备被制造成在空间中所有需要的点上移动。示例性覆盖区路径规划是牛耕式或往复式路径规划,诸如图7A的路径706c。例如,电子设备210以确定性模式行进以覆盖图7A的整个区域702c。然而,为了规划图案,电子设备210应该知道草坪的边界以及永久或静态障碍物的位置。确定草坪边界的最简单方法是手动测量边界。另一种常见的做法是在草坪边界上安装电线,以帮助检测边缘。通过使边界沿边缘移动并使用传感器对其进行定位来手动将边界告知给电子设备是另一种测量边界的方法。有时在边界处安装传感器网络,该传感器网络可以用于识别草坪的边缘。本公开的实施例,电子设备210在规划运动之前获知草坪的边界和永久障碍物的位置,而无需沿着草坪的边界安装额外的传感器或电线。
在某些实施例中,如图11A的方法1100a中所述,可以通过同时执行外部边界标测和永久障碍物标测来实现自动草坪标测。在某些实施例中,如图11B的方法1100b中所述,自动草坪标测可以通过将方法1100a的步骤分成多个顺序性步骤来完成,即识别外部边界然后检测和标测草坪中的永久障碍物。
方法1100a通过同时执行外部边界标测和永久障碍物标测来描述自动草坪标测的过程。在步骤1101中,电子设备210从开始位置开始行驶。开始位置可以称为起始点或起始点位置。在使电子设备210行驶的同时,在步骤1102中,维持预定路径,诸如往复路径(图7A的路径706c)或螺旋路径(图7A的路径706b)。在行驶和维持预定路径的同时,电子设备210在步骤1103中执行边界标测和障碍物标测。图11H的方法1130(下文更详细讨论)进一步描述了方法1100a。
也就是说,在方法1100a期间,电子设备210在单个预定义路径期间执行边界和障碍物标测。例如,电子设备210从草坪的起始点开始。它遵循这样的模式,该模式可以是螺旋或往复模式。可以使用传感器或传感器的融合来估计电子设备210的位置,例如超宽带(UWB)、惯性测量单元(IMU)和轮子编码器。在遵循该模式时,电子设备210使用诸如激光雷达或相机的附加传感器来检测障碍物。在行进时,电子设备210执行图11I的并在图11G的图1128中描述的方法1140,以绕过障碍物并恢复图案化路径。当电子设备210接近边界时,它基于图11K的方法1160和图11F的图1125遵循平行于边界的路径,直到它能够恢复图案为止。
方法1100b描述了通过执行外部边界标测然后执行障碍物标测的自动草坪标测的过程。在步骤1105中,电子设备210从开始位置开始行驶。开始位置可以称为起始点或起始点位置。从开始位置,电子设备210行进到该区域的边界。在步骤1106中,电子设备210标测外部边界。例如,电子设备210围绕该区域的周边行进。在步骤1107中,电子设备210生成边界内的路径。生成的路径可以是可以为往复路径(图7A的路径706c)或螺旋路径(图7A的路径706b)的路径。在步骤1108中,电子设备210然后沿着生成的路径行进并且在区域内执行永久障碍物标测。
也就是说,在方法1100a期间,电子设备210分别执行边界和障碍物标测。首先执行边界标测,然后是障碍物标测。在某些实施例中,可以通过在起始点处启动电子设备210并使用传感器区分草坪和非草坪区域,然后使电子设备210沿着平行于检测到的边界的路径来识别边界。在执行闭环边界检测之后,电子设备210通过使电子设备210在检测到的草坪边界内行进并在将障碍物标测到网格地图上时避开挡路的障碍物来执行永久障碍物标测。
应注意,在任何一种情况(方法1100a或1100b)下,如果草坪有多个部分(诸如图11C的部分1111和1113),每个部分都可以单独标测,在这种情况下,如图11C所示,用户可以指定草坪的每个部分的起始点。电子设备210开始于草坪中的起始点,诸如图11C的起始点1112和1114。起始点可以是草坪上的、由用户经由用户界面(UI)指定的任何区域。电子设备210然后单独标测每个部分。在完成一部分草坪之后,用户可以使电子设备210物理地移动到院子的另一部分的另一起始点或附近,或者如果院子的不同部分的起始点之间有畅通路径,电子设备210可以规划路径并依靠定位来导航到院子的下一部分的起始点。
在某些实施例中,使用可以区分草坪和非草坪区域的传感器来执行边界检测。如图11D的图1115所示,相机可以用于将视场1116中的区域识别为草1117或非草1118,如图11D所示。将区域标记为草1117或非草1118的一些方法可以是相机图像上的色调检测或一些机器学习解决方案。可以用于此的其它传感器有光传感器或超声波雷达传感器。电子设备210的图案化运动继续,直到电子设备210具有完全闭合的外边界。
对于有明确的草和无草区分的草坪,可以使用相机或光传感器来检测边界。替代性地,在无法识别明确边界的情况下(诸如在未被栅栏分隔的界址线之间),用户可以在用户界面(UI)上手动定义边界。例如,部分定义的区域被显示在图形用户界面(GUI)上,并且用户在GUI上绘制不明确的边界。然后,电子设备210可以在开始标测其余边界边缘之前基于用户输入直接在网格地图上标记该边界。
在某些实施例中,边界检测过程在多次行进中以不同的图案重复以收敛至网格地图。例如,第一次行进可以基于螺旋图案,下一次行进可以使用方形图案等等,直到获得收敛为止。当新行进与前一次行进之间的差异低于阈值时,可以获得收敛。
图11E的图1120示出基于从起始点位置1123开始的螺旋图案的示例性行进。从起始点位置1123开始的电子设备210以小圆开始,该圆扩大到包括整个草坪。电子设备210避开障碍物1122a和1122b,然后恢复路径,直到它在位置1121处到达结束位置为止。
图11F的图1125描述了沿循区域1127的边界的过程。图1125的过程可以使用诸如比例积分微分控制器(PID)、线性二次调节器控制器(LQR)、模型预测控制器、纯追踪控制器的反馈控制器来实现路径跟踪。例如,可以使用纯追踪控制器来控制剪草机的转向角以跟踪路径。
电子设备210的速度是v(t),并且转向速度δ可以在公式(8)中描述。在公式(8)中,Ld是从当前位置到所需路径的预见(look-ahead)距离,k是比例控制增益,并且α是电子设备210的前进方向与预见矢量(gx,gy)之间的取向误差。
公式(8)
在执行边界标测之后,电子设备210标测永久或静态障碍物,如图11G的图1128所示。也就是说,图1128描述了标测永久或静态障碍物的过程。例如,电子设备210在标测的边界内规划路径并沿着规划的路径横贯。每当电子设备210遇到障碍物时,它基于图11G的图1128中描述的过程绕过障碍物,同时将其标测到网格地图上。在标测障碍物后,电子设备210重新规划路径以绕过障碍物从当前位置到终点。
如图1128中所描述的,用于标测永久或静态障碍物的过程可以使用人工势场(APF)、D*、人工神经网络等来植入。障碍物与电子设备210之间的距离可以使用诸如相机、激光雷达、超声波传感器等的测距传感器来测量。来自目标路径点的引力和来自障碍物的排斥力的总和将驱使电子设备210避开障碍物并移动到期望的目标路径点。公式(9)描述了引力Fatt(x,t)。在公式(9)中,ka是比例增益,x(t)是电子设备210的当前位置,并且xd(t)是目标路径点的位置。公式(10)描述了排斥力Frep(x,t)。在公式(10)中,kr为比例增益,ρ为电子设备210与障碍物之间的距离,ρ0为潜在场地影响的极限距离,x为电子设备210的当前位置,并且x0为最近障碍物的位置。公式(9)的Fatt和公式(10)的Frep之和决定了电子设备210的期望取向。
公式(9)
Fatt(x,t)=-2ka(x(t)-xd(t))
公式(10)
图11H的方法1130详细描述了图11A的方法1100a,电子设备210在同一运行期间执行边界和障碍物标测两者。在步骤1131中,电子设备210生成从起始点位置开始的图案路径。在步骤1132中,电子设备210在网格地图中标测边界。为了标测边界,在步骤1133a中,电子设备210识别草地和非草地区域,并且在步骤1133b中,电子设备210识别其在草坪内的当前位置。在步骤1134中,电子设备210确定它是否检测到障碍物。当电子设备210检测到障碍物时,在步骤1135中,电子设备210基于图11G的图1128中描述的过程沿循障碍物的边界。此后,在步骤1138中,电子设备210恢复所规划路径的运动。
替代性地,当电子设备210未检测到障碍物时,在步骤1136中,电子设备210将其到边界的当前距离与阈值进行比较。例如,当电子设备210与边界之间的距离小于阈值时,电子设备210在步骤1137中基于图11F的图1125中描述的过程沿循边界。当电子设备210与边界之间的距离大于阈值时,电子设备210在步骤1138中恢复路径的运动。
在恢复路径上的运动之后,在步骤1139中,电子设备210确定边界是否闭合。在确定出边界没有闭合之后,电子设备210返回步骤1134。替代性地,在确定出边界闭合后,电子设备210保存包括边界和静态障碍物的所生成的网格地图。
图11I的方法1140、图11J的方法1150、图11K的方法1160和图11L的方法1180描述了分别识别边界和障碍物的过程,类似于图11B的方法1100b。例如,在使用方法1150、1160和1180中的任何一个识别边界之后,电子设备210基于方法1140识别边界内的障碍物。
图11I的方法1140描述了在识别边界之后识别区域内的障碍物的过程。例如,在执行边界标测之后,电子设备210基于如上所述的任何路径规划方案在获得的边界内规划路径。在导航通过该路径时,电子设备210可以基于方法1140来标测草坪中的永久障碍物。应注意,对于草坪边界和永久障碍物的自动标测,重要的是确保草坪没有任何临时障碍物,诸如玩具、动物等,以防止它们被标测为永久障碍物。
在某些实施例中,永久避障可以通过使电子设备在规划的路径上多次行进直到获得稳定的地图来迭代地避障。这将确保移除地图中的静态障碍物(如果存在)。
在步骤1141中,电子设备210获得先前生成的边界标测,然后在获得的边界内规划路径。在步骤1142中,电子设备210横贯所规划的路径。在步骤1143中,电子设备210确定是否检测到障碍物。当没有检测到障碍物时,电子设备210在步骤1146中继续其规划路径。当检测到障碍物时,电子设备210在步骤1144中沿循障碍物的边界,同时将其标测到网格地图中。电子设备210可以使用上面在图11G中描述的过程沿循障碍物。在沿循障碍物的边界之后,电子设备210在步骤1145中替换从其当前位置到终点的路径。在步骤1146中,电子设备210在重新规划的路径上继续。
在步骤1147中,电子设备210确定它是否到达结束位置。如果电子设备210到达结束位置,则障碍物标测完成。替代性地,如果电子设备210未到达结束位置,则电子设备210在步骤1143中判断是否检测到障碍物,并重复步骤直到电子设备210到达结束位置为止。
图11J、图11K和图11L的方法1150、1160和1180分别描述了识别边界的过程。例如,图11J的方法1150使用相机或其它传感器来将视野中的区域识别为草或非草。可以使用传感器或传感器的融合来估计电子设备210的位置。基于图像上的草地与非草地区域之间的当前位置和分隔部,可以在网格地图中标记草坪的边界。然后,电子设备210基于图11F中描述的过程沿循所标测的边界并绕过边界以标测整个草坪边界。
在步骤1151中,从起始点位置开始行驶并标测。在步骤1152中,电子设备210在网格地图中标测边界。为了标测边界,在步骤1153a中,电子设备210识别草地和非草地区域,并且在步骤1153b中,电子设备210识别其在草坪内的当前位置。在步骤1154中,电子设备210基于图11F中描述的过程横贯标测的边界。在步骤1155中,电子设备210确定边界是否闭合。当边界未闭合时,电子设备210返回步骤1152以标测边界。替代性地,当边界闭合时,电子设备210在所识别的边界内规划路径。在步骤1157中,电子设备210执行障碍物标测。在某些实施例中,障碍物标测基于图11I的方法1140。
对于另一示例,图11K的方法1160描述了当提供位置估计值的传感器不是很准确时或者当草地和非草地区域的标记具有不确定性时的、方法1150的变型。方法1160是迭代方法。也就是说,存储在方法1160的每次迭代中获得的地图并与在先前迭代中获得的地图进行比较。如果两个地图相互偏离,则该过程继续进行,直到地图收敛。
在步骤1161中,电子设备210将变量i设置为零。在步骤1162中,电子设备210从起始点位置开始行驶并标测。在步骤1164中,电子设备210在网格地图中标测边界。为了标测边界,在步骤1163a中,电子设备210识别草地和非草地区域,并且在步骤1163b中,电子设备210识别其在草坪内的当前位置。在步骤1165中,电子设备210基于图11F中描述的过程横贯标测的边界。在步骤1166中,当边界闭合时,电子设备210将i的值设置为i+1。在步骤1167中,电子设备确定i的值是否小于N的值。当i的值大于或等于N的值时,则在步骤1172中,电子设备210在所识别的边界内规划路径。
替代性地,如果i的值小于N,则电子设备210在步骤1168中确定i的值是否小于一。当i的值大于或等于一时,电子设备210在步骤1171中识别当前地图与M的偏差。在步骤1170中,电子设备210确定偏差是否大于阈值。当偏差大于阈值或当i的值小于一时,电子设备210在步骤1169中将地图存储为地图M。在存储地图之后,电子设备210在步骤1162返回到开始位置。
当在步骤1172中规划边界内的路径之后,电子设备210在步骤1173中执行障碍物标测。在某些实施例中,障碍物标测基于图11I的方法1140。
对于又一个示例,图11L的方法1180描述了除了方法1150和1160之外可以使用的变型。方法1180描述了何时以及如何标测边界。例如,电子设备210沿循预定的线路径(诸如直线)直到它接近边界。使用相机或其它传感器检测边界。每当电子设备210与边界相距距离x时,它就将该点标记为标测的起点,并开始沿循平行于边界的路径。在将点标测到网格地图上的同时,电子设备210还执行当前获得的边界点与已经标测的点的扫描匹配,以便避免边界的任何冗余或加粗。这使得电子设备210能够在再次到达起点时将环闭合。电子设备210继续绘制边界,执行扫描匹配并平行于边界移动,直到其在横贯周边后到达起点。
在步骤1181中,电子设备210从起始点开始并将点P1初始化为未知。在步骤1182中,电子设备210沿直线路径行进。在步骤1183中,电子设备210确定是否在距电子设备210预定距离处检测到非草地区域。当未检测到非草地区域时,电子设备210继续步骤1182,即沿直线路径行进。当在距电子设备210的预定距离内未检测到非草地区域时,在步骤1184中,电子设备210确定是否分配了P1。如果未分配P1,则在步骤1185中,电子设备210将电子设备210的当前位置分配为P1。在将当前位置指定为P1或确定P1已被分配后,电子设备210在步骤1186中将视场中的区域标记为草地或非草地。在步骤1187中,电子设备210使用沿标记区域的位置估计值来在网格地图上标测草地与非草地之间的边界。在步骤1188中,电子设备210确认重复点的数量。例如,电子设备210执行标记为边界点的新地图点与先前标测的点的扫描匹配,以确保不存在点的重复从而导致扩展边界。在步骤1189中,电子设备210平行于标测的边界地进行横贯。在步骤1190中,电子设备210确定它是否到达点P1。当电子设备210到达点P1时,边界检测过程结束。替代性地,当电子设备210未到达点P1时,方法返回步骤1183。
尽管图11A至图11L示出示例性方法和图,但是可以对图11A至图11L进行各种改变。例如,虽然显示为一系列步骤,但方法1100a、1100b、1130、1140、1150、1160和1180中的任何方法中的各个步骤可以重叠、并行发生或发生任意次数。
图12示出根据本公开的实施例的用于控制电子设备的示例性方法1200。方法1100a、1100b、1130、1140、1150、1160和1180可以由图1的电子设备100和图2C的电子设备210的定位生成器执行。为了便于解释,方法1200由处理器执行,诸如电子设备210的处理器140。
在步骤1202中,处理器140生成用于使电子设备在区域内行驶的路径。为了生成路径,电子设备包括用于检测障碍物的附加传感器。
在某些实施例中,当电子设备沿路径行驶时,处理器140确定障碍物是否阻挡路径。响应于确定出障碍物阻挡路径,处理器140控制电子设备停止行驶预定时间段。响应于确定出障碍物在预定时间段之后没有移动,处理器140修改路径以避开障碍物以便继续该路径。
在某些实施例中,处理器140控制电子设备根据路径在区域内从开始位置行驶到结束位置。在到达结束位置时,处理器140识别未被横贯的一个或更多区域。处理器140生成供电子设备横贯未被横贯的一个或更多区域的新路径。
处理器140还可以在电子设备横贯区域之后识别遗漏区域。例如,处理器140基于电子设备在电子设备横贯区域时的位置和轨迹来生成该区域的地图。响应于电子设备到达结束位置,处理器140将地图划分成多个单元。处理器140将第一标志提供给多个单元中的、与地图的被电子设备横贯的部分对应的第一部分,并且将第二标志提供给多个单元中的、与未被横贯的一个或更多区域对应的第二部分,第二标志标识遗漏区域。处理器140然后将遗漏区域聚集成不同半径的圆。
处理器140还可以控制电子设备重抵遗漏区域。例如,处理器140生成区域中的遗漏区域的列表以确定电子设备抵达遗漏区域的顺序。处理器140控制电子设备基于确定的顺序行驶到包括在列表中的第一遗漏区域的中心位置。响应于确定出电子设备位于第一遗漏区域的中心位置,处理器140控制电子设备沿预定轨迹行驶通过第一遗漏区域。响应于确定出障碍物阻止电子设备到达第一遗漏区域的中心位置,处理器控制电子设备以使电子设备基于确定的顺序行驶到包括在列表中的遗漏区域中的另一个遗漏区域,或者一旦检测到触发事件,控制电子设备以使电子设备行驶到结束位置。
在步骤1204中,处理器140从第一组传感器接收运动信息。第一组传感器可以包括IMU和轮子编码器。运动信息包括线速度和角速度。
在步骤1206中,处理器140生成测距信息。测距信息基于经由第二组传感器从多个锚定点接收的信息。锚定点被定位在遍布区域(诸如院子)的固定位置处。
在步骤1208中,当电子设备210沿路径行驶时,处理器140基于运动信息识别电子设备在区域内的位置和前进方向。
在某些实施例中,处理器140基于来自轮子编码器传感器的运动信息识别第一行进距离,基于来自惯性测量传感器的运动信息识别行进的第二距离,并且基于来自第二组传感器的测距信息来识别行进的第三距离(经由步骤1208)。如果第一行进距离大于第二行进距离或第三行进距离,则处理器在不使用轮子编码器传感器的情况下,基于惯性测量传感器和第二组传感器来识别电子设备的位置和前进方向。
在步骤1210中,处理器140基于测距信息修改位置和前进方向。在某些实施例中,处理器140基于第一组传感器和第二组传感器识别电子设备在区域内的第一位置。当第一位置被识别时,处理器140基于第二组传感器识别电子设备在区域内的第二位置。处理器140然后将基于第一位置的第一属性和基于第二位置的第二属性之间的差异与阈值进行比较,其中第一属性和第二属性是行进方向、位置或时间。处理器然后基于比较来确定是使用第一位置还是第二位置。
在步骤1212中,处理器140基于电子设备的位置和前进方向来控制电子设备根据路径在区域内行驶。在某些实施例中,当电子设备在区域内行驶并接近边界时,处理器140可以基于传感器识别边界线的边界类型。传感器可以是相机和草检测器。响应于确定出边界类型是软边界,处理器140控制电子设备在边界线上并沿着边界线行驶。响应于确定出边界类型是硬边界,处理器140控制电子设备使电子设备在区域内距边界线的阈值距离处行驶。
在某些实施例中,处理器140经由驱动系统控制电子设备沿草坪的周边行驶并生成草坪的网格地图。在生成网格地图之后,处理器140控制驱动系统以使电子设备沿预定路径在草坪的周边内行驶。响应于确定出障碍物阻挡预定路径,处理器140控制驱动系统以使电子设备绕过障碍物。障碍物可以是静态或动态障碍物。当障碍物静止时,在步骤1202的生成路径时使用障碍物的位置。当驱动系统驱动电子设备绕过障碍物时,处理器140将障碍物包括在网格地图中。在驱动系统驱动电子设备绕过障碍物后,处理器140控制驱动系统以使电子设备在草坪周边内沿预定路径继续行驶。
在某些实施例中,处理器140可以针对锚定点执行功率管理功能。例如,处理器140可以识别第二组传感器与多个锚定点中的每一个之间的距离。处理器140然后确定第二组传感器与多个锚定点中的一个或更多之间的距离大于阈值距离。然后,处理器140可以向多个锚定点中的至少一个发送指示该一个或更多锚定点将进入或退出功率节省模式的消息。
尽管图12示出示例性方法和图,但是可以对图12进行各种改变。例如,虽然示出为一系列步骤,但方法1200中的任何方法中的各个步骤可以重叠、并行发生或发生任意次数。
尽管附图示出用户设备的不同示例,但是可以对附图进行各种改变。例如,用户设备可以包括呈任何合适布置的任何数量的每一部件。一般地,附图不会将本公开的范围限制为任何特定配置。此外,虽然附图示出其中可以使用本专利文档中所公开的各种用户设备特征的操作环境,但是这些特征可以用于任何其它合适的系统中。
尽管已经用示例性实施例描述了本公开,但是可以向本领域技术人员启示各种改变和修改。本公开旨在涵盖落入所附权利要求的范围内的此类改变和修改。
Claims (15)
1.一种电子设备,包括:
第一组传感器,配置为生成运动信息;
第二组传感器,配置为从位于遍布区域的固定位置处的多个锚定点接收信息;以及
处理器,可操作地连接到所述第一组传感器和所述第二组传感器,所述处理器配置为:
生成供所述电子设备在所述区域内行驶的路径,
从所述第一组传感器接收所述运动信息,
基于经由所述第二组传感器从所述多个锚定点接收的所述信息来生成测距信息,
当所述电子设备沿着所述路径行驶时,基于所述运动信息来识别所述电子设备在所述区域内的位置和前进方向,
基于所述测距信息来修改所述电子设备的位置和前进方向,以及
基于所述电子设备的位置和前进方向来控制所述电子设备根据所述路径在所述区域内行驶。
2.如权利要求1所述的电子设备,其中:
所述第一组传感器包括惯性测量传感器和轮子编码器传感器;
从所述第一组传感器获得的所述运动信息包括线速度和角速度;以及
所述处理器还配置为:
基于来自所述轮子编码器传感器的所述运动信息来识别第一行进距离,
基于来自所述惯性测量传感器的所述运动信息来识别第二行进距离,
基于来自所述第二组传感器的所述测距信息来识别第三行进距离,以及
响应于确定出在一段时间内所述第一行进距离大于所述第二行进距离或所述第三行进距离,在不使用所述轮子编码器传感器的情况下,基于所述惯性测量传感器和所述第二组传感器来识别所述电子设备的位置和前进方向。
3.如权利要求1所述的电子设备,其中,所述处理器配置为:
基于所述第一组传感器和所述第二组传感器来识别所述电子设备在所述区域内的第一位置;
在识别所述第一位置的同时,基于所述第二组传感器来识别所述电子设备在所述区域内的第二位置;
将基于所述第一位置的第一属性和基于所述第二位置的第二属性之间的差与阈值进行比较,其中所述第一属性和所述第二属性是行进方向、位置或时间;以及
基于所述比较来确定是使用所述第一位置还是所述第二位置。
4.如权利要求1所述的电子设备,其中:
所述电子设备包括配置为检测障碍物的第三组传感器;以及
所述处理器配置为:
在所述电子设备沿所述路径行驶时,确定所述障碍物是否阻挡所述路径,
响应于确定出所述障碍物阻挡所述路径,控制所述电子设备停止行驶预定时间段,
响应于确定出所述障碍物在所述预定时间段之后没有移动,修改所述路径以避开所述障碍物以便继续所述路径。
5.如权利要求1所述的电子设备,其中,所述处理器配置为:
控制所述电子设备根据所述路径在所述区域内从开始位置行驶到结束位置;
在到达所述结束位置时,识别未被横贯的一个或更多区域;以及
生成供所述电子设备行驶以横贯未被横贯的所述一个或更多区域的新路径。
6.如权利要求5所述的电子设备,其中,所述处理器配置为:
在所述电子设备横贯所述区域时,基于所述电子设备的位置和轨迹来生成所述区域的地图;
响应于所述电子设备到达所述结束位置,将所述地图划分成多个单元;
向所述多个单元的、与所述地图的被所述电子设备横贯的部分对应的第一部分提供第一标志;
向所述多个单元的、与未被横贯的所述一个或更多区域对应的第二部分提供第二标志,所述第二标志标识遗漏区域;
将所述遗漏区域聚集成不同半径的圆;以及
控制所述电子设备重抵所述遗漏区域。
7.如权利要求6所述的电子设备,其中,所述处理器配置为:
生成所述区域中的所述遗漏区域的列表以确定所述电子设备抵达所述遗漏区域的顺序,
控制所述电子设备基于所确定的顺序行驶到包括在所述列表中的第一遗漏区域的中心位置,
响应于确定出所述电子设备位于所述第一遗漏区域的中心位置,控制所述电子设备沿预定轨迹行驶通过所述第一遗漏区域;以及
响应于确定出障碍物阻止所述电子设备到达所述第一遗漏区域的中心位置,控制所述电子设备以使所述电子设备基于所确定的顺序行驶到包括在所述列表中的所述遗漏区域中的另一个遗漏区域,或者一旦检测到触发事件,控制所述电子设备以使所述电子设备行驶到所述结束位置。
8.如权利要求1所述的电子设备,其中:
所述电子设备还包括第三组传感器,所述第三组传感器包括相机和草检测器中的至少一个;以及
所述处理器配置为:
响应于所述电子设备接近边界线,基于所述第三组传感器来确定所述边界线的边界类型;
响应于确定出所述边界类型是软边界,控制所述电子设备以使所述电子设备在所述边界线上并沿着所述边界线行驶;以及
响应于确定出所述边界类型是硬边界,控制所述电子设备以使所述电子设备在所述区域内在距所述边界线的阈值距离处行驶。
9.用于控制电子设备的方法,所述方法包括:
生成供所述电子设备在区域内行驶的路径;
从第一组传感器接收运动信息;
基于经由第二组传感器从位于遍布所述区域的固定位置处的多个锚定点接收的信息来生成测距信息;
当所述电子设备沿着所述路径行驶时,基于所述运动信息来识别所述电子设备在所述区域内的位置和前进方向;
基于所述测距信息来修改所述电子设备的位置和前进方向;以及
基于所述电子设备的位置和前进方向来控制所述电子设备根据所述路径在所述区域内行驶。
10.如权利要求9所述的方法,其中:
所述第一组传感器包括惯性测量传感器和轮子编码器传感器;
从所述第一组传感器获得的所述运动信息包括线速度和角速度;以及
所述方法还包括:
基于来自所述轮子编码器传感器的所述运动信息来识别第一行进距离,
基于来自所述惯性测量传感器的所述运动信息来识别第二行进距离,
基于来自所述第二组传感器的所述测距信息来识别第三行进距离,以及
响应于确定出在一段时间内所述第一行进距离大于所述第二行进距离或所述第三行进距离,在不使用所述轮子编码器传感器的情况下,基于所述惯性测量传感器和所述第二组传感器来识别所述电子设备的位置和前进方向。
11.如权利要求9所述的方法,还包括:
基于所述第一组传感器和所述第二组传感器来识别所述电子设备在所述区域内的第一位置;
在识别所述第一位置的同时,基于所述第二组传感器来识别所述电子设备在所述区域内的第二位置;
将基于所述第一位置的第一属性和基于所述第二位置的第二属性之间的差与阈值进行比较,其中所述第一属性和所述第二属性是行进方向、位置或时间;以及
基于所述比较来确定是使用所述第一位置还是所述第二位置。
12.如权利要求9所述的方法,还包括:
在所述电子设备沿所述路径行驶时,确定障碍物是否阻挡所述路径,
响应于确定出所述障碍物阻挡所述路径,控制所述电子设备停止行驶预定时间段,
响应于确定出所述障碍物在所述预定时间段之后没有移动,修改所述路径以避开所述障碍物以便继续所述路径。
13.如权利要求9所述的方法,还包括:
控制所述电子设备根据所述路径在所述区域内从开始位置行驶到结束位置;
在到达所述结束位置时,识别未被横贯的一个或更多区域;以及
生成供所述电子设备行驶以横贯未被横贯的所述一个或更多区域的新路径。
14.如权利要求13所述的方法,还包括:
在所述电子设备横贯所述区域时,基于所述电子设备的位置和轨迹来生成所述区域的地图;
响应于所述电子设备到达所述结束位置,将所述地图划分成多个单元;
向所述多个单元的、与所述地图的被所述电子设备横贯的部分对应的第一部分提供第一标志;
向所述多个单元的、与未被横贯的所述一个或更多区域对应的第二部分提供第二标志,所述第二标志标识遗漏区域;
将所述遗漏区域聚集成不同半径的圆;以及
控制所述电子设备重抵所述遗漏区域。
15.如权利要求14所述的方法,还包括:
生成所述区域中的所述遗漏区域的列表以确定所述电子设备抵达所述遗漏区域的顺序,
控制所述电子设备基于所确定的顺序行驶到包括在所述列表中的第一遗漏区域的中心位置,
响应于确定出所述电子设备位于所述第一遗漏区域的中心位置,控制所述电子设备沿预定轨迹行驶通过所述第一遗漏区域;以及
响应于确定出障碍物阻止所述电子设备到达所述第一遗漏区域的中心位置,控制所述电子设备以使所述电子设备基于所确定的顺序行驶到包括在所述列表中的所述遗漏区域中的另一个遗漏区域,或者一旦检测到触发事件,控制所述电子设备以使所述电子设备行驶到所述结束位置。
Applications Claiming Priority (11)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962892762P | 2019-08-28 | 2019-08-28 | |
US62/892,762 | 2019-08-28 | ||
US201962938509P | 2019-11-21 | 2019-11-21 | |
US62/938,509 | 2019-11-21 | ||
US201962941126P | 2019-11-27 | 2019-11-27 | |
US62/941,126 | 2019-11-27 | ||
US202062966769P | 2020-01-28 | 2020-01-28 | |
US62/966,769 | 2020-01-28 | ||
US17/003,834 US11937539B2 (en) | 2019-08-28 | 2020-08-26 | Sensor fusion for localization and path planning |
US17/003,834 | 2020-08-26 | ||
PCT/KR2020/011577 WO2021040471A1 (en) | 2019-08-28 | 2020-08-28 | Sensor fusion for localization and path planning |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114341760A true CN114341760A (zh) | 2022-04-12 |
Family
ID=74679712
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080062119.5A Pending CN114341760A (zh) | 2019-08-28 | 2020-08-28 | 用于定位和路径规划的传感器融合 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11937539B2 (zh) |
EP (1) | EP3999928B1 (zh) |
CN (1) | CN114341760A (zh) |
WO (1) | WO2021040471A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116866842A (zh) * | 2023-09-05 | 2023-10-10 | 成都健康医联信息产业有限公司 | 一种传染病跨时空目标追踪预警方法、系统、终端及介质 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11639981B2 (en) * | 2015-07-17 | 2023-05-02 | Origin Wireless, Inc. | Method, apparatus, and system for movement tracking |
CN107223200B (zh) * | 2016-12-30 | 2023-02-28 | 达闼机器人股份有限公司 | 一种导航方法、装置及终端设备 |
FR3066755B1 (fr) * | 2017-05-23 | 2019-06-07 | Airbus Operations | Procede et dispositif de surveillance et d'estimation de parametres relatifs au vol d'un aeronef. |
US11937539B2 (en) | 2019-08-28 | 2024-03-26 | Samsung Electronics Co., Ltd. | Sensor fusion for localization and path planning |
US11768504B2 (en) * | 2020-06-10 | 2023-09-26 | AI Incorporated | Light weight and real time slam for robots |
US11737627B2 (en) * | 2020-10-03 | 2023-08-29 | Viabot Inc. | Methods for setting and programming zoning for use by autonomous modular robots |
US20230168343A1 (en) * | 2021-11-29 | 2023-06-01 | Motorola Mobility Llc | Object and Environment Dimensioning Based on UWB Radios |
CN114360292B (zh) * | 2021-12-27 | 2023-02-24 | 中煤科工集团信息技术有限公司 | 用于露天矿无人驾驶车辆的防碰撞方法、系统及介质 |
WO2023123117A1 (zh) * | 2021-12-29 | 2023-07-06 | 广东美的白色家电技术创新中心有限公司 | 一种割草机器人避障方法和割草机器人 |
TWI790079B (zh) * | 2022-01-03 | 2023-01-11 | 優式機器人股份有限公司 | 自動除草設備運作方法及自動除草設備 |
CN114568108B (zh) * | 2022-02-28 | 2022-11-11 | 清华大学深圳国际研究生院 | 一种无人割草机轨迹跟踪控制方法及计算机可读存储介质 |
SE2250350A1 (en) * | 2022-03-21 | 2023-09-22 | Husqvarna Ab | Method and System for operating a solar robot with a wake-up charging position |
WO2023189015A1 (ja) * | 2022-03-31 | 2023-10-05 | 株式会社クボタ | 農作業支援システム、農業機械、農作業支援装置、農業機械の走行ルート作成方法 |
WO2023240170A1 (en) * | 2022-06-10 | 2023-12-14 | The Regents Of The University Of California | Device localization and navigation using rf sensing |
US20240032461A1 (en) * | 2022-07-29 | 2024-02-01 | Techtronic Cordless Gp | Liquid detection sensor for a robotic garden tool |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US1037038A (en) | 1911-12-13 | 1912-08-27 | Simplex Spreader Mfg Company | Straw-spreader. |
US6377888B1 (en) | 2000-04-03 | 2002-04-23 | Disney Enterprises, Inc. | System for controlling movement of a vehicle |
KR100423975B1 (ko) | 2001-12-14 | 2004-03-22 | 삼성전자주식회사 | 무인반송시스템과 주행제어방법 |
JP4462173B2 (ja) | 2005-11-21 | 2010-05-12 | パナソニック電工株式会社 | 自律移動装置 |
ES2654513T3 (es) | 2006-03-17 | 2018-02-14 | Irobot Corporation | Confinamiento de robot |
JP5190233B2 (ja) * | 2006-09-01 | 2013-04-24 | パナソニック株式会社 | 無線通信装置 |
WO2011115534A1 (en) | 2010-03-17 | 2011-09-22 | Husqvarna Ab | Method and system for navigating a robotic garden tool |
US9119341B2 (en) | 2010-04-14 | 2015-09-01 | Husqvarna Ab | Robotic garden tool following wires at a distance using multiple signals |
EP2569762A4 (en) | 2010-05-12 | 2015-05-20 | Proxisafe Ltd | EVENT WARNING SYSTEM AND METHOD THEREFOR |
EP2590495B1 (en) | 2010-07-07 | 2020-04-15 | Husqvarna AB | Communication and safety device for boundary aided systems |
US20120290165A1 (en) * | 2011-05-09 | 2012-11-15 | Chien Ouyang | Flexible Robotic Mower |
US10517211B2 (en) | 2014-04-29 | 2019-12-31 | Husqvarna Ab | Robotic work tool with hub-mounted skid plate |
US9510505B2 (en) | 2014-10-10 | 2016-12-06 | Irobot Corporation | Autonomous robot localization |
US9516806B2 (en) | 2014-10-10 | 2016-12-13 | Irobot Corporation | Robotic lawn mowing boundary determination |
GB201419883D0 (en) * | 2014-11-07 | 2014-12-24 | F Robotics Acquisitions Ltd | Domestic robotic system and method |
US9538702B2 (en) | 2014-12-22 | 2017-01-10 | Irobot Corporation | Robotic mowing of separated lawn areas |
SE540131C2 (en) * | 2014-12-24 | 2018-04-10 | Husqvarna Ab | Robotic work tool with trajectory correction |
US10365363B2 (en) | 2015-05-08 | 2019-07-30 | Humatics Corporation | Mobile localization using sparse time-of-flight ranges and dead reckoning |
CN108137154A (zh) | 2015-10-01 | 2018-06-08 | Lg伊诺特有限公司 | 用于无人驾驶飞行器的无线充电系统及其操作方法 |
DE102015119865B4 (de) * | 2015-11-17 | 2023-12-21 | RobArt GmbH | Robotergestützte Bearbeitung einer Oberfläche mittels eines Roboters |
CN107239074A (zh) | 2016-03-29 | 2017-10-10 | 苏州宝时得电动工具有限公司 | 自动工作系统及其工作区域的地图建立方法 |
CN107223200B (zh) * | 2016-12-30 | 2023-02-28 | 达闼机器人股份有限公司 | 一种导航方法、装置及终端设备 |
US10353399B2 (en) * | 2017-07-21 | 2019-07-16 | AI Incorporated | Polymorphic path planning for robotic devices |
WO2019068175A1 (en) | 2017-10-03 | 2019-04-11 | Xco Tech Inc. | SYSTEM AND METHOD FOR DETERMINING POSITION |
SE542445C2 (en) * | 2018-06-07 | 2020-05-05 | Husqvarna Ab | Articulated self-propelled robotic tool with slip detecting arrangement |
CN109000660A (zh) | 2018-06-26 | 2018-12-14 | 苏州路特工智能科技有限公司 | 基于超宽带定位的全自动压路机施工路径规划方法 |
KR102242714B1 (ko) | 2018-08-03 | 2021-04-22 | 엘지전자 주식회사 | 이동 로봇 및 그 제어방법, 이동 로봇 시스템 |
KR102242713B1 (ko) | 2018-08-03 | 2021-04-22 | 엘지전자 주식회사 | 이동 로봇 및 그 제어방법, 및 단말기 |
KR102266713B1 (ko) | 2018-08-03 | 2021-06-21 | 엘지전자 주식회사 | 이동 로봇, 이동 로봇 시스템 및 이동 로봇 시스템의 제어 방법 |
US11937539B2 (en) | 2019-08-28 | 2024-03-26 | Samsung Electronics Co., Ltd. | Sensor fusion for localization and path planning |
KR102347511B1 (ko) | 2019-11-15 | 2022-01-11 | 동의대학교 산학협력단 | 잔디경계선에 대한 영상처리를 이용한 잔디깍기 로봇 및 이의 제어 방법 |
KR102295824B1 (ko) | 2019-12-06 | 2021-08-31 | 엘지전자 주식회사 | 잔디깎기 로봇의 지도 생성방법 |
JP2021093032A (ja) | 2019-12-11 | 2021-06-17 | 中国電力株式会社 | 危険区画標示システム |
-
2020
- 2020-08-26 US US17/003,834 patent/US11937539B2/en active Active
- 2020-08-28 EP EP20858207.2A patent/EP3999928B1/en active Active
- 2020-08-28 WO PCT/KR2020/011577 patent/WO2021040471A1/en unknown
- 2020-08-28 CN CN202080062119.5A patent/CN114341760A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116866842A (zh) * | 2023-09-05 | 2023-10-10 | 成都健康医联信息产业有限公司 | 一种传染病跨时空目标追踪预警方法、系统、终端及介质 |
CN116866842B (zh) * | 2023-09-05 | 2023-11-21 | 成都健康医联信息产业有限公司 | 一种传染病跨时空目标追踪预警方法、系统、终端及介质 |
Also Published As
Publication number | Publication date |
---|---|
US20210064043A1 (en) | 2021-03-04 |
EP3999928A4 (en) | 2022-08-31 |
EP3999928A1 (en) | 2022-05-25 |
EP3999928B1 (en) | 2024-02-21 |
WO2021040471A1 (en) | 2021-03-04 |
US11937539B2 (en) | 2024-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114341760A (zh) | 用于定位和路径规划的传感器融合 | |
EP2169503B1 (en) | Multi-vehicle high intensity perception | |
US9274524B2 (en) | Method for machine coordination which maintains line-of-site contact | |
EP2169498B1 (en) | Vehicle with high integrity perception system | |
US8818567B2 (en) | High integrity perception for machine localization and safeguarding | |
US8478493B2 (en) | High integrity perception program | |
EP2354878B1 (en) | Method for regenerating a boundary containing a mobile robot | |
EP2342965B1 (en) | Varying irrigation scheduling based on height of vegetation | |
EP2169505B1 (en) | Distributed knowledge base for vehicular localization and work-site management | |
US8744626B2 (en) | Managing autonomous machines across multiple areas | |
EP3631594A1 (en) | An energetically autonomous, sustainable and intelligent robot | |
US20110153338A1 (en) | System and method for deploying portable landmarks | |
US20130238130A1 (en) | Path recording and navigation | |
US20110153136A1 (en) | System and method for area coverage using sector decomposition | |
EP2547192A1 (en) | Method and system for navigating a robotic garden tool | |
CN114766014A (zh) | 各种照明环境下的自主机器导航 | |
US20220264793A1 (en) | Robotic lawn mower control | |
Li et al. | GNSS and LiDAR Integrated Navigation Method in Orchards with Intermittent GNSS Dropout | |
Wang et al. | Neural networks-based terrain acquisition of unmarked area for robot mowers |
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 |