I also thought I would link in another paper that discusses the linear algebra involved (although, not DH convention) http://elvis.rowan.edu/~kay/papers/kinematics.pdf
Fergs
Thread has been stickied, good info/discussion so far guys. Carry on!
Earlier in the year, I found this pretty informative PPT regarding DH parameters and robotic joints.
http://www.mcgill.ca/files/cden/MECH572lecture5.ppt
Lots of great information here, thanks guys. Keep it coming!
Zenta, you have nothing to apologize for, your picture is very clear...
Regarding the order of rotation, how are you handling yours? Do you stick with one order or do you switch order of rotation depending on what you are trying to accomplish?
Another thing I wanted to ask is determining the quadrant in 2space for Phoenix's legs. You have:
YX
ZY
ZX
In each of these axis, the Phoenix's legs each maps to a different "quadrant."
The reason why I'm asking is because the compiler for my Atom Pro 28 has a limited range for FCOS and FSIN functions.
As such, you can still solve for all six legs, you just have to flip the "signs" of the solution.
For instance, looking from a birds eye view, with the front of the Phoenix pointing "Up", the legs are numbered:
Y

Front
5 0
4 1 x
3 2
Back
Servo group 0 would have positive FCOS and FSIN, where servo group 2 would have a positive FCOS but a negative () FSIN, servo group 3 would have both negative FCOS and FSIN.
Did you have to deal with this sign issues as well since the FCOS and FSIN function has a limited range? I suppose translating the angles to a table would probably take care of this and give the full range of 2*Pi
Right now, my "Yaw" function works, and it works perfectly, my "Yaw" is defined as the rotation about the "Z" axis (please take note that my reference axis are alphabetized a bit different then yours).
So for my translation/transform functions, I have four. One indepent function for each axis, and the forth one for a successive rotation.
So say my functions are:
GTOLZ  Takes in angle alpha and does the Br= Az,a * Gr
GTOLY  Takes in angle beta and does the Br = Ay,b * Gr
GTOLX  Takes in angle gamma and does the Br = Ax,g * Gr
GTOLZXY  Takes in angle alpha, beta, and gamma, and does the rotation in the order of Z, then X, then Y Br = Ay,b * Ax,g * Az,a * Gr
Now suppose:
alpha = 0.5 (radians)
beta = 0.0
gamma = 0.0
Shouldn't:
GTOLZXY = GTOLZ
and if
alpha = 0.0
beta = 0.5
gamma = 0.0
Shouldn't:
GTOLZXY = GTOLY
???
So far, my GTOLZXY = GTOLZ when beta and gamma is fixed at 0 radians (no rotation about the Y and X axis) EXCEPT my local Y coordinate and local X coordinate comes out with a inverted sign:
GTOLZ GTOLZXY
L(X,Y,Z) > L(X, Y, Z)
Perhaps I'm using the wrong set??

I just want to recommend the book, Theory of Applied Robotics by Jezar (you can Amazon it).
This book is VERY complete when it comes to kinematics for robotics, including an introduction chapter on DenavitHartenberg notations...
HOWEVER, I must warn you that the author will constant switch around his references of alpha, beta, gamma, phi, psi, theta with reference to which axis those angles are rotating about...
I suspect, this is my problem, I modeled some of the equations in there without realizing that Jezar pulled a switcharoo with the angle designations...

Sleep? You don't need sleep...

I just discovered a small but useful note that I must've missed,
Apparently, the angles are not FREE to be assigned to any axis. The angles are more designated for the order of the movement. From Jezar's book, angles are expressed by:
Phi
Theta
Psi
The order of rotation is always Phi, Theta, and then Psi, so the 12 combination is expressing the rotation of those order for any given axis...
I'm finally starting to get it...
This kinda dawned on me when I looked at Zenta's picture, and wondered why his successive rotation matrix look different then mine, even though we are doing something similar.... Looking up the twelve different combos in the apendix, I started to wonder why Phi, Theta, and Psi was always expressed in the same order for the twelve combos...
It is by definition that first move is always Phi, then Theta, and Psi

Sleep? You don't need sleep...

I believe it's the standard convention, but don't quote me on that... I discovered it was because the 12 independent equations all depend on this consistent order of rotation about these angles.
The angles are what's in order, rotating about various axis in that order of equation is what makes the equation so different from each other...

I finally got my rotation equation to work. Here is dump from my ser_out command:


phi:0.0000000000
theta:0.0000000000
psi:1.0000000000



GTOLX

XX:1.0000000000
YY:0.5115365386
ZZ:1.5168486833

SGTOLZXY

XX:0.9999997615
YY:0.5115365982
ZZ:1.5168488025


phi:0.0000000000
theta:1.0000000000
psi:0.0000000000



GTOLY

XX:1.5921409130
YY:1.0000000000
ZZ:0.1660931706

SGTOLZXY

XX:1.5921409130
YY:1.0000000000
ZZ:0.1660931706


phi:1.0000000000
theta:0.0000000000
psi:0.0000000000



GTOLZ

XX:1.3817731142
YY:0.3011687397
ZZ:1.2500000000

SGTOLZXY

XX:1.3817729949
YY:0.3011686503
ZZ:1.2500000000
XX  Local Xcoordinate
YY  Local Ycoordinate
ZZ  Local Zcoordinate
As you can see, by fixing one angle with a value and fixing the other two angles at zero angle, each single transformation should equal the successive transformation. It doesn't come out exact, but I believe that it's because of the precision of the FCOS and FSIN functions in the Atom Pro IDE.


Sleep? You don't need sleep...

Ok...I don't know how to link to this, but there is a lecture on this subject available through Itunes U. It is from Stanford University's Introduction to Robotics Course, Lecture 2, by Oussama Khatib.
The lecture gets way over my head really quickly. I've been watching it repeatedly over the past few weeks hoping something will sink in.
DB
Is this lecture on any of the video sites like youtube? I'd really be interested in seeing it. I've been looking to take a course (not for any college credit or anything) in Kinematics to get formally educated in it...

Sleep? You don't need sleep...

There are currently 2 users browsing this thread. (0 members and 2 guests)
Bookmarks