Ask Your Question

Yishin's profile - activity

2017-05-22 01:45:04 -0500 received badge  Famous Question (source)
2017-03-31 15:57:34 -0500 received badge  Student (source)
2017-03-31 15:57:11 -0500 received badge  Famous Question (source)
2017-01-17 19:17:35 -0500 received badge  Famous Question (source)
2016-06-28 13:10:50 -0500 received badge  Famous Question (source)
2016-03-02 17:49:11 -0500 commented answer Why Descartes found just ONE joint solution out of 50 iterations?

For improving IKFast, I referred to Using IkFast on a UsarsimROS Robot by Teddy Weisman. My modification is here.

2016-03-02 10:40:28 -0500 received badge  Notable Question (source)
2016-03-01 23:48:58 -0500 answered a question Why Descartes found just ONE joint solution out of 50 iterations?

After enabling the DEBUG messages, I found most of the IKFast solutions are out of joint limit. Does this suggest the quality of my IK model is poor?

getPositionIK
Found 8 solutions from IKFast
Sol 0: 1.690987e+00   -2.232526e+00   -1.822946e+00   -1.513597e-01   9.193312e-01   1.663007e+00
Not in limits! 0 value 1.69099 has limit: 1  being  -4 to 1.3
... ... ...
Sol 7: -1.450605e+00   -1.029561e+00   1.810746e+00   -1.698869e-01   -7.883345e-01   -1.450452e+00
Not in limits! 1 value -1.02956 has limit: 1  being  -0.138 to 3.05
No solution whatsoever
Found 0 joint solutions out of 10 iterations

Yes, this is because the automatically generated IKFast does not deal with joint_limit correctly. After resolving the IKFast/joint_limit issue, joint solutions becames 19 solutions out of 50 iterations.

[ INFO] [1456935580.587935731]: Found 4 joint solutions out of 10 iterations
[ INFO] [1456935580.589146536]: Found 4 joint solutions out of 10 iterations
[ INFO] [1456935580.590355616]: Found 4 joint solutions out of 10 iterations
[ INFO] [1456935580.591487295]: Found 3 joint solutions out of 10 iterations
[ INFO] [1456935580.592600095]: Found 4 joint solutions out of 10 iterations
[ INFO] [1456935580.592628198]: CartID: ID201 JointPoses count: 19
2016-03-01 23:45:13 -0500 received badge  Popular Question (source)
2016-03-01 09:07:12 -0500 asked a question Why Descartes found just ONE joint solution out of 50 iterations?

The following is my output while running Descartes:

[ INFO] [1456829278.022568503]: CartID: ID134 JointPoses count: 1
[ERROR] [1456829278.024742874]: Found 0 joint solutions out of 10 iterations
[ERROR] [1456829278.026359214]: Found 0 joint solutions out of 10 iterations
[ INFO] [1456829278.027336037]: Found 1 joint solutions out of 10 iterations
[ERROR] [1456829278.028985985]: Found 0 joint solutions out of 10 iterations
[ERROR] [1456829278.030645015]: Found 0 joint solutions out of 10 iterations
  1. My IK was generated by IKfast. Could that be why Descartes find just one solution out of 50 iterations?
  2. Is there a parameter to constrain the iteration numbers for searching joint solutions?

Thanks and Regards

2016-02-28 06:58:55 -0500 received badge  Notable Question (source)
2016-02-28 06:01:53 -0500 commented answer Descartes Robot Path Editor

@nickw, I installed descartes, and tried it with ROS-I training exercise. There is a demo_descartes. This is not one of those cool videos, but still pretty cool.

2016-02-28 05:45:28 -0500 commented answer Descartes Robot Path Editor

@gvdhoorn, you clarified my question, thanks. -Yishin

2016-02-28 02:57:20 -0500 received badge  Popular Question (source)
2016-02-27 06:42:25 -0500 asked a question Descartes Robot Path Editor

There is a Robot Path Editor in Descartes Sneak Peek video demo. I saw robot_path_editor_gui.rviz at the upper left corner of the video. However, I cannot find a link related to it with google. Though, I do find an interesting Cartesian Path Planner Plug-in for MoveIt.

I would like to create a list of Robot Path Editors:

  1. fermi - Cartesian Path Planner MoveIt Plug-in, source code, tutorial
  2. ... please help providing Robot Path Editors
2016-02-26 04:36:33 -0500 received badge  Notable Question (source)
2016-02-25 17:38:13 -0500 answered a question How to verify generated IKfast plugin?

From Create_a_Fast_IK_Solution, it mentioned ikfastdemo.cpp for testing the generated IKfast code. It needs a little bit fix to workaround compile errors.

Here's its usage:

./compute ik 0.794 0 0.415 1 0 0 0
Found 2 ik solutions:
sol0 (free=0): -0.000000000000003, 0.117857486686850, -0.235590643741151, -0.000000000000026, 0.117733157054301, 0.000000000000026, 
sol1 (free=0): -0.000000000000003, 0.117857486686850, -0.235590643741151, 3.141592653589767, -0.117733157054301, -3.141592653589767,

./compute fk 0 0 0 0 0 0
Found fk solution for end frame: 
Translation:  x: 0.794000  y: 0.000000  z: 0.415000  
     Rotation     1.000000   0.000000   0.000000  
       Matrix:    0.000000   1.000000   -0.000000  
                  0.000000   0.000000   1.000000  
 Euler angles: 
       Yaw:   0.000000    (1st: rotation around vertical blue Z-axis in ROS Rviz) 
       Pitch: 0.000000  
       Roll:  -0.000000  
  Quaternion:  1.000000   0.000000   0.000000   0.000000   
               1.000000 + 0.00000i + 0.00000j + 0.00000k   (alternate convention)
2016-02-25 07:24:21 -0500 received badge  Notable Question (source)
2016-02-25 06:25:24 -0500 received badge  Enthusiast
2016-02-25 01:08:39 -0500 received badge  Popular Question (source)
2016-02-24 21:49:57 -0500 answered a question How to move manipulator to an upward pose with Descartes?

I found a solution here: How to specify trajectory points with 6D pose?

The method is to specify a {X, Y, Z} position with Orientation vector. Here's the code snippet:

using namespace Eigen;
Matrix3d m;
m =   AngleAxisd(0, Vector3d::UnitX())
    * AngleAxisd(-M_PI/2, Vector3d::UnitY())
    * AngleAxisd(0, Vector3d::UnitZ());
pose.linear() = m;
2016-02-24 05:23:58 -0500 received badge  Editor (source)
2016-02-24 05:20:50 -0500 asked a question How to move manipulator to an upward pose with Descartes?

In Getting Started with Descartes, it assumes the end effector is at upward direction. However, my manipulator is initialized with a horizontal pose, like this.

How to move the end effector to upward direction with Descartes API?

2016-02-22 01:40:51 -0500 commented answer How to verify generated IKfast plugin?

Thanks for your answer regarding OpenRave Testing. For trac_ik, would it be better for generic 6-joints industrial robot manipulators similar to PUMA-560?

2016-02-22 01:34:19 -0500 received badge  Supporter (source)
2016-02-21 16:46:26 -0500 received badge  Popular Question (source)
2016-02-21 01:07:36 -0500 asked a question How to verify generated IKfast plugin?

From this IKfast tutorial, we may generate IKfast plugin with OpenRave. I would like to learn how to verify the generated IK.

  • Is there an unit test example for IK plugin?
  • What is the Python/C++ API for accessing joint and world positions of IKfast?