Re: [Playerstage-users] Problems with Inverse Kinematics of eeDHcontroller driver

 Re: [Playerstage-users] Problems with Inverse Kinematics of eeDHcontroller driver From: mmday - 2008-06-27 11:33:42 ```This is the function that calls to Roboop Algorithm from the ComputeQ function of eeDHcontroller driver q = robot_IK.inv_kin (result, 1, dof, converged); and the values returned are not rigth. //////////////////////////////////////////////////////////////////////////////// // Compute the joint commands using IK int EEDHController::ComputeQ (unsigned int dof, double x, double y, double z, double roll, double pitch, double yaw, ColumnVector &q) { // Position/Orientation of the end effector Matrix result (4, 4); // Set the orientation ColumnVector orient (3); orient (3) = roll; orient (2) = pitch; orient (1) = yaw; result = rpy (orient); result (1, 4) = x; result (2, 4) = y; result (3, 4) = z; // Call RoboOp's inv_kin bool converged; q = robot_IK.inv_kin (result, 1, dof, converged); if (q.is_zero () && !converged) return (1); return (0); } -- View this message in context: http://www.nabble.com/Problems-with-Inverse-Kinematics-of-eeDHcontroller-driver-tp18151900p18153235.html Sent from the playerstage-users mailing list archive at Nabble.com. ```

 [Playerstage-users] Problems with Inverse Kinematics of eeDHcontroller driver From: mmday - 2008-06-27 10:03:19 ```I'm postting again about eeDHcontroller driver. I'm using two drivers to control the Lynx6 robotic arm, an actarray driver to send commands to the arm and eeDHcontroller driver which calculate the joint commands using Roboop's Inverse Kinematics Algorithms. The problem is that when in the client program I send the end effector pose (lp.SetPosition (x,y,z), lp.SetPositin(5,10,19)) eeDHcontroller driver must compute the joint commands with Inverse Kinematics and the values returned from this driver are not correct. It always returns the same values, this are the values that I assign to Theta parameter of each joint in the configuration file, the values of theta are in radians and values of a in cm, is this the correct way? This is my configuration file: driver ( name "eeDHcontroller" plugin "libeedhcontroller" provides ["limb:0"] requires ["actarray:0"] nr_joints 6 #[R/P theta d a alfa th_min th_max] joint1_DH [ 0 0.78 0 0 1.57 -1.57 1.57 ] joint2_DH [ 0 0.54 0 12.065 0 -1.57 1.57 ] joint3_DH [ 0 0.54 0 12.065 0 -1.57 1.57 ] joint4_DH [ 0 -0.78 0 14.249 -1.57 -1.57 1.57 ] joint5_DH [ 0 0.54 0 0 0 -1.57 1.57 ] joint6_DH [ 0 0 0 0 0 0 0 ] #Allowed positioning error in degrees error_pos 0.01 #Enable debug mode debug 1 ) driver ( name "l6actdriver" plugin "libl6actdriver" provides ["actarray:0"] joints 6 port "/dev/ttyS0" ) Thanks, -- View this message in context: http://www.nabble.com/Problems-with-Inverse-Kinematics-of-eeDHcontroller-driver-tp18151900p18151900.html Sent from the playerstage-users mailing list archive at Nabble.com. ```
 Re: [Playerstage-users] Problems with Inverse Kinematics of eeDHcontroller driver From: mmday - 2008-06-27 11:33:42 ```This is the function that calls to Roboop Algorithm from the ComputeQ function of eeDHcontroller driver q = robot_IK.inv_kin (result, 1, dof, converged); and the values returned are not rigth. //////////////////////////////////////////////////////////////////////////////// // Compute the joint commands using IK int EEDHController::ComputeQ (unsigned int dof, double x, double y, double z, double roll, double pitch, double yaw, ColumnVector &q) { // Position/Orientation of the end effector Matrix result (4, 4); // Set the orientation ColumnVector orient (3); orient (3) = roll; orient (2) = pitch; orient (1) = yaw; result = rpy (orient); result (1, 4) = x; result (2, 4) = y; result (3, 4) = z; // Call RoboOp's inv_kin bool converged; q = robot_IK.inv_kin (result, 1, dof, converged); if (q.is_zero () && !converged) return (1); return (0); } -- View this message in context: http://www.nabble.com/Problems-with-Inverse-Kinematics-of-eeDHcontroller-driver-tp18151900p18153235.html Sent from the playerstage-users mailing list archive at Nabble.com. ```