机器人的控制方法、系统及装置与流程



1.本技术涉及控制领域,具体而言,涉及一种机器人的控制方法、系统及装置。


背景技术:



2.当前的机器人行人跟随方案大多使用相机、使用蓝牙等电子设备实现,但上述方案会受到光照的影响,且数据采集单一导致机器人控制不稳定,跟随体验较差。另外,当前的机器人跟随行人运动时,与运行环境中其他行人或者其他物体产生碰撞的风险较大,导致跟随过程的安全性较差。
3.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:



4.本技术实施例提供了一种机器人的控制方法、系统及装置,以至少解决相关技术中机器人在跟随行人运动的过程中与障碍物发生碰撞的风险较大,导致安全性较低的技术问题。
5.根据本技术实施例的一个方面,提供了一种机器人的控制方法,该方法包括:获取机器人所处环境的环境信息,其中,环境信息包括:机器人跟随的目标对象信息以及障碍物信息;基于环境信息确定机器人的目标作用力;基于目标作用力和环境信息控制机器人运动。
6.可选地,基于环境信息确定机器人的目标作用力包括:基于目标对象信息,确定目标对象对机器人的第一作用力;基于障碍物信息,确定障碍物对机器人的第二作用力;将第一作用力与第二作用力进行叠加,得到目标作用力。
7.可选地,基于目标作用力和环境信息控制机器人运动包括:基于目标作用力控制机器人的旋转方向;基于目标作用力和环境信息控制机器人的跟随速度。
8.可选地,基于目标作用力控制机器人的旋转方向包括:确定机器人的当前朝向;获取目标作用力的方向与当前朝向的夹角,得到机器人的偏转角;基于机器人的偏转角,控制机器人的运动方向。
9.可选地,跟随速度包括:角速度和线速度,其中,基于目标作用力和环境信息控制机器人的跟随速度包括:基于目标作用力与机器人的当前朝向,确定机器人的偏转角;基于目标对象信息,确定机器人与目标对象的距离,以及目标对象的速度;基于偏转角,确定角速度;基于机器人与目标对象的距离,以及目标对象的速度,确定线速度。
10.可选地,在基于目标作用力和环境信息控制机器人运动的过程中,方法还包括:基于障碍物信息,确定障碍物相对于机器人的位置;基于障碍物相对于机器人的位置,确定障碍物所处区域;判断机器人的当前运动方向是否满足障碍物所处区域对应的预设运动方向;如果当前运动方向满足预设运动方向,则控制机器人继续运动;如果当前运动方向不满足预设运动方向,则控制机器人停止运动或按照预设运动方向运动。
11.可选地,在获取机器人所处环境的环境信息之前,方法还包括:检测目标区域内的
第一对象与机器人的第一相对位置,其中,目标区域基于目标对象与机器人的初始相对位置确定;获取第一相对位置与初始相对位置的误差值;如果误差值小于预设值,则确定第一对象为目标对象。
12.可选地,在目标区域内检测到多个对象的情况下,该方法还包括:判断每个对象是否为预设对象;如果多个对象均为预设对象,则获取多个对象中每个对象相对于机器人的相对位置;确定相对位置与第二位置信息的欧式距离,得到每个对象对应的欧式距离;确定最小欧式距离对应的对象为目标对象。
13.可选地,在检测目标区域内的第一对象与机器人的第一相对位置之前,方法还包括:检测预设区域内的第二对象;在第二对象满足预设条件的情况下,获取第二对象与机器人的第二相对位置;利用卡尔曼滤波器对第二相对位置进行处理,得到初始相对位置。
14.可选地,在确定目标对象之后,该方法还包括:利用卡尔曼滤波器对目标对象与机器人的相对位置进行处理,得到新的相对位置;基于新的相对位置,对目标区域进行更新。
15.根据本技术实施例的另一方面,还提供了一种机器人的控制系统,该系统包括:获取装置,用于获取机器人所处环境的环境信息,其中,环境信息包括:机器人跟随的目标对象信息以及障碍物信息;控制器,用于基于目标作用力和环境信息控制机器人运动。
16.可选地,获取装置包括:3d激光雷达传感器,用于获取机器人所处环境的环境信息;电机编码器,设置在机器人上,用于获得机器人的当前位置;惯性测量单元,设置在机器人上,用于获取机器人的加速度。
17.根据本技术实施例的另一方面,还提供了一种机器人的控制装置,该装置包括:获取模块,获取机器人所处环境的环境信息,其中,环境信息包括:机器人跟随的目标对象信息以及障碍物信息;确定模块,用于基于环境信息确定机器人的目标作用力;控制模块,用于基于目标作用力和环境信息控制机器人运动。
18.根据本技术实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行上述的机器人的控制方法。
19.根据本技术实施例的另一方面,还提供了一种机器人,包括:处理器和存储器;其中,存储器存储有计算机程序,计算机程序适于由处理器加载并执行上述的机器人的控制方法。
20.在本技术实施例中,首先获取机器人所处环境的环境信息,之后基于环境信息确定机器人的目标作用力,最后基于目标作用力和环境信息控制机器人运动。采用获取目标对象信息和障碍物信息的方式,通过目标对象信息和障碍物信息得到对机器人的目标作用力,达到了通过目标作用力和环境信息控制机器人运动方向和速度的目的,从而实现了机器人在跟随行人运动的过程中,通过目标作用力和环境信息对机器人的控制使得机器人可以很好的躲避障碍物或绕开障碍物的技术效果,进而解决了相关技术中机器人在跟随行人运动的过程中与障碍物发生碰撞的风险较大,导致安全性较低的技术问题。
附图说明
21.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
22.图1是根据本技术实施例的一种机器人的控制方法的流程图;
23.图2是根据本技术实施例的一种可选的确定目标作用力的示意图;
24.图3是根据本技术实施例的一种可选的停障场的示意图;
25.图4是根据本技术实施例的一种机器人控制系统的示意图;
26.图5是根据本技术实施例的一种机器人控制装置的示意图。
具体实施方式
27.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
28.下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
29.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。此外,在本技术的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
30.实施例1
31.根据本技术实施例,提供了一种机器人的控制方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中使出了逻辑顺序,但是在某些情况下,可以以不同于此的顺序执行所示出或描述的步骤。
32.图1是根据本技术实施例的一种机器人的控制方法的流程图,如图1所示,该方法可以包括如下步骤:
33.步骤s102,获取机器人所处环境的环境信息。
34.其中,环境信息包括:机器人跟随的目标对象信息以及障碍物信息。
35.上述步骤中的所处环境可以是机器人运动的空间,其中,所处环境可以包括机器人运动的初始空间和机器人在运动过程中不断变化的空间环境;目标对象信息可以是机器人跟随的行人的信息,其中,该信息可以包括行人的位置,行人的速度、行人的方向等信息,障碍物信息可以是机器人在跟随目标对象运动时,出现在机器人所处环境中的其他物体的
信息,其中,该信息可以包括障碍物的位置、障碍物的种类、障碍物的方向、障碍物的速度等信息。
36.在一个可选的实施例中,可以通过3d激光传感器获取机器人所处环境的点云信息,将点云信息经过处理后可以得到所处环境中的目标对象信息和障碍物信息。
37.步骤s104,基于环境信息确定机器人的目标作用力。
38.上述步骤中的目标作用力可以为多个作用力的合力,其中,作用力用于表示目标对象和障碍物对机器人产生的影响力,例如,在只有一个障碍物的情况下,可以通过目标对象信息确定一个对机器人有吸引功能的作用力,可以通过障碍物信息确定另一个对机器人有排斥功能的作用力,通过对上述得到的作用力进行叠加得到目标作用力。
39.在一个可选的实施例中,机器人在跟随行人运动的场景中,被跟随的行人可以对机器人产生一个引力场,其中,引力场是描述物体延伸到空间中对另一物体产生吸引效应的理论模型,现代观点认为引力场是物质在空间中产生的空间弯曲效应,物体在该弯曲空间内运动时表现出在直角空间中产生的空间弯曲效应,物体在该弯曲空间运动时表现出在直角空间中的运动状态改变,从而体现出引力效应。在引力场的作用下,可以认为被跟随的行人对机器人产生一个引力,在机器人运动的过程中,出现在机器人一定区域内的障碍物可以对机器人产生一个斥力场,在斥力场的作用下,可以认为障碍物对机器人产生一个斥力,通过将引力和斥力进行叠加,可以得到一个新的作用力(即上述的目标作用力)。
40.步骤s106,基于目标作用力和环境信息控制机器人运动。
41.上述步骤中,目标作用力和环境信息可以通过控制机器人的方向和速度达到对机器人运动的控制。
42.在一个可选的实施例中,若机器人在跟随目标对象的过程中,有障碍物出现在机器人附近,此时通过目标作用力可以确定机器人的运动方向,可以通过环境信息中的目标对象的速度,机器人与目标对象的距离确定机器人的运动速度,使得机器人在跟随目标对象的过程中,机器人能够保持与目标对象的距离最近,与障碍物的距离最远,更好跟随行人的同时躲开障碍物。
43.通过上述步骤可知,首先通过外部传感器获得机器人所处环境的目标对象信息和障碍物信息,根据得到的目标对象信息和障碍物信息经过相关的运算之后可以确定目标作用力,根据目标作用力和环境信息控制机器人运动的方向和速度,使得机器人在跟随目标对象的同时还可以躲避或者绕开障碍物。
44.在本技术实施例中,首先获取机器人所处环境的环境信息,之后基于环境信息确定机器人的目标作用力,最后基于目标作用力和环境信息控制机器人运动。采用获取目标对象信息和障碍物信息的方式,通过目标对象信息和障碍物信息得到对机器人的目标作用力,达到了通过目标作用力和环境信息控制机器人运动方向和速度的目的,从而实现了机器人在跟随行人运动的过程中,通过目标作用力和环境信息对机器人的控制使得机器人可以很好的躲避障碍物或绕开障碍物的技术效果,进而解决了相关技术中机器人在跟随行人运动的过程中与障碍物发生碰撞的风险较大,导致安全性较低的技术问题。
45.可选地,基于环境信息确定机器人的目标作用力包括:基于目标对象信息,确定目标对象对机器人的第一作用力;基于障碍物信息,确定障碍物对机器人的第二作用力;将第一作用力与第二作用力进行叠加,得到目标作用力。
46.上述步骤中的第一作用力可以是目标对象对机器人产生的引力,第二作用力可以是障碍物对机器人产生的斥力,目标作用力可以是通过求取第一作用力和第二作用力的向量和得到,图2为机器人在跟随行人运动的过程遇到障碍物时确定目标作用力的示意图,如图2所示,第一作用力02表示目标对象08对机器人产生的引力,第二作用力06表示障碍物对机器人产生的斥力,目标作用力04可以表示第一作用力02和第二作用力06的合力。
47.可选地,基于目标作用力和环境信息控制机器人运动包括:基于目标作用力控制机器人的旋转方向;基于目标作用力和环境信息控制机器人的跟随速度。
48.上述步骤中机器人的旋转方向可以通过确定机器人的偏转角确定,其中,首先可以通过获取机器人的当前朝向,之后确定目标作用力与机器人当前朝向的夹角确定偏转角;机器人的跟随速度可以包括角速度和线速度,角速度可以通过偏转角确定,线速度可以通过目标对象信息所确定的机器人与目标对象的距离,以及目标对象的速度确定。
49.可选地,基于目标作用力控制机器人的旋转方向包括:确定机器人的当前朝向;获取目标作用力的方向与当前朝向的夹角,得到机器人的偏转角;基于机器人的偏转角,控制机器人的运动方向。
50.在一个可选的实施例中,机器人在跟随行人运动的过程中,如果有障碍物出现在机器人的周围,基于目标作用力的方向与机器人的当前朝向得到机器人的偏转角,由于目标作用力是通过目标对象对机器人形成的引力的方向,障碍物对机器人形成的斥力的方向叠加而成,因此,机器人的偏转角的方向应该为远离障碍物,接近目标对象,使得机器人在遇到障碍物时转向远离障碍物的方向。
51.可选地,基于目标作用力和环境信息控制机器人的跟随速度包括:基于目标作用力与机器人的当前朝向,确定机器人的偏转角;基于目标对象信息,确定机器人与目标对象的距离,以及目标对象的速度;基于偏转角,确定角速度;基于机器人与目标对象的距离,以及目标对象的速度,确定线速度。
52.在一个可选的实施例中,机器人控制器模块产生控制机器人执行跟随运动的角速度与线速度,具体的计算如公式所示:
53.w=k_w
×
e_yaw,
54.v=k1
×
e_dist+k2
×
vel,
55.其中,e_yaw为偏转角,dist为机器人与目标对象的距离,vel为目标对象的速度,k_w,k1,k2为比例系数,根据实际使用的电机特性与跟踪距离做相应的调整。
56.可选地,在基于目标作用力和环境信息控制机器人运动的过程中,该方法还包括:基于障碍物信息,确定障碍物相对于机器人的位置;基于障碍物相对于机器人的位置,确定障碍物所处区域;判断机器人的当前运动方向是否满足障碍物所处区域对应的预设运动方向;如果当前运动方向满足预设运动方向,则控制机器人继续运动;如果当前运动方向不满足预设运动方向,则控制机器人停止运动或按照预设运动方向运动。
57.需要说明的是,为了防止机器人在运动过程中与障碍物发生碰撞,可以提前在机器人四周设定停障场,如图3所示,可以在机器人的四周设置四个停障场,分别为上停障场、下停障场、左停障场、右停障场,并且,可以针对停障场设置预设规则,当该范围内检测到障碍物时,可以按照预设规则控制机器人运动,具体地,可以针对不同停障场设置不同的运动方向(即上述的预设运动方向),例如,上停障场的预设运动方向为后退或旋转;下停障场的
预设运动方向为前进或者旋转;左停障场的预设运动方向为转向右边、前进或后退;右停障场的预设运动方向为转向左边、前进或后退。
58.在一种可选的实施例中,在机器人运动的过程中,可以实时检测障碍物的位置,并基于检测到的位置确定障碍物所处区域,也即,确定障碍物进入机器人四周的哪个停障场,例如,若障碍物进入上停障场,且此时机器人的运动方向为后退,则说明机器人的运动方向满足预设运动方向,此时机器人可以继续运动,反之,若此时机器人的运动方向为前进,则说明机器人的运动方向不满足预设运动方向,为了避免机器人与障碍物发生碰撞,可以禁止机器人前向运动,并控制机器人后退或者旋转,同理,若障碍物进入下停障场、左停障场、右停障场,则首先判断机器人的运动方向是否满足预设运动方向,进而基于比较结果控制机器人运动,具体控制过程此处不作赘述。
59.可选地,在获取机器人所处环境的环境信息之前,该方法还包括:检测目标区域内的第一对象与机器人的第一相对位置,其中,目标区域基于目标对象与机器人的初始相对位置确定;获取第一相对位置与初始相对位置的误差值;如果误差值小于预设值,则确定第一对象为目标对象。
60.上述步骤中的目标区域可以是机器人运动过程中,在机器人附近的特定区域,其中,目标区域的位置可以随着机器人运动不断变化,但是该区域的范围是固定的。第一对象可以是在目标区域中确定的具有预设条件的对象,其中,预设条件可以是具有行人特点的特征,也即第一对象是目标区域内的行人。第一相对位置可以是机器人运动时,通过传感器获取到的第一对象与机器人的相对位置。初始相对位置可以是机器人在开始运动时,利用卡尔曼滤波器预测得到的第一对象与机器人的相对位置。
61.在一个可选的实施例中,在机器人跟随行人运动的场景下,每当机器人接收到一帧新的传感器数据时,调用卡尔曼滤波器预测第一对象所在的位置,接下来预测该位置附近的感兴趣区域(即上述的目标区域),对传感器获得的激光点云进行地面分割,去除地面点云,对剩余点云进行聚类,得到一个聚类物体(即上述的第一对象),计算点云的重心得到第一对象与机器人的第一相对位置,若第一相对位置与卡尔曼滤波器的预测的初始相对位置的误差小于预设值,则认为这个第一对象为所跟随的目标对象,进一步地,可以把测量得到的第一相对位置输入到卡尔曼滤波器中,用于下一次目标区域的更新。
62.可选地,在目标区域内检测到多个对象的情况下,该方法还包括:判断每个对象是否为预设对象;如果多个对象均为预设对象,则获取多个对象中每个对象相对于机器人的相对位置;确定相对位置与第二位置信息的欧式距离,得到每个对象对应的欧式距离;确定最小欧式距离对应的对象为目标对象。
63.上述步骤中的预设对象可以是具有预设条件的对象,也即预设对象是机器人周围的行人。第二位置信息可以是基于卡尔曼滤波器对上一次目标对象与机器人的相对位置预测的下一次目标对象的位置信息。上述步骤中的欧式距离用于表征m维空间中两个点之间的真实距离。
64.在一个可选的实施例中,若有多个聚类物体(即上述的多个对象),首先送到行人识别模块,判断多个对象是否具有预设条件,若满足预设条件则确定为预设对象,分别计算每个对象相对于机器人的相对位置信息,再分别计算每个对象相对于机器人的相对位置信息与卡尔曼滤波器预测的第二位置信息的欧式距离,确定欧式距离最小的对象为所跟随的
目标对象;若这多个物体中没有满足预设条件的对象,则卡尔曼滤波器不更新信息,等待下一次激光传感器输入新的数据,若多次传感器输入都没有检测到第一对象和多个对象,则机器人播报目标对象信息丢失,提醒目标对象回到跟踪区域。
65.可选地,在检测目标区域内的第一对象与机器人的第一相对位置之前,该方法还包括:检测预设区域内的第二对象;在第二对象满足预设条件的情况下,获取第二对象与机器人的第二相对位置;利用卡尔曼滤波器对第二相对位置进行处理,得到初始相对位置。
66.上述步骤中的预设区域可以是机器人开始运动时,机器人附近的特定区域。第二对象可以是通过传感器在预设区域内获取原始数据后处理得到的对象。预设条件可以是用于确定第二对象是机器人所跟随的行人的条件,例如,可以是行人的特征,从而,在检测到第二对象之后,可以通过将第二对象的特征与预设条件进行比对,确定第二对象是否为机器人跟随的行人。第二相对位置可以是通过传感器获取到的第二对象与机器人的相对位置,需要说明的是,第二相对位置可以是机器人未开始跟随行人运动时,行人与机器人的相对位置。
67.在一个可选的实施例中,为了确保机器人能够跟随第二对象运动,第二对象需要站在机器人上安装的激光传感器前方一定范围内(即上述的预设区域),这里称为感兴趣区域。机器人可以通过激光传感器采集感兴趣区域内的点云信息,并对点云信息进行地面分割,去除地面点云,得到非地面点云,把非地面点云聚类后得到第二对象信息,发送第二对象信息至激光行人识别模块,通过特征比对确定是否满足预设条件,若满足预设条件,获取第二相对位置并将该位置传至卡尔曼滤波器,得到初始相对位置。
68.可选地,在确定目标对象之后,该方法还包括:利用卡尔曼滤波器对目标对象与机器人的相对位置进行处理,得到新的相对位置;基于新的相对位置,对目标区域进行更新。
69.上述步骤中的新的相对位置可以是利用卡尔曼滤波器预测得到的相对位置,通过预测得到的相对位置,可以预测机器人运动时的下一个目标区域,实现对目标区域的更新。
70.在一个可选的实施例中,机器人在跟随行人运动的过程中,通过位于机器人的惯性测量单元和电机编码器计算出机器人的当前位置,其中,当前位置可以是与机器人开机时的相对位置;通过3d激光传感器获得并处理得到环境信息,其中,环境信息包括目标跟随对象信息和障碍物信息,通过卡尔曼滤波器的信息迭代可以在运动过程中确定目标对象以及目标区域,机器人也可以确定跟随的目标对象,同时,根据目标对象对机器人产生的引力场可以确定第一作用力,根据障碍物对机器人产生的斥力场确定第二作用力,基于第一作用力和第二作用力的叠加,可以确定目标作用力,目标作用力与机器人当前的朝向可以确定机器人的偏转角,也即,可以确定机器人的运动方向,通过卡尔曼滤波器对目标对象的位置预测,可以计算出目标对象的运动速度,通过获得目标对象和机器人的相对位置可以确定机器人与目标对象的距离,通过偏转角可以确定机器人执行跟随运动的角速度,通过机器人与目标对象的距离和目标对象的速度可以确定机器人执行跟随运动的线速度,基于角速度和线速度控制机器人在各个停障区基于预设运动方向进行运动,在跟随行人的过程中完成躲避障碍物和绕开障碍物的任务。
71.实施例2
72.根据本技术实施例,还提供了一种机器人的控制系统,该系统可以执行上述实施例中的机器人的控制方法,具体实现方式和优选应用场景与上述实施例相同,在此不做赘
述。
73.图4是根据本技术实施例的一种机器人的控制系统的示意图,如图4所示,该系统包括:
74.获取装置40,用于获取机器人所处环境的环境信息,其中,环境信息包括:机器人跟随的目标对象信息以及障碍物信息;
75.控制器42,与获取装置连接,用于基于目标作用力和环境信息控制机器人运动。
76.可选地,获取装置包括:3d激光雷达传感器,位于机器人,用于获取机器人所处环境的环境信息;电机编码器,设置在机器人上,用于获得机器人的当前位置;惯性测量单元,设置在机器人上,用于获取机器人的加速度。
77.实施例3
78.根据本技术实施例,还提供了一种机器人的控制装置,该装置可以执行上述实施例中的机器人的控制方法,具体实现方式和优选应用场景与上述实施例相同,在此不做赘述。
79.图5是根据本技术实施例的一种机器人的控制装置的示意图,如图5所示,该装置包括:
80.获取模块50,获取机器人所处环境的环境信息,其中,环境信息包括:机器人跟随的目标对象信息以及障碍物信息;
81.确定模块52,用于基于环境信息确定机器人的目标作用力;
82.控制模块54,用于基于目标作用力和环境信息控制机器人运动。
83.可选的,确定模块包括:第一确定单元,用于基于目标对象信息,确定目标对象对机器人的第一作用力;第二确定单元,用于基于障碍物信息,确定障碍物对机器人的第二作用力;叠加单元,用于将第一作用力与第二作用力进行叠加,得到目标作用力。
84.可选地,控制模块包括:第一控制单元,用于基于目标作用力控制机器人的旋转方向;第二控制单元,用于基于目标作用力和环境信息控制机器人的跟随速度。
85.可选地,第一控制单元包括:第一确定子单元,用于确定机器人的当前朝向;第一获取单元,用于获取目标作用力与当前朝向的夹角,得到机器人的偏转角;控制单元,基于机器人的偏转角,控制机器人的运动方向。
86.可选地,第二控制单元包括:第二确定子单元,用于基于目标作用力与机器人的当前朝向,确定机器人的偏转角;第三确定子单元,用于基于目标对象信息,确定机器人与目标对象的距离,以及目标对象的速度;第四确定子单元,用于基于偏转角,确定角速度;第五确定子单元,用于基于机器人与目标对象的距离,以及目标对象的速度,确定线速度。
87.可选地,控制模块还包括:第三确定单元,用于基于障碍物信息,确定障碍物相对于机器人的位置;第四确定单元,用于基于障碍物相对于机器人的位置,确定障碍物所处的区域;判断单元,用于判断机器人的当前运动方向是否满足障碍物所处的区域对应的预设运动方向;第二控制单元,用于如果当前运动方向满足预设运动方向,则控制机器人继续运动;第二控制单元,用于如果当前运动方向不满足预设运动方向,则控制机器人停止运动或按照预设运动方向运动。
88.可选地,获取模块包括:检测单元,用于检测目标区域内的第一对象与机器人的第一相对位置,其中,目标区域基于目标对象与机器人的初始相对位置确定;第二获取单元,
用于获取第一相对位置与初始相对位置的误差值;第无确定单元,用于如果误差值小于预设值,则确定第一对象为目标对象。
89.可选地,检测单元包括:第一判断子单元,用于判断每个对象是否为预设对象;如果多个对象均为预设对象,则获取多个对象中每个对象相对于机器人的相对位置;第六确定子单元,用于确定相对位置与第二位置信息的欧式距离,得到每个对象对应的欧式距离;第七确定子单元,用于确定最小欧式距离对应的对象为目标对象。
90.检测单元还包括:第二判断子单元,用于判断每个对象是否为预设对象;第一获取子单元,用于如果多个对象均为预设对象,则获取多个对象中每个对象相对于机器人的相对位置;第八确定子单元,用于确定相对位置与第二位置信息的欧式距离,得到每个对象对应的欧式距离;第九确定子单元,用于确定最小欧式距离对应的对象为目标对象。
91.检测单元还包括:检测子单元,用于检测预设区域内的第二对象;第二获取字单元,用于在第二对象满足预设条件的情况下,获取第二对象与机器人的第二相对位置;处理子单元,用于利用卡尔曼滤波器对第二相对位置进行处理,得到初始相对位置。
92.可选地,获取模块还用于利用卡尔曼滤波器对目标对象与机器人的相对位置进行处理,得到新的相对位置;基于新的相对位置,对目标区域进行更新。
93.实施例4
94.本技术实施例还提供了一种计算机存储介质,计算机存储介质可以存储有多条指令,指令适于由处理器加载并执行如上述图1所示实施例的方法步骤,具体执行过程可以参见图1所示实施例的具体说明,在此不进行赘述。
95.实施例5
96.本技术实施例还提供了一种机器人,包括:处理器和存储器;其中,存储器存储有计算机程序,计算机程序适于由处理器加载并执行上述实施例1的机器人的控制方法。
97.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
98.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
99.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
100.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
101.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
102.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
103.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
104.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
105.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。

