一种行进控制方法、装置、机器人及存储介质
技术领域
本发明涉及自动控制技术领域,尤其涉及到一种行进控制方法、装置、机器人及存储介质。
背景技术
随着科学技术的不断发展,具有自动行进功能的机器人被越来越多的应用于各行各业,用以代替传统的劳动力,以节省人力资源,提高效率。如无人搬运车(AutomatedGuided Vehicle,AGV)等经常被运用在制造工厂、仓储、物流等领域来进行物品的搬运。因此,如何对机器人进行行进控制,使得机器人在行进时,如果遇到行进路线无法通行时,进行刹停成为机器人实际应用的重要环节。
现有的行进控制方案,通常是在机器人上设置与水平面平行的雷达,通过雷达检测机器人行进的方向上是否存在凸起,在检测到存在凸起后,控制机器人减速,进行刹停。然而,现有行进控制方案仅能检测地面是否存在凸起,不能检测地面是否存在凹槽,并且无法准确确定机器人的减速度,影响了机器人行进的安全性。
发明内容
本发明提供一种行进控制方法、装置、机器人及存储介质,用以解决现有技术中存在无法检测地面是否存在凹槽,并且无法准确确定机器人的减速度,影响了机器人行进的安全性的问题。
第一方面,本发明公开了一种行进控制方法,所述方法包括:
向与水平面呈锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第一距离;
根据所述锐角的角度和所述第一距离,确定在竖直方向上所述测距信号发射点到地面反射点的第二距离;
判断所述第二距离与所述测距信号发射点距离地面的高度的差值,是否在预设的可通行范围内;
如果否,根据当前行进速度和与所述差值对应的刹停距离,确定最小减速度,并根据所述最小减速度进行刹停。
在一个可选的设计中,确定与所述差值对应的刹停距离包括:
判断所述差值是否大于0;
如果是,根据所述测距信号发射点距离地面的高度和所述锐角的角度,确定在地面平整时,在水平方向上所述测距信号发射点到地面反射点的第三距离,并将所述第三距离作为与所述差值对应的刹停距离;
如果否,根据所述测距信号发射点距离地面的高度与所述差值的和,及所述锐角的角度,确定在水平方向上所述测距信号发射点到地面反射点的第四距离,并将所述第四距离作为与所述差值对应的刹停距离。
在一个可选的设计中,如果所述第二距离与所述测距信号发射点距离地面的高度的差值,不在预设的可通行范围内,所述方法还包括:
判断所述差值是否大于0;
如果是,发出地面存在凹槽的第一预警信息;
如果否,发出地面存在凸起的第二预警信息。
在一个可选的设计中,确定所述锐角的角度包括:
在地面平整时,向与水平面呈所述锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第五距离;
根据所述测距信号发射点距离地面的高度与所述第五距离的比值,确定所述锐角的角度。
第二方面,本发明公开了一种行进控制装置,所述装置包括:
测距模块,用于向与水平面呈锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第一距离;
确定模块,用于根据所述锐角的角度和所述第一距离,确定在竖直方向上所述测距信号发射点到地面反射点的第二距离;
判断模块,用于判断所述第二距离与所述测距信号发射点距离地面的高度的差值,是否在预设的可通行范围内;如果判断结果为否,触发刹停模块;
刹停模块,用于根据当前行进速度和与所述差值对应的刹停距离,确定最小减速度,并根据所述最小减速度进行刹停。
在一个可选的设计中,所述确定模块,还用于判断所述差值是否大于0,如果是,根据所述测距信号发射点距离地面的高度和所述锐角的角度,确定在地面平整时,在水平方向上所述测距信号发射点到地面反射点的第三距离,并将所述第三距离作为与所述差值对应的刹停距离;如果否,根据所述测距信号发射点距离地面的高度与所述差值的和,及所述锐角的角度,确定在水平方向上所述测距信号发射点到地面反射点的第四距离,并将所述第四距离作为与所述差值对应的刹停距离。
在一个可选的设计中,所述装置还包括:
报警模块,用于如果所述第二距离与所述测距信号发射点距离地面的高度的差值,不在预设的可通行范围内,判断所述差值是否大于0;如果是,发出地面存在凹槽的第一预警信息;如果否,发出地面存在凸起的第二预警信息。
在一个可选的设计中,所述确定模块,还用于在地面平整时,向与水平面呈所述锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第五距离;根据所述测距信号发射点距离地面的高度与所述第五距离的比值,确定所述锐角的角度。
第三方面,本发明公开了一种机器人,包括:处理器和存储器;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行上述第一方面或第一方面的任一种可选的设计中所述的方法。
第四方面,本发明公开了一种计算机可读存储介质,其存储有可由机器人执行的计算机程序,当所述程序在所述机器人上运行时,使得所述机器人执行上述第一方面或第一方面的任一种可选的设计中所述的方法。
本发明有益效果如下:
由于在本发明实施例中,机器人向与水平面呈锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第一距离;根据所述锐角的角度和所述第一距离,确定在竖直方向上所述测距信号发射点到地面反射点的第二距离;在所述第二距离与所述测距信号发射点距离地面的高度的差值,不在预设的可通行范围内,确定地面存在机器人无法通过的凸起或凹槽,根据所述差值对应的刹停距离,即机器人距离凸起或凹槽对应的刹停距离,和当前行进速度,确定最小减速度,并根据所述最小减速度进行刹停,实现在机器人到达凸起和凹槽之前进行刹停,保证了机器人的行进安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种行进控制方法示意图;
图2为本发明实施例提供的一种测距信号发射示意图之一;
图3为本发明实施例提供的一种测距信号发射示意图之二;
图4为本发明实施例提供的一种测距信号发射示意图之三;
图5为本发明实施例提供的一种行进控制过程示意图;
图6为本发明实施例提供的一种行进控制装置结构示意图;
图7为本发明实施例提供的一种机器人结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
另外,需要理解的是,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
实施例1:
图1为本发明实施例提供的一种行进控制方法示意图,该方法包括:
S101:向与水平面呈锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第一距离。
本发明实施提供的行进控制方法应用于机器人,该机器人可以是AGV、消防机器人、无人驾驶的汽车等。
参照图2所示,在本发明实施例中,在机器人行进方向的前部设置有测距单元,其中,测距单元发射的测距信号与水平面(地面)呈锐角,即图2所示的β为锐角。机器人通过发出测距信号和接收地面反射的测距信号的时间差,来计算测距信号发射点(测距单元)到测距信号地面反射点的距离。其中,所述测距单元可以为红外测距单元、超声波测距单元等。
另外,在本发明实施例中,测距信号发射点距离地面的高度h0,和测距信号与水平面的呈的锐角β的角度,可以通过测量测距单元距离地面的高度,和测量测距单元的测距信号发射方向与竖直面的夹角θ的角度,通过90°-θ确定。
较佳的,为了保证对测距信号与水平面的呈的锐角的角度确定的准确性,确定所述锐角的角度包括:
在地面平整时,向与水平面呈所述锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第五距离;
根据所述测距信号发射点距离地面的高度与所述第五距离的比值,确定所述锐角的角度。
具体的,参照图2所示,在地面平整时,机器人向与水平面呈锐角β的方向发射测距信号,测量测距信号发射点到地面反射点的第五距离d0,根据测距信号发射点距离地面的高度h0与第五距离d0的比值,确定β的角度。
h0/d0=sinβ,β=arcsin(h0/d0)。同理,可确定测距信号与竖直面呈的夹角(θ),θ=arccos(h0/d0)=90°-β。
S102:根据所述锐角的角度和所述第一距离,确定在竖直方向上所述测距信号发射点到地面反射点的第二距离。
在本发明实施例中,如果地面不存凸起和凹槽,则在竖直方向上测距信号发射点到地面发射点的第二距离h1与测距信号发射点距离地面的高度h0相等,在地面存在凸起或凹槽的情况下,测距信号的地面反射点,相对于地面不存在凸起或凹槽时,测距信号的地面反射点相对于机器人的位置会发生变化,导致测距信号发射点到地面反射点的第一距离d1相对第五距离d0发生变化,进而导致在竖直方向上测距信号发射点到地面反射点的第二距离h1,相对测距信号发射点距离地面的高度h0发生变化。下面结合地面存在凸起和凹槽的情况分别说明。
地面存在凹槽的情况:
如图3所示,在地面存在凹槽的情况下,由于测距信号地面反射点在凹槽内,导致测距信号发射点到地面反射点的第一距离d1大于第五距离d0,在竖直方向上测距信号发射点到地面反射点的第二距离h1,大于测距信号发射点距离地面的高度h0。
具体的,机器人根据β的角度和d1,计算h1,h1/d1=sinβ=cosθ,即h1=d1sinβ=d1cosθ,此时h1大于h0。
地面存在凸起的情况:
如图4所示,在地面存在凸起的情况下,由于测距信号地面反射点在凸起处,导致测距信号发射点到地面反射点的第一距离d1小于第五距离d0,在竖直方向上测距信号发射点到地面反射点的第二距离h1,小于测距信号发射点距离地面的高度h0。
具体的,机器人根据β的角度和d1,计算h1,h1/d1=sinβ=cosθ,即h1=d1sinβ=d1cosθ,此时h1小于h0。
S103:判断所述第二距离与所述测距信号发射点距离地面的高度的差值,是否在预设的可通行范围内,如果是,则结束,如果否,则进行S104。
在本发明实施例中,预先设置有机器人可以通过凸起的高度和机器人可以通过凹槽的深度,即机器人的可通行范围。例如:机器人可以通过不高于0.08m的凸起,和深度不低于0.08m的凹槽,则确定机器人的可通行范围为[-0.08m,0.08m],即竖直方向上测距信号发射点到地面反射点的第二距离h1与测距信号发射点距离地面的高度h0的差值(Δh),在不小于-0.08m、且不大于0.08m的范围内,机器人可以通行,否则机器人则需要刹停,防止跌落凹槽或撞上凸起。
以β为30°,h0为0.3m为例。
在地面存在凹槽的情况下,参照图3所示,测得d1为0.8m,确定h1=d1sinβ=d1cosθ,h1为0.4m,Δh=h1-h0=0.1m,大于0.08m,不在[-0.08m,0.08m]的范围内,机器人需要刹停防止跌落凹槽。
在地面存在凸起的情况下,参照图4所示,测得d1为0.4m,确定h1=d1sinβ=d1cosθ,h1为0.2m,Δh=h1-h0=-0.1m,不在[-0.08m,0.08m]的范围内,机器人需要刹停防止撞上凸起。
S104:根据当前行进速度和与所述差值对应的刹停距离,确定最小减速度,并根据所述最小减速度进行刹停。
在本发明实施例中,预先确定有第二距离与所述测距信号发射点距离地面的高度对应的每个差值Δh对应的刹停距离。
其中,确定与所述差值对应的刹停距离包括:
判断所述差值是否大于0;
如果是,根据所述测距信号发射点距离地面的高度和所述锐角的角度,确定在地面平整时,在水平方向上所述测距信号发射点到地面反射点的第三距离,并将所述第三距离作为与所述差值对应的刹停距离;
如果否,根据所述测距信号发射点距离地面的高度与所述差值的和,及所述锐角的角度,确定在水平方向上所述测距信号发射点到地面反射点的第四距离,并将所述第四距离作为与所述差值对应的刹停距离。
参照图2和图3所示,在差值Δh大于0时,则说明地面存在凹槽,此时在水平方向上测距信号发射点到凹槽的距离,与地面平整时,在水平方向上测距信号发射点到地面反射点的第三距离I0相等,I0=d0cosβ=d0sinθ=h0/tanβ,针对每个大于0的差值Δh,可以预先设置大于0且不大于I0的距离,作为与Δh对应的刹停距离,较佳的,针对每个大于0的差值Δh可以设置I0,作为与Δh对应的刹停距离。
参照图4所示,在差值Δh小于0时,则说明地面存在凸起,此时在水平方向上测距信号发射点到凸起的距离,与在水平方向上所述测距信号发射点到地面反射点的第四距离I1相等,I1=(h0+Δh)/tanβ=d1cosβ=d1sinθ,针对每个小于0的差值Δh,可以预先设置不大于该差值Δh对应的在水平方向上测距信号发射点到地面反射点的第四距离I1的距离,作为与该Δh对应的刹停距离,较佳的,针对每个小于0的差值Δh可以设置与该Δh对应的I1,作为与Δh对应的刹停距离。
以β为30°,h0为0.3m,d0为0.6m,机器人行进速度为1m/s为例,I0=d0cosβ=d0sinθ=h0/tanβ=0.6√3/2≈0.52m,如果此时d1为0.8m,h1=sinβ*0.8=0.4m,Δh=h1-h0=0.1m,Δh大于0,且不在[-0.08m,0.08m]的范围内,说明存在机器人不能通过的凹槽,Δh对应的刹停距离应小于等于I0,以I0为例,由I0=at2/2、v=at可知,a=v2/(2I0),最小减速度a=0.96m/s2,即机器人的减速度应不小于a=0.96m/s2。
如果此时d1为0.4m,h1=sinβ*0.4=0.2m,机器人行进速度为1m/s,Δh=h1-h0=-0.1m,Δh小于0,且不在[-0.08m,0.08m]的范围内,说明存在机器人无法通过凸起,Δh对应的刹停距离应小于等于Δh对应的I1,I1=(h0+Δh)/tanβ=d1cosβ=d1sinθ=0.346m,由I1=at2/2、v=at可知,a=v2/(2I1),最小减速度a=1.45m/s2,即机器人的减速度应不小于a=1.45m/s2。
当机器人行进速度为2m/s时,上述条件不变的情况下,即机器人的减速度应不小于a=3.85m/s2和a=5.78m/s2。
较佳的,如果机器人能够实现正向或反向行进,则需要在机器人行进方向的前部和后部均设置测距单元,其中,在机器人行进方向的后部设置测距单元的方式与图2所示,在机器人行进方向的前部设置测距单元的方式和原理类似,不在进行赘述。
由于在本发明实施例中,机器人向与水平面呈锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第一距离;根据所述锐角的角度和所述第一距离,确定在竖直方向上所述测距信号发射点到地面反射点的第二距离;在所述第二距离与所述测距信号发射点距离地面的高度的差值,不在预设的可通行范围内,确定地面存在机器人无法通过的凸起或凹槽,根据所述差值对应的刹停距离,即机器人距离凸起或凹槽对应的刹停距离,和当前行进速度,确定最小减速度,并根据所述最小减速度进行刹停,实现在机器人到达凸起和凹槽之前进行刹停,保证了机器人的行进安全。
实施例2:
为了便于控制着对机器人行进状态的获知,在上述各实施例的基础上,在本发明实施例中,如果所述第二距离与所述测距信号发射点距离地面的高度的差值,不在预设的可通行范围内之后,所述方法还包括:
判断所述差值是否大于0;
如果是,发出地面存在凹槽的第一预警信息;
如果否,发出地面存在凸起的第二预警信息。
具体的,机器人在确定第二距离与所述测距信号发射点距离地面的高度的差值,不在预设的可通行范围内之后,如果差值大于0,则说明地面存在机器人无法通过的凹槽,机器人发出地面存在凹槽的第一预警信息,如果差值小于0,则说明地面存在机器人无法通过的凸起,机器人发出地面存在凸起的第二预警信息,提醒用户。
图5为本发明实施例提供的一种行进控制过程示意图,在地面平整时,机器人向与水平面呈锐角的方向发射测距信号,测量测距信号发射点到地面反射点的第五距离d0,确定与水平面呈锐角的夹角β的角度,机器人行进时,不断向与水平面呈锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第一距离d1,进而确定在竖直方向上测距信号发射点到地面反射点的第二距离h1,判断h1与测距信号发射点到地面的高度h0的差值Δh,是否大于允许通过的最大值Δhmax(允许凹槽的最大深度),如果是,确定无法通过凹槽,减速刹停;如果不大于允许通过的最大值Δhmax,继续判断h1与测距信号发射点到地面的高度h0的差值Δh,是否小于允许通过的最小值Δhmin(允许凸起的最大高度),如果是,确定无法通过凸起,减速刹停,否则,机器人继续行进。
实施例3:
图6为本发明实施例提供的一种行进控制装置结构示意图,该装置包括:
测距模块61,用于向与水平面呈锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第一距离;
确定模块62,用于根据所述锐角的角度和所述第一距离,确定在竖直方向上所述测距信号发射点到地面反射点的第二距离;
判断模块63,用于判断所述第二距离与所述测距信号发射点距离地面的高度的差值,是否在预设的可通行范围内;如果判断结果为否,触发刹停模块;
刹停模块64,用于根据当前行进速度和与所述差值对应的刹停距离,确定最小减速度,并根据所述最小减速度进行刹停。
优选地,所述确定模块62,还用于判断所述差值是否大于0,如果是,根据所述测距信号发射点距离地面的高度和所述锐角的角度,确定在地面平整时,在水平方向上所述测距信号发射点到地面反射点的第三距离,并将所述第三距离作为与所述差值对应的刹停距离;如果否,根据所述测距信号发射点距离地面的高度与所述差值的和,及所述锐角的角度,确定在水平方向上所述测距信号发射点到地面反射点的第四距离,并将所述第四距离作为与所述差值对应的刹停距离。
优选地,所述装置还包括:
报警模块65,用于如果所述第二距离与所述测距信号发射点距离地面的高度的差值,不在预设的可通行范围内,判断所述差值是否大于0;如果是,发出地面存在凹槽的第一预警信息;如果否,发出地面存在凸起的第二预警信息。
优选地,所述确定模块62,还用于在地面平整时,向与水平面呈所述锐角的方向发射测距信号,测量所述测距信号发射点到地面反射点的第五距离;根据所述测距信号发射点距离地面的高度与所述第五距离的比值,确定所述锐角的角度。
实施例4:
基于同一发明构思,本发明实施例中还提供了一种机器人,由于上述机器人解决问题的原理与行进控制方法相似,因此上述机器人的实施可以参见方法的实施,重复之处不再赘述。
如图7所示,其为本发明实施例提供的机器人的结构示意图,其中在图7中,总线架构可以包括任意数量的互联的总线和桥,具体有处理器71代表的一个或多个处理器71和存储器72代表的存储器72的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。处理器71负责管理总线架构和通常的处理,存储器72可以存储处理器71在执行操作时所使用的数据。
在本发明实施例提供的机器人中:
所述处理器71,用于读取存储器72中的程序,执行上述实施例描述的行进控制方法。
在上述各实施例的基础上,本发明实施例还提供了一种计算机存储可读存储介质,所述计算机可读存储介质内存储有可由机器人执行的计算机程序,当所述程序在所述机器人上运行时,使得所述机器人执行上述实施例描述的行进控制方法。
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。