Hi team,

getting deeper and deeper in the MRL project, trying to give life to my small robot arm (http://www.thingiverse.com/thing:1454048) I'm stuck at the part where the InverseKinematics3D service is calculating the coordinates of the joins.

But first things first, here is the code I wrote to creates my DHlinks and myrobotarm :

from org.myrobotlab.kinematics import DHRobotArm
from org.myrobotlab.kinematics import DHLink
from org.myrobotlab.kinematics import DHLinkType

# Create a robot arm
myRobotArm = DHRobotArm()

# Lets create a 2 link robot arm
# Create the first link in the arm specified by 100,100,0,90
# additionally specify a name for the link which can be used elsewhere.
d1 = 52.7
r1 = 0
theta = 0
alpha = -90
link0 = DHLink("base", d1, r1, theta, alpha)

# Create the second link (same as the first link.)
d1 = 0
r1 = 135
theta = 0
alpha = 0
link1 = DHLink("link1", d1, r1, theta, alpha)

# Create the third link (same as the first link.)
d1 = 0
r1 = 147
theta = 0
alpha = 0
link2 = DHLink("link2", d1, r1, theta, alpha)

# Add the links to the robot arm
myRobotArm.addLink(link0)
myRobotArm.addLink(link1)
myRobotArm.addLink(link2)

# create the  IK3D service.
ik3d= Runtime.createAndStart("ik3d", "InverseKinematics3D")

# assign our custom DH robot arm to the IK service.
ik3d.setCurrentArm(myRobotArm)

now how do I use the IK3D class ?

the moveto method is using the servo attached to mycurrent arm, but how do I attach the servo to the arm ?

I looked at the InMoovArm.java service Do I need to do something similar in my python program ?

 

Thanks