Puma560 - Geometry and building other 6 axis robots
- felixcnc
- Topic Author
- Offline
- Junior Member
- Posts: 29
- Thank you received: 0
I am trying to change the PUMA geometry, basically to create a new robot with 6 joints but I am failing miserably.
What I want to build is rather simple because all the joints must start at the same plane (not like PUMA which have some joints in different planes).
I have attached my drawing of joints. I used the following but it's wrong, when I press home I get "inverse kinematics failed". According to my graph that SHOULD be able to be fit into a puma. I configured the DH parameters like this:
setp genserkins.A-0 0
setp genserkins.A-1 0
setp genserkins.A-2 0
setp genserkins.A-3 0
setp genserkins.A-4 0
setp genserkins.A-5 0
setp genserkins.ALPHA-0 0
setp genserkins.ALPHA-1 1.570796326
setp genserkins.ALPHA-2 -1.570796326
setp genserkins.ALPHA-3 -1.570796326
setp genserkins.ALPHA-4 0
setp genserkins.ALPHA-5 1.570796326
setp genserkins.D-0 14
setp genserkins.D-1 0
setp genserkins.D-2 20
setp genserkins.D-3 0
setp genserkins.D-4 10
setp genserkins.D-5 5
I know already it's wrong (or not correct given the PUMA560 kinematics), because when I try to home it it returns an "invalid kinematic error".
So my question perhaps more GENERICALLY, is there any resource or explanation I can read about how to define these modified DH parameters given a very simple robot like this one?
For example let's say the robot only has 5 segments with the same size and none of them are orthogonal? (which in this case would define just a tube with some torsion).
Thanks in advance for your help, you always have been a source of knowledge when I am in moments despair... :-D
Thanks!
Cheers
Please Log in or Create an account to join the conversation.
- bbsr_5a
- Offline
- Platinum Member
- Posts: 544
- Thank you received: 105
but why
there is a Reason the WORLD uses 6DOF or Scara or even Hexapot
not a mixing of all
you may run in big trouble on the system to be aligned
Please Log in or Create an account to join the conversation.
- felixcnc
- Topic Author
- Offline
- Junior Member
- Posts: 29
- Thank you received: 0
From my notepad the robot should look like the picture I attached.
Not sure if I can fit that inside a puma geometry or not. I believe I should, and that's basically what I am trying to do.
Thanks!
Cheers
Please Log in or Create an account to join the conversation.
- Aciera
- Offline
- Administrator
- Posts: 4032
- Thank you received: 1741
Have you looked at this:
Be aware that genserkins uses "modified" DH parameters.
look that up and read the relevant sections (Pages 68,69).The DH definitions are the ones used by John J Craig in
"Introduction to Robotics: Mechanics and Control"
Looking at your sketch I have a feeling that your alphas should always be + or - 1.570796326 except alpha-0 which has to be 0 by definition with the modified DH convention. I also find it strange that you have all the a values set to 0. In your case a and d values should have alternate entries.
Another thing that it may be useful is to set the home position in the ini to 0.001 instead of 0 as you might create a home position at a singularity which produces the kinematic failure.
Please Log in or Create an account to join the conversation.
- andypugh
- Offline
- Moderator
- Posts: 23178
- Thank you received: 4861
According to my graph that SHOULD be able to be fit into a puma.
Genserkins should work for any serial robot. (which includes single-sided SCARA, for example, but not Delta)
Be aware that there are two alternative conventions for the DH parameters, and Genserkins uses the one known as "modified DH parameters"
From the man page "The DH definitions are the ones used by John J Craig in "Introduction to Robotics: Mechanics and Control""
Which is a shame, it would have been more convenient had it not been based on a reference that is only available in a very expensive book.
www.amazon.co.uk/Introduction-Robotics-M...-Craig/dp/0133489795
Other than that, I can only add that I share your pain, I am struggling with a 5-joint Faro arm and an arduino library that doesn't even mention which convention it uses.
Please Log in or Create an account to join the conversation.
- Aciera
- Offline
- Administrator
- Posts: 4032
- Thank you received: 1741
I'm not sure if I'm allowed to say that here but the relevant sections are also available online as pdf.Which is a shame, it would have been more convenient had it not been based on a reference that is only available in a very expensive book.
One way to find out which DH convention is used is to look for a working configuration and look at the DH parameters. With the modified convention used in genserkins parameters a-0 and alpha-0 are both 0 by definition.
If you have a dimensional drawing of your robot you can also use another trick: set all the lenghts (ie a and d parameters) to a very small number (eg 0.01) and work your way up the robot arm. This way you can effectively move the tcp to all the joints starting from the base then use the demo mode of LinuxCNC and verify the calculated xyz positions by rotating the joints.
It took me many attempts to figure it all out for my 6 axis arm but, as usual, in retrospect it all seems so logical.
Please Log in or Create an account to join the conversation.
- andypugh
- Offline
- Moderator
- Posts: 23178
- Thank you received: 4861
Please Log in or Create an account to join the conversation.
- Aciera
- Offline
- Administrator
- Posts: 4032
- Thank you received: 1741
Do you mean how the DH-parameters are derived from the diagram of a specific robot arm?diagram of a robot arm with the actual HAL pins as annotations for each measurement.
If so I could provide that for mine.
Please Log in or Create an account to join the conversation.
- andypugh
- Offline
- Moderator
- Posts: 23178
- Thank you received: 4861
Do you mean how the DH-parameters are derived from the diagram of a specific robot arm?diagram of a robot arm with the actual HAL pins as annotations for each measurement.
If so I could provide that for mine.
That would be useful. I have never managed to figure out how the HAL pin names correspond to the references I have seen.
Please Log in or Create an account to join the conversation.
- Aciera
- Offline
- Administrator
- Posts: 4032
- Thank you received: 1741
forum.linuxcnc.org/10-advanced-configura...th-simulation#158467
I hope its useful
Please Log in or Create an account to join the conversation.