Convenzione di Denavit-Hartenberg

Sistema di riferimento ai giunti secondo la convenzione di Denavit-Hartenberg

La convenzione di Denavit-Hartenberg, abbreviata anche in D-H, è spesso usata per scegliere i sistemi di riferimento utilizzati in applicazioni robotiche introdotto da Jacques Denavit e Richard S. Hartenberg. Essa fa sì che una trasformazione geometrica possa essere rappresentata nello spazio euclideo tridimensionale con il numero minimo di parametri, ovvero quattro.

In tale convenzione ogni trasformazione omogenea è rappresentata dal prodotto di quattro trasformazioni base.

Parametri di Denavit-Hartenberg

I quattro parametri in grado di descrivere la trasformazione sono definiti come segue. Considerando due giunti consecutivi:

  • l'asse Z n 1 {\displaystyle Z_{n-1}} si sceglie coincidente con l'asse del giunto i 1 {\displaystyle i-1} , l'asse Z n {\displaystyle Z_{n}} coincidente con l'asse del giunto i {\displaystyle i} ;
  • l'asse X n 1 {\displaystyle X_{n-1}} può essere scelto liberamente, ma è conveniente porlo in direzione del giunto successivo, e si interseca con Z n 1 {\displaystyle Z_{n-1}} in corrispondenza del centro del giunto i 1 {\displaystyle i-1} (scelto come origine); l'asse X n {\displaystyle X_{n}} corre lungo la normale comune fra gli assi Z n 1 {\displaystyle Z_{n-1}} e Z n {\displaystyle Z_{n}} ;
  • gli assi Y n 1 {\displaystyle Y_{n-1}} e Y n {\displaystyle Y_{n}} sono scelti in modo da completare le rispettive terne levogire.

La trasformazione è allora descritta da quattro parametri di Denavit-Hartenberg[1]:

  • d {\displaystyle d} : distanza dell'asse Z n 1 {\displaystyle Z_{n-1}} dalla normale comune; nel caso vi siano infinite normali comuni (assi Z n {\displaystyle Z_{n}} e Z n 1 {\displaystyle Z_{n-1}} paralleli) si sceglierà il valore di d {\displaystyle d} più conveniente;
  • θ {\displaystyle \theta } : l'angolo di rotazione intorno all'asse Z n 1 {\displaystyle Z_{n-1}} necessario per allineare X n 1 {\displaystyle X_{n-1}} con X n {\displaystyle X_{n}} ;
  • a {\displaystyle a} (a volte indicato anche con r {\displaystyle r} ): distanza minima fra gli assi Z n 1 {\displaystyle Z_{n-1}} e Z n {\displaystyle Z_{n}} ;
  • α {\displaystyle \alpha } : l'angolo di rotazione intorno alla normale comune (ovvero attorno a X n {\displaystyle X_{n}} ) per allineare l'asse Z n 1 {\displaystyle Z_{n-1}} a Z n {\displaystyle Z_{n}} .

Si può notare che l'asse X n {\displaystyle X_{n}} è perpendicolare sia all'asse Z n 1 {\displaystyle Z_{n-1}} che all'asse Z n {\displaystyle Z_{n}} e interseca entrambi.

Trasformazione di coordinate

Ogni coppia braccio-giunto si può descrivere come un'operazione di trasformazione di coordinate fra i due sistemi di riferimento associati ai giunti. Se si sceglie di orientare l'asse X n {\displaystyle X_{n}} lungo la normale comune fra gli assi Z n 1 {\displaystyle Z_{n-1}} e Z n {\displaystyle Z_{n}} , la matrice di trasformazione è definita come una serie di due rototraslazioni consecutive:

n 1 T n = Trans z n 1 ( d n ) Rot z n 1 ( θ n ) Trans x n ( r n ) Rot x n ( α n ) {\displaystyle {}^{n-1}T_{n}=\operatorname {Trans} _{z_{n-1}}(d_{n})\cdot \operatorname {Rot} _{z_{n-1}}(\theta _{n})\cdot \operatorname {Trans} _{x_{n}}(r_{n})\cdot \operatorname {Rot} _{x_{n}}(\alpha _{n})}

dove:

Trans z n 1 ( d n ) = ( 1 0 0 0 0 1 0 0 0 0 1 d n 0 0 0 1 ) {\displaystyle \operatorname {Trans} _{z_{n-1}}(d_{n})={\begin{pmatrix}1&0&0&0\\0&1&0&0\\0&0&1&d_{n}\\0&0&0&1\\\end{pmatrix}}}
Rot z n 1 ( θ n ) = ( cos θ n sin θ n 0 0 sin θ n cos θ n 0 0 0 0 1 0 0 0 0 1 ) {\displaystyle \operatorname {Rot} _{z_{n-1}}(\theta _{n})={\begin{pmatrix}\cos \theta _{n}&-\sin \theta _{n}&0&0\\\sin \theta _{n}&\cos \theta _{n}&0&0\\0&0&1&0\\0&0&0&1\\\end{pmatrix}}}
Trans x n ( r n ) = ( 1 0 0 r n 0 1 0 0 0 0 1 0 0 0 0 1 ) {\displaystyle \operatorname {Trans} _{x_{n}}(r_{n})={\begin{pmatrix}1&0&0&r_{n}\\0&1&0&0\\0&0&1&0\\0&0&0&1\\\end{pmatrix}}}
Rot x n ( α n ) = ( 1 0 0 0 0 cos α n sin α n 0 0 sin α n cos α n 0 0 0 0 1 ) {\displaystyle \operatorname {Rot} _{x_{n}}(\alpha _{n})={\begin{pmatrix}1&0&0&0\\0&\cos \alpha _{n}&-\sin \alpha _{n}&0\\0&\sin \alpha _{n}&\cos \alpha _{n}&0\\0&0&0&1\\\end{pmatrix}}}

Da qui si ricava la matrice di trasformazione completa:

n 1 T n = ( cos θ n sin θ n cos α n sin θ n sin α n r n cos θ n sin θ n cos θ n cos α n cos θ n sin α n r n sin θ n 0 sin α n cos α n d n 0 0 0 1 ) {\displaystyle \operatorname {} ^{n-1}T_{n}={\begin{pmatrix}\cos \theta _{n}&-\sin \theta _{n}\cos \alpha _{n}&\sin \theta _{n}\sin \alpha _{n}&r_{n}\cos \theta _{n}\\\sin \theta _{n}&\cos \theta _{n}\cos \alpha _{n}&-\cos \theta _{n}\sin \alpha _{n}&r_{n}\sin \theta _{n}\\0&\sin \alpha _{n}&\cos \alpha _{n}&d_{n}\\0&0&0&1\\\end{pmatrix}}}

Note

  1. ^ M. Spong, M. Vidyasagar, Robot Dynamics and Control, John Wiley and Sons, 1989, ISBN 0-471-61243-X.

Bibliografia

  • (EN) Jacques Denavit, Richard S. Hartenberg, A kinematic notation for lower-pair mechanisms based on matrices, in Trans ASME J. Appl. Mech, n. 23, 1955, pp. 215-221.
  • (EN) Jacques Denavit, Richard S. Hartenberg, Kinematic synthesis of linkages, New York, McGraw-Hill, 1964. URL consultato il 20 dicembre 2010.
  • Bruno Siciliano, Lorenzo Sciavicco; Luigi Villani; Giuseppe Oriolo, Robotica – Modellistica, pianificazione e controllo, 3ª ed., Milano, McGraw-Hill, 2008, ISBN 978-88-386-6322-2.
  • Giovanni Legnani, Irene Fassi, Robotica Industriale, Città Studi, 2019, ISBN 978-88-251-7428-1

Altri progetti

Altri progetti

  • Wikimedia Commons
  • Collabora a Wikimedia Commons Wikimedia Commons contiene immagini o altri file su Convenzione di Denavit-Hartenberg
  Portale Ingegneria: accedi alle voci di Wikipedia che trattano di Ingegneria