技术特征:


1.一种机器人的控制方法,其特征在于,包括:获取机器人所处环境的环境信息,其中,所述环境信息包括:所述机器人跟随的目标对象信息以及障碍物信息;基于所述环境信息确定所述机器人的目标作用力;基于所述目标作用力和所述环境信息控制所述机器人运动。2.根据权利要求1所述的方法,其特征在于,基于所述环境信息确定所述机器人的目标作用力包括:基于所述目标对象信息,确定所述目标对象对所述机器人的第一作用力;基于所述障碍物信息,确定所述障碍物对所述机器人的第二作用力;将所述第一作用力与所述第二作用力进行叠加,得到所述目标作用力。3.根据权利要求1所述的方法,其特征在于,基于所述目标作用力和所述环境信息控制所述机器人运动包括:基于所述目标作用力控制所述机器人的旋转方向;基于所述目标作用力和所述环境信息控制所述机器人的跟随速度。4.根据权利要求3所述的方法,其特征在于,基于所述目标作用力控制所述机器人的所述旋转方向包括:确定所述机器人的当前朝向;获取所述目标作用力与所述当前朝向的夹角,得到所述机器人的偏转角;基于所述机器人的偏转角,控制所述机器人的运动方向。5.根据权利要求3所述的方法,其特征在于,所述跟随速度包括:角速度和线速度,其中,基于所述目标作用力和所述环境信息控制所述机器人的跟随速度包括:基于所述目标作用力的方向与所述机器人的当前朝向,确定所述机器人的偏转角;基于所述目标对象信息,确定所述机器人与所述目标对象的距离,以及所述目标对象的速度;基于所述偏转角,确定所述角速度;基于所述机器人与所述目标对象的距离,以及所述目标对象的速度,确定所述线速度。6.根据权利要求1所述的方法,其特征在于,在基于所述目标作用力和所述环境信息控制所述机器人运动的过程中,所述方法还包括:基于所述障碍物信息,确定所述障碍物相对于所述机器人的位置;基于所述障碍物相对于所述机器人的位置,确定所述障碍物所处区域;判断所述机器人的当前运动方向是否满足所述障碍物所处区域对应的预设运动方向;如果所述当前运动方向满足所述预设运动方向,则控制所述机器人继续运动;如果所述当前运动方向不满足所述预设运动方向,则控制所述机器人停止运动或按照所述预设运动方向运动。7.根据权利要求1所述的方法,其特征在于,在获取机器人所处环境的环境信息之前,所述方法还包括:检测目标区域内的第一对象与所述机器人的第一相对位置,其中,所述目标区域基于所述目标对象与所述机器人的初始相对位置确定;获取所述第一相对位置与所述初始相对位置的误差值;
如果所述误差值小于预设值,则确定所述第一对象为所述目标对象。8.根据权利要求7所述的方法,其特征在于,在所述目标区域内检测到多个对象的情况下,所述方法还包括:判断每个对象是否为预设对象;如果所述多个对象均为所述预设对象,则获取所述多个对象中每个对象相对于所述机器人的相对位置;确定所述相对位置与所述第二位置信息的欧式距离,得到所述每个对象对应的欧式距离;确定最小欧式距离对应的对象为所述目标对象。9.根据权利要求7所述的方法,其特征在于,在检测目标区域内的第一对象与所述机器人的第一相对位置之前,所述方法还包括:检测预设区域内的第二对象;在所述第二对象满足预设条件的情况下,获取所述第二对象与所述机器人的第二相对位置;利用卡尔曼滤波器对所述第二相对位置进行处理,得到所述初始相对位置。10.根据权利要求7至9中任意一项所述的方法,其特征在于,在确定所述目标对象之后,所述方法还包括:利用卡尔曼滤波器对所述目标对象与所述机器人的相对位置进行处理,得到新的相对位置;基于所述新的相对位置,对所述目标区域进行更新。11.一种机器人的控制系统,其特征在于,包括:获取装置,用于获取机器人所处环境的环境信息,其中,所述环境信息包括:所述机器人跟随的目标对象信息以及障碍物信息;控制器,与所述获取装置连接,用于基于目标作用力和所述环境信息控制所述机器人运动。12.根据权利要求11所述的系统,其特征在于,所述获取装置包括:3d激光雷达传感器,设置在所述机器人上,用于获取所述机器人所处环境的环境信息;电机编码器,设置在所述机器人上,用于获得所述机器人的当前位置;惯性测量单元,设置在所述机器人上,用于获取所述机器人的加速度。13.一种机器人的控制装置,其特征在于,包括:获取模块,获取机器人所处环境的环境信息,其中,所述环境信息包括:所述机器人跟随的目标对象信息以及障碍物信息;确定模块,用于基于所述环境信息确定所述机器人的目标作用力;控制模块,用于基于所述目标作用力和所述环境信息控制所述机器人运动。14.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1至10中任意一项所述的机器人的控制方法。15.一种机器人,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1至10中任意一项所述的机器人的控制方法。

技术总结


本申请实施例公开了一种机器人的控制方法、系统及装置,属于控制技术领域。其中,该方法包括:获取机器人所处环境的环境信息,其中,环境信息包括:机器人跟随的目标对象信息以及障碍物信息;基于环境信息确定机器人的目标作用力;基于目标作用力和环境信息控制机器人运动。因此,本申请实施例可以解决相关技术中机器人在跟随行人运动的过程中与障碍物发生碰撞的风险较大,导致安全性较低的技术问题。导致安全性较低的技术问题。导致安全性较低的技术问题。


技术研发人员:

林燕龙

受保护的技术使用者:

广州视睿电子科技有限公司

技术研发日:

2021.04.01

技术公布日:

2022/10/13

本文发布于:2024-09-20 14:57:30,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/9152.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:机器人   目标   作用力   对象
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议