发明内容
有鉴于此,本发明实施例提供一种调整机器人机械参数的方法和装置,以解决当机器人未发生故障时或者机器人在非特定实验环境的工况下运行时,无法对其机械参数进行适应性调整的技术问题。
为实现上述目的,根据本发明实施例的一个方面,提供了一种调整机器人机械参数的方法,包括:
在机器人前进过程中,实时接收所述机器人上报的扫码位姿信息和各个周期内的航位位姿信息;
根据所述扫码位姿信息和航位位姿信息计算所述机器人的机械参数;
将所述机械参数下发至所述机器人。
可选地,在机器人前进过程中,实时接收所述机器人上报的扫码位姿信息和各个周期内的航位位姿信息,包括:
在机器人从第一二维码到第二二维码的过程中,接收所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息,以及各个周期内上报的航位位姿信息;
其中,所述扫码位姿信息包括扫码头相对二维码中心在所述机器人预设前进方向上的偏移量和扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的偏移量;所述航位位姿信息包括所述机器人车体中心相对起点在所述机器人预设前进方向上的偏移量。
可选地,根据所述扫码位姿信息和航位位姿信息计算所述机器人的机械参数,包括:
根据所述扫码位姿信息和航位位姿信息计算所述机器人的轮径调整系数;
根据所述扫码位姿信息计算所述扫码头与所述机器人线速度方向的夹角。
可选地,根据所述扫码位姿信息和航位位姿信息计算所述机器人的轮径调整系数,包括:
根据所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息以及所述第一二维码中心与第二二维码中心的距离,计算所述扫码头在预设前进方向上的运行距离;
根据各个周期内上报的航位位姿信息,计算所述机器人在预设前进方向上的运行距离;
将所述机器人在预设前进方向上的运行距离除以所述扫码头在预设前进方向上的运行距离的商作为所述机器人的轮径调整系数。
可选地,根据所述扫码位姿信息计算所述扫码头与所述机器人线速度方向的夹角,包括:
根据一段时间内上报的所述扫码位姿信息,计算该段时间内的扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量;
根据一段时间内所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息以及所述第一二维码中心与第二二维码中心的距离,计算所述扫码头在预设前进方向上的平均运行距离;
将所述扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量除以所述扫码头在预设前进方向上的平均运行距离的商作为所述扫码头与机器人线速度方向的夹角的正切值,从而计算得到所述扫码头与机器人线速度方向的夹角。
另外,根据本发明实施例的另一个方面,提供了一种调整机器人机械参数的装置,包括:
接收模块,用于在机器人前进过程中,实时接收所述机器人上报的扫码位姿信息和各个周期内的航位位姿信息;
计算模块,用于根据所述扫码位姿信息和航位位姿信息计算所述机器人的机械参数;
下发模块,用于将所述机械参数下发至所述机器人。
可选地,所述接收模块用于:
在机器人从第一二维码到第二二维码的过程中,接收所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息,以及各个周期内上报的航位位姿信息;
其中,所述扫码位姿信息包括扫码头相对二维码中心在所述机器人预设前进方向上的偏移量和扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的偏移量;所述航位位姿信息包括所述机器人车体中心相对起点在所述机器人预设前进方向上的偏移量。
可选地,所述计算模块用于:
根据所述扫码位姿信息和航位位姿信息计算所述机器人的轮径调整系数;
根据所述扫码位姿信息计算所述扫码头与所述机器人线速度方向的夹角。
可选地,根据所述扫码位姿信息和航位位姿信息计算所述机器人的轮径调整系数,包括:
根据所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息以及所述第一二维码中心与第二二维码中心的距离,计算所述扫码头在预设前进方向上的运行距离;
根据各个周期内上报的航位位姿信息,计算所述机器人在预设前进方向上的运行距离;
将所述机器人在预设前进方向上的运行距离除以所述扫码头在预设前进方向上的运行距离的商作为所述机器人的轮径调整系数。
可选地,根据所述扫码位姿信息计算所述扫码头与所述机器人线速度方向的夹角,包括:
根据一段时间内上报的所述扫码位姿信息,计算该段时间内的扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量;
根据所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息以及所述第一二维码中心与第二二维码中心的距离,计算所述扫码头在预设前进方向上的运行距离;
将所述扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量除以所述扫码头在预设前进方向上的运行距离的商作为所述扫码头与机器人线速度方向的夹角的正切值,从而计算得到所述扫码头与机器人线速度方向的夹角。
根据本发明实施例的另一个方面,还提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一实施例所述的方法。
根据本发明实施例的另一个方面,还提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例所述的方法。
上述发明中的一个实施例具有如下优点或有益效果:因为采用在机器人前进过程中根据实时接收的扫码位姿信息和航位位姿信息计算机器人的机械参数的技术手段,所以克服了当机器人未发生故障时或者机器人在非特定实验环境的工况下运行时,无法对其机械参数进行适应性调整的技术问题。本发明实施例基于机器人前进过程中实时接收的扫码位姿信息和航位位姿信息,通过大数据分析计算出机器人在正常工况下影响导航精度的相关机械参数,并定期下发更新修正后的机械参数,从而提高了长期运行下机器人的控制精度,减少了人为干涉。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施例的调整机器人机械参数的方法的主要流程的示意图。作为本发明的一个实施例,如图1所示,所述调整机器人机械参数的方法可以包括:
步骤101,在机器人前进过程中,实时接收所述机器人上报的扫码位姿信息和各个周期内的航位位姿信息。
为了方便研发、生产、运维以及售后人员对机器人的整个生命周期进行监控,建立了中心系统,所述中心系统众多机器人的运行数据进行了实时采集、记录与统计分析。所述运行数据可以包括扫码位姿信息和航位位姿信息。每个机器人的底部均安装有扫码头,所述扫码头的扫码平面与地面平行。当机器人行驶到二维码上方时,扫码头扫描到二维码,并上报此时的扫码位姿信息。机器人结合电机编码器的反馈值和扫码位姿信息推算出航位位姿信息,并上报服务器。因此,服务器实时接收机器人上报的扫码位姿信息和航位位姿信息,并可以对这些数据进行实时运算,也可以将一些参数以指令的形式发送给机器人。
可选地,所述步骤101包括:在机器人从第一二维码到第二二维码的过程中,接收所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息,以及根据航位计算得到的各个周期内上报的航位位姿信息。需要指出的是,所述第一二维码与第二二维码可以相邻,也可以不相邻。
其中,所述扫码位姿信息包括扫码头相对二维码中心在所述机器人预设前进方向上的偏移量和扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的偏移量,还可以进一步包括所述机器人预设前进方向与所述机器人线速度方向的夹角;所述航位位姿信息包括所述机器人车体中心相对起点在所述机器人预设前进方向上的偏移量,还可以进一步包括所述机器人车体中心相对起点在与所述机器人预设前进方向垂直的方向上的偏移量和所述机器人预设前进方向与机器人线速度方向的夹角。
图2所示为本发明实施例的机器人底盘的车轮分布示意图。如图2所示,机器人底盘2设置有一对主动轮21和两对从动万向轮22,一对主动轮21由各自电机驱动,并采用差速驱动的方式实现转向。当两个电机同向同速旋转时,可实现机器人的直线前进或者后退,当两个电机反向同速旋转时,可实现机器人的原地转向。
机器人采用二维码导航,每隔固定距离在地面设置二维码,机器人的扫码头在扫到码时会反馈机器人的位姿信息。图3为机器人扫码位姿信息的示意图,令坐标轴原点O为某一个二维码的中心,M为机器人的车体中心(假设扫码头安装在车体中心的位置,并且没有发生偏移),以X方向为机器人的预设前进方向。因此,x1为扫码头相对二维码中心在所述机器人预设前进方向(X方向)上的偏移量,y1为扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向(Y方向)上的偏移量,θ1为机器人预设前进方向与机器人线速度方向(速度方向)的夹角,那么该机器人在当前二维码上方时的位姿信息为(x1,y1,θ1)。
可见,机器人直行时的预设位姿是(0,0,0),即扫码头与二维码中心重合且实际前进方向(即线速度方向)与预设前进方向的偏差角度为零。这就需要合理控制机器人两个主动轮的速度,以使位置误差x1、y1以及角度误差θ1均趋向于零,从而实现机器人车体纠偏。
扫码头每次扫到地面二维码时,机器人会解码并上报扫码位姿信息(x1,y1,θ1)给服务器,在离开该二维码码后,机器人会以之前上报的扫码位姿信息(x1,y1,θ1)为基准,以左右轮电机编码器的反馈值为增量进行航位推算,实时得到机器人的航位位姿信息(x2,y2,θ2)。其中,x2表示机器人车体中心相对起点在所述机器人预设前进方向上的偏移量,y2表示机器人车体中心相对起点在与所述机器人预设前进方向垂直的方向(Y方向)上的偏移量,θ2为机器人预设前进方向与机器人线速度方向的夹角。
采用如下公式计算各个周期内的航位位姿信息(x2,y2,θ2):
x(k+1)=x(k)+v(k)cosθ(k)T
y(k+1)=y(k)+v(k)sinθ(k)T
θ(k+1)=θ(k)+w(k)T
其中,周期k+1表示周期k的下一个周期,v表示机器人的线速度,ω表示机器人的角速度,这v、ω两个变量可以从电机编码器的反馈值计算得到,并以二者为输入,在每个周期内进行不断累加和更新,从而计算得到各个周期内的航位位姿信息。
需要指出的是,机器人从第一二维码到从第一二维码到第二二维码的过程中,会经历多个周期,可以以扫到第一二维码时上报的扫码位姿信息(x1,y1,θ1)作为起点(x(1),y(1),θ(1)),计算得到下一个周期内的航位位姿信息(x(2),y(2),θ(2)),通过不断累积和更新,计算各个周期内的航位位姿信息(x(k+1),y(k+1),θ(k+1)),直到所述机器人扫描到第二二维码。
因此服务器获得准确的位姿信息对于导航精度至关重要,每个周期内机器人推算得出的航位位姿信息(x2,y2,θ2)也会上报服务器,并被记录在服务器。
步骤102,根据所述扫码位姿信息和航位位姿信息计算所述机器人的机械参数。
位姿计算中主要涉及到的机械参数有:两个主动轮的轮径RL、RR,两个主动轮的轮间距B,齿轮箱减速比G,扫码头相对机器人车体中心的偏移量(xp,yp,θp),预设情况下偏移量xp、yp、θp应该全部为零。
在上述参数中,两个主动轮的轮径会随着行走距离的增加而磨损变小,而且由于浮动弹簧的作用力,两轮磨损情况相对一致。轮间距B和减速比G一般相对固定。
可选地,所述步骤102包括:根据所述扫码位姿信息和航位位姿信息计算所述机器人的轮径调整系数;根据所述扫码位姿信息计算所述扫码头与所述机器人线速度方向的夹角。本发明实施例通过大数据分析找出了机器人在正常工况下影响导航精度的相关机械参数——两个主动轮的轮径调整系数和扫码头与机器人线速度方向的夹角。
如图3所示,扫码头的理论安装位置M是在两个主动轮的中点处,但是由于仓库现场地面的平整度不能完全保证,机器人的振动是无法避免的,尤其是机器人在重负载通过不平整地面的时候,这都可能使扫码头的位置发生微小的改变,以机器人预设前进方向作为X轴,xp为扫码头相对机器人车体中心在X轴方向上的偏移量,yp为扫码头相对机器人车体中心在Y轴方向上的偏移量,θp为扫码头与机器人线速度方向的夹角。扫码头的偏移量会影响上报的扫码位姿信息,而该扫码位姿信息作为接下来一段路程的起始位姿非常重要,尤其是角度信息将直接影响到机器人到达第二二维码时的左右偏差y1,严重时会导致机器人脱轨或者发生剐蹭,因此θp需要及时地的被补偿到零。
需要指出的是,针对于前后偏差x1,可以在下次启动时把规划的路径长一点或者短一点,从而对x1进行补充。
1)计算主动轮的轮径调整系数
可选地,根据所述扫码位姿信息和航位位姿信息计算所述机器人的轮径调整系数,包括:根据所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息以及所述第一二维码中心与第二二维码中心的距离,计算所述扫码头在预设前进方向上的运行距离;根据各个周期内上报的航位位姿信息,计算所述机器人在预设前进方向上的运行距离;将所述机器人在预设前进方向上的运行距离除以所述扫码头在预设前进方向上的运行距离的商作为所述机器人的轮径调整系数。
现场的地面上的二维码是按照固定距离配置的,假设相邻两个二维码中心之间的距离为L,那么从前一个二维码到下一个二维码时扫码距离D=x12-x11+L,其中,机器人在前一个扫描二维码时上报的扫码位姿信息为(x11,y11,θ11),在下一个扫描二维码时上报的扫码位姿信息(x12,y12,θ12)。
那么,根据机器人内部的航位推算,可以得到机器人在X方向(预设前进方向)运行距离为Px=x(k+1)。需要指出的是,在本发明的实施例中,由于是以扫到前一个二维码时上报的扫码位姿信息(x1,y1,θ1)作为起点(x(1),y(1),θ(1)),因此最后一个周期内的x(k+1)即为Px。
由于轮间距和减速比相对固定,Px只与轮径有关,因此可得轮径调整系数为:
针对机械参数的调整,可以以天、周甚至月为单位进行统计分析,因此,可以将这段时间内的各个轮径调整系数取平均值。
在计算轮径系数时,由于D对结果的影响比较大,因此需要进严格计算,即先求商、再进行平均,以保证结果的最终结果的准确性。
2)计算扫码头与机器人线速度方向的夹角
可选地,根据所述扫码位姿信息计算所述扫码头与所述机器人线速度方向的夹角,包括:根据一段时间内上报的所述扫码位姿信息,计算该段时间内的扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量;根据一段时间内所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息以及所述第一二维码中心与第二二维码中心的距离,计算所述扫码头在预设前进方向上的平均运行距离;将所述扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量除以所述扫码头在预设前进方向上的平均运行距离的商作为所述扫码头与机器人线速度方向的夹角的正切值,从而计算得到所述扫码头与机器人线速度方向的夹角。
一般来说,出厂时机器人的左右偏差y1(即扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的偏移量)服从标准正态分布,均值为零。对一段时间内记录的机器人经过二维码时上报的左右偏差y1进行分析。机器人经过很多个二维码,会得到很多组左右偏差y1,即P
Y=y12-y11,因此对这些P
Y做均值处理,得到
需要指出的是,当一段时间内所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息以及所述第一二维码中心与第二二维码中心的距离D不是定值时,需要将这段时间内的D求平均值,然后,由几何关系可知:
从而计算得到扫码头与机器人线速度方向的夹角θP,即扫码头的角度偏差。
针对机械参数的调整,可以以天、周甚至月为单位进行统计分析,因此,可以将这段时间内的y1取平均值,以该平均值进行角度偏差θP的计算。
如果D是定值,则先求平均还是先相除对结果没有影响。而且,在计算扫码头与所述机器人线速度方向的夹角时用到的D可以近似采用定值L,因为x11和x12都很小,机器人在经过这两小段距离过程中,Y方向的偏移量变化很小可以忽略(即认为当前码就是y1)。
可选地,为了提高计算精度,也可以先将一段时间内的PY除以相应的D,对得到的商再求平均值。
步骤103,将所述机械参数下发至所述机器人。
针对机械参数的调整,可以以天、周甚至月为单位进行统计分析,然后由服务器通过指令将所述机械参数下发给机器人,并存贮在机器人各自的控制器内,待下次下发时再进行更新。
在接收到服务器下发的机械参数后,两个主动轮的新轮径为:
其中,ROld表示旧轮径。
新轮径RNew用来将电机码盘输出的转速转换为机器人主动轮的线速度,而主动轮的线速度是航位推算的基本输入,直接关系到机器人航位位姿信息的准确计算。
在接收到服务器下发的机械参数后,扫码头与机器人线速度方向的夹角变为:
θModified=θOriginal-θP
θModified作为补偿后的扫码头与机器人线速度方向的夹角,上报给机器人的控制算法,从而修正由于扫码头安装误差导致的数据误差,使得控制算法能给出正确的控制量,消除机器人偏差,保证平稳运行。
上述这两个机械参数对于机器人的位姿计算及控制器的误差输入有着非常重要的作用,在长期运行中,这两个机械参数的调整,可以使机器人保持较好的控制精度,减少人为干涉,提高生产效率。
因此,本发明实施例利用机器人在正常工况下工作时采集的大量数据进行统计分析与计算,从而调整机器人的机械参数,并由下发至现场机器人,使其在不间断工作中保持最佳性能。第一,大数据统计克服了外界环境尤其是局部场地和局部时间段的影响,比如运行场地中某一块区域地面情况较差,或者某段时间内因为订单量的影响机器人运行时间较短、数据量有限等等;避免了局部失真数据对于计算的影响。第二,大数据统计便于长期逐步的进行监控,随着机器人运行时长的增加,性能下降和损耗是逐步发生的,大数据便于对机器人进行批量监控。第三,大数据可以分析对比不同部件供应商之间的产品差异,为下一步采购提供依据,择优使用。
根据上面所述的各种实施例,可以看出本发明通过在机器人前进过程中根据实时接收的扫码位姿信息和航位位姿信息计算机器人的机械参数的技术手段,从而解决了当机器人未发生故障时或者机器人在非特定实验环境的工况下运行时,无法对其机械参数进行适应性调整的问题。一般的参数辨识方法需要机器人离线进行实验,而且会受到场地环境的影响,具有局限性。本发明实施例基于机器人前进过程中实时接收的扫码位姿信息和航位位姿信息,通过大数据分析计算出机器人在正常工况下影响导航精度的相关机械参数,并定期下发更新修正后的机械参数,从而提高了长期运行下机器人的控制精度,减少了人为干涉。
图4是根据本发明一个可参考实施例的调整机器人机械参数的方法的主要流程的示意图。在该实施例中,第一二维码与第二二维码相邻设置,即所述第一二维码为前一个二维码,所述第二二维码为下一个二维码。所述调整机器人机械参数的方法可以具体包括:
步骤401,在机器人从前一个二维码到下一个二维码的过程中,接收所述机器人扫描到前一个二维码时上报的扫码位姿信息(x11,y11,θ11)和扫描到下一个二维码时上报的扫描位姿信息(x12,y12,θ12),以及各个周期内上报的航位位姿信息(x2,y2,θ2)。
在机器人从前一个二维码到从前一个二维码到下一个二维码的过程中,会经历多个周期,可以以扫到前一个二维码时上报的扫码位姿信息(x1,y1,θ1)作为起点(x(1),y(1),θ(1)),计算得到下一个周期内的航位位姿信息(x(2),y(2),θ(2)),通过不断累积和更新,计算各个周期内的航位位姿信息(x(k+1),y(k+1),θ(k+1)),直到所述机器人扫描到下一个二维码。
步骤402,根据所述扫码位姿信息和航位位姿信息计算所述机器人的轮径调整系数。
具体地,首先,根据所述机器人扫描到前一个二维码时上报的扫码位姿信息(x11,y11,θ11)和扫描到下一个二维码时上报的扫描位姿信息(x12,y12,θ12)以及所述前一个二维码中心与下一个二维码中心的距离L,计算所述扫码头在预设前进方向上的运行距离D=x12-x11+L;然后,根据各个周期内上报的航位位姿信息(x2,y2,θ2),计算所述机器人在预设前进方向上的运行距离Px;最后,将所述机器人在预设前进方向上的运行距离Px除以所述扫码头在预设前进方向上的运行距离D的商作为所述机器人的轮径调整系数ΔR。
如果是以天、周甚至月为单位进行统计分析,那么,可以将这段时间(每天、每周或者每个月)内的各个轮径调整系数取平均值,得到
步骤403,根据所述扫码位姿信息计算所述扫码头与所述机器人线速度方向的夹角。
具体地,首先,根据一段时间内上报的所述扫码位姿信息(x1,y1,θ1),计算该段时间内的扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量
然后,根据所述机器人扫描到前一个二维码时上报的扫码位姿信息(x11,y11,θ11)和扫描到下一个二维码时上报的扫描位姿信息(x12,y12,θ12)以及所述前一个二维码中心与下一个二维码中心的距离L,计算所述扫码头在预设前进方向上的运行距离D=x12-x11+L;最后,将所述扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量
除以所述扫码头在预设前进方向上的运行距离D的商作为所述扫码头与机器人线速度方向的夹角的正切值tanθ
P,从而计算得到所述扫码头与机器人线速度方向的夹角θp。
如果是以天、周甚至月为单位进行统计分析,那么,可以将这段时间(每天、每周或者每个月)内的y1取平均值,得到
步骤404,将计算得到的轮径调整系数和扫码头与所述机器人线速度方向的夹角下发至所述机器人。
可以以天、周甚至月为单位进行统计分析,然后由服务器通过指令将所述机械参数下发给所述正在前进的机器人,所述机器人接收到服务器下发的轮径调整系数和扫码头与所述机器人线速度方向的夹角等机械参数后,根据轮径调整系数计算新轮径,根据扫码头与机器人线速度方向的夹角上报扫码位姿信息。
需要说明的是,本发明实施例对步骤402和步骤403的执行顺序不作限制,可以先执行步骤402,后执行步骤403,也可以先执行步骤403,后执行步骤402,还可以同时执行步骤402和步骤403。
另外,在本发明一个可参考实施例中调整机器人机械参数的方法的具体实施内容,在上面所述调整机器人机械参数的方法中已经详细说明了,故在此重复内容不再说明。
图5是根据本发明实施例的调整机器人机械参数的装置的主要模块的示意图,如图5所示,所述调整机器人机械参数的装置500包括接收模块501、计算模块502和下发模块503。其中,所述接收模块501用于在机器人前进过程中,实时接收所述机器人上报的扫码位姿信息和各个周期内的航位位姿信息;所述计算模块502用于根据所述扫码位姿信息和航位位姿信息计算所述机器人的机械参数;所述下发模块503用于将所述机械参数下发至所述机器人。
可选地,所述接收模块501用于:
在机器人从第一二维码到第二二维码的过程中,接收所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息,以及各个周期内上报的航位位姿信息;
其中,所述扫码位姿信息包括扫码头相对二维码中心在所述机器人预设前进方向上的偏移量和扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的偏移量;所述航位位姿信息包括所述机器人车体中心相对起点在所述机器人预设前进方向上的偏移量。
可选地,所述计算模块502用于:
根据所述扫码位姿信息和航位位姿信息计算所述机器人的轮径调整系数;
根据所述扫码位姿信息计算所述扫码头与所述机器人线速度方向的夹角。
可选地,根据所述扫码位姿信息和航位位姿信息计算所述机器人的轮径调整系数,包括:
根据所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息以及所述第一二维码中心与第二二维码中心的距离,计算所述扫码头在预设前进方向上的运行距离;
根据各个周期内上报的航位位姿信息,计算所述机器人在预设前进方向上的运行距离;
将所述机器人在预设前进方向上的运行距离除以所述扫码头在预设前进方向上的运行距离的商作为所述机器人的轮径调整系数。
可选地,根据所述扫码位姿信息计算所述扫码头与所述机器人线速度方向的夹角,包括:
根据一段时间内上报的所述扫码位姿信息,计算该段时间内的扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量;
根据一段时间内所述机器人扫描到第一二维码时上报的扫码位姿信息和扫描到第二二维码时上报的扫描位姿信息以及所述第一二维码中心与第二二维码中心的距离,计算所述扫码头在预设前进方向上的平均运行距离;
将所述扫码头相对二维码中心在与所述机器人预设前进方向垂直的方向上的平均偏移量除以所述扫码头在预设前进方向上的平均运行距离的商作为所述扫码头与机器人线速度方向的夹角的正切值,从而计算得到所述扫码头与机器人线速度方向的夹角。
根据上面所述的各种实施例,可以看出本发明通过在机器人前进过程中根据实时接收的扫码位姿信息和航位位姿信息计算机器人的机械参数的技术手段,从而解决了当机器人未发生故障时或者机器人在非特定实验环境的工况下运行时,无法对其机械参数进行适应性调整的问题。一般的参数辨识方法需要机器人离线进行实验,而且会受到场地环境的影响,具有局限性。本发明实施例基于机器人前进过程中实时接收的扫码位姿信息和航位位姿信息,通过大数据分析计算出机器人在正常工况下影响导航精度的相关机械参数,并定期下发更新修正后的机械参数,从而提高了长期运行下机器人的控制精度,减少了人为干涉。
需要说明的是,在本发明所述调整机器人机械参数的装置的具体实施内容,在上面所述调整机器人机械参数的方法中已经详细说明了,故在此重复内容不再说明。
图6示出了可以应用本发明实施例的调整机器人机械参数的方法或调整机器人机械参数的装置的示例性系统架构600。
如图6所示,系统架构600可以包括终端设备601、602、603,网络604和服务器605。网络607用以在终端设备601、602、603和服务器605之间提供通信链路的介质。网络604可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备601、602、603通过网络604与服务器604交互,以接收或发送消息等。终端设备601、602、603上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备601、602、603可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器605可以是提供各种服务的服务器,例如对用户利用终端设备601、602、603所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息——仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的调整机器人机械参数的方法一般在公共场所的终端设备601、602、603上执行,也可以由服务器605执行,相应地,所述调整机器人机械参数的装置一般设置在公共场所的终端设备601、602、603上,也可以设置在服务器605中。
应该理解,图6中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图7,其示出了适于用来实现本发明实施例的终端设备的计算机系统700的结构示意图。图7示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,计算机系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括接收模块、计算模块和下发模块,其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:在机器人前进过程中,实时接收所述机器人上报的扫码位姿信息和各个周期内的航位位姿信息;根据所述扫码位姿信息和航位位姿信息计算所述机器人的机械参数;将所述机械参数下发至所述机器人。
根据本发明实施例的技术方案,因为采用在机器人前进过程中根据实时接收的扫码位姿信息和航位位姿信息计算机器人的机械参数的技术手段,所以克服了当机器人未发生故障时或者机器人在非特定实验环境的工况下运行时,无法对其机械参数进行适应性调整的技术问题。本发明实施例基于机器人前进过程中实时接收的扫码位姿信息和航位位姿信息,通过大数据分析计算出机器人在正常工况下影响导航精度的相关机械参数,并定期下发更新修正后的机械参数,从而提高了长期运行下机器人的控制精度,减少了人为干涉。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。