show the axis of each joint

5 vues (au cours des 30 derniers jours)
Omri Ohayon
Omri Ohayon le 3 Fév 2019
Hey guys, is there a way to show the axis of every joint of my robot?
here is my code:
dhparams = [
0 0 d1 0
a1 pi/2 0 0
a2 0 0 0
a3 0 0 0
0 pi/2 d5 0
IPA 0 0 0 ] ;
robot = robotics.RigidBodyTree;
L1 = robotics.RigidBody('L1');
jnt1 = robotics.Joint('jnt1','revolute');
L2 = robotics.RigidBody('L2');
jnt2 = robotics.Joint('jnt2','fixed');
L3 = robotics.RigidBody('L3');
jnt3 = robotics.Joint('jnt3','revolute');
L4 = robotics.RigidBody('L4');
jnt4 = robotics.Joint('jnt4','revolute');
L5 = robotics.RigidBody('L5');
jnt5 = robotics.Joint('jnt5','revolute');
L6 = robotics.RigidBody('L6');
jnt6 = robotics.Joint('jnt6','revolute');
setFixedTransform(jnt1,dhparams(1,:),'dh');
L1.Joint = jnt1;
addBody(robot,L1,'base');
setFixedTransform(jnt2,dhparams(2,:),'dh');
setFixedTransform(jnt3,dhparams(3,:),'dh');
setFixedTransform(jnt4,dhparams(4,:),'dh');
setFixedTransform(jnt5,dhparams(5,:),'dh');
setFixedTransform(jnt6,dhparams(6,:),'dh');
L2.Joint = jnt2;
L3.Joint = jnt3;
L4.Joint = jnt4;
L5.Joint = jnt5;
L6.Joint = jnt6;
addBody(robot,L2,'L1');
addBody(robot,L3,'L2');
addBody(robot,L4,'L3');
addBody(robot,L5,'L4');
addBody(robot,L6,'L5');
show(robot);
When I use show(robot), I want it to show me the axis and origin of every joint, is it possible?

Réponses (1)

Ali Murtatha Shuman
Ali Murtatha Shuman le 13 Nov 2019
Modifié(e) : Ali Murtatha Shuman le 13 Nov 2019
You can see it if you zoom in, or you can divide the lengths in your DH-matrix with som factor to make the whole robot smaller.
But is there any way to make the axis bigger???

Catégories

En savoir plus sur Robotics dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by