show the axis of each joint

2 Ansichten (letzte 30 Tage)
Omri Ohayon
Omri Ohayon am 3 Feb. 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?

Antworten (1)

Ali Murtatha Shuman
Ali Murtatha Shuman am 13 Nov. 2019
Bearbeitet: Ali Murtatha Shuman am 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???

Kategorien

Mehr zu Robotics finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by