algorithmic modeling for Rhino
This is still a work-in-progress, with plenty of room for improvement.
I've been meaning to release this for some time - I was intending to clean it up some more and maybe compile it into a proper component first, but have been too busy with other activities, and rather than delay any longer have decided to share it in its current state.
It is a purely geometric solution, specific to this particular joint configuration, which allows kinematic decoupling, greatly simplifying things. Luckily most commercial 6-axis arms follow this configuration.
Bear in mind the angle value outputs are not yet calibrated - one would need to check the direction and start angles to make sure they corresponded with the standard format. Also, joint angle limits are not included here, but could be fairly easily added.
The example model here is a Kuka KR-150, but it is designed so that one can easily swap the input model with other robots with the same joint configuration (6-axis with a spherical wrist).
I do also have a similar definition for robots such as the ones from Universal Robots which do not have a spherical wrist, but still have certain simplifying properties allowing a closed form solution:
I'll post the setup for this one too soon.
Lobster is distributed under the WTFPL license ;)
Use at your own risk. I accept no responsibility if you break your robot!
enjoy !
Here's an update I've been meaning to post for a long while.As I'm currently at the RobArch conference in Michigan, now seems a good a time to finally get it out there.This is a very minimal scripted…Continue
Started by Daniel Piker May 18, 2014.
Some videos from early tests: http://vimeo.com/22196011 http://vimeo.com/22519535 …Continue
Started by Daniel Piker Jul 17, 2011.
Comment
Fantastic, and inspiring. I've built a version as well... certainly cruder, but a very interesting challenge [My version]. The concept of linking Rhino objects to the GH definition to represent the robot itself was very clever.
Thanks
Philipp - not a stupid question at all. The inverse kinematics problem can be solved for much more general systems, but generally requires the use of considerably more complex techniques, such as cyclic coordinate descent and the Jacobian matrix.
I did actually post an IK solver using Galapagos some time ago, and in theory this could indeed work with any axis setup, but it is an extremely inefficient way to solve the problem compared to the above methods - taking minutes to get a solution which is still only approximate - not very practical if you have to do it for every tiny movement of the robot.
The sort of geometric closed form solution Lobster uses would be different for each kinematic setup, and in some cases would not be possible, but it is very fast and relatively intuitive.
ooh-wee. that's pretty fantastic work. love the name as well.
This is basically nowhere as sophisticated but I did a series of kinematic rotations of a universal joint using a Rhino plugin.
http://formpig.com/blog/?p=4001
look forward to following this work.
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by
You need to be a member of Lobster to add comments!