CN109571467B - 双轮差速机器人运动模型标定方法、装置及里程计系统 - Google Patents
双轮差速机器人运动模型标定方法、装置及里程计系统 Download PDFInfo
- Publication number
- CN109571467B CN109571467B CN201811409423.3A CN201811409423A CN109571467B CN 109571467 B CN109571467 B CN 109571467B CN 201811409423 A CN201811409423 A CN 201811409423A CN 109571467 B CN109571467 B CN 109571467B
- Authority
- CN
- China
- Prior art keywords
- robot
- parameter
- motion model
- track
- information
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 239000011159 matrix material Substances 0.000 claims description 13
- 230000008878 coupling Effects 0.000 claims description 9
- 238000010168 coupling process Methods 0.000 claims description 9
- 238000005859 coupling reaction Methods 0.000 claims description 9
- 238000005259 measurement Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 5
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000005070 sampling Methods 0.000 description 12
- 238000011065 in-situ storage Methods 0.000 description 7
- 238000001816 cooling Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 206010034719 Personality change Diseases 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- GXFZCDMWGMFGFL-KKXMJGKMSA-N (+)-Tubocurarine chloride hydrochloride Chemical compound [Cl-].[Cl-].C([C@H]1[N+](C)(C)CCC=2C=C(C(=C(OC3=CC=C(C=C3)C[C@H]3C=4C=C(C(=CC=4CC[NH+]3C)OC)O3)C=21)O)OC)C1=CC=C(O)C3=C1 GXFZCDMWGMFGFL-KKXMJGKMSA-N 0.000 description 1
- 239000008709 Curare Substances 0.000 description 1
- NIXOWILDQLNWCW-UHFFFAOYSA-N acrylic acid group Chemical group C(C=C)(=O)O NIXOWILDQLNWCW-UHFFFAOYSA-N 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000017525 heat dissipation Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/0095—Means or methods for testing manipulators
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C22/00—Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Manipulator (AREA)
- Toys (AREA)
Abstract
本发明涉及一种双轮差速机器人运动模型标定方法、装置及里程计系统,属于人工智能领域。所述方法包括获取用户输入的第一参数并实时获取与第一参数对应的机器人左、右轮电机转动次数,第一参数包括机器人运动时的4条轨迹信息;根据第一参数及对应的机器人左、右轮电机转动次数,确定机器人的姿态标定参数;获取用户输入的第二参数,并实时获取与第二参数对应的机器人左、右轮电机转动次数,第二参数包括两条轨迹信息;根据第二参数、第二参数对应的机器人左、右轮电机转动次数以及姿态标定参数,确定机器人的位置标定参数;根据机器人的姿态标定参数及机器人的位置标定参数,标定理论运动模型。本发明对工作人员专业技术要求低,节约了标定时间。
Description
技术领域
本发明涉及一种双轮差速机器人运动模型标定方法、装置及里程计系统,属于人工智能领域。
背景技术
双轮差速机器人因结构简单、控制方便,是目前大多数轮式机器人采用的一种形式,通常通过不同的电机控制左、右轮转动实现机器人的运动,例如,控制双轮差速移动实现机器人旋转,控制双轮等速移动实现机器人直行。
双轮差速机器人的控制需要依赖于运动模型,通常需要根据机器人的结构参数进行运动模型的建立,但是在机器人实际运行过程中存在“地面接触摩擦系数不确定”、“不相等的轮直径”、“轮距的不确定”和“两轮子直径的实际平均值与标称平均值不相等”等问题,导致建立的机器人理论运动模型误差较大,不能满足实际使用需求,因而在机器人投入使用前需要对运动理论模型进行标定。
目前,机器人在完成搭建后,通常只包含硬件部分及理论模型,需要机器人开发者根据机器人实际使用环境,结合所述理论模型人工编写标定代码并调试参数,实现对机器人理论运动模型的标定,该方法对工作人员专业技术要求非常高,且需要耗费大量开发工时。
发明内容
本发明的技术解决问题是:针对现有技术中存在的问题,提供一种双轮差速机器人运动模型标定方法、装置及里程计系统,通过用户控制或推行机器人运动6条简单轨迹,并输入轨迹信息即可实现对机器人双轮差速运动模型的参数标定,对工作人员专业技术要求低,节约了标定时间。
本发明的技术解决方案是:
一种双轮差速机器人运动模型标定方法,包括:
获取用户输入的第一参数,并实时获取与所述第一参数对应的机器人左、右轮电机转动次数,所述第一参数包括机器人运动时的第一直行前进轨迹信息、第一直行后退轨迹信息、原地左转轨迹信息及原地右转轨迹信息;
根据所述第一参数及对应的机器人左、右轮电机转动次数,确定机器人的姿态标定参数;
获取所述用户输入的第二参数,并实时获取与所述第二参数对应的机器人左、右轮电机转动次数,所述第二参数包括第二直行前进轨迹信息和第二直行后退轨迹信息;
根据所述第二参数、所述第二参数对应的机器人左、右轮电机转动次数以及所述姿态标定参数,确定机器人的位置标定参数;
根据所述机器人的姿态标定参数及机器人的位置标定参数,标定理论运动模型。
在一可选实施例中,所述获取用户输入的第一参数,包括:
显示第一参数输入界面,并获取用户输入的所述第一参数。
在一可选实施例中,所述获取所述用户输入的第二参数,包括:
显示第二参数输入界面,并获取所述用户输入的所述第二参数。
在一可选实施例中,还包括:
显示开始按钮,当检测到用户按下所述开始按钮时,确定为机器人运动轨迹的起始点。
在一可选实施例中,还包括:
显示完成按钮,当检测到用户按下所述完成按钮时,确定为所述机器人运动轨迹的结束点。
在一可选实施例中,所述轨迹信息包含轨迹标识以及机器人x、y方向运动距离和/或机器人运动角度。
在一可选实施例中,所述根据所述第一参数及对应的机器人左、右轮电机转动次数,确定机器人的姿态标定参数,包括:
根据下式确定机器人的姿态标定参数:
其中,C2,1和C2,2是机器人的姿态标定参数,是由机器人运动时的第一直行前进轨迹、第一直行后退轨迹、原地左转轨迹及原地右转轨迹4条轨迹生成的广义姿态耦合矩阵,θN,m为第m条轨迹结束点处机器人的运动角度,θ0,m为第m条轨迹起始点处机器人的运动角度,m=1-4。
在一可选实施例中,所述根据所述第二参数、所述第二参数对应的机器人左、右轮电机转动次数以及所述姿态标定参数,确定机器人的位置标定参数,包括:
根据下式确定机器人的位置标定参数:
其中,C1,1和C1,2是机器人的位置标定参数,是由机器人的第二直行前进轨迹和第二直行后退轨迹2条轨迹生成的广义位置耦合矩阵,xN,n为第n条轨迹结束点处机器人的x方向运动距离,yN,n为第n条轨迹结束点处机器人的y方向运动距离,x0,n为第n条轨迹起始点处机器人的x方向运动距离,y0,n为第n条轨迹起始点处机器人的y方向运动距离,n=1-2。
在一可选实施例中,所述标定运动模型之后,还包括:
基于标定后的运动模型,输出机器人航迹推测信息,所述航迹推测信息包括位置信息和姿态信息。
在一可选实施例中,所述标定运动模型之后,还包括:
接收用户下发的机器人期望速度信息;
基于标定后的运动模型,根据所述期望速度信息和机器人当前速度信息,对机器人进行闭环控制,其中所述速度信息包括角速度和/或线速度。
在一可选实施例中,根据所述期望速度信息和当前速度信息,对机器人进行闭环控制,包括:
根据下式分别确定机器人左轮和右轮的PWM输出占空比:
其中,υobj为期望线速度、ωobj为期望角速度;υcur为机器人当前线速度、ωcur为机器人当前角速度;C-1 1,1、C-1 1,2、C-1 2,1、C-1 2,2分别为所述机器人的姿态标定参数和位置标定参数的逆;ΔwL为机器人左轮期望旋转速度和当前旋转速度的差、表示左轮P控制量,ΔwR为机器人右轮期望旋转速度和实际旋转速度的差、表示右轮P控制量;ΣwL(t)表示当前控制周期机器人左轮I控制量、ΣwR(t)表示当前控制周期机器人右轮I控制量,ΣwL(t-1)表示上一控制周期机器人左轮I控制量、ΣwR(t-1)表示上一控制周期机器人右轮I控制量;PWML为控制机器人左轮速度的PWM输出占空比,PWMR为控制机器人右轮速度的PWM输出占空比;KP,L和KI,L是左轮PI控制参数,KP,R和KI,R是右轮的PI控制参数;
根据确定的左、右轮PWM输出占空比,分别对机器人左、右轮进行闭环控制。
一种双轮差速机器人运动模型标定装置,包括:
第一获取模块,用于获取用户输入的第一参数并实时获取与所述第一参数对应的机器人左、右轮电机转动次数,所述第一参数包括机器人运动时的第一直行前进轨迹信息、第一直行后退轨迹信息、原地左转轨迹信息及原地右转轨迹信息;
第一确定模块,用于根据所述第一参数及对应的机器人左、右轮电机转动次数,确定机器人的姿态标定参数;
第二获取模块,用于获取所述用户输入的第二参数,并实时获取与所述第二参数对应的机器人左、右轮电机转动次数,所述第二参数包括第二直行前进轨迹信息和第二直行后退轨迹信息;
第二确定模块,用于根据所述第二参数、所述第二参数对应的机器人左、右轮电机转动次数以及所述姿态标定参数,确定机器人的位置标定参数;
标定模块,用于根据所述机器人的姿态标定参数及机器人的位置标定参数,标定理论运动模型。
在一可选实施例中,还包括显示模块,用于显示第一参数输入界面,所述第一获取模块用于获取用户输入的所述第一参数。
在一可选实施例中,所述显示模块还用于显示第二参数输入界面,所述第二获取模块用于获取所述用户输入的所述第二参数。
在一可选实施例中,还包括起始点确定模块:
所述显示模块,还用于显示开始按钮,所述起始点确定模块,用于当检测到用户按下所述开始按钮时,确定为机器人运动轨迹的起始点。
在一可选实施例中,还包括:
所述显示模块,还用于显示完成按钮,所述结束点确定模块,用于当检测到用户按下所述完成按钮时,确定为所述机器人运动轨迹的结束点。
在一可选实施例中,还包括:
航迹推测模块,用于基于标定后的运动模型,输出机器人航迹推测信息,所述航迹推测信息包括位置信息和姿态信息。
在一可选实施例中,还包括:
接收模块,用于接收用户下发的机器人期望速度信息;
控制模块,用于基于标定后的运动模型,根据所述期望速度信息和机器人当前速度信息,对机器人进行闭环控制,其中所述速度信息包括角速度和/或线速度。
一种双轮差速机器人里程计系统,包括壳体及设置在壳体内的由权利要求12-18任一项所述的运动模型标定装置。
在一可选实施例中,所述壳体上设有标准接口,用于将所述运动模型标定装置的各功能引脚与对应的外部设备连接。
在一可选实施例中,所述标准接口包括:
电源接口,用于为里程计系统提供5V安全电压;
人机通信接口,用于连接所述接收模块和外部控制系统以使用户下发机器人的期望速度信息,和/或连接所述航迹推测模块和所述外部控制系统以为用户提供机器人航迹推测信息;
测量和控制接口,用于连接所述获取模块与机器人的外部测量装置;和/或连接所述控制模块与机器人的控制系统;和/或
烧录接口,用于连接用户PC和所述运动模型标定装置以实现算法更新。
本发明与现有技术相比具有如下优点:
本发明实施例提供的一种双轮差速机器人运动模型标定方法,通过用户控制或推行机器人运动6条简单轨迹,并输入轨迹信息即可实现对机器人双轮差速运动模型的参数标定,对工作人员专业技术要求低,节约了标定时间;
本发明通过显示输入界面,引导用户根据输入界面显示内容输入相应参数,进一步降低了标定难度,使从无标定经验的用户也能根据显示提示完成参数的输入,进一步节约了标定成本及标定时间;
通过显示开始和/或起始按钮,使用户可以通过按钮输入机器人运动轨迹的起始和/或终止点位置,进一步提高了标定效率,且用户可以根据实际情况随时起始或终止运动轨迹,用户体验更好。
附图说明
图1为本发明实施例提供的一种双轮差速机器人运动模型标定方法流程图;
图2为本发明实施例提供的运动模型示意图;
图3为本发明实施例提供的一种双轮差速机器人运动模型标定装置组成图;
图4为本发明实施例提供的一种双轮差速机器人里程计系统外观示意图
图5为本发明一具体实施例提供的编码器信号采集流程图;
图6为本发明一具体实施例提供的机器人速度PI闭环控制流程图。
具体实施方式
以下将结合附图及具体实施例,对本发明的具体实施方式做进一步详细说明。
参见图1,本发明实施例提供了一种双轮差速机器人运动模型标定方法,包括:
步骤101:获取用户输入的第一参数并实时获取与所述第一参数对应的机器人左、右轮电机转动次数,所述第一参数包括机器人运动时的第一直行前进轨迹信息、第一直行后退轨迹信息、原地左转轨迹信息及原地右转轨迹信息;
具体地,本发明实施例中所述的轨迹信息可以包含轨迹标识以及机器人x、y方向运动距离,还可以包含机器人运动角度等;
在本发明实施例中,可以通过用户推行或控制机器人行走得到上述轨迹信息;各轨迹的长度、起始点、结束点均可以由用户设置;
步骤102:根据所述第一参数及对应的机器人左、右轮电机转动次数,确定机器人的姿态标定参数;
本发明实施例中,机器人左轮电机转动参数及右轮电机转动参数可以通过设置在机器人左、右两轮上的编码器获取;其中,第一参数对应的机器人左、右轮电机转动次数包括:机器人从第一直行前进轨迹的起始点到结束点时每一采样时刻对应的左轮转动次数及右轮转动次数、从第一直行后退轨迹的起始点到结束点时每一采样时刻对应的左轮转动次数及右轮转动次数、从原地左转轨迹起始点到结束点时每一采样时刻对应的左轮转动次数及右轮转动次数,以及从原地右转轨迹起始点到结束点时每一采样时刻对应的左轮转动次数及右轮转动次数;
所述姿态标定参数通常为左、右轮转动速度与机器人角速度之间的标定后的转换系数。
步骤103:获取所述用户输入的第二参数,并实时获取与所述第二参数对应的机器人左、右轮电机转动次数,所述第二参数包括第二直行前进轨迹信息和第二直行后退轨迹信息;
步骤104:根据所述第二参数、所述第二参数对应的机器人左、右轮电机转动次数以及所述姿态标定参数,确定机器人的位置标定参数;
具体地,第二参数对应的机器人的左、右轮电机转动次数包括机器人从第二直行前进轨迹的起始点到结束点时每一采样时刻对应的左轮转动次数及右轮转动次数,以及从第二直行后退轨迹的起始点到结束点时每一采样时刻对应的左轮转动次数及右轮转动次数;
所述位置标定参数通常为左、右轮转动速度与机器人线速度之间的标定后的转换系数。
步骤105:根据所述机器人的姿态标定参数及机器人的位置标定参数,标定理论运动模型。
具体地,本发明实施例中,双轮差速移动机器人满足方程在笛卡尔坐标系下,机器人的位姿(位置和姿态)、速度(线速度和角速度)分别用(x,y,θ)和(υ,ω)表示,模型如图2所示,则机器人运动方程如式(1)所示:
双轮差速移动机器人的运动模型如式(2)所示:
其中,wR是右轮的旋转速度,wL是左轮的旋转速度,rR是右轮半径,rL是左轮半径,b是轮轴的轴距,C是wR、wL转为υ和ω的耦合矩阵,C-1是υ、ω转为wR和wL的解耦矩阵。
本发明实施例中,将所述机器人的姿态标定参数及位置标定参数,代入式(2)中,即以标定后的参数替代理论计算的C矩阵,即可完成模型的标定。
本发明实施例提供的一种双轮差速机器人运动模型标定方法,通过用户控制或推行机器人运动6条简单轨迹,并输入轨迹信息即可实现对机器人双轮差速运动模型的参数标定,对工作人员专业技术要求低,节约了标定时间。
在一可选实施例中,所述获取用户输入的第一参数,包括:
显示第一参数输入界面,并获取用户输入的所述第一参数。
在一可选实施例中,所述获取用户输入的第二参数,包括:
显示第二参数输入界面,并获取用户输入的所述第二参数。
本发明通过显示输入界面,引导用户根据输入界面显示内容输入相应参数,进一步降低了标定难度,使从无标定经验的用户也能根据显示提示完成参数的输入,进一步节约了标定成本及标定时间。
在一可选实施例中,所述的双轮差速机器人运动模型标定方法,还包括:
显示开始按钮,当检测到用户按下所述开始按钮时,确定为机器人运动轨迹的起始点。
显示完成按钮,当检测到用户按下所述完成按钮时,确定为所述机器人运动轨迹的结束点。
通过显示开始和/或起始按钮,使用户可以通过按钮输入机器人运动轨迹的起始和/或结束点位置,进一步提高了标定效率,且用户可以根据实际情况随时起始或终止运动轨迹,用户体验更好。
在一可选实施例中,所述根据所述第一参数及对应的机器人左、右轮电机转动次数,确定机器人的姿态标定参数,包括:
根据下式(3)确定机器人的姿态标定参数:
其中,C2,1和C2,2是机器人的姿态标定参数,是由机器人运动时的第一直行前进轨迹、第一直行后退轨迹、原地左转轨迹及原地右转轨迹4条轨迹生成的广义姿态耦合矩阵,θN,m为第m条轨迹结束点处机器人的运动角度,θ0,m为第m条轨迹起始点处机器人的运动角度,m=1-4。
根据下式(4)确定机器人的位置标定参数:
其中,C1,1和C1,2是机器人的位置标定参数,是由机器人的第二直行前进轨迹和第二直行后退轨迹2条轨迹生成的广义位置耦合矩阵,xN,n为第n条轨迹结束点处机器人的x方向运动距离,yN,n为第n条轨迹结束点处机器人的y方向运动距离,x0,n为第n条轨迹起始点处机器人的x方向运动距离,y0,n为第n条轨迹起始点处机器人的y方向运动距离,n=1-2。
在一可选实施例中,所述标定运动模型之后,还包括:
基于标定后的运动模型,输出机器人航迹推测信息,所述航迹推测信息包括位置信息和姿态信息。
具体地,以时间间隔T采集机器人左、右轮的转动次数,经过理论计算可得到右轮的旋转速度wR和左轮的旋转速度wL,通过耦合矩阵C计算出当前移动机器人的实际线速度υk和角速度ωk,采用下列公式(5)增量式算法,得到当前航迹推测信息。
其中,k表示第k个采样时间。
在一可选实施例中,所述标定运动模型之后,还包括:
接收用户下发的机器人的期望速度信息;
基于标定后的运动模型,根据所述期望速度信息和机器人当前速度信息,对机器人的速度进行闭环控制,其中所述速度信息包括角速度和/或线速度。
在一可选实施例中,根据所述期望速度信息和当前速度信息,对机器人的速度进行闭环控制,包括:
根据下式(6)-(8),将机器人左、右轮分别作为独立系统,分别进行闭环控制:
其中,υobj为期望线速度、ωobj为期望角速度;υcur为机器人当前线速度、ωcur为机器人当前角速度;C-1 1,1、C-1 1,2、C-1 2,1、C-1 2,2分别为所述机器人的姿态标定参数和位置标定参数的逆;ΔwL为机器人左轮期望旋转速度和当前旋转速度的差、表示左轮P控制量,ΔwR为机器人右轮期望旋转速度和当前旋转速度的差、表示右轮P控制量;ΣwL(t)表示当前控制周期机器人左轮I控制量、ΣwR(t)表示当前控制周期机器人右轮I控制量,ΣwL(t-1)表示上一控制周期机器人左轮I控制量、ΣwR(t-1)表示上一控制周期机器人右轮I控制量;PWML为控制机器人左轮速度的PWM输出占空比,PWMR为控制机器人右轮速度的PWM输出占空比;KP,L和KI,L是左轮PI控制参数,KP,R和KI,R是右轮的PI控制参数。
参见图3,本发明实施例还提供了一种双轮差速机器人运动模型标定装置,包括:
第一获取模块10,用于获取用户输入的第一参数,并实时获取与所述第一参数对应的机器人左、右轮电机转动次数,所述第一参数包括机器人运动时的第一直行前进轨迹信息、第一直行后退轨迹信息、原地左转轨迹信息及原地右转轨迹信息;
第一确定模块20,用于根据所述第一参数及对应的机器人左、右轮电机转动次数,确定机器人的姿态标定参数;
第二获取模块30,用于获取用户输入的第二参数,并实时获取与所述第二参数对应的机器人左、右轮电机转动次数,所述第二参数包括第二直行前进轨迹信息和第二直行后退轨迹信息;
第二确定模块40,用于根据所述第二参数、所述第二参数对应的机器人左、右轮电机转动次数以及所述姿态标定参数,确定机器人的位置标定参数;
标定模块50,用于根据所述机器人的姿态标定参数和位置标定参数,标定理论运动模型。
在一可选实施例中,所述的双轮差速机器人运动模型标定装置,还包括显示模块,用于显示第一参数输入界面,所述第一获取模块用于获取用户输入的所述第一参数。
在一可选实施例中,所述显示模块还用于显示第二参数输入界面,所述第二获取模块用于获取用户输入的所述第二参数。
在一可选实施例中,所述的双轮差速机器人运动模型标定装置,还包括起始点确定模块:
所述显示模块,还用于显示开始按钮,所述起始点确定模块,用于当检测到用户按下所述开始按钮时,确定为所述机器人运动轨迹的起始点。
在一可选实施例中,所述的双轮差速机器人运动模型标定装置,还包括结束点确定模块:
所述显示模块,还用于显示完成按钮,所述结束点确定模块,用于当检测到用户按下所述完成按钮时,确定为所述机器人运动轨迹的结束点。
在一可选实施例中,所述的双轮差速机器人运动模型标定装置,还包括:
航迹推测模块,用于基于标定后的运动模型,输出机器人航迹推测信息,所述航迹推测信息包括位置信息和姿态信息。
在一可选实施例中,所述的双轮差速机器人运动模型标定装置,还包括:
接收模块,用于接收用户下发的机器人期望速度信息;
控制模块,用于基于标定后的运动模型,根据所述期望速度信息和机器人当前速度信息,对机器人的速度进行闭环控制,其中所述速度信息包括角速度和/或线速度。
本发明装置实施例与方法实施例一一对应,具体描述及效果参见方法实施例在此不再赘述。
参见图4,本发明实施例还提供了一种双轮差速机器人里程计系统,包括壳体1及设置在壳体1内的由上述运动模型标定装置实施例提供的标定装置。
本发明实施例提供的一种双轮差速机器人里程计系统,通过用户控制或推行机器人运动6条简单轨迹,并输入轨迹信息即可实现对机器人双轮差速运动模型的参数标定,对工作人员专业技术要求低,节约了标定时间;通过显示输入界面,引导用户根据输入界面显示内容输入相应参数,进一步降低了标定难度,使从无标定经验的用户也能根据显示提示完成参数的输入,进一步节约了标定成本及标定时间;通过显示开始和/或完成按钮,使用户可以通过按钮输入机器人运动轨迹的起始和/或结束点位置,进一步提高了标定效率,且用户可以根据实际情况随时起始或结束运动轨迹,用户体验更好;通过将装置设置在壳体内,确保在机器人运动过程中装置不易受损。
如图4所示,所述壳体上设有标准接口,用于通过快插线缆将所述运动模型标定装置的各功能引脚与对应的外部设备连接。通过设置标准接口既便于与外部设备连接,又便于将接线隐于壳体内,保护各路信号的接线。
如图4所示,所述标准接口包括:
所述电源接口,用于为里程计系统提供5V安全电压;
所述人机通信接口,用于连接所述接收模块和外部控制系统以使用户下发机器人的期望速度信息,和/或连接所述航迹推测模块和所述外部控制系统以为用户提供机器人航迹推测信息;
所述测量和控制接口,用于连接所述获取模块与机器人的外部测量装置;和/或连接所述控制模块与机器人的控制系统;和/或
所述烧录接口,用于连接用户PC和所述运动模型标定装置以实现算法更新。
以下为本发明的一具体实施例:
本实施例提供了一种双轮差速机器人里程计系统,如图4所示,壳体由6面亚克力板制作而成,底板左右两边略宽,各面设计有公或母拼装螺丝接口,通过螺丝拼装在一起,将电路板(运动模型标定装置)和各路信号连接线保护并隐藏;在里程计外观正面设计有2个标准USB接口(USB-A和USB-B),其中,USB-A为电源接口,主要为里程计系统提供5v稳定电源,USB-B为烧录接口,通过该接口可将板载算法烧录到里程计系统中;设计有2个标准DB28接口(DB28-A和DB28-B),DB28-A为左轮电机信号测量和控制接口,DB28-B为右轮电机信号测量和控制接口,通过线缆分别与对应电机的编码器和驱动器相连接;设计有3个标准DB9接口(DB9-A、DB9-B和DB9-C),其中,DB9-A为人机通信接口,里程计通过该接口与上位计算机进行通讯,用户通过上位计算机对机器人下发速度指令,里程计收到后计算闭环控制PWM输出占空比,最终通过两个DB28接口控制左、右轮电机运动,同时通过DB9-A,还将航迹推测信息发送给上位计算机,DB9-B和DB9-C为预留扩展接口;在里程计外观左右两侧设计有散热口3,散热口3处安装有散热风扇,用于里程计工作期间的散热;在里程计外观底面设计有设备法兰安装接口2,用于设备的固定和安装。
本实施例提供的里程计的标定原理及流程如下:
增量式编码器的信号计数寄存器仅是一个双向的增减计数器,而且寄存器存储空间为16bit,超过上界(下届)会自动跳转,所以需要判断并记录编码器计数方向,信号采集流程图如图5所示,其中“编码状态”包含递增、递减、超过上界和超过下界4种情况。
将双轮差速机器人的运动模型(2)和航迹推测计算公式(5)联立,可以得到关于矩阵C的四个参数Ci,j的线性化等式,i、j为参数标号。对姿态标定参数C2,1与C2,2有方程:
其中,N表示轨迹运动期间的采样总次数。
记则可得等式:让机器人行走4条轨迹(直线前进、直线后退、原地左转、原地右转),记录下每一采样时刻的编码器增量和机器人姿态改变绝对值,然后通过最小二乘法转化的广义逆矩阵求解下述方程(10)和前述公式(3)就可得到C2,1和C2,2。
对C1,1和C1,2,记
则有:
同理可得前述关系式(4)。需要说明的是,Φxy中的参数θk、ωk不能直接测得,需间接使用上一步辨识出来的参数C2,1、C2,2,并结合运动学方程计算得到。
由上,给出标定流程如下:
1)使机器人行走一段轨迹,记录下每一采样时刻的编码器增量,并更新回归子Φθ,记录轨迹始末点上机器人的姿态θN与θ0,保存回归子Φθ和姿态改变量θN-θ0;
2)重复流程1四次,按公式(3)计算出C2,1和C2,2;
3)使机器人行走一段轨迹,记录下每一采样时刻的编码器增量,并通过已辨识获得的参数C2,1、C2,2和运动学方程,计算每一采样时刻的姿态值,并更新回归子Φxy,记录轨迹始末点上机器人的位置(xN,yN)与(x0,y0),保存回归子Φxy和位置改变量xN-x0、yN-y0;
4)重复流程3两次,按公式(4)计算出参数C1,1和C1,2。
参数标定辨识完毕。
本实施例提供的里程计速度PI闭环控制包括:
移动机器人的左轮和右轮被作为独立系统,分别进行PI控制,如图6所示,其中υobj、ωobj为期望线速度和角速度;υcur、ωcur为移动机器人实际线速度和角速度;PWML、PWMR为控制机器人左、右轮速度的PWM输出占空比;解耦、耦合矩阵如式(2)所示;标定后的C矩阵由式(3)和(4)求得。
控制算法如下:
根据前述公式(6)-(8)计算左、右轮PWM输出占空比。板载算法以周期1ms的中断执行上述PI控制算法,上、下位机通讯速率是50ms,即每50ms更新一次期望的控制量,在每50ms中按给定的期望控制量执行50次PI算法,实现动态平衡。
本发明通过简单采集电机左、右轮编码反馈数值即可实现里程计功能,硬件电路的设计非常简单,系统工作稳定可靠。实际应用过程中,用户仅通过推行机器人直行和旋转若干次,即可完成整个标定过程,且需要的场地范围不大,标定的参数精确。基于标定的参数,通过速度PI闭环控制,实现了机器人运行过程中短时间内航迹的准确推算,以及对机器人速度的准确控制。本发明使标定后的机器人运动模型参数更为适配机器人本体和工作地面环境,可广泛应用于双轮差速移动机器人导航控制任务中。
本发明说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (21)
1.一种双轮差速机器人运动模型标定方法,其特征在于,包括:
获取用户输入的第一参数,并实时获取与所述第一参数对应的机器人左、右轮电机转动次数,所述第一参数包括机器人运动时的第一直行前进轨迹信息、第一直行后退轨迹信息、原地左转轨迹信息及原地右转轨迹信息;
根据所述第一参数及对应的机器人左、右轮电机转动次数,确定机器人的姿态标定参数;
获取所述用户输入的第二参数,并实时获取与所述第二参数对应的机器人左、右轮电机转动次数,所述第二参数包括第二直行前进轨迹信息和第二直行后退轨迹信息;
根据所述第二参数、所述第二参数对应的机器人左、右轮电机转动次数以及所述姿态标定参数,确定机器人的位置标定参数;
根据所述机器人的姿态标定参数及机器人的位置标定参数,标定理论运动模型。
2.根据权利要求1所述的双轮差速机器人运动模型标定方法,其特征在于,所述获取用户输入的第一参数,包括:
显示第一参数输入界面,并获取用户输入的所述第一参数。
3.根据权利要求2所述的双轮差速机器人运动模型标定方法,其特征在于,所述获取所述用户输入的第二参数,包括:
显示第二参数输入界面,并获取所述用户输入的所述第二参数。
4.根据权利要求1所述的双轮差速机器人运动模型标定方法,其特征在于,还包括:
显示开始按钮,当检测到用户按下所述开始按钮时,确定为机器人运动轨迹的起始点。
5.根据权利要求4所述的双轮差速机器人运动模型标定方法,其特征在于,还包括:
显示完成按钮,当检测到用户按下所述完成按钮时,确定为所述机器人运动轨迹的结束点。
6.根据权利要求1-5任一项所述的双轮差速机器人运动模型标定方法,其特征在于,所述轨迹信息包含轨迹标识以及机器人x、y方向运动距离和/或机器人运动角度。
9.根据权利要求8所述的双轮差速机器人运动模型标定方法,其特征在于,所述标定运动模型之后,还包括:
基于标定后的运动模型,输出机器人航迹推测信息,所述航迹推测信息包括位置信息和姿态信息。
10.根据权利要求9所述的双轮差速机器人运动模型标定方法,其特征在于,所述标定运动模型之后,还包括:
接收用户下发的机器人期望速度信息;
基于标定后的运动模型,根据所述期望速度信息和机器人当前速度信息,对机器人进行闭环控制,其中所述速度信息包括角速度和/或线速度。
11.根据权利要求10所述的双轮差速机器人运动模型标定方法,其特征在于,根据所述期望速度信息和当前速度信息,对机器人进行闭环控制,包括:
根据下式分别确定机器人左轮和右轮的PWM输出占空比:
其中,υobj为期望线速度、ωobj为期望角速度;υcur为机器人当前线速度、ωcur为机器人当前角速度;C-1 1,1、C-1 1,2、C-1 2,1、C-1 2,2分别为所述机器人的姿态标定参数和位置标定参数的逆;ΔwL为机器人左轮期望旋转速度和当前旋转速度的差、表示左轮P控制量,ΔwR为机器人右轮期望旋转速度和实际旋转速度的差、表示右轮P控制量;ΣwL(t)表示当前控制周期机器人左轮I控制量、ΣwR(t)表示当前控制周期机器人右轮I控制量,ΣwL(t-1)表示上一控制周期机器人左轮I控制量、ΣwR(t-1)表示上一控制周期机器人右轮I控制量;PWML为控制机器人左轮速度的PWM输出占空比,PWMR为控制机器人右轮速度的PWM输出占空比;KP,L和KI,L是左轮PI控制参数,KP,R和KI,R是右轮的PI控制参数;
根据确定的左、右轮PWM输出占空比,分别对机器人左、右轮进行闭环控制。
12.一种双轮差速机器人运动模型标定装置,其特征在于,包括:
第一获取模块,用于获取用户输入的第一参数并实时获取与所述第一参数对应的机器人左、右轮电机转动次数,所述第一参数包括机器人运动时的第一直行前进轨迹信息、第一直行后退轨迹信息、原地左转轨迹信息及原地右转轨迹信息;
第一确定模块,用于根据所述第一参数及对应的机器人左、右轮电机转动次数,确定机器人的姿态标定参数;
第二获取模块,用于获取所述用户输入的第二参数,并实时获取与所述第二参数对应的机器人左、右轮电机转动次数,所述第二参数包括第二直行前进轨迹信息和第二直行后退轨迹信息;
第二确定模块,用于根据所述第二参数、所述第二参数对应的机器人左、右轮电机转动次数以及所述姿态标定参数,确定机器人的位置标定参数;
标定模块,用于根据所述机器人的姿态标定参数及机器人的位置标定参数,标定理论运动模型。
13.根据权利要求12所述的双轮差速机器人运动模型标定装置,其特征在于,还包括显示模块,用于显示第一参数输入界面,所述第一获取模块用于获取用户输入的所述第一参数。
14.根据权利要求13所述的双轮差速机器人运动模型标定装置,其特征在于,所述显示模块还用于显示第二参数输入界面,所述第二获取模块用于获取所述用户输入的所述第二参数。
15.根据权利要求13所述的双轮差速机器人运动模型标定装置,其特征在于,还包括起始点确定模块:
所述显示模块,还用于显示开始按钮,所述起始点确定模块,用于当检测到用户按下所述开始按钮时,确定为机器人运动轨迹的起始点。
16.根据权利要求15所述的双轮差速机器人运动模型标定装置,其特征在于,还包括结束点确定模块:
所述显示模块,还用于显示完成按钮,所述结束点确定模块,用于当检测到用户按下所述完成按钮时,确定为所述机器人运动轨迹的结束点。
17.根据权利要求12-16任一项所述的双轮差速机器人运动模型标定装置,其特征在于,还包括:
航迹推测模块,用于基于标定后的运动模型,输出机器人航迹推测信息,所述航迹推测信息包括位置信息和姿态信息。
18.根据权利要求17所述的双轮差速机器人运动模型标定装置,其特征在于,还包括:
接收模块,用于接收用户下发的机器人期望速度信息;
控制模块,用于基于标定后的运动模型,根据所述期望速度信息和机器人当前速度信息,对机器人进行闭环控制,其中所述速度信息包括角速度和/或线速度。
19.一种双轮差速机器人里程计系统,其特征在于,包括壳体及设置在壳体内的由权利要求18所述的运动模型标定装置。
20.根据权利要求19所述的双轮差速机器人里程计系统,其特征在于,所述壳体上设有标准接口,用于将所述运动模型标定装置的各功能引脚与对应的外部设备连接。
21.根据权利要求20所述的双轮差速机器人里程计系统,其特征在于,所述标准接口包括:
电源接口,用于为里程计系统提供5V安全电压;
人机通信接口,用于连接所述接收模块和外部控制系统以使用户下发机器人的期望速度信息,和/或连接所述航迹推测模块和所述外部控制系统以为用户提供机器人航迹推测信息;
测量和控制接口,用于连接所述获取模块与机器人的外部测量装置;和/或连接所述控制模块与机器人的控制系统;和/或
烧录接口,用于连接用户PC和所述运动模型标定装置以实现算法更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811409423.3A CN109571467B (zh) | 2018-11-23 | 2018-11-23 | 双轮差速机器人运动模型标定方法、装置及里程计系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811409423.3A CN109571467B (zh) | 2018-11-23 | 2018-11-23 | 双轮差速机器人运动模型标定方法、装置及里程计系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109571467A CN109571467A (zh) | 2019-04-05 |
CN109571467B true CN109571467B (zh) | 2020-09-18 |
Family
ID=65923862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811409423.3A Active CN109571467B (zh) | 2018-11-23 | 2018-11-23 | 双轮差速机器人运动模型标定方法、装置及里程计系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109571467B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113947356A (zh) * | 2021-10-19 | 2022-01-18 | 刘正学 | 一种基于算法的多线程集单系统 |
CN115655311A (zh) * | 2022-10-26 | 2023-01-31 | 齐鲁工业大学 | 一种基于扫描匹配的阿克曼型机器人里程计标定方法 |
CN116026368B (zh) * | 2023-03-29 | 2023-07-04 | 上海仙工智能科技有限公司 | 移动机器人的参数联合标定方法及系统、设备、存储介质 |
CN116372941B (zh) * | 2023-06-05 | 2023-08-15 | 北京航空航天大学杭州创新研究院 | 机器人参数标定方法及装置和轮式机器人 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5156038A (en) * | 1991-08-01 | 1992-10-20 | Motorola, Inc. | Calibration technique for a vehicle's differential odometer |
US6839972B2 (en) * | 2001-06-15 | 2005-01-11 | Snap-On Incorporated | Self-calibrating position determination system |
KR100440166B1 (ko) * | 2002-07-23 | 2004-07-12 | 현대자동차주식회사 | 레졸버 위상 측정장치 및 방법 |
CN100578153C (zh) * | 2005-10-24 | 2010-01-06 | 何铁 | 车载速度测量仪的校准方法 |
TWI473971B (zh) * | 2013-07-24 | 2015-02-21 | Sun Hsing Mechanical Co Ltd | Calibration device for wheel alignment system and method thereof |
CN105005206B (zh) * | 2014-04-16 | 2017-07-25 | 上海交通大学 | 一种agv运动控制半实物仿真系统 |
KR101705601B1 (ko) * | 2014-05-30 | 2017-02-13 | 동명대학교 산학협력단 | 3차원 깊이정보기반 자율주행 로봇의 위치추정 장치 및 그 방법 |
US10162354B2 (en) * | 2016-07-21 | 2018-12-25 | Baidu Usa Llc | Controlling error corrected planning methods for operating autonomous vehicles |
CN106393104B (zh) * | 2016-08-25 | 2019-06-28 | 北京创想智控科技有限公司 | 一种移动机器人的行程校准方法 |
CN106289327B (zh) * | 2016-11-08 | 2019-05-21 | 成都通甲优博科技有限责任公司 | 一种差分移动机器人里程计标定方法 |
CN107264276B (zh) * | 2017-06-20 | 2020-08-21 | 北京智尊保汽车科技有限公司 | 两轮差速控制无级平衡标定方法 |
CN108372518B (zh) * | 2018-01-08 | 2020-07-31 | 浙江立石机器人技术有限公司 | 机器人转向误差标定方法、装置及系统 |
-
2018
- 2018-11-23 CN CN201811409423.3A patent/CN109571467B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109571467A (zh) | 2019-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109571467B (zh) | 双轮差速机器人运动模型标定方法、装置及里程计系统 | |
Juang et al. | Design and control of a two-wheel self-balancing robot using the arduino microcontroller board | |
CN103753534B (zh) | 一种移动机器人控制器及其控制方法 | |
CN106843215A (zh) | 基于人体动态行为追踪的智能跟随机器人系统和方法 | |
CN103606206B (zh) | 一种使用汽车行驶状态感知装置的汽车行驶状态感知方法 | |
CN108759822B (zh) | 一种移动机器人3d定位系统 | |
CN113093756A (zh) | 树莓派平台下基于激光slam的室内导航机器人 | |
CN108981695A (zh) | 一种基于ros的四轮车导航系统 | |
Dobrokvashina et al. | Sensors modelling for Servosila Engineer crawler robot in Webots simulator | |
Dhaouadi et al. | Development of a modular mobile robot platform: Applications in motion-control education | |
CN108594798A (zh) | 一种可实现蜂拥控制的机器人小车系统及其控制方法 | |
Steinhauser et al. | Low-cost carry-home mobile platforms for project-based evaluation of control theory | |
Bhuvaneswari et al. | Automated exterior wall painting robot using Raspberry Pi | |
CN111152260A (zh) | 一种串联旋转关节机械臂的关节转角辅助测量系统及方法 | |
Churavy et al. | Effective implementation of a mapping swarm of robots | |
Ma et al. | Plantbot: A new ROS-based robot platform for fast building and developing | |
Ore-Ofe et al. | Development of a Head Gesture-Controlled Robot Using an Accelerometer Sensor | |
Tompa et al. | Remote control and monitoring of an autonomous mobile robot | |
Rui et al. | Design and implementation of tour guide robot for red education base | |
Jovanović et al. | Design and Implementation of a Mobile Platform for Education and Research | |
Korayem et al. | Design, modelling and experimental analysis of wheeled mobile robots | |
CN114859700B (zh) | 一种两轮智能平衡小车的控制方法、装置及系统 | |
Artemciukas et al. | Real-time control system for various applications using sensor fusion algorithm | |
Potasheva et al. | Wireless Information Processing Module for Augmented Reality system | |
Beksi et al. | The microvision robot and its capabilities |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |