1.机器人建模
导入机器人urdf并显示
robot_name = importmodel('file_name.urdf');
show(robot_name);
2.获取关节配置与约束
设置配置并获取关节轴数
currentRobotJConfig = homeConfiguration(robot_name);
numJoints = numel(currentRobotJConfig);
获取关节约束
jointConst = constraintJointBounds(robot);
jointConst.Bounds ##各关节极限
2.正逆运动学
正运动学:
q = robot_name.homeConfiguration;
q.JointName; %%关节name
q.JointPosition; %%关节当前位置,可修改
q(1).JointPostion = 30;
q1 = struct('JointName',{'jnt1';'jnt2';'jnt3';'jnt4';'jnt5';'jnt6'},'JointPosition',{90; 45; 30; 90; 60 ;80}); %%结构体方式修改
robot_name.getTransform(q,'end_link_name');
逆运动学:
ik = robotics.InverseKinematics('RigidBodyTree', robot_name); %创建逆解求解器
[q, info] = ik('end_link_name', target_pose, ones(1,6), robot_name.homeConfiguration);
未来待续…