CN109086466A - 单腿多轴双足机器人运动学联合仿真方法 - Google Patents
单腿多轴双足机器人运动学联合仿真方法 Download PDFInfo
- Publication number
- CN109086466A CN109086466A CN201710447011.8A CN201710447011A CN109086466A CN 109086466 A CN109086466 A CN 109086466A CN 201710447011 A CN201710447011 A CN 201710447011A CN 109086466 A CN109086466 A CN 109086466A
- Authority
- CN
- China
- Prior art keywords
- module
- biped
- leg
- matlab
- emulation
- 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
- 238000004088 simulation Methods 0.000 title claims abstract description 28
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000007246 mechanism Effects 0.000 claims abstract description 36
- 239000011159 matrix material Substances 0.000 claims description 47
- 230000000694 effects Effects 0.000 claims description 3
- 238000006386 neutralization reaction Methods 0.000 claims description 3
- 230000003993 interaction Effects 0.000 abstract description 5
- 210000002414 leg Anatomy 0.000 description 97
- 210000003371 toe Anatomy 0.000 description 25
- 210000002683 foot Anatomy 0.000 description 16
- 238000010586 diagram Methods 0.000 description 10
- 210000001503 joint Anatomy 0.000 description 10
- 210000004394 hip joint Anatomy 0.000 description 9
- 239000012636 effector Substances 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 4
- 210000000544 articulatio talocruralis Anatomy 0.000 description 4
- 210000001624 hip Anatomy 0.000 description 3
- 210000000629 knee joint Anatomy 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 210000003423 ankle Anatomy 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 210000000689 upper leg Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- 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/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1605—Simulation of manipulator lay-out, design, modelling of manipulator
-
- 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/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1671—Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种单腿多轴双足机器人运动学联合仿真方法,方法包括:S1、在Matlab中构建单腿多自由度双足机构模型;S2、在六自由度单机械臂puma560的仿真模块sl_rrmc2的基础上根据双足特性设计得到与左右腿对应的两个Simulink仿真模块;S3、将步骤S1中建立的双足机构模型与步骤S2中开发的Simulink仿真模块进行交互实现行走的运动学联合仿真。本发明借鉴单机械臂Puma560的仿真模块sl_rrmc2,重新设计适用于多自由度双足机构的运动仿真Simulink模块,将该模块和Matlab Robotics的交互实现对该双足机构的运动学联合仿真,本发明不限于该双足机构是否满足Pieper准则,在Matlab中可用于小于或大于六自由度的多关节双足机构的仿真。
Description
技术领域
本发明涉及人工智能机器人的运动学仿真领域,尤其涉及一种单腿多轴双足机器人运动学联合仿真方法。
背景技术
目前市面上的双足仿人机器人多为单腿具有5到6个旋转关节(髋关节2~3个,膝关节1个,踝关节2个)的多关节机构。双足机器人的轨迹规划在运动学仿真层面的实现,即多关节机构运动学仿真需要解决由末端执行器空间笛卡尔坐标位姿获取各关节空间坐标位姿的逆运动学。
逆运动学求解方法包括解析法和几何数值法,由于几何数值法的迭代性质,比解析法速度慢,四轴以上的多关节机构虚拟设计中基本不使用几何数值法。
仿真工具Matlab Robotics工具箱自带的逆运动学函数ikine和ikine6s等均为解析法,它们可以应用于具有三个及六个旋转自由度的多关节机构求得逆运动学解析解,这些解析法比需要多次迭代的几何数值法在多关节机器人虚拟设计上有着更广泛的应用。然而,面对小于或大于6自由度双足机构,目前Matlab Robotics工具箱无法直接实现其运动学仿真。参考图1,比如德国FREIEN大学的‘Dany Walker’机器人和优必选的Alpha系列机器人,均为单腿5个旋转关节。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种单腿多轴双足机器人运动学联合仿真方法。
本发明解决其技术问题所采用的技术方案是:构造一种单腿多轴双足机器人运动学联合仿真方法,包括:
S1、在Matlab中构建单腿多自由度双足机构模型;
S2、在六自由度单机械臂puma560的仿真模块sl_rrmc2的基础上根据双足特性设计得到与左右腿对应的两个Simulink仿真模块;
S3、将步骤S1中建立的双足机构模型与步骤S2中开发的Simulink仿真模块进行交互实现行走的运动学联合仿真。
较佳的,所述步骤S1包括:
S11、利用Matlab Robotics中的Link函数构建左右腿的每个关节;
S12、利用Matlab Robotics中的SerialLink函数将右腿的所有关节连接形成右腿结构体Rleg以及将左腿的所有关节连接形成左腿结构体Lleg。
较佳的,所述步骤S2包括:
将仿真模块sl_rrmc2中的jacob0模块中的函数jacob0()进行修改,使其在每个样本时刻计算雅可比矩阵之前,将移动基坐标的值更新到右腿结构体Rleg或者左腿结构体Lleg的基坐标系位姿矩阵base中;
将仿真模块sl_rrmc2中的逆矩阵inv函数替换为伪逆矩阵pinv函数。
较佳的,所述步骤S3包括:
S31、在Matlab中打开步骤S2中设计的两个Simulink仿真模块,在Simulink仿真模块的jacob0、fkine和plot三个模块的功能模块参数的目标对象绑定为右腿结构体Rleg或者左腿结构体Lleg;
S32、在Matlab中规划左右腿对应的基坐标轨迹以及足尖轨迹,将左右腿对应的基坐标轨迹以及足尖轨迹在XYZ三个方向的分量分别用离散向量形式一次性写入Simulink仿真模块;
S33、运行Simulink仿真模块,Simulink仿真模块自动调用Matlab中定义好的右腿结构体Rleg和左腿结构体Lleg并执行仿真逻辑。
较佳的,所述步骤S33所述的执行仿真逻辑具体包括:
S331、利用From Workspace模块和Matlab交互,将Matlab中生成的足尖轨迹输入到xyz2T模块中,转化为齐次变换矩阵Tdesired;
S332、fkine模块求得右腿/左腿的所有关节的关节空间角度对应的足尖位姿矩阵Tfoot,tr2diff模块将足尖位姿矩阵Tfoot和步骤S331中的齐次变换矩阵Tdesired通过函数tr2delta(Tdesired,Tfoot)求差分,获得位姿增量v*;
S333、jacob0模块求出雅可比矩阵雅可比矩阵通过伪逆矩阵pinv函数求得逆阵后,在Matrix Multiply模块中和步骤S332中获得的位姿增量v*相乘,获得关节空间速度joint servo模块对求积分获得关节空间角度plot模块基于S-Function的splotbot构建3D仿真效果图,跳转至步骤S332循环操作。
实施本发明的单腿多轴双足机器人运动学联合仿真方法,具有以下有益效果:本发明借鉴单机械臂Puma560的仿真模块sl_rrmc2,根据双足特性重新设计适用于多自由度双足机构的运动仿真Simulink模块,将该模块和Matlab Robotics的交互实现对该双足机构的运动学联合仿真,本发明不限于该双足机构是否满足Pieper准则,在Matlab中可用于小于或大于六自由度的多关节双足机构的仿真。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图:
图1是五自由度双足机器人的结构示意图;
图2是基于Matlab Robotics生成的五自由度双足机构示意图;
图3是基于Matlab Robotics生成的五自由度不包含球形关节双足设计图;
图4是右腿结构体详细参数示意图;
图5是左腿结构体详细参数示意图;
图6为本实施例的Simulink仿真模块的框图;
图7是双足挪动的多帧3D仿真图;
图8是双足踢正步的轨迹设计参考图;
图9是双足踢正步的多帧3D仿真图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的典型实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
参考图1,本发明总的思路是:
S1、在Matlab中构建单腿多自由度双足机构模型;
S2、在六自由度单机械臂puma560的仿真模块sl_rrmc2的基础上根据双足特性设计得到与左右腿对应的两个Simulink仿真模块;
S3、将步骤S1中建立的双足机构模型与步骤S2中开发的Simulink仿真模块进行交互实现行走的运动学联合仿真。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
关于步骤S1:在Matlab中构建单腿多自由度双足机构模型;
参考图2,本实施例基于图1的结构,在Matlab Robotics中绘制了单腿5自由度的双足机构简图,市面上发售的五轴双足机器人也多为该结构,比如优必选Alpha系列机器人。该机构一条腿是一个开式运动链,由5个旋转关节串联而成。在髋关节处有roll(围绕Z轴旋转)和pitch(围绕X轴旋转)两个旋转自由度,膝关节处有pitch一个旋转自由度,踝关节处有pitch和roll两个旋转自由度,则从上到下顺序为roll-pitch-pitch-pitch-roll。这5个旋转关节由三根连杆连接而成,本实施例中使用的各连杆参数定义为大腿L1=0.5单位,小腿L2=0.5单位,足长L3=0.2单位。
以笛卡尔坐标系空间(0,0,0)为绘图原点,该点也是左腿基坐标(左右腿的髋关节的坐标为各自的基坐标),基坐标以向下为Z轴正方向,向右为X轴正方向,向前为Y轴正方向。末端(足尖)的坐标系如图3所示。左腿初始位置表示5个旋转关节均为0时,左腿大腿连杆和小腿连杆垂直向下,左足部连杆与地面保持平行,左足尖即末端执行器的位置在笛卡尔坐标系空间(0,0.2,1)处,右腿初始位置与左腿平行,右腿髋关节初始空间位置(0.3,0,0)表明与左腿髋关节沿X轴正方向距离0.3单位,右腿足尖的空间位置(0.3,0.2,1)。
表1:本实施例中涉及的双足机构模型的运动学参数列表
本实施例中涉及的双足机构模型的运动学参数见表1,本实施例中步骤S1具体包括:
S11、利用Matlab Robotics中的Link函数构建左右腿的每个关节。
比如右腿五个旋转关节R1到R5的创建句柄如下,同时用qlim限制每个关节的旋转范围,用弧度表示,角度转弧度为deg=pi/180,offset为需要求解的关节角theta的偏移量,该偏移量需要在qlim限制的范围内。
R1=Link('d',0,'a',0,'alpha',90*deg,'offset',90*deg);
R2=Link('d',0,'a',-0.5,'alpha',0*deg,'offset',0*deg);
R3=Link('d',0,'a',-0.5,'alpha',0,'offset',0*deg);
R4=Link('d',0,'a',0,'alpha',-90*deg,'offset',0*deg);
R5=Link('d',0.2,'a',0,'alpha',90*deg,'offset',90*deg);
R1.qlim=[-90 90]*deg;
R2.qlim=[-90 90]*deg;
R3.qlim=[-90 90]*deg;
R4.qlim=[-90 90]*deg;
R5.qlim=[-90 90]*deg;
S12、利用Matlab Robotics中的SerialLink函数将右腿的5个关节连接形成右腿结构体Rleg以及将左腿的5个关节连接形成左腿结构体Lleg。
以右腿为例,右腿结构体详细参数参考图4。SerialLink函数将这5个关节连接成右腿,定义name为Rleg,基坐标系位姿矩阵base沿x方向平移0.3单位形成右腿结构体Rleg:
leg=SerialLink(R,'name','Rleg','base',transl(0.3,0,0));
同理,生成左腿结构体Lleg,左腿结构体详细参数参考图5。左右腿关节角初始位置为:
图4、5的位姿矩阵base中的前3行3列为旋转矩阵,而矩阵base的第4列的前3行即为基坐标(髋关节的坐标)。旋转矩阵各分量值根据θ角度变化而变动,仿真时θ角度由Simulink模块自行计算并循环输入jacob0模块,不需要与Maltab交互更新。而基坐标空间位置的变化是在Matlab中规划的,因此在后续联合仿真时,需要将基坐标的值更新到右腿结构体Rleg或者左腿结构体Lleg的矩阵base中,此将在后续介绍。
关于步骤S2:在六自由度单机械臂puma560的仿真模块sl_rrmc2的基础上根据双足特性设计得到与左右腿对应的两个Simulink仿真模块;
由于Matlab Robotics工具箱中没有处理这类具有5个自由度的多关节机构逆运动学的函数,所以本发明提出Simulink+Matlab的联合仿真解决方案。Simulink部分借鉴六自由度单机械臂puma560的仿真模块sl_rrmc2,是一个分解速度运动控制模型(Resolved Rate Motion Control)。参考图6,Simulink仿真模块的核心思想是在时序列的每一样本时刻,关节空间速度是由末端执行器(足尖)的笛卡尔空间速度和机构模型的雅可比矩阵逆阵J-1(θ)相乘得到的,即关节空间速度积分得到关节角度其中,笛卡尔空间速度是由关节角度正运动学求解得到的末端执行器齐次变换矩阵和下一时刻末端执行器目标轨迹的齐次变换矩阵Tdesired进行差分运算后获得的,图6中tr2diff模块实现该步骤。本实施例的Simulink模块与sl_rrmc2区别在于:
首先,sl_rrmc2的研究对象是单臂,本申请是双足机构并行计算,所以图6有两个并行的左右腿模块。
其次,sl_rrmc2的单臂基坐标系是固定的,而本发明中的双足各自的基坐标(髋关节坐标)随时间迁移,所以涉及到使用结构体Rleg和Lleg的数据的模块jacob0、fkine和plot中的基坐标轨迹需要更新。由图6可知,与Matlab Robotics交互获得的基坐标轨迹首先在jacob0模块内进行处理,只要在该模块处更新Rleg和Lleg的数据,fkine和plot模块中的Rleg和Lleg数据也会同步更新。具体的,将原sl_rrmc2中的jacob0模块函数jacob0(model,q)修改为jacob0(model,q,basex,basey,basez)。其中,basex,basey,basez是由Simulink仿真模块中的“左/右腿基坐标x”,“左/右腿基坐标y”,“左/右腿基坐标z”这三个From Workspace模块从Matlab中导入的基坐标轨迹,jacob0(model,q,basex,basey,basez)在每个样本时刻计算雅可比矩阵之前,把basex,basey,basez值更新到Rleg.base或是Lleg.base中。
再次,sl_rrmc2直接在Simulink模型中设计末端执行器的轨迹,没有与Matlab的交互,本申请的基坐标及末端执行器(足尖)轨迹都需要From Workspace模块从Matlab中获取,具体操将在步骤S3中阐述。
最后,sl_rrmc2处理的是六轴机械臂,而本申请是五轴双足,对应的雅可比矩阵是6*5的矩阵,非6*6的方阵,会出现非方阵的矩阵不存在逆矩阵,所以使用伪逆矩阵pinv函数代替逆矩阵inv函数。
关于步骤S3:将步骤S1中建立的双足机构模型与步骤S2中开发的Simulink仿真模块进行交互实现行走的运动学联合仿真。
步骤S2中设计的Simulink模块和步骤S1中构建的Matlab双足机构模型需要进行交互才能实现双足行走的仿真,因此步骤S3具体包括:
S31、在Matlab中打开步骤S2中设计的两个Simulink仿真模块,在Simulink仿真模块的jacob0、fkine和plot三个模块的功能模块参数的目标对象绑定为右腿结构体Rleg或者左腿结构体Lleg;
具体的,在Matlab中利用Robotics的SerialLink函数构建完右腿Rleg和左腿Lleg后,用句柄open_system(”)打开在步骤S2中设计好的Simulink仿真模块,其中涉及到调用RLeg和Lleg模型的模块是jacob0、fkine和plot。在这三个模块Function Block Parameter的Robot Object里输入Rleg或Lleg,后续运行Simulink时就会自动调用Matlab中定义好的Rleg和Lleg结构体,并将所有属性值一并输入这三个模块。
S32、在Matlab中规划左右腿对应的基坐标轨迹以及足尖轨迹,将左右腿对应的基坐标轨迹以及足尖轨迹在XYZ三个方向的分量分别用离散向量形式一次性写入Simulink仿真模块;
以基坐标数据更新为例,在Matlab中规划双足行走基坐标轨迹。比如假定右腿髋关节(基坐标)只沿着Y轴前向运动,在X轴和Z轴方向上没有偏移,则t和t+1时刻右腿基坐标齐次变换矩阵第二行第四列元素Rleg.base(2,4)被更新。XYZ三个方向的完整轨迹分别用以下离散向量形式一次性输入到Simulink的“左/右腿基坐标x”,“左/右腿基坐标y”,“左/右腿基坐标z”模块中,再对接到jacob0模块。t为所有样本时刻组成的向量。
inputbasex=[t(i)',basex(i)'];
inputbasey=[t(i)',basey(i)'];
inputbasez=[t(i)',basez(i)'];
以足尖轨迹输入后运行为例,假定左腿先沿Y轴前进0.2单位,右腿保持静止,然后右腿沿Y轴前进0.2单位,左腿保持静止,实现一次交替,左右足在Z轴方向上没有抬起的运动,类似双足在挪动。该场景下左足尖初始位姿矩阵Aleft=Lleg.fkine(0,0,0,0,0),沿Y轴前进0.2单位后位姿矩阵为Bleft(2,4)=Aleft(2,4)+0.2。函数A=trinterp(Aleft,Bleft,N)对这两个离散位姿矩阵线性插值,生成Aleft和Bleft之间N个位姿矩阵。右腿开始迈步到完成时,左足保持不动B=trinterp(Bleft,Bleft,N)。函数TsLeft=cat(3,A,B)连接这两段位姿矩阵的变化,TsLeft(:,:,i)表示第i个样本时刻左足尖位姿矩阵。同理设计右足尖的位姿轨迹。XYZ三个方向足尖的完整轨迹分别用以下离散向量形式一次性输入到Simulink的“左/右足x”,“左/右足y”,“左/右足z”模块中,对接xyz2T模块。
inputxL=[t(i)',xl(i)'],其中xl(i)=TsLeft(1,4,i);
inputyL=[t(i)',yl(i)'],其中yl(i)=TsLeft(2,4,i);
inputzL=[t(i)',zl(i)'],其中zl(i)=TsLeft(3,4,i);
S33、使用句柄sim(”)运行Simulink仿真模块,Simulink仿真模块自动调用Matlab中定义好的右腿结构体Rleg和左腿结构体Lleg,基坐标和左右足尖的轨迹从Matlab自动读入Simulink仿真模块,Simulink仿真模块执行仿真逻辑,仿真逻辑的具体过程为:
S331、利用From Workspace模块和Matlab交互,将Matlab中生成的足尖轨迹输入到xyz2T模块中,转化为齐次变换矩阵Tdesired;
S332、fkine模块求得右腿/左腿的所有关节的关节空间角度对应的足尖位姿矩阵Tfoot,tr2diff模块将足尖位姿矩阵Tfoot和步骤S331中的齐次变换矩阵Tdesired通过函数tr2delta(Tdesired,Tfoot)求差分,获得位姿增量v*;
S333、jacob0模块求出雅可比矩阵雅可比矩阵通过伪逆矩阵pinv函数求得逆阵后,在Matrix Multiply模块中和步骤S332中获得的位姿增量v*相乘,获得关节空间速度joint servo模块对求积分获得关节空间角度plot模块基于S-Function的splotbot构建3D仿真效果图,跳转至步骤S332循环操作。
需要明确的是,本发明的方法可以但不限于五自由度,也不限于该双足机构是否满足Pieper准则。
下面考虑两种线性运动场景,来验证本发明在双足机器人虚拟设计中的可行性。
(1)挪动场景
考虑一种简化的线性运动场景:整个左腿先沿Y轴前进0.2单位,足尖和地面保持水平没有转动,右腿保持静止,然后同样整个右腿沿Y轴前进0.4单位,超越左腿0.2个单位,此时左腿保持静止,实现一次支撑脚和摆动脚的交替,左右足在X轴方向没有偏移的运动,并且在Z轴方向没有抬起落下的运动,类似双足在挪动。该运动场景下,基坐标和足尖坐标保持同样的速度前向移动,可以预见各关节角度保持不变。这里足尖位姿均由Lleg.fkine(q0)给出。
Simulink时间设置为8秒,plot模块输出了3D仿真图(图7),实现了预设的正确步态仿真,图中按照箭头方向,依次为初始位置→左腿移动→右腿移动→左腿移动→停止位置。
(2)踢正步场景
考虑人类踢正步的双足运动场景:左足先沿Y轴踢出,踢出这一动作定义为左腿髋部的pitch关节由初始0度转动到30度,见图8左图,踢出的足尖与地面保持平行。这使得踝关节和足尖在Y轴上均前移了sin(30°)=0.5单位,同时在Z轴上均向上移动了1-cos(30°)=0.134单位,踝关节的Z轴值由初始1移动到0.886,由于与地面保持平行,足尖的Z轴值也同样由1移动到了0.866。
左足踢出时,左髋关节位置依然保持初始位置,膝关节保持绷直,即增加约束条件q3=0。然后两腿交替,左足垂直落下同时左髋关节沿Y轴前移到和左踝关节相同的Y轴处,右腿髋关节也同时移动到相同的Y轴处,右足尖依然位于初始位置不动(0.3,0.2,1),脚后跟自然抬起,见图8右图,实现整个双足系统的前移。之后换右腿踢出。
Simulink时间设置为9秒,plot模块输出了3D仿真图(图9),实现了预设的正确步态仿真,图中按照箭头方向,依次为初始位置→左腿踢出→左腿触地右腿向前→双腿站定→右腿踢出。
综上所述,实施本发明的单腿多轴双足机器人运动学联合仿真方法,具有以下有益效果:本发明借鉴单机械臂Puma560的仿真模块sl_rrmc2,根据双足特性重新设计适用于多自由度双足机构的运动仿真Simulink模块,将该模块和Matlab Robotics的交互实现对该双足机构的运动学联合仿真,本发明不限于该双足机构是否满足Pieper准则,在Matlab中可用于小于或大于六自由度的多关节双足机构的仿真。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (5)
1.一种单腿多轴双足机器人运动学联合仿真方法,其特征在于,包括:
S1、在Matlab中构建单腿多自由度双足机构模型;
S2、在六自由度单机械臂puma560的仿真模块sl_rrmc2的基础上根据双足特性设计得到与左右腿对应的两个Simulink仿真模块;
S3、将步骤S1中建立的双足机构模型与步骤S2中开发的Simulink仿真模块进行交互实现行走的运动学联合仿真。
2.根据权利要求1所述的单腿多轴双足机器人运动学联合仿真方法,其特征在于,所述步骤S1包括:
S11、利用Matlab Robotics中的Link函数构建左右腿的每个关节的DH模型;
S12、利用Matlab Robotics中的SerialLink函数将右腿的所有关节连接形成右腿结构体Rleg以及将左腿的所有关节连接形成左腿结构体Lleg。
3.根据权利要求1所述的单腿多轴双足机器人运动学联合仿真方法,其特征在于,所述步骤S2包括:
将仿真模块sl_rrmc2中的jacob0模块中的函数jacob0()进行修改,使其在每个样本时刻计算雅可比矩阵之前,将移动基坐标的值更新到右腿结构体Rleg或者左腿结构体Lleg的基坐标系位姿矩阵base中;
将仿真模块sl_rrmc2中的逆矩阵inv函数替换为伪逆矩阵pinv函数。
4.根据权利要求1所述的单腿多轴双足机器人运动学联合仿真方法,其特征在于,所述步骤S3包括:
S31、在Matlab中打开步骤S2中设计的两个Simulink仿真模块,在Simulink仿真模块的jacob0、fkine和plot三个模块的功能模块参数的目标对象绑定为右腿结构体Rleg或者左腿结构体Lleg;
S32、在Matlab中规划左右腿对应的基坐标轨迹以及足尖轨迹,将左右腿对应的基坐标轨迹以及足尖轨迹在XYZ三个方向的分量分别用离散向量形式一次性写入Simulink仿真模块;
S33、运行Simulink仿真模块,Simulink仿真模块自动调用Matlab中定义好的右腿结构体Rleg和左腿结构体Lleg并执行仿真逻辑。
5.根据权利要求4所述的单腿多轴双足机器人运动学联合仿真方法,其特征在于,所述步骤S33所述的执行仿真逻辑具体包括:
S331、利用From Workspace模块和Matlab交互,将Matlab中生成的足尖轨迹输入到xyz2T模块中,转化为齐次变换矩阵Tdesired;
S332、fkine模块求得右腿/左腿的所有关节的关节空间角度对应的足尖位姿矩阵Tfoot,tr2diff模块将足尖位姿矩阵Tfoot和步骤S331中的齐次变换矩阵Tdesired通过函数tr2delta(Tdesired,Tfoot)求差分,获得位姿增量v*;
S333、jacob0模块求出雅可比矩阵雅可比矩阵通过伪逆矩阵pinv函数求得逆阵后,在Matrix Multiply模块中和步骤S332中获得的位姿增量v*相乘,获得关节空间速度joint servo模块对求积分获得关节空间角度plot模块基于S-Function的splotbot构建3D仿真效果图,跳转至步骤S332循环操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710447011.8A CN109086466A (zh) | 2017-06-14 | 2017-06-14 | 单腿多轴双足机器人运动学联合仿真方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710447011.8A CN109086466A (zh) | 2017-06-14 | 2017-06-14 | 单腿多轴双足机器人运动学联合仿真方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109086466A true CN109086466A (zh) | 2018-12-25 |
Family
ID=64839348
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710447011.8A Pending CN109086466A (zh) | 2017-06-14 | 2017-06-14 | 单腿多轴双足机器人运动学联合仿真方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109086466A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110986959A (zh) * | 2019-12-31 | 2020-04-10 | 深圳市优必选科技股份有限公司 | 一种双足机器人及其导航定位方法和装置 |
CN111113431A (zh) * | 2020-01-03 | 2020-05-08 | 武汉科技大学 | 一种六自由度串联机器人逆解优化方法 |
CN111251303A (zh) * | 2020-03-11 | 2020-06-09 | 北京理工大学 | 一种周期性姿态调整的机器人运动控制方法 |
CN112882485A (zh) * | 2021-01-25 | 2021-06-01 | 河南大学 | 一种双足机器人逆运动学的几何计算方法 |
CN113835429A (zh) * | 2021-09-08 | 2021-12-24 | 南方科技大学 | 一种仿生双足机器人的控制方法及仿生双足机器人 |
CN114364495A (zh) * | 2019-09-11 | 2022-04-15 | 株式会社富士 | 多关节机器人、多关节机器人的控制方法及多关节机器人的控制程序 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070083290A1 (en) * | 2005-10-12 | 2007-04-12 | Kenichiro Nagasaka | Apparatus and method for computing operational-space physical quantity |
CN103832504A (zh) * | 2014-02-26 | 2014-06-04 | 南京航空航天大学 | 仿生足式机器人综合仿真策略 |
US20150120044A1 (en) * | 2013-10-31 | 2015-04-30 | Disney Enterprises, Inc. | Method for gait generation and tracking control for a bipedal walking robot |
US20160243699A1 (en) * | 2015-02-24 | 2016-08-25 | Disney Enterprises, Inc. | Method for developing and controlling a robot to have movements matching an animation character |
-
2017
- 2017-06-14 CN CN201710447011.8A patent/CN109086466A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070083290A1 (en) * | 2005-10-12 | 2007-04-12 | Kenichiro Nagasaka | Apparatus and method for computing operational-space physical quantity |
US20150120044A1 (en) * | 2013-10-31 | 2015-04-30 | Disney Enterprises, Inc. | Method for gait generation and tracking control for a bipedal walking robot |
CN103832504A (zh) * | 2014-02-26 | 2014-06-04 | 南京航空航天大学 | 仿生足式机器人综合仿真策略 |
US20160243699A1 (en) * | 2015-02-24 | 2016-08-25 | Disney Enterprises, Inc. | Method for developing and controlling a robot to have movements matching an animation character |
Non-Patent Citations (1)
Title |
---|
董金波: "基于Matlab的双足机器人单腿运动学仿真" * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114364495A (zh) * | 2019-09-11 | 2022-04-15 | 株式会社富士 | 多关节机器人、多关节机器人的控制方法及多关节机器人的控制程序 |
CN114364495B (zh) * | 2019-09-11 | 2023-11-28 | 株式会社富士 | 多关节机器人、多关节机器人的控制方法及多关节机器人的控制程序 |
CN110986959A (zh) * | 2019-12-31 | 2020-04-10 | 深圳市优必选科技股份有限公司 | 一种双足机器人及其导航定位方法和装置 |
CN110986959B (zh) * | 2019-12-31 | 2021-10-29 | 深圳市优必选科技股份有限公司 | 一种双足机器人及其导航定位方法和装置 |
CN111113431A (zh) * | 2020-01-03 | 2020-05-08 | 武汉科技大学 | 一种六自由度串联机器人逆解优化方法 |
CN111251303A (zh) * | 2020-03-11 | 2020-06-09 | 北京理工大学 | 一种周期性姿态调整的机器人运动控制方法 |
CN112882485A (zh) * | 2021-01-25 | 2021-06-01 | 河南大学 | 一种双足机器人逆运动学的几何计算方法 |
CN113835429A (zh) * | 2021-09-08 | 2021-12-24 | 南方科技大学 | 一种仿生双足机器人的控制方法及仿生双足机器人 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109086466A (zh) | 单腿多轴双足机器人运动学联合仿真方法 | |
CN106078752B (zh) | 一种基于Kinect的仿人机器人人体行为模仿方法 | |
Žlajpah | Simulation in robotics | |
JP3972854B2 (ja) | ロボットの運動制御装置 | |
KR100837988B1 (ko) | 각식 이동 로봇을 위한 동작 제어 장치 및 동작 제어방법, 및 로봇 장치 | |
JP3443077B2 (ja) | ロボットの運動パターン生成装置及び運動パターン生成方法、並びにロボット | |
Gong et al. | Bionic quadruped robot dynamic gait control strategy based on twenty degrees of freedom | |
KR20020086466A (ko) | 보행식 이동 로봇의 동작 제어 장치 및 동작 제어 방법,및 보행식 이동 로봇을 위한 동작 유닛 생성 방법 | |
Shkolnik et al. | Inverse kinematics for a point-foot quadruped robot with dynamic redundancy resolution | |
Babiarz et al. | The mathematical model of the human arm as a switched linear system | |
Agravante et al. | Visual servoing for the REEM humanoid robot's upper body | |
Figueroa et al. | A dynamical system approach for adaptive grasping, navigation and co-manipulation with humanoid robots | |
Saltaren et al. | Climbing parallel robot: A computational and experimental study of its performance around structural nodes | |
Rosado et al. | Reproduction of human arm movements using Kinect-based motion capture data | |
Hern et al. | Design and dynamic modeling of humanoid biped robot e-robot | |
JP2003117858A (ja) | ロボットの歩行制御装置及び歩行制御方法 | |
CN105438305B (zh) | 一种仿生六肢昆虫机器人的使用方法 | |
Xia et al. | ABB-IRB120 Robot Modeling and Simulation Based on MATLAB | |
Arbulú et al. | Rh-0 humanoid full size robot's control strategy based on the Lie logic technique | |
Mo et al. | A biomimetic planning control method to anthropomorphize a 7-DOF redundant manipulator in unstructured environments | |
Hsu et al. | A humanoid robotics simulation and control platform for NINO | |
JP4707290B2 (ja) | 脚式移動ロボットの動作制御装置及び動作制御方法 | |
Li et al. | Structural design and kinematics analysis of a multi-legged wall-climbing robot | |
US11787045B2 (en) | Robot with an inverse kinematics (IK)-based controller for retargeting input motions | |
Raafat et al. | Introduction to Robotics-Mathematical Issues |
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 | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20240322 |