Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ikfast61.cpp generation error for ur5 #3

Closed
chinmay1148 opened this issue Aug 2, 2021 · 7 comments
Closed

ikfast61.cpp generation error for ur5 #3

chinmay1148 opened this issue Aug 2, 2021 · 7 comments

Comments

@chinmay1148
Copy link

The links provided for .cpp file generation (using universal robot ur_description urdf) is generating error. Can u share the urdf file ? In your ur5 folder the urdf or dae is not shared.

I skipped the moveit_ikfast round off to 5 decimal place.

Did you also use ur5.xml format (from https://github.com/andyzeng/ikfastpy) to generate ikfast61.cpp file ?

@cambel
Copy link
Owner

cambel commented Aug 2, 2021

Which error are you getting?

I skipped the moveit_ikfast round off to 5 decimal places.

Are you trying to generate your own IKfast database? or are you trying to use the ones I am providing here?

Did you also use ur5.xml format (from https://github.com/andyzeng/ikfastpy) to generate ikfast61.cpp file?

I used the official ur5 URDF file following the moveit_ikfast steps. I uploaded the urdf, dae and I regenerated the database.

@chinmay1148
Copy link
Author

Thank you for uploading urdf and dae. I am using your repo with pybullet simulator. The output of IKsolver is not as expected. So was trying to generate new ikfast61.cpp.

I also realize that my ur5 urdf didnot have (baselink --> base) joint. What did you use for parameters "--baselink=1 --eelink=6" while generating IK solver ?

@cambel
Copy link
Owner

cambel commented Aug 4, 2021

I set them as"--baselink=1 --eelink=10"

@Mickeyyyang
Copy link

If I have a real UR3e, can I directly use the ikfast plugin your gave in this?

@cambel
Copy link
Owner

cambel commented Aug 9, 2021

@Mickeyyyang Sure you can just be aware that the real UR robots are not identical to the URDF design. They have some calibration parameters to adjust for those small differences. In other words, the IK solution from IKFAST (tip of the end-effector) may be slightly off with respect to the real robot. In my experience with the UR3e, I had no issue with that, I didn't really check, it was good enough for me. For bigger robots, some people reported several millimeters of error. For more info see this thread ros-industrial/universal_robot#564

@QNXLQ
Copy link

QNXLQ commented Mar 21, 2022

Hello, I'm using yours ur10.cpp and ikfast.h, is normal that sometimes only have 4 or less solution?

@cambel
Copy link
Owner

cambel commented Mar 22, 2022

Yes, It is normal. If I am not wrong a 6 DOF robot has a maximum of 16 valid IK solutions when all joint has a limited range of motion. Then the IKFAST it's just a database of the best poses found, discarding singularities and self-collisions (not sure about that last one but I suppose that is the case). So getting less than 4 or None can happen.

@cambel cambel closed this as completed Mar 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants