SGTofDenavitHartenberg
by Tim C. Lueth, SG-Lib Toolbox: SolidGeometry 5.6 - Kinematics and Frames
Introduced first in SolidGeometry 4.2, Creation date: 2018-07-13, Last change: 2025-09-14
returns from Denavit-Hartenberg values, a solid, frames and a symbolic description for DH
Description
USES the SYMBOLICS TOOLBOX
This function returns for give parameter sets with respect to the Denavit-Hartenberg (1955) notation:
d=displacement in z
a=displacement in x
b=rotation around x
a modern style link (shape along z trajectory)
6Dof robots can be designed as follows for practical reasons (utilisation and calculation of inverse kinematics):
1. separation of hand and robot into three axes each.
2. the 6th axis is a pure Z-axis that is as short as possible.
3. the 5th and 4th axes allow the most compact rotation possible on a spherical surface
4. the 1st axis is a Z-axis that is high enough so that the 2nd and 3rd axes can work optimally
5. the 2 and 3 axes are virtually the same length. 3 is shorter because 4 and 5 and 6 are added.
The inverse kinematics is solved in such a way that 6 is defined starting from the target point z-axis
See Also: SGTofDHset
, SGof2T
, SGTset
, SGTchain
Example Illustration
Syntax
[SGT,T,TT]=SGTofDenavitHartenberg([D,A,be,r,g])
Input Parameter
D: | | Distance in z; default is 100 |
A: | | Distance in x; default is 40 |
be: | | fixed rotation value around x-axis or [x-axis/yaxis]; default is [pi/2 0] |
r: | | optional Radius of the tube; default is max(D,A)/10 |
g: | | optional angle as offset for a rotation at the base; default is 0 |
Output Parameter
SGT: | | Solid Geoemtry including Frames |
T: | | symbolics equation including substitued values for parameter |
TT: | | symbolics equation without substituted values for parameter |
Examples
Different common robotics links:
[a,b,c]=SGTofDenavitHartenberg(100,40,[0 pi/2]), SGfigure(a);
[a,b,c]=SGTofDenavitHartenberg(100,0,[0 pi/2]), SGfigure(a);
SGTofDenavitHartenberg(10,0,0);
SGTofDenavitHartenberg(10,10,0);
SGTofDenavitHartenberg(10,0,pi/2);
SGTofDenavitHartenberg(0,10,pi);
SGTofDenavitHartenberg(10,0,pi/4,3);
SGTofDenavitHartenberg(10,0,pi/2,'',pi/2);
SGTofDenavitHartenberg (0,20,[0,pi/2]);
Copyright 2018-2025 Tim C. Lueth. All rights reserved. The code is the property of Tim C. Lueth and may not be redistributed or modified without explicit written permission. This software may be used free of charge for academic research and teaching purposes only. Commercial use, redistribution, modification, or reverse engineering is strictly prohibited. Access to source code is restricted and granted only under specific agreements. For licensing inquiries or commercial use, please contact: Tim C. Lueth
Last html export of this page out of FM database by TL: 2025-09-21