06-11-2021, 06:48 PM

I`ve downloaded the Franka Emika Robot from the Robot Library. When I try to plot the robot for a joint position, I don't see the correct pose representation in RoboDK. Maybe there is a wrong joint definition in the Franka Emika Robot that was uploaded in the Robot Library.

I have also tested in Matlab, using Peter Corke's toolbox. The representation in Matlab is correct, but the representation in RoboDK is incorrect. I share here the script in Matlab:

L1 = 0.333;

L2 = 0.316;

L3 = 0.0825;

L4 = 0.384;

L5 = 0.088;

L6 = 0.107;

L(1) = Link('revolute','d',L1,'a',0,'alpha',-pi/2);

L(2) = Link('revolute','d',0,'a',0,'alpha',pi/2);

L(3) = Link('revolute','d',L2,'a',L3,'alpha',pi/2);

L(4) = Link('revolute','d',0,'a',-L3,'alpha',-pi/2);

L(5) = Link('revolute','d',L4,'a',0,'alpha',pi/2);

L(6) = Link('revolute','d',0,'a',L5,'alpha',pi/2);

L(7) = Link('revolute','d',L6,'a',0,'alpha',0);

R = SerialLink(L);

R.name = 'Franka';

q = [0 -pi/4 0 -3*pi/4 0 pi/2 pi/4];

R.plot(q)

I have also tested in Matlab, using Peter Corke's toolbox. The representation in Matlab is correct, but the representation in RoboDK is incorrect. I share here the script in Matlab:

L1 = 0.333;

L2 = 0.316;

L3 = 0.0825;

L4 = 0.384;

L5 = 0.088;

L6 = 0.107;

L(1) = Link('revolute','d',L1,'a',0,'alpha',-pi/2);

L(2) = Link('revolute','d',0,'a',0,'alpha',pi/2);

L(3) = Link('revolute','d',L2,'a',L3,'alpha',pi/2);

L(4) = Link('revolute','d',0,'a',-L3,'alpha',-pi/2);

L(5) = Link('revolute','d',L4,'a',0,'alpha',pi/2);

L(6) = Link('revolute','d',0,'a',L5,'alpha',pi/2);

L(7) = Link('revolute','d',L6,'a',0,'alpha',0);

R = SerialLink(L);

R.name = 'Franka';

q = [0 -pi/4 0 -3*pi/4 0 pi/2 pi/4];

R.plot(q)