CN116942018A - 基于特定介质区域的机器人控制方法、机器人及芯片 - Google Patents
基于特定介质区域的机器人控制方法、机器人及芯片 Download PDFInfo
- Publication number
- CN116942018A CN116942018A CN202210392569.1A CN202210392569A CN116942018A CN 116942018 A CN116942018 A CN 116942018A CN 202210392569 A CN202210392569 A CN 202210392569A CN 116942018 A CN116942018 A CN 116942018A
- Authority
- CN
- China
- Prior art keywords
- robot
- specific medium
- preset
- current
- area
- 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 title claims abstract description 122
- 238000005192 partition Methods 0.000 claims abstract description 565
- 230000008859 change Effects 0.000 claims description 53
- 230000008569 process Effects 0.000 claims description 48
- 230000033001 locomotion Effects 0.000 claims description 31
- 230000006870 function Effects 0.000 claims description 15
- 238000005452 bending Methods 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000004140 cleaning Methods 0.000 description 47
- 238000010408 sweeping Methods 0.000 description 34
- 238000001514 detection method Methods 0.000 description 22
- 238000004364 calculation method Methods 0.000 description 11
- 230000001133 acceleration Effects 0.000 description 9
- 238000006073 displacement reaction Methods 0.000 description 8
- 230000004888 barrier function Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000013178 mathematical model Methods 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000009987 spinning Methods 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/24—Floor-sweeping machines, motor-driven
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4002—Installations of electric equipment
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4011—Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4061—Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
本发明公开基于特定介质区域的机器人控制方法、机器人及芯片,该机器人控制方法包括,机器人结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息检测出特定介质区域,并控制机器人不进入特定介质区域;依据机器人的当前位置点确定当前特定介质分区,控制机器人进入当前特定介质分区;每当机器人在当前特定介质分区内行走过预定时间间隔,则对预设规划路径的延伸方向进行调整;当机器人行走完当前特定介质分区后,机器人沿着当前特定介质分区的边界线行走,直至行走到角点,再使用该角点的位姿信息对应的位置点更新为机器人的当前位置点;如此重复,直至机器人行走完所述特定介质区域内所有的特定介质分区。
Description
技术领域
本发明涉及智能移动机器人的技术领域,特别是基于特定介质区域的机器人控制方法、机器人及芯片。
背景技术
在室内环境下,仅使用惯性传感器进行导航的机器人在地面行走时,可能接触到地毯等容易让机器人的驱动轮打滑的地面介质和地表面的过高的障碍物,所以机器人不容易按照弓字型路路径等规则路径行走,也导致机器人的驱动轮会出现空转打滑而积累测量误差,影响机器人在室内环境的复杂路况下的导航定位。另一方面,现有技术中可能采用激光传感器、深度摄像头等高精度测距传感器构建地图和导航定位,但是成本较高,也免不了携带像素、点云噪声信息。
发明内容
为了解决上述技术问题,本发明公开一种基于特定介质区域的机器人控制方法、机器人及芯片,可以让机器人遍历完特定介质区域内的各个分区以及特定介质区域之外的区域,并维持装配惯性传感器和超声波传感器的机器人可以在地毯、地板以及高障碍物的行走环境表面按照预设规划路径行走,直至机器人遍历完特定介质区域内外的室内环境区域。具体的技术方案如下:
基于特定介质区域的机器人控制方法,该机器人控制方法适用于装配惯性传感器和超声波传感器的机器人,其中,存在至少两个超声波传感器固定装配在机器人的底部两侧,且是位于机器人的中轴线的两侧,机器人的中轴线平行于行走方向;机器人控制方法包括:步骤S1,机器人结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息,检测特定介质区域,然后调整行走策略以使得机器人不进入特定介质区域,直至机器人行走完除特定介质区域之外的区域;步骤S2,机器人行走完除特定介质区域之外的区域后,机器人依据其当前位置点确定当前特定介质分区,然后机器人从特定介质区域之外的区域进入当前特定介质分区;其中,所述特定介质区域包括多个特定介质分区,当前特定介质分区是属于特定介质分区;步骤S3,机器人进入当前特定介质分区后,按照预设规划路径在当前特定介质分区内行走,每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,再按照延伸方向调整后的预设规划路径在当前特定介质分区内行走,直至机器人确定其行走完当前特定介质分区;步骤S4,当机器人确定行走完当前特定介质分区后,机器人先行走到当前特定介质分区的边界线,再通过调整行走方向来控制机器人在保持两个超声波传感器分居当前特定介质分区的边界两侧的状态下行走,以使得机器人沿着当前特定介质分区的边界线行走,直至行走到角点;其中,角点是属于围成当前特定介质分区的边界线的端点;步骤S5,机器人将步骤S4所述的角点更新为机器人的当前位置点,然后机器人重复执行步骤S2、步骤S3和步骤S4,直至机器人行走完所述特定介质区域内所有的特定介质分区,机器人确定其行走完所述特定介质区域。
进一步地,所述步骤S1中,所述机机器人结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息,检测特定介质区域,然后调整行走策略以使得机器人不进入特定介质区域的方法包括:控制超声波传感器发出超声波并接收超声波反射信号,同时控制惯性传感器测量机器人的姿态角;当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人没有检测到特定介质区域且不处于跨越第一目标障碍物的状态;当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角处于第一预设角度阈值范围时,机器人检测到特定介质区域且不处于跨越障碍物的状态,并在全局地图中标记出该特定介质区域的边界点对应的栅格;然后调整行走方向,使得机器人不进入特定介质区域;当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角处于第二预设角度阈值范围时,机器人检测到第一目标障碍物且处于跨越第一目标障碍物的状态,同时在全局地图中标记第一目标障碍物对应的栅格,然后机器人不继续跨越第一目标障碍物;其中,机器人处于跨越障碍物的状态是相对于水平平面,机器人的机体倾斜设置在障碍物的表面;障碍物包括第一目标障碍物;其中,特定介质覆盖的区域被设置为所述特定介质区域;其中,所述全局地图是属于栅格地图,预存在机器人的存储器中。
进一步地,当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角小于或等于预设角度阈值时,机器人检测到特定介质区域且不处于跨越障碍物的状态,并在全局地图中标记出该特定介质区域的边界点对应的栅格;然后调整行走方向,使得机器人不进入检测到的特定介质区域;当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角大于预设角度阈值时,机器人检测到第一目标障碍物且处于跨越第一目标障碍物的状态,再在全局地图中标记第一目标障碍物对应的栅格,然后机器人不继续跨越该第一目标障碍物;其中,第一目标障碍物的高度是大于机器人跨越障碍物所允许的最大可跨越高度;其中,小于或等于预设角度阈值的角度范围是第一预设角度阈值范围,大于预设角度阈值的角度范围是第二预设角度阈值范围;其中,预设角度阈值是由机器人跨越障碍物所允许的最大可跨越高度的反三角函数结果决定;其中,预设角度阈值是配置为预先设定的误差数量级下的一个数值。
进一步地,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内,且惯性传感器测得的姿态角小于或等于预设角度阈值时,机器人检测到第二目标障碍物并处于跨越第二目标障碍物的状态,再在全局地图中标记第二目标障碍物对应的栅格,然后机器人继续前进以跨越该第二目标障碍物;或者,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内,且惯性传感器测得的姿态角小于或等于预设角度阈值时,机器人不处于跨越障碍物的状态,机器人按照预设规划路径行走;其中,障碍物还包括第二目标障碍物;第二目标障碍物是凸出于水平平面,且第二目标障碍物的高度是小于或等于机器人跨越障碍物所允许的最大可跨越高度。
进一步地,所述步骤S1中,每当机器人在全局地图中搜索邻域中除了已检测到的所述特定介质区域之外的未遍历位置点对应的栅格时,机器人先行走至该未遍历位置点,再从该未遍历位置点继续按照预设规划路径进行行走,但不进入特定介质区域;当机器人行走完除特定介质区域之外的区域时,确定剩下的未遍历区域是所述特定介质区域;其中,所述特定介质区域是由所述边界点连接形成的多个闭合区域组成,一个所述特定介质分区是一个闭合区域;每个特定介质分区的边界点都是所述特定介质区域的边界点;所述特定介质区域在全局地图中是表示为由所述边界点对应的栅格围成的多个闭合的栅格区域组成,一个所述特定介质分区在全局地图中使用一个闭合的栅格区域表示;其中,每当机器人行走到一个位置点,则确定机器人遍历到该位置点,并将该位置点设置为已遍历的位置点,且在全局地图中将该位置点对应的栅格标记为已遍历的栅格。
进一步地,在所述步骤S2中,所述机器人依据其当前位置点确定当前特定介质分区的方法包括:从所有未被机器人行走过的特定介质分区的角点中,选择距离机器人的当前位置点最近的一个角点配置为参考角点;其中,每个特定介质分区的边界点对应的栅格都标记在全局地图中;特定介质区域的边界点包括角点;然后,机器人在该参考角点所处的特定介质分区中,选择以该参考角点为共同端点的两条边界分别配置为第一参考边和第二参考边;特定介质分区的边界线是由特定介质分区的边界点连接形成;机器人在第一参考边的中点和第二参考边的中点当中,选择距离机器人的当前位置点最近的一个中点配置为当前预设目标点;然后,机器人将当前预设目标点所处的特定介质分区设置为所述当前特定介质分区。
进一步地,在所述步骤S2中,所述机器人从特定介质区域之外的区域进入当前特定介质分区的方法包括:机器人在进入所述当前特定介质分区之前,机器人确定当前预设目标点和当前特定介质分区之后,机器人从当前位置点行走至当前预设目标点,再从当前预设目标点行走至其所处的特定介质分区的预设行走起点;其中,当机器人行走至所述当前特定介质分区的预设行走起点时,机器人确定已经完全进入所述特定介质分区内;其中,机器人将所述当前预设目标点所处的特定介质分区的中心点设置为所述当前特定介质分区的预设行走起点。
进一步地,所述步骤S3具体包括:机器人从所述当前特定介质分区的预设行走起点开始,按照预设规划路径在当前特定介质分区内行走,并记录其在所述当前特定介质分区内所耗费的时间;每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,再按照延伸方向调整后的预设规划路径在所述当前特定介质分区内行走,使得机器人在最新调整出的预设规划路径上遍历调整之前的预设规划路径所没有覆盖过的区域,直至记录到机器人从所述当前特定介质分区的预设行走起点开始行走所耗费的时间达到工作结束时间,机器人确定其行走完所述当前特定介质分区。
进一步地,预设规划路径是弓字型路径;其中,弓字型路径包括相互平行的多条运动轨迹线段;相互平行的两条相邻的运动轨迹线段都存在一个端点通过弯折线或预设线段连接;其中,运动轨迹线段的长度大于弯折线的长度,且运动轨迹线段的长度大于预设线段的长度;其中,预设规划路径的延伸方向是保持垂直于运动轨迹线段;其中,当前改变出的延伸方向与改变之前的延伸方向所成的夹角等于,当前改变出的延伸方向对应的弓字型路径中的运动轨迹线段与延伸方向改变之前的弓字型路径中的运动轨迹线段所成的夹角。
进一步地,所述工作结束时间等于所述当前特定介质分区的面积与机器人的有效覆盖面积的比值与第一预设系数的乘积;其中,机器人的有效覆盖面积是等于预先设定的机器人行走速度与机器人的机体宽度的乘积;其中,机器人的机体宽度所沿的方向是垂直于机器人的行走方向;其中,第一预设系数用于表示机器人实际行走完所述当前特定介质分区后,机器人实际行走出的轨迹的覆盖区域与所述当前特定介质分区的面积差异;预定时间间隔在误差允许范围内等于,所述当前特定介质区域的面积与机器人的有效覆盖面积的比值与第二预设系数的乘积;其中,第二预设系数与围成所述当前特定介质区域的边界线的数量相关;其中,当所述当前特定介质区域的面积与机器人的有效覆盖面积的比值与第二预设系数的乘积小于第一预设系数时,所述当前特定介质区域的面积与机器人的有效覆盖面积的比值与第二预设系数的乘积被赋值为第一预设系数,使得所述预定时间间隔的数值不小于所述第一预设系数。
进一步地,所述当前特定介质分区是矩形区域,所述当前特定介质区域是让机器人出现打滑的闭合区域;其中,第一预设系数是设置为大于或等于数值2,第二预设系数是设置为数值1/4;当预定时间间隔的数值小于数值2时,将预定时间间隔的数值设置为数值2。
进一步地,机器人按照预设规划路径在所述当前特定介质分区内行走的过程中,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人确定当前行走至所述当前特定介质分区的边界线,然后机器人调整行走方向,使得机器人不行走至所述当前特定介质分区的外部,然后按照预设规划路径在所述当前特定介质分区内行走,其中,该预设规划路径的延伸方向是垂直于调整后的行走方向;其中,机器人的底部的前方装配超声波传感器,用于朝机器人的行走面发射超声波;其中,预设强度阈值范围用于表示所述特定介质区域反馈回的超声波反射信号的信号强度范围。
进一步地,机器人按照预设规划路径在所述当前特定介质分区内行走的过程中,每当碰撞到障碍物,则先调整前进方向以避开障碍物,再按照预设规划路径在当前特定介质分区内行走,其中,该预设规划路径的延伸方向是垂直于调整后的行走方向。
进一步地,所述步骤S4具体包括:机器人行走到所述当前特定介质分区的边界线时,机器人转动机身以调整行走方向,直至第一超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内、第二超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内、且惯性传感器测得的姿态角小于或等于预设角度阈值,则机器人在第一超声波传感器对应的一侧没有检测到所述当前特定介质分区,机器人在第二超声波传感器对应的一侧检测到所述当前特定介质分区,进而确定机器人处于两个超声波传感器分居所述当前特定介质分区的边界线的两侧的状态;机器人从开始保持两个超声波传感器分居所述当前特定介质分区的边界线两侧的状态时所处的位置点开始,按照预设时针方向行走以使得机器人沿着所述当前特定介质分区的边界线行走,并使用惯性传感器检测角度变化量;当机器人检测到角度变化量达到参考角度时,机器人行走到角点,再使用该角点的位姿信息更新为机器人的当前位姿信息,以实现机器人在所述当前特定介质分区内重新获得其位姿信息;其中,所述角度变化量是机器人的航向角的角度变化量,用于表示机器人的行走方向的变化;其中,所述角点是所述当前特定介质分区的两条边界线的公共端点,是属于机器人通过转动所述参考角度来维持其沿着所述当前特定介质分区的边界线行走的位置点;其中,预设时针方向是顺时针方向或逆时针方向。
进一步地,在步骤S4中,机器人在特定介质区域内行走到所述当前特定介质分区的边界线的确定方法包括:机器人在所述当前特定介质分区内行走的过程中,当超声波传感器接收到的超声波反射信号的强度没有处于所述预设强度阈值范围内时,机器人确定其行走到所述当前特定介质分区的边界线;其中,所述预设强度阈值范围是预先设定的信号强度阈值范围,用于表示所述当前特定介质分区反馈回的超声波反射信号的信号强度范围;其中,超声波传感器是第一超声波传感器或第二超声波传感器。
进一步地,当机器人从重定位起始点开始检测到角度变化量达到所述参考角度时,机器人确定其行走到所述角点,并在所述角点处按照预设时针方向转动过所述参考角度,然后机器人使用所述角点的位姿信息更新为机器人的当前位姿信息;其中,重定位起始点是机器人开始保持两个超声波传感器分居所述当前特定介质分区的边界线的两侧的状态时所处的位置点;其中,所述角点和所述重定位起始点位于所述当前特定介质分区的同一条边界线上,该条边界线位于第一超声波传感器和第二超声波传感器之间,第二超声波传感器位于所述当前特定介质分区的上方,第一超声波传感器位于所述特定介质区域之外的区域的上方。
进一步地,机器人在所述当前特定介质分区内行走时,机器人控制超声波传感器发出超声波并接收超声波反射信号,并控制惯性传感器测量机器人的姿态角,但停止对全局地图的栅格进行标记;当机器人使用所述角点的位姿信息更新为机器人的当前位姿信息后,机器人行走至所述特定介质区域之外的区域,同时机器人获取机器人的位姿信息,并在全局地图内标记相应的栅格;其中,所述特定介质区域之外的区域的表面覆盖的介质与所述当前特定介质分区的表面覆盖的特定介质不同;其中,所述当前特定介质分区是让机器人出现打滑的闭合区域。
进一步地,所述特定介质区域是地毯覆盖的区域;所述预设规划路径是弓字形路径;其中,超声波传感器接收到的超声波反射信号的强度是超声波在机器人行走环境的表面的反射信号,经过模数转换得到的电平数值;机器人的行走环境包括所述特定介质区域和所述障碍物的表面。
进一步地,在所述步骤S5中,机器人确定行走到角点后,先将角点更新为机器人的当前位置点,然后执行步骤S2,在执行步骤S2时,按照所述依据机器人的当前位置点确定当前预设目标点和当前特定介质分区的确定方法,获取下一个预设目标点和下一个特定介质分区,并将下一个预设目标点更新为当前预设目标点,并将下一个特定介质分区更新为当前特定介质分区。
一种机器人,所述机器人装配至少一个惯性传感器、至少两个超声波传感器和至少一个处理器,其中,存在至少两个超声波传感器固定装配在机器人的底部两侧,且是位于机器人的中轴线的两侧,机器人的中轴线平行于行走方向;惯性传感器和超声波传感器都与处理器存在电性连接;所述处理器用于控制机器人执行所述机器人控制方法。
一种芯片,所述芯片上存储有程序,所述程序被芯片执行时实现如所述机器人控制方法。
本发明技术方案中,机器人先检测特定介质区域、可跨越的障碍物(第二目标障碍物)和不可跨越障碍物(第一目标障碍物),以适应在不同介质及地形的表面按照预设规划路径行走,再在检测出特定介质区域的基础上,依据工作区域的覆盖情况调整的路径延伸方向的方式,按照预设规划路径在相应的一个特定介质分区内进行行走,即机器人遍历相应的一个特定介质分区;然后还通过在相应边角区域行走过一个角点的方式完成机器人在最新行走过的一个特定介质分区内定位,以便于导航到下一个特定介质分区;如此重复迭代,直至机器人行走完特定介质区域内所有的特定介质分区。
当机器人是扫地机器人,且特定介质分区是一个房间区域中的地毯覆盖区域时,本发明技术方案依靠惯性传感器和超声波传感器在每个地毯分区上都进行覆盖面较大的清洁作业,也减少机器人的驱动轮打滑带来的建图误差,并在每个地毯分区内获得一个准确的机体定位信息以便于由一个已遍历的地毯分区进入距离合理的未遍历的地毯分区,有序地完成室内工作区域中的地毯所包括的所有地毯分区的清洁工作。
附图说明
图1是本发明的一种实施例公开的基于特定介质区域的机器人控制方法的流程图。
图2是本发明的图1公开的步骤S101的实施方法的流程图。
图3是本发明的图1公开的步骤S103和步骤S104的实施方法的流程图。
图4是本发明的图1公开的步骤S105的实施方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细描述。
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。 还应当理解,在本申请中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请中所使用的那样,术语“如果”可以依据上下文被解释为“当…时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
需要说明的是,使用惯性传感器导航对于智能移动机器人来说是一种成本低且实用的导航方法,但是其弊端也较为突出,主要表现为导航精度不高。其中,陀螺仪漂移和编码器漂移是影响导航精度的主要原因。在扫地机器人的运行过程中,由于轮子打滑等复杂因素,使得陀螺仪和编码器出现误差,如果不对误差进行校正,机器人会逐渐偏离路线。考虑到机器人处于正常状态时,机器人的驱动轮带动机器人进行位移,即机器人测得的驱动轮的行驶里程与机器人的实际位移是一致的;机器人的驱动轮在转动,而机器人的实际位移是不变的,导致机器人测得的驱动轮的行驶里程与机器人的实际位移不同,则机器人处于打滑状态。
一般而言,机器人感知到行走环境发生变化,主要是机器人在行走过程中检测到从地板进入地毯或者从地毯进入地板等行走环境发生变化,有时机器人的前方会存在高度较低的凸起,机器人的驱动轮会出现打滑或空转,与码盘实际测得的里程距离不一致,导致位移计算有偏差;其中,行走环境包括地毯、地板、机器人当前爬上的障碍物、以及机器人下坡所接触的障碍物;障碍物的高度(尤其是竖直方向的高度)大小也会影响机器人在障碍物的表面的倾斜程度,进而导致机器人的驱动轮会存在打滑的风险,导致机器人建立的地图与真实的环境地图存在偏差,后续使用该全局地图导航时不能确保机器人停留在给定路线上和/或达到指定位置,导致机器人的位移距离计算结果出错。
另外,超声波传感器可以以6ms为间隔持续采集探测空间区域的超声波数据,机器人可以将超声波传感器探测到的区域位置坐标信息转换到全局地图中,可以是由体素表示的三维地图或投影到二维栅格地图中。超声波传感器产生的探测空间区域由超声波传发射角和最大探测距离约束形成,优选地构成一种锥形区域范围。其中,超声波反射信号返回的测量信号的强度包括超声波在该锥形区域范围内距超声波传感器距离最近的障碍物表面、地面介质反馈的强弱不同的超声波信号强度,一般使用电平大小来表示,可以根据超声波信号的强度区分表面的介质类型;超声波的反射信号返回的测量信号还包括该锥形区域范围内距超声波传感器距离最近的障碍物表面的位置点的距离测量值,也可以是超声波在障碍物表面的投影区域反馈回的距离信息,因为超声波都是有一定角度,例如形成10度的锥形区域,所以对应获得一块区域的点云信息,可以获得距离信息的集合。在机器人行走环境的一些实施例下,机器人在跨越部分过高的障碍物时,该部分障碍物的表面反馈回的信号强度,与机器人前方的地毯反馈回的信号强度比较接近,处于同一阈值判断范围,此时不容易判断出机器人的行走环境是地毯还是机器人当前跨越的过高的障碍物。
作为一种实施例,本发明公开基于特定介质区域的机器人控制方法,机器人控制方法适用于装配惯性传感器和超声波传感器的机器人,其中,超声波传感器装配在机器人的底部的前方,让机器人在行走过程尽快检测到合适的位置。优选地,考虑传感器的成本因素,机器人的底部的两侧各安装至少一个超声波传感器,每个超声波传感器可以与机器人的中轴线的垂直距离处于2厘米至3厘米的范围内,机器人的中轴线是与机器人的行走方向平行。
作为实施例一,如图1所示,实施例一公开基于特定介质区域的机器人控制方法,机器人控制方法的基本步骤包括:
步骤S101,机器人结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息,检测特定介质区域,为了克服过高障碍物的表面反馈回的超声波反射信号的强度与机器人前方的地毯反馈回的超声波反射信号的强度比较接近而无法识别的问题,机器人会具体在超声波反射信号的一个信号强度范围内区分出特定介质区域和第一目标障碍物,并在全局地图中标记出对应的栅格,同时检测机器人在第一目标障碍物上的状态,然后调整行走策略以使得机器人不进入特定介质区域,如此重复,直至机器人行走完除特定介质区域之外的区域,然后机器人执行步骤S102。其中,第一目标障碍物一般是机器人不可跨越的障碍物。
步骤S102,判断机器人是否行走完所述特定介质区域内所有的特定介质分区,是则执行步骤S107,否则执行步骤S103。其中,所述特定介质区域包括多个特定介质分区;所述特定介质区域是由所述边界点连接形成的多个闭合区域组成,一个所述特定介质分区是一个闭合区域,闭合区域等效于封闭区域;每个特定介质分区的边界点都是所述特定介质区域的边界点;所述特定介质区域在全局地图中是表示为由所述边界点对应的栅格围成的多个闭合的栅格区域组成,一个所述特定介质分区在全局地图中使用一个闭合的栅格区域表示;需要说明的是,本实施例中,每当机器人行走到一个位置点,则确定机器人遍历到该位置点,并将该位置点设置为已遍历的位置点,且在全局地图中将该位置点对应的栅格标记为已遍历的栅格,逐个栅格的遍历则机器人能行走出一个已遍历区域。
步骤S103,机器人行走完除特定介质区域之外的区域后,机器人依据其当前位置点确定当前特定介质分区,然后机器人从特定介质区域之外的区域进入当前特定介质分区,然后执行步骤S104。具体地,机器人依据其当前位置点确定当前预设目标点和当前特定介质分区,然后机器人先从当前位置点行走至当前预设目标点,以使得机器人从特定介质区域之外的区域通过当前预设目标点进入当前特定介质分区,其中,当前预设目标点作为当前特定介质分区的导航入口位置点。所述当前特定介质分区优选为矩形区域;所述当前特定介质区域是让机器人出现打滑的闭合区域。
步骤S104,机器人按照预设规划路径在当前特定介质分区内行走,每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,再按照延伸方向调整后的预设规划路径在当前特定介质分区内行走,直至机器人确定其行走完当前特定介质分区,然后执行步骤S105。具体地,机器人进入当前特定介质分区后,从一个预设行走起点开始,按照预设规划路径在当前特定介质分区行走并进行计时操作,每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,再按照延伸方向调整后的预设规划路径在当前特定介质分区内行走,直至机器人从预设行走起点开始行走所耗费的时间达到工作结束时间,机器人确定其行走完当前特定介质分区。其中,预设行走起点是属于机器人在当前特定介质分区内行走的起始位置点。
步骤S105,机器人先行走到当前特定介质分区的边界线,再通过调整行走方向来控制机器人在保持两个超声波传感器分居当前特定介质分区的边界两侧的状态下行走,具体是在机器人中轴线的左右两侧的超声波传感器分居当前特定介质分区的边界两侧的状态下进行行走,以使得机器人沿着当前特定介质分区的边界线行走,直至行走到角点,然后执行步骤S106;在一些实施例中,机器人会使用该角点的位姿信息更新为机器人的当前位姿信息,实现对机器人的重定位操作,其中,角点是属于围成当前特定介质分区的边界线的端点,角点的位姿信息是预先保存在机器人的存储器中。
步骤S106,机器人将步骤S105所述的角点更新为机器人的当前位置点,然后执行步骤S102。其中,步骤S105所述的角点的位姿信息也对应地更新为机器人的当前位置点的位姿信息。机器人通过重复执行步骤S102至步骤S106以更新所述当前特定介质分区、当前预设目标点以及所述当前特定介质分区的预设行走起点,直至机器人行走完所述特定介质区域内所有的特定介质分区,机器人确定其行走完所述特定介质区域。
步骤S107,机器人已经行走完特定介质区域,并停止执行机器人控制方法,具体包括停止在步骤S103中进入新的特定介质分区、停止在步骤S104中按照预设规划路径在当前特定介质分区内行走以及调整预先规划路径的延伸方向、停止在步骤S105保持两个超声波传感器分居当前特定介质分区的边界两侧的状态、以及停止在步骤S106中将所述角点更新为机器人的当前位置点。
综合前述步骤S101至步骤S107可知,机器人先检测特定介质区域、可跨越的障碍物(第二目标障碍物)和不可跨越障碍物(第一目标障碍物),以适应在不同介质及地形的表面按照预设规划路径行走,再在检测出特定介质区域的基础上,依据工作区域的覆盖情况调整的路径延伸方向的方式,按照预设规划路径在相应的一个特定介质分区内进行行走,即机器人遍历相应的一个特定介质分区;然后还通过在相应边角区域行走过一个角点的方式完成机器人在最新行走过的一个特定介质分区内定位,以便于导航到下一个特定介质分区;如此重复迭代,直至机器人行走完特定介质区域内所有的特定介质分区。当机器人是扫地机器人,且特定介质分区是一个房间区域中的地毯覆盖区域时,前述实施例依靠惯性传感器和超声波传感器在每个地毯分区上都进行覆盖面较大的清洁作业,也减少机器人的驱动轮打滑带来的建图误差,并在每个地毯分区内获得一个准确的机体定位信息以便于由一个已遍历的地毯分区进入距离合理的未遍历的地毯分区,有序地完成室内工作区域中的地毯所包括的所有地毯分区的清洁工作。
作为实施例二,针对实施例一的步骤S101,机器人结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息,在机器人的行走地面上检测到特定介质区域和第一目标障碍物,并在全局地图中标记对应的栅格,赋予栅格相关环境类型信息和位姿信息;具体在超声波反射信号的一个信号强度范围内区分出特定介质区域和第一目标障碍物,对应为区分出平面区域和水平平面凸起的过高的障碍物,其中,特定介质区域是柔性表面的介质铺设的区域,比如地毯,当机器人行走于这一特定介质区域的表面时容易出现打滑;机器人还可以检测到可跨越的障碍物和不可跨越的障碍物,其中,第一目标障碍物是属于不可跨越的障碍物,可跨越的障碍物和不可跨越的障碍物都属于需要让机器人产生一定倾斜角度的障碍物,而部分可跨越的障碍物在一定程度上是允许机器人水平处于表面的障碍物,则可以检测到机器人在障碍物上的状态,克服超声波传感器反馈的信号强度较弱情况下形成的地毯检测误差;然后机器人调整行走策略,使得机器人不进入检测到的特定介质区域和不继续跨越过高的障碍物,从而让机器人及时避开地毯表面和过高的障碍物,减少机器人的打滑现象的发生。
值得注意的是,机器人开始行走之前、或机器人作为清洁机器人而开始清扫作业之前,先通过超声波传感器检测行走地面的前方是否存在特定介质区域,比如检测机器人的前方区域是否为地毯,当没有检测到特定介质区域时,机器人才会进行弓字形清扫或按照弓字形路径行走;同时,机器人保持使用惯性传感器测得的信息,包括里程计测得的位移信息和陀螺仪测得的角度信息计算出位姿信息以同步构建地图。由于清洁机器人正常的导航行走时,会进行打滑的判断,但是清洁机器人在地毯上由于地毯介质的影响可能会导致更频繁的打滑误识别情况,使用本发明方法可以杜绝因为行走路面介质而导致的打滑误判问题,没有检测到特定介质区域时,机器人会在室内除了特定介质区域之外的区域进行弓字形清扫。
此外,机器人可通过相对于由机体界定的三个相互垂直轴的实时变化的各种组合在地面上行进,这三个垂直轴包括:前后轴、横向轴及中心垂直轴;沿着前后轴的行进方向标示为前侧,作为机器人的头部(前进端);沿着前后轴的向后驱动方向标示为后侧,作为机器人的尾部(后退端);横向轴的方向实质上是沿着由左右两侧驱动轮的转轴中心的连线方向。清洁机器人的机体可以横向轴转动,具体表现为:当机器人爬上障碍物的时,机器人的前向部分向上倾斜,机器人的后向部分向下倾斜,视为机体“上仰”,使得机器人的机体以一定的倾斜角度与障碍物的表面接触,则惯性传感器测得机器人的俯仰角不是0,此时机体的前侧部分可能被斜坡或类似斜坡的家具支脚结构抬升甚至出现驱动轮离地悬空的现象,机器人处于仰视状态下,当障碍物的高度越大,则机器人在跨越的过程中越容易出现空转的状态,则需要机器人避开跨越过高的障碍物,这一类的障碍物是不可跨越的障碍物,对应前述的第一目标障碍物。当机器人下坡时,机器人的机体后向部分向上倾斜、且机器人的机体前向部分向下倾斜,视为机体“下俯”,使得机器人的机体以一定的倾斜角度与障碍物的表面接触,则惯性传感器测得机器人的俯仰角不是0,此时,机体的前侧部分可能被斜坡或类似斜坡的家具支脚结构抬升甚至驱动轮离地悬空的现象,机器人处于俯视状态下,当障碍物的高度越大,则机器人在跨越的过程中越容易出现空转的状态,则需要机器人避开跨越过高的障碍物,相应地,机器人会不跨越所述第一目标障碍物;另外,机器人可以绕中心垂直轴转动。在机器人朝着前向方向行走时,当机器人向前后轴的右侧转动为“右翻转”,机器人向前后轴的左侧转动为“左翻转”。
具体地,所述机机器人结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息,检测特定介质区域,然后调整行走策略以使得机器人不进入特定介质区域的方法包括:
在机器人行走的过程中或机器人行走之前,机器人控制超声波传感器发出超声波并接收超声波反射信号,同时控制惯性传感器测量机器人的姿态角;其中,超声波传感器通过向行进地面发射超声波以确定地面类型,进而确定所述特定介质区域的覆盖范围,包括边界或局部区域的位置,相比传统的激光检测,成本更低,并且不受光线的干扰,结合惯性传感器的角度信息,使得检测过程更为稳定,其中,惯性传感器是对物理运动做出反应的器件,如线性位移或角度旋转,但不主动对外发出探测信号。使得机器人能够适应室内复杂多样的环境。
当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人没有检测到特定介质区域,机器人不处于跨越第一目标障碍物的状态,但可以跨越高度较低的障碍物但不产生较大的打滑误判,处于误差允许的范围内,或机器人也没有碰触到任何类型的障碍物,选择直接在水平地面按照预设规划路径行走。优选地,超声波传感器接收到的超声波反射信号的强度大于一个预先设定的判断阈值时,机器人当前检测到地板,否则机器人当前检测到地毯;当特定介质区域是地毯覆盖的平面区域时,机器人按照弓字型路径在所述特定介质区域之外的区域进行行走,但不进入后续检测到的特定介质区域,以避免机器人在地毯行走时出现打滑。需要说明的是,所述超声波传感器基于不同清洁对象的表面密度反馈强度不同的超声波信号。预设强度阈值范围内的数值大小与特定介质区域表面的介质类型相关。
需要说明的是,机器人处于跨越第一目标障碍物的状态是相对于水平平面,机器人的机体倾斜设置在第一目标障碍物的表面;机器人不处于跨越第一目标障碍物的状态是相对于水平平面,机器人水平地处于第一目标障碍物的表面,或机器人没有与第一目标障碍物接触。在本实施例中水平平面等效于水平地面。
在实际应用中,地毯和机器人爬上的障碍物反馈的超声波信号的强度低于地板反馈的结果。基于此,可以设定角度阈值或角度阈值范围,利用惯性传感器测得的姿态角对应的角度阈值范围区分出行走环境是位于水平地面的特定介质区域还是凸起于水平地面的可供机器人爬上的障碍物。
当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角处于第一预设角度阈值范围时,机器人检测到前方区域表面存在所述特定介质(比如地毯),机器人检测到特定介质区域,可以是检测到特定介质区域的局部区域,并在全局地图中标记该特定介质区域的边界点对应的栅格,其中,边界点是该特定介质区域的边缘线上的点,也可理解为该特定介质覆盖的平面区域的轮廓线上的点,可以是来源于超声波传感器的接收到点云信息,具体是由特定介质区域的表面的超声波反射信号反馈回的距离测量信息换算得到。优选地,机器人将当前检测到的特定介质区域标记为未遍历区域,即机器人没有行走过的区域;机器人当前检测到的检测到特定介质区域不一定是实际环境中的全部区域,但可以由一个或多个栅格组成,或由多个孤立的分区块组成,在该特定介质区域的边界点对应的栅格都标记上特定介质的信息,比如让栅格标记地毯信息;同时,机器人不处于跨越障碍物的状态,包括不处于跨越第一目标障碍物的状态,实现在超声波反射信号的一个信号强度范围(处于预设强度阈值范围)内检测特定介质区域和第一目标障碍物,完成区分开特定介质区域和第一目标障碍物,避免误判;在本实施例中,机器人不处于跨越障碍物的状态,表示机器人没有倾斜地与障碍物的表面接触,机器人可以水平地位于障碍物的表面。然后机器人调整行走方向,使得机器人不进入特定介质区域,包括不进入特定介质区域的没被检测到的分区,可以接触到特定介质区域的边界点,此时,机器人可以不按照预设规划路径行走,但须通过调整行走方向以离开当前检测到的特定介质区域。
需要说明的是,在本实施例中,惯性传感器测得的加速度信息或加速度信息的角度变换结果的累加积分值,可以转换到同一全局坐标系中,辅助构建全局地图,全局地图的形式可以是坐标位图形式,属于全局栅格地图,预存在机器人的存储器中,且标记出的相关区域都是使用栅格表示;其中,每个栅格的角点(一个栅格的左上点、左下点、右上点以及右下点)及中心点的坐标可以代表该栅格的坐标,机器人实际行走过的位置点或探测到的位置点是可以对应一个栅格的角点或中心点,可以将该角点或中心点对应的栅格视为该位置点对应的栅格。
当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角处于第二预设角度阈值范围时,机器人检测到第一目标障碍物并处于跨越第一目标障碍物的状态,并在全局地图中标记检测到的第一目标障碍物对应的栅格,成为障碍物栅格;具体在全局地图中标记该第一目标障碍物的被检测表面在水平面的投影区域对应的栅格区域;然后机器人不继续跨越第一目标障碍物,机器人挣脱第一目标障碍物,避免在第一目标障碍物表面打滑或空转。所述机器人是扫地机器人时,具体在扫地机器人在运作期间,扫地机器人遇到斜坡或家具底部的斜管结构类型的支架时,一般会向上攀爬,以跨越较高平面或翻越过这个斜管,然而会面临驱动轮组悬空而无法继续行进的空转或打滑状态,容易导致扫地机器人同步构建的地图出现误差。所以,扫地机器人检测到第一目标障碍物并确定处于跨越第一目标障碍物的状态后,机器人不继续跨越第一目标障碍物,转而从第一目标障碍物上退下来。
值得注意的是,第一预设角度阈值范围内的值小于第二预设角度阈值范围内的值,充分考虑机器人的跨越能力的极限,以便于判断机器人是否处于更高的障碍物上。其中,第一预设角度阈值范围与第二预设角度阈值范围没有重叠区间。
如图2所示,实施例一所述的步骤S101具体包括:
步骤S201,机器人控制超声波传感器发出超声波并接收超声波反射信号,并控制惯性传感器测量机器人的姿态角,然后机器人执行步骤S202。需要强调的是,本实施例的机器人在行走的过程中,保持同步构建地图,即机器人把实时测得位姿信息和超声波信号反馈的测距信息换算为地图中的坐标点,再在全局地图中标记对应的栅格。优选地,机器人按照弓字型路径行走或执行弓字型清扫的过程中,执行步骤S201。
步骤S202,机器人判断超声波传感器接收到的超声波反射信号的强度是否处于预设强度阈值范围内,是则执行步骤S203,否则执行步骤S204。优选地,所述特定介质区域反馈的超声波信号的强度落在预先设定的阈值范围内。需要说明的是,所述超声波传感器基于不同检测对象的覆盖表面密度反馈强度不同的超声波信号。在实际应用中,地毯反馈的超声波信号的强度低于地砖。基于此,可以设定一个阈值,将反馈的超声波信号的强度小于或等于该阈值的检测对象划分为地毯,否则划分为地砖。
步骤S204,机器人没有检测到特定介质区域,且不处于跨越第一目标障碍物的状态,则机器人可以选择按照预设规划路径行走,具体可以执行步骤S205,继续在未遍历过的区域行走,并在全局地图中标记机器人行走过的区域对应的栅格,具体是未行走过的区域变为机器人已行走过的区域后,在全局地图中标记相应的栅格,并赋予相关的位姿信息和环境类型信息,以构建起完整的全局地图,直至检测到所述特定介质区域为止,避免按照预设规划路径行走到所述特定介质区域内以出现打滑,影响栅格地图信息标记的准确性。
步骤S205,机器人不处于跨越障碍物的状态,此时,超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内,且惯性传感器测得的姿态角小于或等于预设角度阈值,则惯性传感器测得的姿态角可能是等于0,使得机器人水平处于障碍物的表面或没有接触到水平地面凸起的障碍物,则机器人按照预设规划路径行走,可以无障碍地沿着弓字型路径进行行走。其中,机器人不处于跨越障碍物的状态是相对于水平平面,机器人水平地处于障碍物的表面,或机器人没有与障碍物接触,其中,障碍物包括第一目标障碍物、第二目标障碍物和其余高度的凸起水平地面的障碍物。在本实施例中水平平面等效于水平地面。
步骤S203,机器人判断惯性传感器测得的姿态角是否小于或等于预设角度阈值,是则执行步骤S207,否则执行步骤S206。其中,小于或等于预设角度阈值的角度范围是所述第一预设角度阈值范围,大于预设角度阈值的角度范围是所述第二预设角度阈值范围。预设角度阈值是由机器人跨越障碍物所允许的最大可跨越高度的反三角函数结果决定,具体的运算方式是常规的三角几何运算,按照俯仰角和翻滚角的定义,可以存在多种形式的换算方式,其中,预设角度阈值与最大可跨越高度成正相关关系。具体在此不再赘述。当惯性传感器测得的姿态角是俯仰角时,预设角度阈值是由最大可跨越高度经过反三角函数换算出的俯仰角;当惯性传感器测得的姿态角是翻滚角时,预设角度阈值是由最大可跨越高度经过反三角函数换算出的翻滚角。其中,反三角函数计算的结果只需要留有一定的精度,所以,本实施例中,预设角度阈值是配置为预先设定的误差数量级下的一个数值,其中,预先设定的误差数量级优选为0.1,使得预设角度阈值保留到数量级0.1。在前述反三角函数换算出的预设角度阈值带有多位小数时,则预设角度阈值在数量级0.1所允许的误差范围内,通过保留一位小数来获得一个数值,作为唯一的角度值。以迎合惯性传感器的导航精度。
步骤S206,超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角大于预设角度阈值,此时,机器人确定检测到第一目标障碍物并处于跨越第一目标障碍物的状态,实现在超声波反射信号的一个信号强度范围(处于预设强度阈值范围)内检测特定介质区域和第一目标障碍物,并在全局地图中标记当前检测到的第一目标障碍物对应的栅格,具体可以是覆盖位置对应的栅格都被标记为障碍物栅格,以便于机器人在后续导航过程中按照全局地图标记的第一目标障碍物对应的栅格位置执行避让操作;在本实施例中,第一目标障碍物是属于不可跨越的障碍物,不可跨越的障碍物属于比较高的需要让机器人产生较大倾斜角度的障碍物,使得惯性传感器测得的姿态角比较大,尤其是俯仰角比较大,以至于大于相应的预设角度阈值。其中,第一目标障碍物是凸出于水平平面,且第一目标障碍物的高度是大于机器人跨越障碍物所允许的最大可跨越高度,当机器人处于跨越第一目标障碍物的状态时,机器人在第一目标障碍物表面存在打滑或空转的风险。然后执行步骤S208。
步骤S208,机器人不继续跨越第一目标障碍物,机器人挣脱第一目标障碍物,避免在第一目标障碍物表面打滑或空转。考虑到机器人在跨越第一目标障碍物的过程中会面临驱动轮组悬空而无法继续行进的空转或打滑状态,机器人不继续跨越第一目标障碍物,转而从第一目标障碍物上退下来,再按照预设规划路径继续行走,让机器人及时规避打滑的风险。在一些实施例中,由于机器人的前方有无法越过的障碍物(第一目标障碍物),例如椅子,则可以控制机器人绕过该障碍物,具体是控制机器人的一个驱动轮转动后,再控制机器人的另一个驱动轮转动,使得机器人不继续跨越第一目标障碍物,转而调整方向以绕过该障碍物。
步骤S207,机器人检测到所述特定介质区域且不处于跨越障碍物的状态,包括不处于跨越第一目标障碍物的状态,实现在超声波反射信号的一个信号强度范围(处于预设强度阈值范围)内检测特定介质区域和第一目标障碍物,完成区分开特定介质区域和第一目标障碍物,则机器人在跨越第一目标障碍物或靠近特定介质区域时,即使检测到的超声波反射信号的强度范围与检测到特定介质区域所对应的强度范围比较接近,但通过执行前述步骤可以区分出所述特定介质区域和第一目标障碍物。此时,机器人检测到的可以是实际环境中存在的特定介质区域的局部区域,则机器人在全局地图中标记该特定介质区域的边界点对应的栅格,可以是来源于超声波传感器的接收到点云信息,以提示机器人不进入该区域,因而有必要将当前检测到的特定介质区域标记为未遍历区域,但会在该特定介质区域的边界点对应的每个栅格都标记上特定介质的信息,比如让相应栅格标记上地毯信息这一环境类型信息。然后执行步骤S209。
步骤S209,机器人调整行走方向,使得机器人不进入当前检测到的特定介质区域,包括在先检测到的特定介质区域(来源于全局地图更新之前所标记的特定介质区域的边界点对应的栅格围成的闭合的栅格区域),此时机器人不一定按照原来的预设规划路径进行行走,而是朝着远离所述特定介质区域的方向前进,以避免进入所述特定介质区域的内部而引入严重的打滑误差,然后按照预设规划路径继续行走。
综上,所述机器人感知到行走环境发生变化是指智能机器人在行走过程中检测到从地板进入地毯或者从地毯进入地板等行走面发生变化,也可以是从水平平面到跨越障碍物的状态变化,还可以在障碍物的表面继续向上爬或下坡,还可以是卡住在过高的障碍物上而打滑或空转机器人,因此前述步骤结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息,在超声波反射信号的同一信号强度范围内检测特定介质区域和第一目标障碍物,并在全局地图中标记对应的栅格,同时检测到机器人在第一目标障碍物上的状态,然后调整行走策略以使得机器人不进入特定介质区域。进而,本实施例利用惯性传感器测得的俯仰角度或翻滚角度信息与机器人最大可跨越高度换算出相应角度值进行比较,排除掉超声波传感器反馈的信号强度较弱情况下形成的地毯区域检测误差,进而区别出障碍物和地毯区域,并作出适应的行走策略,准确地规避机器人在第一目标障碍物上和所述特定介质区域上即将出现的打滑风险,保证机器人在工作区域内继续在全局地图中标记出与真实环境更贴近的栅格信息,提高全局地图的准确性,以便于机器人利用地图中标记的特定介质区域和障碍物对应的栅格进行路径规划。
对于前述步骤S204的检测结果下,还存在一种实施例,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内,且惯性传感器测得的姿态角小于或等于预设角度阈值时,机器人检测到第二目标障碍物并处于跨越第二目标障碍物的状态,再在全局地图中标记检测到的第二目标障碍物对应的栅格,成为障碍物栅格并配置有高度信息;然后机器人继续前进以跨越该第二目标障碍物,可选地,机器人跨过第二目标障碍物后,变为不处于跨越障碍物的状态,则可以按照预设规划路径进行行走。需要说明的是,机器人处于跨越第二目标障碍物的状态是相对于水平平面,机器人的机体倾斜设置在第二目标障碍物的表面。
考虑到机器人前方可能有高度较低(可以是远低于机器人跨越障碍物所允许的最大可跨越高度)的凸起,这时引起机器人打滑的误差可以忽略,为了继续完成机器人的遍历任务,机器人选择跨过该凸起,可以控制机器人加速跨过,具体是控制机器人后退预设距离后,按照预设加速度值进行加速;在一些实施例中,所述第二目标障碍物可为扫地机器人在执行清洁任务时需要通过,以继续完成清洁的物体,例如门槛。在扫地机器人执行完成客厅的清洁后,还需要对各居室进行清洁。此时,扫地机器人则需要通过各居室入口处的门槛,以完成整个清洁区域(包括厨房、客厅以及居室)的清洁任务。扫地机器人处于跨越第二目标障碍物的状态时,需要继续跨过所述门槛。
在前述实施例中,第二目标障碍物相较于平坦地面而言具有一定高度,当扫地机器人在跨越第二目标障碍物时,相对与扫地机器人在平坦的地面行驶而言扫地机器人的机身会产生一个倾斜的角度。相反的,扫地机器人在跨越第一目标障碍物时,扫地机器人会卡在第一目标障碍物上,比如高于机器人跨越障碍物所允许的最大可跨越高度的台阶。
需要说明的是,当惯性传感器测得的姿态角是俯仰角时,预设角度阈值是由最大可跨越高度经过反三角函数换算出的俯仰角;当惯性传感器测得的姿态角是翻滚角时,预设角度阈值是由最大可跨越高度经过反三角函数换算出的翻滚角。障碍物还包括第二目标障碍物,第二目标障碍物是凸出于水平平面,且第二目标障碍物的高度是小于或等于机器人跨越障碍物所允许的最大可跨越高度,归属于比较矮的障碍物,是可跨越类的障碍物。
在前述实施例的基础上,所述步骤S101中还包括:机器人在所述特定介质区域之外的区域内按照预设规划路径进行行走,包括导航至未遍历位置点再按照预设规划路径进行行走,其中,未遍历位置点是机器人未行走过的位置点,在全局地图中表示为未遍历栅格;在机器人行走的过程中,机器人结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息,在超声波反射信号的一个信号强度范围内检测特定介质区域和第一目标障碍物,并在全局地图中标记相应的栅格,同时检测到机器人在第一目标障碍物上的状态,然后调整行走策略以使得机器人不进入特定介质区域,并能够在全局地图中标记所检测到的特定介质区域和第一目标障碍物对应的栅格,从而标记出组成特定介质区域的规则的分区的边界点对应的栅格,其中,规则的分区在全局地图中可以是由至少一个栅格或多个栅格组成的矩形区域,便于确定边界点和中心点,有利于机器人后续进行路径规划。
具体地,机器人在检测所述特定介质区域和所述第一目标障碍物的过程中,机器人需要先移动到一个未遍历位置点,即需要导航至一个目标点;在一些实施例中,机器人没有检测到所述特定介质区域时,会导航至一个未遍历位置点,再从该未遍历位置点开始按照预设规划路径进行行走。因此,机器人需要在全局地图中搜索未遍历位置点,依此导航至未遍历的区域,其中,搜索未遍历位置点的算法是属于路径节点搜索算法,包括即深度优先搜索和广度优先搜索,能够在全局地图中搜索出未遍历位置点对应的栅格。优选地,所述未遍历位置点是位于机器人的可达区域内,是通过相应路径节点搜索算法(包括A*算法)搜索出的与机器人的当前位置点相通的位置点,然后沿着相应的路径,逐个位置点地行走至该位置点,让机器人无障碍物地直达该位置点。
在本实施例中,机器人每当在全局地图中搜索邻域中除了已检测到的所述特定介质区域之外的未遍历位置点时,则机器人先行走至该未遍历位置点,同时将该未遍历位置点设置为已遍历位置点,优选地,已遍历位置点可以不包括特定介质区域的边界点或组成特定介质区域的分区的边界点;再从该未遍历位置点继续按照预设规划路径进行行走,但不进入特定介质区域,具体地,机器人在一个预设工作区域内从该未遍历位置点继续按照预设规划路径进行行走,其中,预设工作区域是机器人工作的全部室内环境区域,包括特定介质区域;邻域内的点可以是与机器人当前位置点相邻接或相连通;邻域也可以视为邻域栅格区域,包括但不限于机器人的当前位置点对应的栅格的八邻域及十六邻域。
当机器人遍历完除特定介质区域之外的区域时,即机器人在最新遍历到的位置点的邻域内搜索完所述预设工作区域内除特定介质区域之外的区域时,确定剩下的未遍历区域是所述特定介质区域;其中,每当机器人行走到一个位置点,则确定机器人遍历到该位置点,并将该位置点设置为已遍历的位置点,且在全局地图中将该位置点对应的栅格设置为已遍历的栅格;机器人在检测到所述特定介质区域或其局部区域时会在全局地图中标记出所述特定介质区域的边界点对应的栅格,即处于所述特定介质区域或其局部区域的边界上的点对应栅格,在全局地图中都有对应的栅格中记录位置信息和介质信息;所述特定介质区域是由所述边界点连接形成的多个闭合区域组成,每个闭合区域的边界点都是所述特定介质区域的边界点,一个特定介质分区是一个闭合区域;所述特定介质区域在全局地图中是表示为由所述边界点对应的栅格围成的多个闭合的栅格区域组成。在所述特定介质区域中,多个规则的特定介质分区呈离散分布在全局地图中,可以对应为多个房间分布在同一个室内环境下;在所述特定介质区域中,每个特定介质分区的边界点都是所述特定介质区域的边界点;机器人在所述全局地图中标记每个特定介质分区的边界点对应的栅格以便于后续机器人重定位和路径规划。综上,机器人递归搜索全局地图上没有走过的地方,然后导航过去完成对应的覆盖,如此递归下去直到走完整个区域,即走完所述预设工作区域中除了所述特定介质区域之外的区域后,只剩下所述特定介质区域覆盖的地方没有走过,这时,机器人将所有标记到的属于所述特定介质区域的边界点对应的栅格整合形成所述特定介质区域在全局地图中的栅格区域覆盖范围,从而机器人可以准确识别所述特定介质区域的形状、大小和位置,防止机器人误入所述特定介质区域,减少机器人的驱动轮打滑情况以影响地图定位。
优选地,所述特定介质区域是地毯覆盖的区域,组成所述特定介质区域的各个特定介质分区可以是矩形的地毯区域,也可以是其它形状的地毯,这里的形状是指相关区域的水平平面形状;所述特定介质区域覆盖在室内环境中时,每个特定介质分区的形状可以与其实际覆盖的房间户型的平面形状相关联,每个特定介质分区的边界点对应的栅格都被标记到全局地图中。在一些实施例中,地毯区域由多个地毯块组成,存在两个地毯块是相互孤立且分居于不同的房间区域中,其中,每个地毯块在全局地图中标记为一个闭合的栅格区域;一个房间区域的地面覆盖满一个地毯块,该地毯块的形状与房间区域的地面形状(房间的边界围成的区域的形状)相同,比如,当一个房间区域是由相连通的一个大矩形和一个小矩形组合成,则一个地毯块的形状也是相连通的一个大矩形和一个小矩形的组合图形的形状。
需要说明的是,所述特定介质区域是地毯铺满的平面区域,具体是室内环境下的房间区域,属于机器人行走环境下的由超声波传感器所探测到的区域,并由超声波反射信号反馈回所述特定介质区域的边界点的位姿信息,包括由超声波的测距信息换算出的坐标信息和角度信息。所述特定介质区域中存在中长毛地毯或短毛地毯。
优选地,所述预设规划路径是弓字形路径;其中,超声波传感器接收到的超声波反射信号的强度是超声波在机器人行走环境的表面的反射信号,经过模数转换得到的电平信号,机器人可以通过数字电平信号来检测地表介质反馈的信号强弱,尤其是识别出地毯,防止机器人误入地毯,减少机器人的驱动轮打滑情况。
作为实施例三,针对实施例一的步骤S103和步骤S104,公开在当前特定介质分区内的机器人控制方法,包括:机器人从预设行走起点开始,按照预设规划路径在当前特定介质分区内行走,并记录其在当前特定介质分区内所耗费的时间,包括机器人在当前特定介质分区内的行走时间;在本实施例中,可以视为相关的计器装置启动计时的时刻是机器人检测到其从预设行走起点开始行走。其中,预设行走起点是设置在当前特定介质分区内。机器人按照预设规划路径在当前特定介质分区内行走也可以表述为机器人在所述当前特定介质分区内沿着预设规划路径行走。
优选地,为了保证机器人不轻易行走出所述当前特定介质分区且在所述当前特定介质分区内存在足够空旷的行走区域,机器人将预设行走起点设置为所述当前特定介质分区的中心点;则控制机器人从所述当前特定介质分区的中心点开始按照预设规划路径行走,机器人同步使用计时器装置记录机器人行走的时间以记录下机器人在所述当前特定介质分区的中心点处的时刻;可选地,以机器人在所述当前特定介质分区的中心点处的时刻为计时起点,对机器人在所述当前特定介质分区内按照预设规划路径行走的时间进行计时。
优选地,所述特定介质是地毯,所述当前特定介质分区是地毯覆盖的区域,所述当前特定介质分区可以视为一个地毯块,所述当前特定介质分区的形状与其实际覆盖的房间户型的平面形状相适应,所述当前特定介质分区的边界线可以是与一个房间的边界线重合以铺满该房间的地面区域,则机器人按照预设规划路径在所述当前特定介质分区内行走的实施场景是机器人在一个房间区域的地毯表面进行弓字型清扫工作,并记录机器人行走所经过的时间,即通过记录机器人在弓字型路径上的每个路径节点的时刻,来获得机器人从特定介质区域的预设行走起点开始行走所耗费的时间,以及其中两个路径节点之间的时间间隔。
每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,再按照延伸方向调整后的预设规划路径在所述当前特定介质分区内行走,其中,所述预定时间间隔是视为机器人的实际行走时间。具体地,在本实施例中,机器人从预设行走起点开始计时,当机器人记录到沿着预设规划路径行走的时间等于一个预定时间间隔,则记录一个时刻,作为预设规划路径的延伸方向的当前目标调整时刻,然后机器人从该当前目标调整时刻开始对预设规划路径的延伸方向进行调整;机器人从完成当前一次延伸方向的调整开始,机器人按照延伸方向调整后的预设规划路径继续在所述当前特定介质分区内行走,即机器人在所述当前特定介质分区内沿着延伸方向调整后的预设规划路径行走,其中,机器人对预设规划路径的延伸方向调整的时间会计入机器人从所述当前特定介质分区的预设行走起点开始行走所耗费的时间;在一些实施例中,对预设规划路径的延伸方向调整的时间可以是机器人停顿下来对预先存储好的延伸方向进行切换的时间,也可以忽略不计。机器人在所述当前特定介质分区内沿着延伸方向调整后的预设规划路径行走的过程中,当机器人记录到行走过一个预定时间间隔,机器人开始进行新的一次延伸方向调整以改变上一次调整出的延伸方向;机器人如此重复执行,直至记录到机器人从所述预设行走起点开始行走所耗费的时间达到工作结束时间,确定机器人遍历完所述当前特定介质分区,则可以停止在所述当前特定介质分区内按照预设规划路径行走,其中,所述工作结束时间用于表示机器人从所述当前特定介质分区的预先行走起点开始至行走完所述当前特定介质分区所消耗的时间,属于按照预先设定的数学模型计算的结果,包括机器人停顿下来进行延伸方向调整所耗费的理论时间。综上,机器人按照所述预定时间间隔对预设规划路径的延伸方向进行调整,形成对预设规划路径的延伸方向的周期性切换机制,可以覆盖到单一延伸方向的预设规划路径没有覆盖到的区域。具体地,本实施例按照一定的时间间隔去调整预设规划路径的延伸方向,提高机器人在有限时间内完成所述当前特定介质分区内的行走覆盖率,避免预设规划路径只沿着一个方向延伸而带来覆盖区域低的问题,由于预设规划路径的延伸方向每隔一个时间间隔就被调整一次,使得机器人在同一个特定介质分区内能够交叉行走过同一局部区域,提高机器人对工作表面的覆盖率,也可以克服机器人长时间在容易发生打滑的特定介质分区内不能保持准确按照所述预设规划路径行走的问题,维持机器人在短时间内行走的路径的正确,保证机器人的工作覆盖率。
需要说明的是,延伸方向调整后的预设规划路径等同于调整后的预设规划路径,或调整后的延伸方向对应的预设规划路径;机器人对原来所沿的预设规划路径进行延伸方向的一次调整,包括让相应的延伸方向发生变化,比如扫地机器人按照弓字型路径清扫过一个预定时间间隔后,改变弓字型路径的所有平行的长边路径的方向,则连接长边路径的短线段的方向也改变。
优选地,所述预定时间间隔表示为所述延伸方向没有被调整的前提下,机器人在预设规划路径上从第一路径节点保持行走至第二路径节点所耗费的时间,所述预定时间间隔等于机器人在第二路径节点处记录下的第二时刻与机器人在第一路径节点处记录下的第一时刻之间的时间差值,其中,第二路径节点与第一路径节点不同,且是延伸方向被调整(没有发生变化)的预设规划路径上的两个路径节点,其中,机器人在延伸方向被调整(没有发生变化)的预设规划路径上的行走方向不一定是保持相同,可能会出现多次转弯;由于每经过一个预定时间间隔就需调整延伸方向,所以,第二路径节点是机器人在所述延伸方向没有被调整的预设规划路径上的路径终点,第一路径节点是机器人在所述延伸方向没有被调整的预设规划路径上的路径起点,而且,机器人从第二时刻开始对预设规划路径的延伸方向进行调整,再从第二路径节点开始按照延伸方向调整后的预设规划路径在所述当前特定介质分区内行走。因此,在一些实施方式中,第二路径节点视为当前一段预设规划路径的终点,第一路径节点视为当前一段预设规划路径的起点;进而在延伸方向调整前后的预设规划路径段相连通的前提下,第二路径节点可以视为下一段预设规划路径的起点,第一路径节点可以视为上一段预设规划路径的终点;则每一个预定时间间隔对应一段预设规划路径,每一段预设规划路径的延伸方向可以是不同的且能够尽可能的覆盖所述当前特定介质分区,不排除会存在其中两段预设规划路径的延伸方向是相同的实施方式。
作为一种实施例,所述每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整的方法包括:每当机器人按照预设规划路径行走的时间达到所述预定时间间隔后,即每当机器人确定在原来的预设规划路径上行走过所述预定时间间隔后,机器人改变预设规划路径的延伸方向,具体可以是通过调用预先存储好的相关控制程序来将原定的预设规划路径的延伸方向切换为新的延伸方向以改变预设规划路径的整体轨迹走向,使得机器人在最新调整出的预设规划路径上遍历到调整之前的预设规划路径所没有覆盖过的位置,则机器人沿着最新一次改变出的预设规划路径行走的过程中,能够行走到其沿着最新一次改变之前的预设规划路径所没有行走过的位置;在一些实施例中,新的延伸方向可以是来源于预设规划路径中已经存在的直线路径方向(局部路径方向,可以与原来的延伸方向成一个预设夹角,比如45度或90度),与原来的延伸方向不同,以便于在行走过一个预定时间间隔后直接切换,完成方向的改变。其中,若原定的预设规划路径的延伸方向发生改变,则延伸方向改变后的预设规划路径相对于原定的预设规划路径发生变化,包括轨迹走向的变化以改变机器人的工作方向,但延伸方向改变前后的预设规划路径的轨迹形状没有变化。
需要说明的是,所述调整是改变或切换,可以是随机改变或按预定的角度信息进行改变,使得机器人沿着最新一次改变出的预设规划路径行走时,能够行走到其在最新一次改变之前的预设规划路径上所没有行走过的区域;每当机器人按照预设规划路径行走到一个位置点,则机器人确定遍历到该位置点,并将该位置点设置为已遍历的位置点,但不在全局地图中将该位置点对应的栅格标记为已遍历的栅格,以避免在全局地图中引入机器人的打滑误差。
在一些实施例中,为确保机器人在最新调整出的预设规划路径上遍历到调整之前的预设规划路径所没有覆盖过的位置,尤其在预设规划路径是弓字型路径且延伸方向是垂直于弓字型路径的长边路径时,机器人当前改变出的预设规划路径的延伸方向可能与在先改变出的其中一种预设规划路径的延伸方向垂直或互为相反方向,而且后续改变后的预设规划路径所覆盖的位置与机器人已经行走过的预设规划路径所覆盖的位置可能存在重合位置。优选地,经过一个预定时间间隔后,经过一次调整的预设规划路径的延伸方向变为与原来的预设规划路径的延伸方向垂直,其中,原来的预设规划路径的延伸方向与预设规划路径中的运动轨迹线段平行,运动轨迹线段与所述当前特定介质分区的长边平行。
作为一种实施例,预设规划路径是弓字型路径,也可以称之为工字型路径;本实施例的机器人是清洁机器人且所述当前特定介质分区是地毯所在区域时,清洁机器人在地毯表面内产生的清洁轨迹路线是弓字形清洁路线,即机器人按照所述弓字型路径在所述当前特定介质分区内行走。弓字型路径包括相互平行的多条运动轨迹线段;相互平行的两条相邻的运动轨迹线段都存在一个端点通过弯折线或预设线段连接,则相互平行的两条相邻的运动轨迹线段与连接二者的弯折线或预设线段形成单位弓字型路径段,其中,单位弓字型路径段的延伸方向是保持垂直于运动轨迹线段,预设规划路径可以是由多条首尾相连的单位弓字型路径段形成;其中,预设规划路径的延伸方向是保持垂直于运动轨迹线段;运动轨迹线段的长度大于弯折线的长度,且运动轨迹线段的长度大于预设线段的长度,无论机器人是否进行延伸方向的改变,弓字型路径的轨迹形状是没有变化,保持弓字形,由于按照一个预定时间间隔变化,不是长时间保持同一延伸方向(同一轨迹走向),所以受到驱动轮打滑误差的影响较小。
在一些实施例中,机器人在单位弓字型路径段上行走过的时间等于所述预定时间间隔,则在这一预定时间间隔内没有执行延伸方向的调整,机器人将第一路径节点设置为该单位弓字型路径段的起点,机器人将第二路径节点是该单位弓字型路径段的终点,在该单位弓字型路径段中,运动轨迹线段的长度大于弯折线的长度,且运动轨迹线段的长度大于预设线段的长度,无论机器人是否进行延伸方向的改变。
本领域技术人员可以理解的是,机器人是清洁机器人时,比如扫地机器人时,这些相互平行的运动轨迹线段是属于弓字型清洁路线(即所述弓字型路径)的长边清洁路线,前述的弯折线或短线段是相邻的两条运动轨迹线段之间的短边清洁路线,使得这些相互平行的运动轨迹线段覆盖清洁机器人的可达区域,但清洁机器人沿着所述运动轨迹线段行走的过程中没有标记路径节点并映射到全局地图上以减少建图误差,前述的短线段可以设置为垂直于所述运动轨迹线段或初始清洁方向。当预设规划路径的延伸方向被改变时,运动轨迹线段的覆盖区域也发生变化,整体上实现弓字型路径的延伸模式的变化,改变扫地机器人所执行的弓字型清扫模式,使得扫地机器人的清洁方向发生变化。
作为一种实施例,当前改变出的延伸方向与改变之前的延伸方向所成的夹角等于,当前改变出的延伸方向对应的弓字型路径中的运动轨迹线段与延伸方向改变之前的弓字型路径中的运动轨迹线段所成的夹角,其中,当前改变出的延伸方向对应的弓字型路径是延伸方向当前改变之后的弓字型路径。若当前改变出的延伸方向变为与改变之前的延伸方向垂直,则改变之前的延伸方向与当前改变出的延伸方对应的弓字型路径中的运动轨迹线段平行,当前改变出的延伸方向对应的弓字型路径中的预设线段与延伸方向改变之前的弓字型路径中的预设线段垂直;在该实施例中,改变之前是当前改变之前时,延伸方向当前改变之后是指最新一次延伸方向改变之后,即相邻两次改变操作所产生的延伸方向的形成的夹角是90度,相邻两次改变操作所产生的延伸方向的形成的夹角也可以呈其它倾斜角度(比如45度),以满足机器人在最新改变出的预设规划路径上遍历到改变之前的预设规划路径所没有覆盖过的位置。则机器人作为扫地机器人时,扫地机器人可以先沿着与改变之前的弓字型路径中的预设线段平行的方向进行弓字型清扫,经过一个所述预定时间间隔后,在改变之前的弓字型路径的清洁终点处,沿着与当前改变之后的弓字型路径中的预设线段平行的方向进行弓字形清洁。可以有效地提高清洁覆盖率。优选地,延伸方向当前改变之后的弓字型路径中的运动轨迹线段与所述当前特定介质分区的边界线平行,扫地机器人沿着所述当前特定介质分区的边界线行走,则扫地机器人能清扫到所述当前特定介质分区的边界,增加扫地机器人在所述当前特定介质分区内的有效清扫面积。
作为一种实施例,所述预定时间间隔在误差允许范围内等于,所述当前特定介质分区的面积与机器人的有效覆盖面积的比值与第二预设系数的乘积;所述工作结束时间等于所述当前特定介质分区的水平面的面积与机器人的有效覆盖面积的比值与第一预设系数的乘积;其中,机器人的有效覆盖面积是等于预先设定的机器人行走速度与机器人的机身宽度的乘积,是等效于机器人行走1秒的过程中,机器人的机体所覆盖到的区域的面积;满足机器人实际行走过程中的时间变化状态,是对按照预设规划路径行走所消耗时间的修正结果,克服行走表面介质变化和机身动作产生的误差。其中,机器人的机体宽度所沿的方向是垂直于机器人的行走方向;预先设定的机器人行走速度是实验的结果,优选为每秒行走0.3米。
需要说明的是,所述当前特定介质分区的边界点对应的栅格是预先标记在全局地图中,则可以获得所述当前特定介质分区的边界点的坐标信息,当所述当前特定介质分区是设置于室内环境的房间区域中时,所述当前特定介质分区可以是矩形区域或由多个矩形组合出的区域,可以获得所述当前特定介质分区的端点(包括左上角点、左下角点、右上角点及右下角点),由所述当前特定介质分区的端点可以计算出相应端点连接成的边界线的边长,进而将所述当前特定介质分区划分为多个矩形区域的基础上,通过矩形面积的计算方式(长与宽的乘积(单独一个矩形)、或长与宽的乘积的累加(多个矩形的组合))来计算出所述当前特定介质分区的面积,也可以是通过计算边界线围成的闭合区域内所填充的栅格的数量来面积。因此,所述当前特定介质分区的面积与机器人的有效覆盖面积的比值等于机器人在不产生误差、不出现停顿和计入机器人自转时间的前提下,完整地遍历完(行走完)所述当前特定介质分区所花费的时间,属于机器人的行走时间,故本实施例将所述当前特定介质分区的面积与机器人的有效覆盖面积的比值设置为标准行走结束时间;但机器人实际行走完所述当前特定介质分区所耗费的时间是大于所述当前特定介质分区的面积与机器人的有效覆盖面积的比值。需要说明的是,所述当前特定介质分区是让机器人出现打滑的闭合区域,使得机器人按照预设规划路径在当前特定介质分区内行走时,在所述当前特定介质分区内实际行走出的轨迹的形状不同于预设规划路径的形状。
因此本实施例需设置所述第一预设系数补偿机器人在当前特定介质分区内行走所产生的误差;第一预设系数用于表示机器人遍历完所述当前特定介质分区后,机器人实际行走出的轨迹的覆盖区域与所述当前特定介质分区的面积差异,产生差异的原因包括但不限于:由机器人停顿下来进行方向调整计算和/或路径规划计算所消耗的时间(不计入机器人的行走时间)、机器人的有效覆盖面积(机器人行走1秒的过程中,机器人的机体所覆盖到的区域的面积)与一个转弯时间的乘积与机器人在同一转弯时间内转弯而产生新的区域的面积的差异、由于机器人在地毯表面打滑而行走出比预设规划路径所覆盖的区域更大的区域的面积。
优选地,为了在所述标准行走结束时间的基础上计算出所述预定时间间隔,需设置第二预设系数对所述标准行走结束时间作比例计算;第二预设系数与所述当前特定介质分区的形状相适应;第二预设系数与围成所述当前特定介质分区的边界线的数量相关,当围成所述当前特定介质分区的边界线的数量越大时,第二预设系数越小;从而将所述标准行走结束时间在所述当前特定介质分区的各个边界线上进行分配,让调整出的预设规划路径的延伸方向能够对应上所述当前特定介质分区的各个边界线的延伸方向,实现配置出机器人对预设规划路径的延伸方向的合理调整次数。
在上述实施例的基础上,当所述当前特定介质分区的面积与机器人的有效覆盖面积的比值与所述第二预设系数的乘积小于第一预设系数时,所述当前特定介质分区的面积与机器人的有效覆盖面积的比值与所述第二预设系数的乘积被赋值为第一预设系数,否则不需强制赋值为所述第一预设系数;使得所述预定时间间隔的数值不小于所述第一预设系数,进而实现所述预定时间间隔在误差允许范围内等于,所述当前当前特定介质分区的面积与机器人的有效覆盖面积的比值与所述第二预设系数的乘积。克服相关误差引起机器人实际行走所耗费的时间过长的误判问题,符合机器人实现行走状态。
优选地,所述当前特定介质分区是表面覆盖特定介质的矩形平面区域;由于所述当前特定介质分区是让机器人出现打滑的闭合区域,所以,所述当前特定介质分区可以设置为地毯区域,特定介质设置为地毯;所述预设规划路径是弓字形路径;其中,第一预设系数是设置为大于或等于数值2,第二预设系数是设置为数值1/4,对应为矩形平面区域的四条边界线;当预定时间间隔的数值小于数值2时,机器人将预定时间间隔的数值设置为数值2,单位可以为秒。
作为一种实施例,机器人的底部的前方装配超声波传感器,用于朝机器人的行走面发射超声波,可以及时地检测到当前特定介质分区,本实施例设置预设强度阈值范围来表示所述当前特定介质分区反馈回的超声波反射信号的信号强度范围。机器人按照预设规划路径在所述当前特定介质分区内行走的过程中,机器人控制超声波传感器发出超声波并接收超声波反射信号,排除掉特定高度的障碍物的表面反馈回的超声波反射信号的信号强度的干扰的前提下,超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,并确定机器人检测到其前方区域的表面存在特定介质,比如地毯,即机器人检测到所述当前特定介质分区;但是,机器人在所述当前特定介质分区内行走过程中,当存在一个超声波传感器接收到超声波反射信号的强度是没有处于预设强度阈值范围内时,机器人检测到其前方区域的表面不存在特定介质,由于机器人是行走在所述当前特定介质分区内,所以机器人在检测到其前方区域的表面不存在特定介质时,该超声波传感器的探测范围位于所述当前特定介质分区之外,该超声波传感器可能位于所述当前特定介质分区之外;此时,机器人可能行走到所述当前特定介质分区的边界线附近位置,则在本实施例中的机器人当前检测到所述当前特定介质分区的边界线,且确定当前行走至所述当前特定介质分区的边界线,然后机器人调整行走方向,即机器人调整行走角度,朝所述当前特定介质分区的内部行走,避免离开所述当前特定介质分区的边界线,使得机器人不行走至所述当前特定介质分区的外部,即不让机器人行走出所述当前特定介质分区,可以允许部分机体露出所述当前特定介质分区之外,但需调整机器人的行走方向,带动机器人往所述当前特定介质分区的内部行走,则机器人能够再次检测到所述当前特定介质分区;然后机器人按照预设规划路径在所述当前特定介质分区内行走,其中,该预设规划路径的延伸方向是垂直于调整后的行走方向,平行于所述弓字型清洁路线(机器人是扫地机器人,且所述预设规划路径是所述弓字型路径)的长边清洁路线,机器人避障后所沿的最新调整出的预设规划路径可能不与调整之前的预设规划路径不相连通;然后机器人继续执行前述实施例中公开的每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,再按照延伸方向调整后的预设规划路径在当前特定介质分区内行走的实施方式,实现对机器人原先行走的预设规划路径的延伸方向进行调整。综上,在机器人计算位姿和不使用全局地图定位的前提下,机器人通过超声波传感器感测的反馈自机器人实际行走地面介质的信号强度信息来控制机器人不离开所述当前特定介质分区,既可以避免惯性传感器在所述当前特定介质分区内所带来的打滑误判的影响,又可以保证机器人在所述当前特定介质分区内继续行走,保证机器人对所述当前特定介质分区的行走覆盖率。
需要说明的是,使用超声波传感器采集地面介质反射回的超声波数据,超声波传感器可以以6ms为间隔持续采集所述当前特定介质分区反馈回的超声波数据。超声波传感器产生的探测空间区域由超声波传发射角和最大探测距离约束形成,优选地构成一种锥形区域范围。其中,超声波的反射信号返回的测量值包括该锥形区域范围内距超声波传感器距离最近的地面介质区域(所述当前特定介质分区)的距离测量值,因为超声波都是有一定角度,例如形成10度的锥形区域,所以对应获得的点云会是一块区域,可以获得点的集合。另一方面,所述超声波传感器基于不同清洁对象的表面密度反馈强度不同的超声波信号,经过模数转换得到的反映地面介质类型的电平信号,机器人可以通过数字电平信号来检测地表介质反馈的信号强弱。具体地,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人没有检测到当前特定介质分区,机器人不处于跨越障碍物的状态。优选地,超声波传感器接收到的超声波反射信号的强度大于一个预先设定的判断阈值时,机器人检测到地板等硬介质面,否则机器人检测到地毯等软介质面。
作为一种实施例,机器人按照预设规划路径在所述当前特定介质分区内行走的过程中,若机器人接触到障碍物,可以通过碰撞传感器检测到障碍物,则先调整行走方向以避开障碍物,即机器人调整行走角度,朝远离障碍物的方向行走,离开所述障碍物;然后机器人按照预设规划路径在所述当前特定介质分区内行走,其中,该预设规划路径的延伸方向是垂直于调整后的行走方向,能够实现无障碍地按照最新调整出的延伸方向对应的预设规划路径在所述当前特定介质分区内行走,但机器人避障后所沿的最新调整出的预设规划路径可能不与调整之前的预设规划路径不相连通;然后机器人继续执行前述实施例中公开的每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,再按照延伸方向调整后的预设规划路径在当前特定介质分区内行走的实施方式;如此重复,直至机器人从预设行走起点开始行走所耗费的时间达到工作结束时间,确定机器人行走完所述当前特定介质分区。
在实施例三中,如图3所示,实施例一先后执行的步骤S103和步骤S104具体包括
步骤S301,确定机器人在全局地图中标记出所有的特定介质区域的边界点对应的栅格后,机器人先搜索出当前预设目标点,然后从当前位置点行走至当前预设目标点,再从当前预设目标点开始行走至当前预设目标点所处的特定介质分区的预设行走起点;然后执行步骤S302。
值得注意的是,机器人进入特定介质区域之前,已经通过执行前述实施例的步骤S101来行走完(遍历完)除特定介质区域之外的区域,并在全局地图中标记出特定介质区域的边界点对应的栅格。具体地,在机器人第一次执行步骤S301之前,机器人在行走过程中保持在全局地图中标记出多个特定介质分区的边界点对应的栅格,直至机器人遍历完除所有的特定介质区域之外的区域,再开始执行步骤S301,其中,所述特定介质区域包括多个特定介质分区,当前特定介质分区是特定介质分区,在没有开始执行步骤S103或步骤S301之前属于未被机器人行走过的特定介质分区。
可选地,在所述步骤S101中,机器人在特定介质区域之外的区域可以按照所述预设规划路径行走,比如沿着弓字型路径行走,并在行走过程中可以根据超声波传感器接收到的超声波反射信号的强度检测到所述特定介质区域,并结合特定介质区域的表面的超声波反射信号反馈回的距离测量信息换算出边界点的位姿信息,即该特定介质区域的边缘线上的点的位姿信息,也可理解为该特定介质覆盖的平面区域的轮廓线上的点的位姿信息。则组成所述特定介质区域的特定介质分区是由其边界点围成的闭合区域,特定介质分区的边界线是由特定介质分区的边界点连接形成,优选地,不同的特定介质分区之间不存在共同的一个角点,也不存在共同的一条边界线。在室内环境下,每个特定介质分区的形状大小可以与其实际覆盖的房间户型的平面形状大小相适应。需要说明的是,在机器人行走完除特定介质区域之外的区域时,确定剩下的未遍历区域都是特定介质区域,则每个特定介质分区都是被标记为未遍历区域;其中,机器人在检测到所述特定介质区域时会在全局地图中标记出所述特定介质区域的边界点对应的栅格,也等效于处于特定介质分区的边界上的点,在全局地图中都有对应的栅格中标记位置信息和介质信息;则机器人标记出的所述边界点在全局地图中连接形成多个闭合区域,机器人将闭合区域都设置为特定介质分区。
在所述步骤S301中,所述机器人依据其当前位置点确定当前特定介质分区的方法包括:
机器人从所有未被机器人行走过的特定介质分区的角点中,即从所述步骤S101确定下的所有特定介质分区的角点中,选择距离机器人的当前位置点最近的一个角点配置为参考角点;其中,特定介质分区是机器人没有行走过的区域;所有特定介质分区的边界点对应的栅格都标记在全局地图中,特定介质分区的边界点包括角点,角点是属于围成特定介质分区的边界线的端点,其中,每个角点都有其对应的特定介质分区;所述特定介质分区的平面形状是多边形时,特定介质分区的角点是特定介质分区的顶点,特定介质分区的边界线是围成多边形的边,特定介质分区等效于由多条边界线段首尾顺次连接组成的封闭图形,对应为闭合区域,包括多边形可以分为正多边形和非正多边形、凸多边形及凹多边形,可以优选为矩形。本实施例使用该参考角点来确定出距离机器人最近的特定介质分区,加快机器人进入特定介质分区的速度。
然后机器人在该参考角点所处的特定介质分区中,选择以该参考角点为共同端点的两条边界线分别配置为第一参考边和第二参考边;特定介质分区的边界线是由特定介质分区的边界点连接形成;其中,每条边界线都有其对应的特定介质分区。然后机器人在第一参考边的中点和第二参考边的中点当中,选择距离机器人的当前位置点最近的一个中点配置为所述当前预设目标点,其中,参考角点所处的特定介质分区是所述当前预设目标点所处的特定介质分区,机器人将当前预设目标点所处的特定介质分区设置为所述当前特定介质分区。从而实现按照就近原则在特定介质分区的相应边界线上选择中点作为机器人进入这个距离最近的特定介质分区的导航入口位置点,相应地,也确定机器人当前需要进入的特定介质分区。
在步骤S301中,所述机器人从特定介质区域之外的区域进入当前特定介质分区的方法包括:依据机器人全局地图搜索出的由当前位置点对应的栅格与当前预设目标点对应的栅格之间的可通行的栅格,形成一条导航路径,然后机器人沿着该导航路径,逐个位置点地行走到当前预设目标点;至于从当前预设目标点开始行走至当前预设目标点所处的特定介质分区的预设行走起点的方式,是机器人直接沿着当前预设目标点指向相应的预设行走起点的方向行走,若碰撞障碍物则调整行走方向,直至行走到该预设行走起点,其中,当前预设目标点及其所处的特定介质分区的预设行走起点可以预先计算其位姿信息并保存起来,并在全局地图中标记出对应的栅格;机器人的当前位置点是使用机器人的机体中心点来表示。当机器人行走至所述预设行走起点时,机器人确定已经完全进入所述当前特定介质分区内,并停止使用惯性传感器测得的里程数值的累加值和角度值的累加值去计算机器人的位姿,也停止往全局地图中标记栅格,减少将机器人打滑误差数据映射到全局地图中。当前预设目标点是位于所述当前特定介质分区的边界线上,以便于选择最短路径来引导机器人从外部进入所述当前特定介质分区内;本实施例将所述预设行走起点设置为所述当前预设目标点所处的当前特定介质分区的中心点,以确保机器人已经完全进入所述当前特定介质分区内。其中,所述当前特定介质分区的中心点的位姿信息可以由所述当前特定介质分区的边界点的位姿信息计算出来,尤其是当前特定介质分区是规则形状的区域时更容易计算出其中心点(对称中心)的位姿信息。优选地,所述当前特定介质分区的水平平面形状是矩形时,当前特定介质分区的角点是当前特定介质分区的端点,当前特定介质分区的边界线是围成当前特定介质分区的边;其中,所述当前预设目标点是属于所述当前特定介质分区的相应一条边的中点。
步骤S302,机器人从所述当前特定介质分区的预设行走起点开始,按照预设规划路径在所述当前特定介质分区内行走,并记录其在当前特定介质分区内所耗费的时间,对应为机器人运行的时间,包括机器人在所述当前特定介质分区内行走的时间;然后执行步S303。机器人在步骤S301确定出的当前预设目标点所在的特定介质分区,从所述预设行走起点开始,沿着预设规划路径行走并同步计时,记录下机器人从所述预设行走起点开始行走的时间。步骤S302通过记录机器人在弓字型路径上的每个路径节点的时刻,来获得机器人从当前特定介质分区的预设行走起点开始行走所耗费的时间,以及其中两个路径节点之间的时间间隔,该时间间隔是机器人沿着最新确定出的预设规划路径段行走的时间。所述预设规划路径可以是弓字型路径,具体的实施方式参阅前述实施例,在此不再赘述。
步骤S303,判断机器人从所述预设行走起点开始行走所耗费的时间是否达到工作结束时间,是则执行步骤S304,否则执行步骤S305。其中,所述工作结束时间用于表示机器人从所述预先行走起点开始至行走完所述当前特定介质分区所消耗的时间,属于按照预先设定的数学模型计算的结果,所述工作结束时间和所述预定时间间隔的具体来源参阅前述实施例,在此不再赘述。
步骤S304,确定机器人行走完所述当前特定介质分区,并停止对预设规划路径的延伸方向进行调整。也可以停止在所述当前特定介质分区内行走,并对机器人在所述当前特定介质分区内记录的时间清零处理。以结束执行机器人在所述当前特定介质分区内的行走控制。
步骤S305,每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,即改变预设规划路径的延伸方向,再按照延伸方向调整后的预设规划路径在所述当前特定介质分区内行走,使得机器人沿着最新调整出的预设规划路径行走的过程中,能够行走到其沿着最新调整之前的预设规划路径所没有行走过的位置。然后返回执行步骤S303以在机器人沿着最新调整出的预设规划路径行走的过程中保持判断机器人从步骤S302所述的预设行走起点开始行走所耗费的时间是否达到工作结束时间。
在本实施例中,机器人从步骤S302所述的预设行走起点开始计时,当机器人记录到沿着预设规划路径行走的时间等于一个预定时间间隔,则记录一个时刻,作为预设规划路径的延伸方向的当前目标调整时刻,然后机器人从该当前目标调整时刻开始对预设规划路径的延伸方向进行调整;机器人从完成当前一次延伸方向的调整开始,可以计时机器人行走的时间(从完成延伸方向调整的时刻开始,继续计时机器人行走时间,计时出一个预定时间间隔),机器人按照延伸方向调整后的预设规划路径继续在所述当前特定介质分区内行走,即机器人在所述当前特定介质分区内沿着延伸方向调整后的预设规划路径行走,然后返回执行步骤S303以继续判断机器人从所述预设行走起点开始所耗费的时间;在一些实施例中,对预设规划路径的延伸方向调整的时间可以忽略不计。
因此,机器人在所述当前特定介质分区内沿着延伸方向调整后的预设规划路径行走的过程中,当机器人记录到按照预设规划路径行走过一个预定时间间隔,机器人开始进行新的一次延伸方向的调整;机器人如此重复执行,直至机器人从所述预设行走起点开始行走所耗费的时间达到工作结束时间,确定机器人遍历完所述当前特定介质分区,并可以停止对预设规划路径的延伸方向进行调整,也可以停止在所述当前特定介质分区内行走,其中,所述工作结束时间用于表示机器人行走完所述当前特定介质分区所消耗的时间,属于按照预先设定的数学模型计算的结果,包括机器人停顿下来进行延伸方向调整所耗费的时间。综上,机器人重复执行步骤S303至步骤S305,实现按照所述预定时间间隔对预设规划路径的延伸方向进行调整,形成对预设规划路径的延伸方向的周期性变化机制,使得机器人在所述当前特定介质分区内的行走覆盖区域提高,可以覆盖到单一延伸方向的预设规划路径没有覆盖到的区域。
作为优选例一,机器人在重复执行步骤S303至步骤S305的过程中,若检测到障碍物,则先调整行走方向以避开障碍物,然后机器人按照预设规划路径在所述当前特定介质分区内行走,其中,该预设规划路径的延伸方向是垂直于调整后的行走方向,然后机器人继续执行步骤S305中公开的每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,即改变预设规划路径的延伸方向,再按照延伸方向调整后的预设规划路径在所述当前特定介质分区内行走的实施方式,如此重复执行,直至机器人从预设行走起点开始行走所耗费的时间达到工作结束时间,确定机器人行走完所述当前特定介质分区,即机器人从所述预设行走起点开始,已经行走完所述当前特定介质分区。
作为优选例二,机器人在重复执行步骤S303至步骤S305的过程中,当机器人的超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人检测到其前方区域的表面不存在特定介质,由于机器人是行走在所述当前特定介质分区内,所以机器人在没有检测到其前方区域的表面存在特定介质时,超声波传感器的探测范围位于所述当前特定介质分区之外,则机器人被配置为行走至所述当前特定介质分区的边界线,然后机器人调整行走方向,使得机器人不行走至所述当前特定介质分区的外部,而是带动机器人往所述当前特定介质分区的内部行走,则机器人能够再次检测到所述当前特定介质分区;然后机器人按照预设规划路径在所述当前特定介质分区内行走,其中,该预设规划路径的延伸方向是垂直于调整后的行走方向,机器人避障后所沿的最新调整出的预设规划路径可能不与调整之前的预设规划路径不相连通;然后机器人继续执行前述步骤S305中公开的每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,即改变预设规划路径的延伸方向,再按照延伸方向调整后的预设规划路径在所述当前特定介质分区内行走的实施方式;如此重复执行,直至机器人从预设行走起点开始行走所耗费的时间达到工作结束时间,确定机器人行走完相应的当前特定介质分区,即机器人从预设行走起点开始,已经视为行走完所述当前特定介质分区。
结合实施例三的步骤S301公开的机器人依据其当前位置点确定当前特定介质分区的方法,则在实施例一的步骤S106中,机器人会步骤S106返回执行步骤S102,具体地,机器人从当前所有未遍历的特定介质分区的角点中,选择距离步骤S106更新后的机器人的当前位置点最近的一个角点配置为参考角点;然后在该参考角点所属的特定介质分区中,选择以该参考角点为共同端点的两条边界分别配置为第一参考边和第二参考边;然后在第一参考边的中点和第二参考边的中点当中,选择距离步骤S106更新后的机器人的当前位置点最近的一个中点配置为下一个预设目标点;并该参考角点所属的特定介质分区是所述下一个特定介质分区,下一个预设目标点则作为机器人进入所述下一个特定介质分区的导航入口,进而将所述下一个特定介质分区的中心点配置为所述下一个特定介质分区的预设行走起点,所述下一个特定介质分区更新为当前特定介质分区,下一个预设目标点更新为当前预设目标点,所述下一个特定介质分区的预设行走起点更新为所述当前特定介质分区的预设行走起点,以便于机器人从预设行走起点开始在所述下一个特定介质分区内按照预设规划路径行走,执行实施例三公开的步骤S302。综上,机器人通过重复执行步骤S102至步骤S106以更新所述当前特定介质分区、当前预设目标点以及所述当前特定介质分区的预设行走起点,直至机器人行走完所述当前特定介质分区内所有的特定介质分区,机器人确定其行走完所述当前特定介质分区。
需要说明的是,惯性导航对于智能移动机器人来说是一种成本低且实用的导航方法,但是其弊端也较为突出,主要表现为导航精度不高。其中,陀螺仪漂移和编码器漂移是影响导航精度的主要原因。智能移动机器人在地毯等软介质面(室内环境的地面覆盖的饰面层)运行的过程中,由于轮子打滑等复杂因素,使得陀螺仪和编码器出现误差,长时间累积的误差会导致机器人所构建的地图也存在很大误差,比如导致地图建立有偏差,如果不对误差进行校正,智能移动机器人会逐渐偏离路线,智能移动机器人行走的时间越久,产生的误差越大;进一步地,智能移动机器人选择在地毯等柔性介质的表面不计算自身的位姿信息(包括位置坐标信息和角度信息),不实时构建地图,即不往全局地图标记新的栅格,则智能移动机器人丢失其在地毯表面的位姿信息(包括位置坐标信息和角度信息),为了在机器人即将离开地毯时重新获取自身的位姿信息(即重定位)以便于在地毯之外的区域进行路径规划,在机器人在步骤S104中确定其行走完所述当前特定介质分区后,即确定机器人从所述预设行走起点开始行走所耗费的时间已经达到所述工作结束时间后,机器人需要执行实施例一公开的步骤S105,具体地,当机器人确定行走完当前特定介质分区后,机器人先行走到当前特定介质分区的边界线,再通过调整行走方向来控制机器人在保持两个超声波传感器分居当前特定介质分区的边界两侧的状态下行走,以使得机器人沿着当前特定介质分区的边界线行走,直至行走到角点;其中,角点是属于围成当前特定介质分区的边界线的端点。
作为实施例四,实施例一公开的步骤S105的具体实施方法包括:
步骤1,机器人在所述当前特定介质分区内行走到当前特定介质分区的边界线,然后调整两个超声波传感器分居当前特定介质分区的边界线两侧。在开始执行步骤1时,机器人可以是已经位于当前特定介质分区的边界线上,也可以位于当前特定介质分区的中心点的附近区域(可以是与该中心点相距30厘米的局部区域内)。一般地,机器人按照预设规划路径(可以是扫地机器人的清扫作业经常使用到的弓字型路径)在当前特定介质分区内行走的过程中,结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息去检测当前特定介质分区的边界线,然后在当前特定介质分区的边界线上或边界线的附近区域(可以是与边界线相距一段距离,但在超声波传感器的探测范围内)开始调整两个超声波传感器分居当前特定介质分区的边界线两侧;在一些实施方式中,机器人调整两个超声波传感器分居当前特定介质分区的边界线两侧后,则机器人的当前位置点是位于边界线上;需要说明的是,机器人的当前位置点是机器人的机体中心点;所述调整两个超声波传感器分居所述当前特定介质分区的边界线两侧的方式可以是机器人转动机身,改变行走方向,直至各个超声波传感器检测到相应的地面介质类型信息。
需要说明的是,在执行实施例一的步骤S105之前,机器人保持在当前特定介质分区内行走,其中,所述当前特定介质分区是让机器人出现打滑的闭合区域,比如地毯等饰面层;具体地,机器人可以从预设行走起点开始,按照预设规划路径在当前特定介质分区内行走,在行走过程中,机器人不计算自身的位姿信息(包括位置坐标信息和角度信息),不实时构建地图,机器人可以每隔一个预定时间间隔就改变一次行走方向,能够赶在机器人在当前特定介质分区内因打滑而积累足够大的偏移误差之前,就调整一次预设规划路径,避免机器人沿着原定的预设规划路径行走时偏离原定的预设规划路径过远,又可以较为全面地覆盖到当前特定介质分区,此时机器人仍在当前特定介质分区内,但是机器人没有计算获取到当前位置点的相关位姿信息,机器人没有更新全局地图,则无法从全局地图中获取实时的定位信息,需要执行步骤S105。在一些实施例中,机器人开始执行步骤S105的条件是:机器人记录到其在当前特定介质分区内的行走时间达到规定的结束工作时间,机器人确定其行走完所述当前特定介质分区。
步骤2,机器人在保持两个超声波传感器分居当前特定介质分区的边界线两侧的状态下行走,使得机器人沿着当前特定介质分区的边界线行走,直至行走到角点,再使用该角点的位姿信息更新为机器人的当前位姿信息,完成机器人的重定位。需要说明的是,围成当前特定介质分区的每条边界线的位姿信息是预先保存在机器人的存储器中,是机器人进入当前特定介质分区之前就在全局地图中标记出相应的栅格,记录好位姿信息;角点是围成当前特定介质分区的一条边界线的端点,即相邻接的两条边界线的公共端点,其位姿信息也是预先保存在机器人的存储器中。在本实施例中,机器人是否行走角点可以通过在一定的时间内转动角度的变化量进行判断,也可以通过转动角度和预先保存好的栅格位置的关系进行判断,也可以可以通过机器人开始沿沿着当前特定介质分区的边界线行走的起始点和第一个行走到的角点的位置关系来进行判断,还可以把这些因素结合起来进行综合判断,等等。从而在没有实时地对地图标记新的栅格信息和实时计算机器人位姿信息的前提下,把机器人当前的位置重定位为这个角点在机器人中预先记录的位置。
具体地,分居当前特定介质分区的边界线两侧的两个超声波传感器是位于机器人的中轴线的左右两侧。所述当前特定介质分区的形状是多边形,且两个超声波传感器是配置为安装在机器人的中轴线的两侧时,为了维持所述两个超声波传感器分居当前特定介质分区的边界线两侧,则机器人在行走过程中,会一次或多次地转动机身,在这一过程中,机器人的机身(包括驱动轮和超声波传感器)不可避免地反复进出所述当前特定介质分区,机器人的运动轨迹形成与所述当前特定介质分区的边界线交错的轨迹线,则机器人以这一实施方式沿着当前特定介质分区的边界线行走,当机器人是扫地机器人时,可以实施对所述当前特定介质分区进行交错清洁,整体上按照预设时针方向在当前特定介质分区内行走以实现绕着当前特定介质分区的中心完成固定沿边方向的沿边行走。
作为一种实施例,所述两个超声波传感器在一些实施方式中是对称地安装在机器人的中轴线的左右两侧,则容易控制机器人沿着当前特定介质分区的边界线行走;机器人的左右驱动轮优选地分居当前特定介质分区的边界线两侧;所述当前特定介质分区的形状是矩形时,若机器人在保持两个超声波传感器分居当前特定介质分区的边界线两侧的状态下行走,则机器人的中轴线与其所沿的当前特定介质分区的边界线平行,则以这一方式控制机器人沿着当前特定介质分区的边界线行走,直至依据机器人检测到的角度信息判断其行走到所述角点,对应为矩形的顶点。由于机器人在边界线上或边界线两侧的附近区域行走,而且机器人在当前特定介质分区内由惯性传感器中码盘或里程计测量到的位移信息出现打滑误差,所以机器人在对应的边界段产生行走误差,不容易定位,不适于将除了角点之外的边界点作为重新定位的参考,毕竟机器人在角点处需要发生行走方向的特定角度的转动,适合作为重新定位的参考角度,可以是在预先设定的打滑误差允许的范围内设置的参考角度。
需要说明的是,所述角点的位姿信息是预先保存在机器人的存储器中。其中,所述全局地图预存在机器人的存储器中。所述全局地图是机器人没有进入所述当前特定介质分区前,利用其自身携带的各种传感器(例如:加速度传感器、陀螺仪、超声波测距仪等等)对每个房间运动区域进行搜索,感应每个房间的位置、形状和大小,以及遇到的障碍物的位置、形状和大小,并据此绘制出一张包含环境边界信息的全局地图。
作为一种实施例,在步骤1中,所述调整两个超声波传感器分居当前特定介质分区的边界线两侧的方法包括:
机器人行走到当前特定介质分区的边界线时,机器人转动机身以调整行走方向,机器人可以原地转动机身且机器人的机体可以覆盖到边界线,直至第一超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内、第二超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内、且惯性传感器测得的姿态角小于或等于预设角度阈值,则机器人在第一超声波传感器对应的一侧没有检测到当前特定介质分区,机器人在第二超声波传感器对应的一侧检测到当前特定介质分区,则第一超声波传感器和第一超声波传感器分居当前特定介质分区的边界线的两侧,进而确定机器人处于两个超声波传感器和分居当前特定介质分区的边界线的两侧的状态;其中,预设角度阈值是由机器人跨越障碍物所允许的最大可跨越高度的反三角函数结果决定;第一超声波传感器和第二超声波传感器固定装配在机器人的中轴线的两侧,第一超声波传感器和第二超声波传感器之间存在当前特定介质分区的边界线,优选地,第一超声波传感器和第二超声波传感器对称设置在机器人的中轴线的左右两侧时,第一超声波传感器和第二超声波传感器可以关于机器人所沿的当前特定介质分区的边界线对称设置。
在执行所述机器人重定位方法的过程中,机器人控制每个超声波传感器发出超声波并接收超声波反射信号,同时控制惯性传感器测量机器人的姿态角;对应到步骤1中,在机器人开始沿着当前特定介质分区的边界线行走之前或机器人转动机身以调整行走方向的过程中,包括以下检测结果:
当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人没有检测到当前特定介质分区,具体是检测到前方区域的表面不存在特定介质,机器人不处于跨越第一目标障碍物的状态。需要说明的是,所述超声波传感器基于不同清洁对象的表面密度反馈强度不同的超声波信号。预设强度阈值范围内的数值大小与当前特定介质分区表面的介质类型相关。需要说明的是,机器人处于跨越第一目标障碍物的状态是相对于水平平面,机器人的机体倾斜设置在第一目标障碍物的表面;机器人不处于跨越第一目标障碍物的状态是相对于水平平面,机器人水平地处于第一目标障碍物的表面,或机器人没有与第一目标障碍物接触。在本实施例中水平平面等效于水平地面。其中,超声波传感器是第一超声波传感器或第二超声波传感器。因此,当第一超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,确定机器人在第一超声波传感器对应的一侧没有检测到当前特定介质分区,具体是机器人在第一超声波传感器对应的一侧的前方没有检测到当前特定介质分区。
在实际应用中,地毯和机器人爬上的障碍物反馈的超声波信号的强度低于地板反馈的结果。基于此,可以设定角度阈值或角度阈值范围,利用惯性传感器测得的姿态角对应的角度阈值范围区分出行走环境是位于当前特定介质分区还是凸起的可供机器人爬上的障碍物。其中,第一目标障碍物是凸出于水平平面,且第一目标障碍物的高度是大于机器人跨越障碍物所允许的最大可跨越高度,当机器人处于跨越第一目标障碍物的状态时,机器人在第一目标障碍物表面存在打滑或空转的风险,则机器人需挣脱第一目标障碍物,避免在第一目标障碍物表面打滑或空转。
当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角处于第一预设角度阈值范围时,机器人检测到前方区域表面存在所述特定介质(比如地毯),机器人检测到当前特定介质分区,可以是检测到当前特定介质分区的局部区域,同时,机器人不处于跨越障碍物的状态,包括不处于跨越第一目标障碍物的状态,实现在超声波反射信号的一个信号强度范围(处于预设强度阈值范围)内检测当前特定介质分区和第一目标障碍物,完成区分开当前特定介质分区和第一目标障碍物,避免误判;在本实施例中,机器人不处于跨越障碍物的状态,表示机器人没有倾斜地与障碍物的表面接触,机器人可以水平地位于障碍物的表面。其中,超声波传感器是第一超声波传感器或第二超声波传感器。因此,当第二超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内、且惯性传感器测得的姿态角小于或等于预设角度阈值时,确定机器人在第二超声波传感器对应的一侧检测到当前特定介质分区,具体是机器人在第二超声波传感器对应的一侧的前方检测到当前特定介质分区。
在上述实施例中,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内,且惯性传感器测得的姿态角小于或等于预设角度阈值时,机器人不处于跨越障碍物的状态,惯性传感器测得的姿态角可能是等于0,使得机器人水平处于障碍物的表面或没有接触到水平地面凸起的障碍物。其中,机器人不处于跨越障碍物的状态是相对于水平平面,机器人水平地处于障碍物的表面,或机器人没有与障碍物接触,其中,障碍物包括第一目标障碍物、第二目标障碍物和其余高度的凸起水平地面的障碍物。在本实施例中水平平面等效于水平地面。
需要说明的是,所述第一预设角度阈值范围是小于或等于预设角度阈值的角度范围。预设角度阈值是由机器人跨越障碍物所允许的最大可跨越高度的反三角函数结果决定,具体的运算方式是常规的三角几何运算,按照俯仰角和翻滚角的定义,可以存在多种形式的换算方式,其中,预设角度阈值与最大可跨越高度可以成正相关关系。具体在此不再赘述。当惯性传感器测得的姿态角是俯仰角时,预设角度阈值是由最大可跨越高度经过反三角函数换算出的俯仰角;当惯性传感器测得的姿态角是翻滚角时,预设角度阈值是由最大可跨越高度经过反三角函数换算出的翻滚角。其中,反三角函数计算的结果只需要留有一定的精度,所以,本实施例中,预设角度阈值是配置为预先设定的误差数量级下的一个数值,其中,预先设定的误差数量级优选为0.1,使得预设角度阈值保留到数量级0.1。在前述反三角函数换算出的预设角度阈值带有多位小数时,则预设角度阈值在数量级0.1所允许的误差范围内,通过保留一位小数来获得一个数值,作为唯一的角度值。以迎合惯性传感器的导航精度。
值得注意的是,在本实施例中,惯性传感器测得的加速度信息或加速度信息的角度变换结果不继续累加积分值,机器人不在所述当前特定介质分区内辅助构建全局地图,以减少机器人打滑带来的误差影响。
作为一种实施例,在步骤1中,所述机器人行走到当前特定介质分区的边界线的确定方式包括:机器人在所述当前特定介质分区内行走的过程中,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人确定其行走到所述当前特定介质分区的边界线;其中,预设强度阈值范围用于表示所述当前特定介质分区反馈回的超声波反射信号的信号强度范围。超声波传感器是第一超声波传感器或第二超声波传感器,即机器人在所述当前特定介质分区内行走的过程中,只要机器人的其中一侧(左侧或右侧)的超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内,即可确定机器人已经行走到所述当前特定介质分区的边界线。
在一些实施例中,机器人按照预设规划路径在所述当前特定介质分区内行走,机器人控制超声波传感器发出超声波并接收超声波反射信号,排除掉特定高度的障碍物的表面反馈回的超声波反射信号的信号强度的干扰(惯性传感器测得的姿态角小于或等于预设角度阈值)的前提下,超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,并确定机器人检测到其前方区域的表面存在特定介质,比如地毯,即机器人检测到所述当前特定介质分区;但是,机器人在所述当前特定介质分区内行走过程中,当存在一个超声波传感器接收到超声波反射信号的强度是没有处于预设强度阈值范围内时,机器人检测到其前方区域的表面不存在特定介质,由于机器人是行走在所述当前特定介质分区内,所以机器人在检测到其前方区域的表面不存在特定介质时,该超声波传感器的探测范围位于所述当前特定介质分区之外,该超声波传感器可能位于所述当前特定介质分区之外;则在本实施例中的机器人当前检测到所述当前特定介质分区的边界线,且确定当前行走至所述当前特定介质分区的边界线,然后机器人调整行走方向,即机器人调整行走角度,偏向所述当前特定介质分区的内部行走,避免机器人整体离开所述当前特定介质分区的边界线,可以允许部分机体露出所述当前特定介质分区之外,但需调整机器人的行走方向,带动机器人沿着所述当前特定介质分区的边界线行走。综上,在机器人不计算位姿和不使用全局地图定位的前提下,机器人通过超声波传感器感测的反馈自机器人实际行走地面介质的信号强度信息来控制机器人接触到所述当前特定介质分区的边界线,既可以避免惯性传感器在所述当前特定介质分区内所带来的打滑误判的影响,又可以保证机器人在所述当前特定介质分区内搜索预先保存的边界线,以便于后续重定位。
需要说明的是,所述惯性传感器包括六轴陀螺仪。需要说明的是,三轴陀螺仪是分别感应Roll(左右倾斜)、Pitch(前后倾斜)、Yaw(左右摇摆)的全方位动态信息,六轴陀螺仪是指三轴加速器(三轴加速器就是感应XYZ(立体空间三个方向,前后左右上下)轴向上的加速)和三轴陀螺仪合在一起的称呼,组成一个惯性导航***,能够不依赖于外部信息、也不向外部辐射能量的自主式导航***。则由六轴陀螺仪可以测得机器人位姿信息,主要测量自身位姿,位姿包含位置和姿态。
前述实施例中,惯性传感器测得的姿态角是俯仰角或翻滚角,以获得机器人在所述障碍物上的角度信息,优选地,机器人在所述障碍物上的角度信息可以包括从一个初始值开始,机器人从水平平面开始跨越所述障碍物的过程中产生的姿态角的变化,具体可以是在特定的采样时间段内的变化。采样时间段与机器人的跨越能力相关,也会与驱动轮的转动速度相关。在前述实施例中,俯仰角用于表示机器人与障碍物的接触面与水平平面所成的夹角,也相当于机器人的行走方向与水平平面所成的夹角;翻滚角用于表示机器人的轮轴线与水平平面所成的夹角;机器人的轮轴线是机器人的机体两侧的安装的驱动轮的轴线,即两侧的安装的驱动轮的轴心连线。
在实施例四,如图4所示,实施例一公开的步骤S105的具体实施方法包括以下步骤:
步骤S401,机器人在当前特定介质分区内行走到当前特定介质分区的边界线,然后调整两个超声波传感器分居当前特定介质分区的边界线两侧;然后机器人执行步骤S402。相关的实施方式可参阅前述的步骤1所述的方法。
在步骤S401的一些实施例中,机器人调整两个超声波传感器(对应为分居机器人的机体左右两侧的第一超声波传感器和第二超声波传感器)分居当前特定介质分区的边界线两侧之前,机器人在当前特定介质分区内沿着目标方向行走到目标边界线,即机器人从开始执行所述步骤S401时在当前特定介质分区内所处的位置点,沿着目标方向行走。其中,所述目标方向的指向范围是落入预设行走起点与目标边界线的两个端点的连线所成的夹角内。目标边界线是围成当前特定介质分区的任一条边界线,其相关的位姿信息是预先保存到机器人中以便于随时读取,并与所述目标方向的指向相对应,在机器人的存储器中保存有目标边界线与所述目标方向的映射关系,即一个目标方向与一条目标边界线的对应关系,一个目标方向指向相应的目标边界线。
具体地,在室内环境下,由于所述当前特定介质分区的形状与其实际覆盖的房间户型的平面形状相适应,所述当前特定介质分区的边界线可以是与一个房间的边界线重合以铺满该房间的地面区域,所以,围成当前特定介质分区的每条边界线是固定的,所以围成当前特定介质分区的每条边界线相对于预设行走起点的方位信息是预先获得的固定信息,包括围成当前特定介质分区的每条边界线上的边界点(包括端点)相对于预设行走起点的角度信息和距离信息。
优选地,其中,预设行走起点是设置在当前特定介质分区内。机器人按照预设规划路径在当前特定介质分区内行走也可以表述为机器人在所述当前特定介质分区内沿着预设规划路径行走。在前述实施例三中,为了保证机器人不轻易行走出所述当前特定介质分区且在所述当前特定介质分区内存在足够空旷的行走区域,机器人将预设行走起点设置为所述当前特定介质分区的中心点;则控制机器人从当前特定介质分区的中心点开始按照预设规划路径行走。所述当前特定介质分区的中心点可以是指规则形状下的正中心点,当所述当前特定介质分区的形状不规则时,通过所述当前特定介质分区的边界线上的边界点计算出所述当前特定介质分区的中心点对应的栅格坐标。
在一些实施例中,所述目标方向是机器人开始执行所述机器人重定位方法时的行走方向以实现机器人直线行走到所述目标边界线;或者,所述目标方向是与机器人开始执行所述机器人重定位方法时的行走方向成预设目标角度的方向以使得机器人通过调整预设目标角度后再直线行走到目标边界线,可以规避开当前特定介质分区内障碍物,其中,预设目标角度的设置与机器人开始执行所述机器人重定位方法时的行走方向上分布的障碍物相关。
在步骤S401中,调整两个超声波传感器分居当前特定介质分区的边界线两侧之前,机器人使用惯性传感器测量机器人的最新行走方向相对于目标边界线的一个端点与预设行走起点的连线在预设时针方向上所成的角度,其中,该端点在目标边界线上按照预设时针方向连接到另一端点;当目标边界线是线段时,在预设行走起点的上方,该端点按照逆时针方向自左侧直线延伸到右侧,或该端点按照顺时针方向自右侧直线延伸到左侧;当目标边界线是线段时,在预设行走起点的下方,该端点按照顺时针方向自左侧直线延伸到右侧,或该端点按照逆时针方向自右侧直线延伸到左侧。
当机器人检测到该角度(机器人的最新行走方向相对于目标边界线的一个端点与预设行走起点的连线在预设时针方向上所成的角度)小于或等于预设行走起点与目标边界线的两个端点的连线所成的夹角的角度时,确定机器人在当前特定介质分区内沿着目标方向行走,以使得机器人沿着所述目标方向行走到其检测到边界线(前述实施例公开的机器人在所述当前特定介质分区内行走的过程中,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人确定其行走到所述当前特定介质分区的边界线)后,机器人由预先保存的目标边界线与所述目标方向的映射关系来确定其当前所在的边界线(沿着目标方向行走到的边界线)是所述目标边界线。
在当前特定介质分区的平面形状是正方形,且预设行走起点是当前特定介质分区的中心点时,目标边界线的左端点与预设行走起点的连线是位于正方形的一条对角线上;进一步地,每当机器人的最新行走方向相对于目标边界线的左端点与预设行走起点的连线在顺时针方向上所成的角度增加90度,则所述目标边界线变化一次,变化为与原来的目标边界线的右端点垂直的一条边界线;每当机器人的最新行走方向相对于目标边界线的左端点与预设行走起点的连线在顺时针方向上所成的角度小于90度,则所述目标边界线是确定的。
步骤S402,机器人将其开始保持两个超声波传感器分居当前特定介质分区的边界线的两侧的状态时所处的位置点设置为重定位起始点,并确定机器人已经开始保持两个超声波传感器分居当前特定介质分区的边界线两侧的状态,然后机器人执行步骤S403,以便于机器人沿着当前特定介质分区的边界线行走,即沿着前述步骤D101的一些实施例中公开的目标边界线行走,当机器人的当前位置点是机器人的机体中心点时,特别是两个超声波传感器对称地分居在当前特定介质分区的边界线的两侧的状态下,机器人的机体中心点沿着前述步骤D101的一些实施例中公开的目标边界线移动。
步骤S403,机器人在保持两个超声波传感器分居所述当前特定介质分区的边界线两侧的状态下,从重定位起始点开始按照预设时针方向行走,以使得机器人沿着所述当前特定介质分区的边界线行走,当机器人的当前位置点是机器人的机体中心点时,特别是两个超声波传感器对称地分居在所述当前特定介质分区的边界线的两侧的状态下,机器人的机体中心点的移动轨迹与所述当前特定介质分区的边界线平行;同时机器人使用惯性传感器检测角度变化量,其中,机器人使用陀螺仪检测其从所述重定位起始点开始产生的角度变化量,所述角度变化量是机器人的航向角的角度变化量,用于表示机器人的行走方向的变化,具体表示机器人在所述当前特定介质分区的水平面的行走方向的变化;并执行步骤S404以同步判断角度变化量的大小。
步骤S404,判断机器人从所述重定位起始点开始检测到的角度变化量是否达到参考角度,是则执行步骤S406,否则执行步骤S405。优选地,参考角度是处于机器人在所述当前特定介质分区内的打滑误差允许的角度范围内,使得机器人在角点处通过转动所述参考角度来维持其沿着当前特定介质分区的边界线行走。在本实施例中,机器人为了保持两个超声波传感器分居当前特定介质分区的边界线两侧的状态而对行走方向的调整,在一定程度上可以修正陀螺仪检测角度时存在的打滑误差。
需要说明的是,在较短的时间间隔内,机器人所累积的打滑漂移误差还不是很大,不需要进行重新定位,毕竟频繁的重新定位也会导致机器人的行走效率降低,所以,为了使机器人达到最佳的定位效果,在步骤D104中开始判断到机器人从所述重定位起始点开始检测到的角度变化量达到参考角度时,则执行步骤D106来更新机器人的当前位置点的位姿信息。
优选地,所述参考角度是目标边界线与其在预设时针方向上相连接的边界线所成的夹角的角度,所述角点是目标边界线与其在预设时针方向上相连接的边界线的公共端点;其中,所述当前特定介质分区的平面形状是多边形,所述角点是属于多边形的顶点,边界线是属于多边形的边,使得所述当前特定介质分区的每条边界线都属于直线段。当前特定介质分区的边界点对应的栅格都标记在全局地图中,当前特定介质分区的边界点包括角点,所述当前特定介质分区的平面形状是多边形时,当前特定介质分区的角点是当前特定介质分区的顶点,当前特定介质分区的边界线是围成多边形的边,当前特定介质分区等效于由多条边界线段首尾顺次连接组成的封闭图形,对应为闭合区域,包括多边形可以分为正多边形和非正多边形、凸多边形及凹多边形,可以优选为矩形。由于行走误差的影响,如果所述参考角度设置的值过小,很难找到相适配的重定位位置,如果所述参考角度设置的值过大,找到的对象的准确性又比较低,所以,本实施例的所述参考角度可以设置为允许机器人行走到一个边角位置,比如一条线段的端点、两条边界线的公共端点,由于这一类的点是预先保存到机器人的存储器中,而且其所处的边界线是在步骤D101中获知的,如此可以达到最优重定位匹配效果。本实施例使用角点来重定位,提高机器人在容易打滑的当前特定介质分区上的定位准确度。
步骤S406,机器人行走到角点,再使用该角点的位姿信息更新为机器人的当前位姿信息,将机器人当前保留到的用于标记其当前位置点的栅格坐标,替换成该角点对应的栅格中已存储的栅格坐标,即可实现机器人的重新定位,以实现机器人在所述当前特定介质分区内重新获得其位姿信息。需要说明的是,所述角点是当前特定介质分区的两条边界线的共同端点,是属于机器人通过转动所述参考角度来维持其沿着当前特定介质分区的边界线行走的位置点,即机器人保持两个超声波传感器分居当前特定介质分区的边界线两侧的状态行走至所述角点处或其附近时,为了维持其沿着当前特定介质分区的边界线行走(继续保持两个超声波传感器分居当前特定介质分区的边界线两侧的状态行走),机器人需沿着所述预设时针方向转动所述参考角度,实机器人的行走方向上的所述参考角度的调整;其中,围成当前特定介质分区的边界线都是预先标记在全局地图的对应栅格中,全局地图是预先保存在机器人的存储器中。
然后,机器人不继续保持两个超声波传感器分居所述当前特定介质分区的边界线两侧的状态,使得机器人不沿着所述当前特定介质分区的边界线行走;若机器人后续迭代过程中通过执行实施例一所述的步骤S103来进入下一个特定介质分区,则前述步骤S403和步骤S404中公开的机器人从所述重定位起始点开始检测到的角度变化量清零处理,以避免误判。
具体地,机器人从重定位起始点开始检测到角度变化量达到所述参考角度时,确定机器人行走到所述角点并在所述角点处按照预设时针方向转动过所述参考角度,然后机器人使用所述角点的位姿信息更新为机器人的当前位姿信息;其中,重定位起始点是机器人开始保持两个超声波传感器分居当前特定介质分区的边界线的两侧的状态时所处的位置点;其中,所述角点和所述重定位起始点位于所述当前特定介质分区的同一条边界线上,该条边界线位于所述两个超声波传感器之间,在所述两个超声波传感器当中,存在一个超声波传感器位于所述当前特定介质分区的上方,另一个超声波传感器位于所述当前特定介质分区之外的区域的上方,比如,第一超声波传感器装配在机器人的底部的左侧,第二超声波传感器装配在机器人的底部的右侧,且机器人按照逆时针方向来沿着所述当前特定介质分区的边界线行走,则第一超声波传感器位于所述当前特定介质分区的上方,第二超声波传感器位于所述当前特定介质分区之外的区域的上方。
步骤S405,机器人在保持两个超声波传感器分居当前特定介质分区的边界线两侧的状态下,按照预设时针方向继续行走,使得机器人按照预设时针方向继续沿着当前特定介质分区的边界线行走,再返回步骤S404,实现在沿着当前特定介质分区的边界线行走的过程中执行步骤S404。
需要说明的是,预设时针方向是顺时针方向或逆时针方向,机器人沿着当前特定介质分区的边界线行走的过程中,往所述当前特定介质分区的预设行走起点的下方行走是表现为顺时针地往所述当前特定介质分区的左下方的边界线行走,或者往所述当前特定介质分区的预设行走起点的下方行走是表现为逆时针地往所述当前特定介质分区的右下方的边界线行走,或者往所述当前特定介质分区的预设行走起点的上方行走是表现为逆时针地往所述当前特定介质分区的左上方的边界线行走,或者往所述当前特定介质分区的预设行走起点的上方行走是表现为顺时针地往所述当前特定介质分区的右上方的边界线行走。
优选地,所述当前特定介质分区是表面覆盖特定介质的矩形区域,所述角点是该矩形区域的顶点,所述参考角度是90度,使得机器人按照预设时针方向转动一个直角后,使用该直角的顶点的位姿信息更新为机器人的当前位姿信息;其中,所述矩形区域的每条边是一条边界线,所述矩形区域由四条边界线围成,该直角的顶点的位姿信息包括该直角的顶点的坐标信息和角度信息,都是预先保存的位姿信息以便于后续进行重定位操作。对应到室内环境中,机器人的行走环境覆盖到室内环境的地面,其中,墙体垂直于地面;若所述当前特定介质分区覆盖到室内环境的地面,则机器人沿着所述当前特定介质分区行走的运动轨迹的转角均为直角,相交的所述当前特定介质分区的边界线之间的夹角均为直角。
综上,机器人在沿着当前特定介质分区的边界线导航行走时,由于出现打滑误差,所以不搜索出全局地图中的栅格路径,而是按照前述实施例的步骤1或步骤S401中的调整行走方向至保持两个超声波传感器分居当前特定介质分区的边界线两侧的状态,来实施沿着当前特定介质分区的边界线行走,逐个位置点的行走到所述步骤D106所述的角点,即机器人从重定位起始点开始检测到角度变化量达到所述参考角度。当机器人作为扫地机器人在地毯上进行覆盖清洁后,机器人通过保持左右两侧的超声波传感器分居当前特定介质分区的边界线两侧的方式行走,实现机器人稳定地沿着当前特定介质分区的边界线行走,并在此沿边的基础上,通过角度变化量搜索到当前特定介质分区的其中一个角点,从而把机器人当前的位置重定位为这个角点在地图中记录的位置,实现在减小计算量的情况下,提高重定位计算得到的位置信息的准确度;既规避机器人的驱动轮在地毯表面打滑带来的建图误差,又便于机器人使用重定位出的准确位置进行后续的路径规划。本发明的有益效果包括:通过利用机器人沿所述当前特定介质分区的边缘行走的路径作为参考,可以对机器人行走误差累积过大而造成的位置偏差进行修正,实现重新定位,从而提高机器人在后续导航行走时定位的准确性和行走效率。
在前述实施例的基础上,机器人在所述当前特定介质分区内行走时,机器人控制超声波传感器发出超声波并接收超声波反射信号,并控制惯性传感器测量机器人的姿态角,包括用于配合超声波传感器检测所述当前特定介质分区的俯仰角或翻滚角、以及执行至步骤2或步骤S403时用于检测角度变化量的航向角,但停止对全局地图的栅格进行标记。当机器人使用所述角点的位姿信息更新为机器人的当前位姿信息后,机器人行走至所述特定介质区域之外的区域,同时机器人获取机器人的位姿信息,并在全局地图内标记相应的栅格,以进行地图构建操作;其中,所述特定介质区域之外的区域的表面覆盖的介质与所述特定介质区域的表面覆盖的特定介质不同;其中,所述特定介质区域是让机器人出现打滑的闭合区域,比如地毯区域,相对而言,所述特定介质区域之外的区域则不容易让机器人出现打滑的闭合区域。
基于前述实施例,本发明还公开一种机器人,所述机器人装配惯性传感器、超声波传感器和处理器,其中,超声波传感器装配在机器人的底部的前方,让机器人及时检测到所述特定介质区域;惯性传感器和超声波传感器都与处理器存在电连接;考虑传感器的成本因素,机器人的底部的两侧各安装至少一个超声波传感器,每个超声波传感器可以与机器人的中轴线的垂直距离处于2厘米至3厘米的范围内,机器人的中轴线是与机器人的行走方向平行。所述处理器用于控制机器人执行前述实施例公开的机器人控制方法。其中,存储于所述处理器中的计算机程序,所述处理器执行所述计算机程序时实现前述机器人控制方法,则机器人先检测特定介质区域、可跨越的障碍物(第二目标障碍物)和不可跨越障碍物(第一目标障碍物),以适应在不同介质及地形的表面按照预设规划路径行走,再在检测出特定介质区域的基础上,依据工作区域的覆盖情况调整的路径延伸方向的方式,按照预设规划路径在相应的一个特定介质分区内进行行走,即机器人遍历相应的一个特定介质分区;然后还通过在相应边角区域行走过一个角点的方式完成机器人在最新行走过的一个特定介质分区内定位,以便于导航到下一个特定介质分区;如此重复迭代,直至机器人行走完特定介质区域内所有的特定介质分区。
在本实施例中,机器人,可以是清洁机器人,清洁机器人包含机器主体、感知***、控制***、驱动***、清洁***、能源***,清洁机器人的主体包括前向部分和后向部分,具有近似圆形形状(前后都为圆形),也可具有其他形状,包括但不限于前方后圆的近似D形形状或前方后方的矩形或正方形形状。在一些实施例中,设置于机器人的主机的前向部分上的碰撞传感器、近距离传感器,设置于机器人主体下部的悬崖传感器,以及设置于机器人主体内部的控制器、磁力计、加速度计、陀螺仪(Gyro)、以及安装在驱动轮内部的里程计(ODO,全称odograph)、安装在左右驱动轮与机体的底盘连接的槽位内的跌落传感器等传感装置,用于向处理器提供机器的各种位置信息和运动状态信息。所述处理器可基于具有距离和角度信息(例如x 、y及z分量)的驱动命令而操纵机器人跨越不同类型的地面行进,并在全局地图中标记出当前检测到的特定介质区域和接触到的障碍物对应的栅格,并赋予位姿信息和环境类型信息。所述处理器包含驱动轮模块,驱动轮模块可以同时控制左驱动轮和右驱动轮,为了更为精确地控制机器人的运动,优选地,驱动轮模块包括左驱动轮模块和右驱动轮模块,左驱动轮模块和右驱动轮模块沿着由机体界定的横向轴对称设置。为了机器人能够在地面上更为稳定地运动或者更强的运动能力,机器人可以包括一个或者多个从动轮,从动轮包括但不限于用于改变转向的万向轮。驱动轮模块包括驱动轮、驱动马达以及控制驱动马达的控制电路,驱动轮模块还可以连接测量驱动电流的电路、里程计和陀螺仪,以实现构建地图。当机器人是扫地机器人,且特定介质分区是一个房间区域中的地毯覆盖区域时,本发明技术方案依靠惯性传感器和超声波传感器在每个地毯分区上都进行覆盖面较大的清洁作业,也减少机器人的驱动轮打滑带来的建图误差,并在每个地毯分区内获得一个准确的机体定位信息以便于由一个已遍历的地毯分区进入距离合理的未遍历的地毯分区,有序地完成室内工作区域中的地毯所包括的所有地毯分区的清洁工作。
本发明还公开一种芯片,所述芯片上存储有程序,所述程序被芯片执行时实现如前述实施例公开的机器人控制方法。该芯片装配在机器人上时,针对常规情况下机器人行走环境变化,如地毯等介质不同和跨过障碍物等导致的机器人轮子打滑进而影响位置推算的问题,控制机器人利用惯性传感器测得的俯仰角度或翻滚角度信息与机器人最大可跨越高度换算出相应角度值进行比较,排除掉超声波传感器反馈的信号强度较弱情况下形成的地毯区域检测误差,进而区别出障碍物和地毯区域,并作出适应的行走策略,以适应在不同介质及地形的表面按照预设规划路径行走,再在检测出特定介质区域的基础上,依据工作区域的覆盖情况调整的路径延伸方向的方式,按照预设规划路径在相应的一个特定介质分区内进行行走,即机器人遍历相应的一个特定介质分区;然后还通过在相应边角区域行走过一个角点的方式完成机器人在最新行走过的一个特定介质分区内定位,以便于导航到下一个特定介质分区;如此重复迭代,直至机器人行走完特定介质区域内所有的特定介质分区。
在所述芯片内部的一个内存空间中,存储机器人构建的所述全局地图,全局地图是栅格地图,由栅格单元组成,前述实施例中的栅格是该栅格单元;所述的栅格单元是指边长为20厘米的虚拟方格,由很多栅格单元连续排布所形成的具有一定长度和宽度的用于表示地理环境信息的地图就是栅格地图,对应到全局坐标系中是形成所述全局地图。根据栅格地图,机器人可以由一边行走一边检测到的数据得知当前对应的栅格单元位置,并可以实时更新栅格单元的状态,比如把顺利走过的栅格单元的状态标记为已遍历栅格,把碰撞到或跨越到的障碍物的栅格单元的状态标记为障碍物栅格,把检测到悬崖的栅格单元的状态标示为悬崖栅格,把没有到过的栅格单元的状态标记为未知栅格,等等。优选地,以上这些实施例中组成所述特定介质区域的孤立的分区是指不挨着墙壁或者不挨着靠墙物体的覆盖地毯的孤立矩形区域,且机器人能够沿着该孤立矩形区域的边缘行走一圈,其中,孤立矩形区域对应的栅格区域并不仅仅是指一个栅格单元,靠拢在一起并且能够形成连续的占地面积的多个栅格单元,也属于分区。
此外,以上这些实施例中,机器人在所述特定介质区域的外部行走所记录的预设规划路径和标记到的所述特定介质区域的边界点对应的栅格是能够存储在所述芯片的内存(包括缓存区)中的,预设规划路径可以是弓字型路径,所述特定介质区域是矩形区域或多个不连续的矩形区域组成的区域,则所述芯片的内存(包括缓存区)包括存储弓字型路径对应的栅格单元的栅格坐标、弓字型路径的起始位置点对应的栅格单元的栅格坐标、弓字型路径的结束位置点对应的栅格单元的栅格坐标、弓字型路径的起始执行时间、弓字型路径的结束执行时间、所述特定介质区域的边界点对应的栅格单元的栅格坐标等等。这些在内存中存储的数据是不能随意删除的,可以用作机器人进行重新定位和建立地图的参考数据。如果在缓存区保存的数据符合作为机器人进行重新定位的参考数据的要求,则会被存储进内存中,成为上述的已存储的沿边路径;如果不符合要求,则会被后续新记录的数据所覆盖。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (21)
1.基于特定介质区域的机器人控制方法,其特征在于,该机器人控制方法适用于装配惯性传感器和超声波传感器的机器人,其中,存在至少两个超声波传感器固定装配在机器人的底部两侧,且是位于机器人的中轴线的两侧,机器人的中轴线平行于行走方向;
机器人控制方法包括:
步骤S1,机器人结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息,检测特定介质区域,然后调整行走策略以使得机器人不进入特定介质区域,直至机器人行走完除特定介质区域之外的区域;
步骤S2,机器人行走完除特定介质区域之外的区域后,机器人依据其当前位置点确定当前特定介质分区,然后机器人从特定介质区域之外的区域进入当前特定介质分区;其中,所述特定介质区域包括多个特定介质分区,当前特定介质分区是属于特定介质分区;
步骤S3,机器人进入当前特定介质分区后,按照预设规划路径在当前特定介质分区内行走,每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,再按照延伸方向调整后的预设规划路径在当前特定介质分区内行走,直至机器人确定其行走完当前特定介质分区;
步骤S4,当机器人确定行走完当前特定介质分区后,机器人先行走到当前特定介质分区的边界线,再通过调整行走方向来控制机器人在保持两个超声波传感器分居当前特定介质分区的边界两侧的状态下行走,以使得机器人沿着当前特定介质分区的边界线行走,直至行走到角点;其中,角点是属于围成当前特定介质分区的边界线的端点;
步骤S5,机器人将步骤S4所述的角点更新为机器人的当前位置点,然后机器人重复执行步骤S2、步骤S3和步骤S4,直至机器人行走完所述特定介质区域内所有的特定介质分区,机器人确定其行走完所述特定介质区域。
2.根据权利要求1所述机器人控制方法,其特征在于,所述步骤S1中,所述机机器人结合超声波传感器接收到的超声波反射信号的强度和惯性传感器测得的角度信息,检测特定介质区域,然后调整行走策略以使得机器人不进入特定介质区域的方法包括:
控制超声波传感器发出超声波并接收超声波反射信号,同时控制惯性传感器测量机器人的姿态角;
当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人没有检测到特定介质区域且不处于跨越第一目标障碍物的状态;
当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角处于第一预设角度阈值范围时,机器人检测到特定介质区域且不处于跨越障碍物的状态,并在全局地图中标记出该特定介质区域的边界点对应的栅格;然后调整行走方向,使得机器人不进入特定介质区域;
当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角处于第二预设角度阈值范围时,机器人检测到第一目标障碍物且处于跨越第一目标障碍物的状态,同时在全局地图中标记第一目标障碍物对应的栅格,然后机器人不继续跨越第一目标障碍物;
其中,机器人处于跨越障碍物的状态是相对于水平平面,机器人的机体倾斜设置在障碍物的表面;障碍物包括第一目标障碍物;
其中,特定介质覆盖的区域被设置为所述特定介质区域;
其中,所述全局地图是属于栅格地图,预存在机器人的存储器中。
3.根据权利要求2所述机器人控制方法,其特征在于,当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角小于或等于预设角度阈值时,机器人检测到特定介质区域且不处于跨越障碍物的状态,并在全局地图中标记出该特定介质区域的边界点对应的栅格;然后调整行走方向,使得机器人不进入检测到的特定介质区域;
当超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内,且惯性传感器测得的姿态角大于预设角度阈值时,机器人检测到第一目标障碍物且处于跨越第一目标障碍物的状态,再在全局地图中标记第一目标障碍物对应的栅格,然后机器人不继续跨越该第一目标障碍物;
其中,第一目标障碍物的高度是大于机器人跨越障碍物所允许的最大可跨越高度;
其中,小于或等于预设角度阈值的角度范围是第一预设角度阈值范围,大于预设角度阈值的角度范围是第二预设角度阈值范围;
其中,预设角度阈值是由机器人跨越障碍物所允许的最大可跨越高度的反三角函数结果决定;
其中,预设角度阈值是配置为预先设定的误差数量级下的一个数值。
4.根据权利要求3所述机器人控制方法,其特征在于,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内,且惯性传感器测得的姿态角小于或等于预设角度阈值时,机器人检测到第二目标障碍物并处于跨越第二目标障碍物的状态,再在全局地图中标记第二目标障碍物对应的栅格,然后机器人继续前进以跨越该第二目标障碍物;
或者,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内,且惯性传感器测得的姿态角小于或等于预设角度阈值时,机器人不处于跨越障碍物的状态,机器人按照预设规划路径行走;
其中,障碍物还包括第二目标障碍物;第二目标障碍物是凸出于水平平面,且第二目标障碍物的高度是小于或等于机器人跨越障碍物所允许的最大可跨越高度。
5.根据权利要求2所述机器人控制方法,其特征在于,所述步骤S1中,每当机器人在全局地图中搜索邻域中除了已检测到的所述特定介质区域之外的未遍历位置点对应的栅格时,机器人先行走至该未遍历位置点,再从该未遍历位置点继续按照预设规划路径进行行走,但不进入特定介质区域;当机器人行走完除特定介质区域之外的区域时,确定剩下的未遍历区域是所述特定介质区域;
其中,所述特定介质区域是由所述边界点连接形成的多个闭合区域组成,一个所述特定介质分区是一个闭合区域;
每个特定介质分区的边界点都是所述特定介质区域的边界点;所述特定介质区域在全局地图中是表示为由所述边界点对应的栅格围成的多个闭合的栅格区域组成,一个所述特定介质分区在全局地图中使用一个闭合的栅格区域表示;
其中,每当机器人行走到一个位置点,则确定机器人遍历到该位置点,并将该位置点设置为已遍历的位置点,且在全局地图中将该位置点对应的栅格标记为已遍历的栅格。
6.根据权利要求1所述机器人控制方法,其特征在于,在所述步骤S2中,所述机器人依据其当前位置点确定当前特定介质分区的方法包括:
从所有未被机器人行走过的特定介质分区的角点中,选择距离机器人的当前位置点最近的一个角点配置为参考角点;其中,每个特定介质分区的边界点对应的栅格都标记在全局地图中;特定介质区域的边界点包括角点;
然后,机器人在该参考角点所处的特定介质分区中,选择以该参考角点为共同端点的两条边界分别配置为第一参考边和第二参考边;特定介质分区的边界线是由特定介质分区的边界点连接形成;
机器人在第一参考边的中点和第二参考边的中点当中,选择距离机器人的当前位置点最近的一个中点配置为当前预设目标点;
然后,机器人将当前预设目标点所处的特定介质分区设置为所述当前特定介质分区。
7.根据权利要求6所述机器人控制方法,其特征在于,在所述步骤S2中,所述机器人从特定介质区域之外的区域进入当前特定介质分区的方法包括:
机器人在进入所述当前特定介质分区之前,机器人确定当前预设目标点和当前特定介质分区之后,机器人从当前位置点行走至当前预设目标点,再从当前预设目标点行走至其所处的特定介质分区的预设行走起点;
其中,当机器人行走至所述当前特定介质分区的预设行走起点时,机器人确定已经完全进入所述特定介质分区内;
其中,机器人将所述当前预设目标点所处的特定介质分区的中心点设置为所述当前特定介质分区的预设行走起点。
8.根据权利要求7所述机器人控制方法,其特征在于,所述步骤S3具体包括:
机器人从所述当前特定介质分区的预设行走起点开始,按照预设规划路径在当前特定介质分区内行走,并记录其在所述当前特定介质分区内所耗费的时间;
每当机器人行走过预定时间间隔,机器人对预设规划路径的延伸方向进行调整,再按照延伸方向调整后的预设规划路径在所述当前特定介质分区内行走,使得机器人在最新调整出的预设规划路径上遍历调整之前的预设规划路径所没有覆盖过的区域,直至记录到机器人从所述当前特定介质分区的预设行走起点开始行走所耗费的时间达到工作结束时间,机器人确定其行走完所述当前特定介质分区。
9.根据权利要求8所述机器人控制方法,其特征在于,预设规划路径是弓字型路径;
其中,弓字型路径包括相互平行的多条运动轨迹线段;相互平行的两条相邻的运动轨迹线段都存在一个端点通过弯折线或预设线段连接;
其中,运动轨迹线段的长度大于弯折线的长度,且运动轨迹线段的长度大于预设线段的长度;
其中,预设规划路径的延伸方向是保持垂直于运动轨迹线段;
其中,当前改变出的延伸方向与改变之前的延伸方向所成的夹角等于,当前改变出的延伸方向对应的弓字型路径中的运动轨迹线段与延伸方向改变之前的弓字型路径中的运动轨迹线段所成的夹角。
10.根据权利要求1所述机器人控制方法,其特征在于,所述工作结束时间等于所述当前特定介质分区的面积与机器人的有效覆盖面积的比值与第一预设系数的乘积;
其中,机器人的有效覆盖面积是等于预先设定的机器人行走速度与机器人的机体宽度的乘积;
其中,机器人的机体宽度所沿的方向是垂直于机器人的行走方向;
其中,第一预设系数用于表示机器人实际行走完所述当前特定介质分区后,机器人实际行走出的轨迹的覆盖区域与所述当前特定介质分区的面积差异;
预定时间间隔在误差允许范围内等于,所述当前特定介质区域的面积与机器人的有效覆盖面积的比值与第二预设系数的乘积;其中,第二预设系数与围成所述当前特定介质区域的边界线的数量相关;
其中,当所述当前特定介质区域的面积与机器人的有效覆盖面积的比值与第二预设系数的乘积小于第一预设系数时,所述当前特定介质区域的面积与机器人的有效覆盖面积的比值与第二预设系数的乘积被赋值为第一预设系数,使得所述预定时间间隔的数值不小于所述第一预设系数。
11.根据权利要求10所述机器人控制方法,其特征在于,所述当前特定介质分区是矩形区域,所述当前特定介质区域是让机器人出现打滑的闭合区域;
其中,第一预设系数是设置为大于或等于数值2,第二预设系数是设置为数值1/4;
当预定时间间隔的数值小于数值2时,将预定时间间隔的数值设置为数值2。
12.根据权利要求8所述机器人控制方法,其特征在于,机器人按照预设规划路径在所述当前特定介质分区内行走的过程中,当超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内时,机器人确定当前行走至所述当前特定介质分区的边界线,然后机器人调整行走方向,使得机器人不行走至所述当前特定介质分区的外部,然后按照预设规划路径在所述当前特定介质分区内行走,其中,该预设规划路径的延伸方向是垂直于调整后的行走方向;
其中,机器人的底部的前方装配超声波传感器,用于朝机器人的行走面发射超声波;
其中,预设强度阈值范围用于表示所述特定介质区域反馈回的超声波反射信号的信号强度范围。
13.根据权利要求8所述机器人控制方法,其特征在于,机器人按照预设规划路径在所述当前特定介质分区内行走的过程中,每当碰撞到障碍物,则先调整前进方向以避开障碍物,再按照预设规划路径在当前特定介质分区内行走,其中,该预设规划路径的延伸方向是垂直于调整后的行走方向。
14.根据权利要求1所述机器人控制方法,其特征在于,所述步骤S4具体包括:
机器人行走到所述当前特定介质分区的边界线时,机器人转动机身以调整行走方向,直至第一超声波传感器接收到的超声波反射信号的强度没有处于预设强度阈值范围内、第二超声波传感器接收到的超声波反射信号的强度处于预设强度阈值范围内、且惯性传感器测得的姿态角小于或等于预设角度阈值,则机器人在第一超声波传感器对应的一侧没有检测到所述当前特定介质分区,机器人在第二超声波传感器对应的一侧检测到所述当前特定介质分区,进而确定机器人处于两个超声波传感器分居所述当前特定介质分区的边界线的两侧的状态;
机器人从开始保持两个超声波传感器分居所述当前特定介质分区的边界线两侧的状态时所处的位置点开始,按照预设时针方向行走以使得机器人沿着所述当前特定介质分区的边界线行走,并使用惯性传感器检测角度变化量;
当机器人检测到角度变化量达到参考角度时,机器人行走到角点,再使用该角点的位姿信息更新为机器人的当前位姿信息,以实现机器人在所述当前特定介质分区内重新获得其位姿信息;其中,所述角度变化量是机器人的航向角的角度变化量,用于表示机器人的行走方向的变化;
其中,所述角点是所述当前特定介质分区的两条边界线的公共端点,是属于机器人通过转动所述参考角度来维持其沿着所述当前特定介质分区的边界线行走的位置点;
其中,预设时针方向是顺时针方向或逆时针方向。
15.根据权利要求14所述机器人控制方法,其特征在于,在步骤S4中,机器人在特定介质区域内行走到所述当前特定介质分区的边界线的确定方法包括:
机器人在所述当前特定介质分区内行走的过程中,当超声波传感器接收到的超声波反射信号的强度没有处于所述预设强度阈值范围内时,机器人确定其行走到所述当前特定介质分区的边界线;
其中,所述预设强度阈值范围是预先设定的信号强度阈值范围,用于表示所述当前特定介质分区反馈回的超声波反射信号的信号强度范围;
其中,超声波传感器是第一超声波传感器或第二超声波传感器。
16.根据权利要求14所述机器人控制方法,其特征在于,当机器人从重定位起始点开始检测到角度变化量达到所述参考角度时,机器人确定其行走到所述角点,并在所述角点处按照预设时针方向转动过所述参考角度,然后机器人使用所述角点的位姿信息更新为机器人的当前位姿信息;
其中,重定位起始点是机器人开始保持两个超声波传感器分居所述当前特定介质分区的边界线的两侧的状态时所处的位置点;
其中,所述角点和所述重定位起始点位于所述当前特定介质分区的同一条边界线上,该条边界线位于第一超声波传感器和第二超声波传感器之间,第二超声波传感器位于所述当前特定介质分区的上方,第一超声波传感器位于所述特定介质区域之外的区域的上方。
17.根据权利要求14所述机器人控制方法,其特征在于,机器人在所述当前特定介质分区内行走时,机器人控制超声波传感器发出超声波并接收超声波反射信号,并控制惯性传感器测量机器人的姿态角,但停止对全局地图的栅格进行标记;
当机器人使用所述角点的位姿信息更新为机器人的当前位姿信息后,机器人行走至所述特定介质区域之外的区域,同时机器人获取机器人的位姿信息,并在全局地图内标记相应的栅格;
其中,所述特定介质区域之外的区域的表面覆盖的介质与所述当前特定介质分区的表面覆盖的特定介质不同;
其中,所述当前特定介质分区是让机器人出现打滑的闭合区域。
18.根据权利要求1所述机器人控制方法,其特征在于,所述特定介质区域是地毯覆盖的区域;所述预设规划路径是弓字形路径;
其中,超声波传感器接收到的超声波反射信号的强度是超声波在机器人行走环境的表面的反射信号,经过模数转换得到的电平数值;机器人的行走环境包括所述特定介质区域和所述障碍物的表面。
19.根据权利要求1所述机器人控制方法,其特征在于,在所述步骤S5中,机器人确定行走到角点后,先将角点更新为机器人的当前位置点,然后执行步骤S2,在执行步骤S2时,按照所述依据机器人的当前位置点确定当前预设目标点和当前特定介质分区的确定方法,获取下一个预设目标点和下一个特定介质分区,并将下一个预设目标点更新为当前预设目标点,并将下一个特定介质分区更新为当前特定介质分区。
20.一种机器人,其特征在于,所述机器人装配至少一个惯性传感器、至少两个超声波传感器和至少一个处理器,其中,存在至少两个超声波传感器固定装配在机器人的底部两侧,且是位于机器人的中轴线的两侧,机器人的中轴线平行于行走方向;惯性传感器和超声波传感器都与处理器存在电性连接;
所述处理器用于控制机器人执行权利要求1至19中任一项所述机器人控制方法。
21.一种芯片,所述芯片上存储有程序,其特征在于,所述程序被芯片执行时实现如权利要求1至19中任一项所述机器人控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210392569.1A CN116942018A (zh) | 2022-04-15 | 2022-04-15 | 基于特定介质区域的机器人控制方法、机器人及芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210392569.1A CN116942018A (zh) | 2022-04-15 | 2022-04-15 | 基于特定介质区域的机器人控制方法、机器人及芯片 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116942018A true CN116942018A (zh) | 2023-10-27 |
Family
ID=88443065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210392569.1A Pending CN116942018A (zh) | 2022-04-15 | 2022-04-15 | 基于特定介质区域的机器人控制方法、机器人及芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116942018A (zh) |
-
2022
- 2022-04-15 CN CN202210392569.1A patent/CN116942018A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11960304B2 (en) | Localization and mapping using physical features | |
CN109997089B (zh) | 地面处理机和地面处理方法 | |
US11832774B2 (en) | Method for detecting skidding of robot, mapping method and chip | |
EP3564769B1 (en) | Route planning method for intelligent robot | |
JP7352318B2 (ja) | ロボット汎用の充電台帰還充電制御方法、チップ及びロボット | |
CN108415432B (zh) | 机器人基于直边的定位方法 | |
KR0168189B1 (ko) | 로보트의 환경인식장치 및 그 제어방법 | |
US20180206688A1 (en) | Automatic Cleaner and Controlling Method of the Same | |
CN111090282A (zh) | 机器人的避障方法、机器人以及装置 | |
KR20200127019A (ko) | 로봇의 리포지셔닝 방법 | |
CN107678429B (zh) | 一种机器人的控制方法及芯片 | |
CN111067432B (zh) | 扫地机充电桩的充电工作区域的确定方法及扫地机 | |
CN113475977B (zh) | 机器人路径规划方法、装置及机器人 | |
CN113110497A (zh) | 基于导航路径的沿边绕障路径选择方法、芯片及机器人 | |
CN116942018A (zh) | 基于特定介质区域的机器人控制方法、机器人及芯片 | |
CN111897336B (zh) | 一种机器人沿边行为结束的判断方法、芯片及机器人 | |
CN116954205A (zh) | 机器人行走环境检测方法、行走控制方法、机器人及芯片 | |
CN116953710A (zh) | 基于特定介质区域的机器人重定位方法、机器人及芯片 | |
CN115755881A (zh) | 基于超声波的地面环境运动规划方法 | |
CN114355871A (zh) | 一种自行走装置及其控制方法 | |
CN116954204A (zh) | 机器人在特定介质区域内的行走控制方法 | |
CN116069010A (zh) | 基于激光点的机器人悬空判断方法、地图更新方法及芯片 | |
CN118394071A (zh) | 一种基于2d雷达的楼梯清洁机器人在楼梯与休息平台之间的过渡与规划方法 | |
CN112748727B (zh) | 一种利用目标点的导航控制方法、芯片及机器人 | |
CN114305202B (zh) | 一种自行走装置及其控制方法 |
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 |