GoConqr has a new look! Let us know what you think.

Flowchart

Dinamica L-E

Kevin Lobato Spanish

Flowchart content

  1. Dinámica Euler-Lagrange

  2. Crear Matriz de parámetros de Denavit-Hartenberg

  3. Crear matriz del vector masa (M)

  4. Crear Matriz de Coordenadas Generalizadas de los eslabones

  5. Declarar variable n igual al número de grados de libertad

  6. Bucle para que i tome valores del 1 hasta n

  7. Desarrollar Matriz homogéneas (A(i-1)(i))

  8. Declarar variable T con valor de una matriz identidad de 4x4

  9. Guardar en la variable T el resultado de la operación T x A(i-1)(i)

  10. Guardar el valor de T en una variable A(0)(i)

  11. 1

  12. 1

  13. Declarar variable T con valor de una matriz identidad de 4x4

  14. Bucle para que i tome valores del 1 hasta n

  15. Declarar variable A(i-1)(i-1) con valor de una matriz identidad de 4x4

  16. Declarar variable Q(i) con los valores para definir un eslabón rotacional

  17. Guardar en la variable T el resultado de la operación T x A(i-1)(i)

  18. Guardar el valor de T en una variable A(i-1)(i)

  19. 2

  20. 2

  21. Bucle para que i tome valores del 1 hasta n

  22. Bucle para que i tome valores del j hasta n

  23. ¿j es igual o menor a i?

  24. Se intenta realizar la operación para obtener U(i)(j)

  25. Si

  26. U(i)(j)=0

  27. ¿Se pudo realizar la operación?

  28. Si

  29. No

  30. U(i)(j)=0

  31. No

  32. 3

  33. 3

  34. Bucle para que i tome valores del 1 hasta n

  35. 4

  36. Bucle para que j tome valores del 1 hasta n

  37. Bucle para que k tome valores del 1 hasta n

  38. ¿i es igual o mayor a k? y ¿k es igual o mayor a j?

  39. Se intenta realizar la operación para obtener U(i)(j)(k)

  40. ¿Se pudo realizar la operación?

  41. ¿i es igual o mayor a j? y ¿j es igual o mayor a k?

  42. Si

  43. Si

  44. U(i)(j)(k)=0

  45. No

  46. No

  47. Se intenta realizar la operación para obtener U(i)(j)(k)

  48. ¿Se pudo realizar la operación?

  49. U(i)(j)(k)=0

  50. No

  51. Si

  52. No

  53. Si

  54. 4

  55. Se crean variables L(i) que representan las longitudes del centro de masa de cada eslabón

  56. Se crean matrices J(i) que representan los tensores de inercia de su respectivo eslabón

  57. Bucle para que j tome valores del 1 hasta n

  58. Bucle para que j tome valores del 1 hasta n

  59. Se declara una variables DD=0

  60. Bucle para que k tome los valores máximos de i y j hasta n

  61. Se intenta realizar la operación DD=DD+U(i)(j)*J(k)*traspuesta de U(i)(k)

  62. ¿Se pudo realizar la operación?

  63. DD=0

  64. No

  65. Guardamos el resultado de la operación dentro de la matriz simétrica de aceleración con el nombre D

  66. Si

  67. Se muestra la Matriz final D

  68. 5

  69. Bucle para que i tome valores del 1 hasta n

  70. 6

  71. Bucle para que K tome valores del 1 hasta n

  72. Bucle para que m tome valores del 1 hasta n

  73. 5

  74. Se declara una variable hh=0

  75. Bucle para que j tome los valores máximos de i, k y m hasta n

  76. Se intenta realizar la operación hh=hh+U(j)(k)(m)*J(j)*traspuesta de U(i)(j)

  77. ¿Se pudo realizar la operación?

  78. hh=0

  79. No

  80. Si

  81. 6

  82. Crear Matriz de las coordenadas generalizadas de la velocidad (qv)

  83. Bucle para que i tome valores del 1 hasta n

  84. Se declara una variable kk=0

  85. Bucle para que k tome valores del 1 hasta n

  86. Se declara una variables mm=0

  87. Bucle para que m tome valores del 1 hasta n

  88. Se intenta realizar la operación mm=mm+h(i)(k)(m)*qv(k)*qv(m)

  89. ¿Se pudo realizar la operación?

  90. mm=0

  91. No

  92. Se realiza la operación kk=kk+mm

  93. Guardamos el resultado de la operación dentro de la matriz que representa el vector de las Fuerzas de Coriolis (H)

  94. 7

  95. Se muestra la Matriz final H

  96. 7

  97. Crear Matriz para representar el valor de la gravedad

  98. Crear Matrices que representen las longitudes de los centros de masa en el eje en el que se encuentra

  99. Bucle para que i tome valores del 1 hasta n

  100. Se declara una variable cc=0

  101. Bucle para que j tome valores del 1 hasta n

  102. Se intenta realizar la operación cc=cc-M(j)*G*U(j)(i)*r(j)

  103. ¿Se pudo realizar la operación?

  104. cc=0

  105. Guardamos el resultado de la operación dentro de la matriz que representa las Fuerzas de Gravedad (C)

  106. 8

  107. Se muestra la Matriz final C

  108. 8

  109. Crear Matriz generalizada de aceleración (qoo)

  110. Realizar la operación Q=D*qoo+H+C la cual es la ecuación de la Dinámica Euler-Lagrange

  111. Mostrar los torques (T(i)) para los motores de cada eslabón

  112. FIN

  113. Bucle para que i tome valores del 1 hasta n

  114. Desarrollar Matriz homogénea n

  115. Multiplicar la Matriz Homogénea por las anteriores a ella

  116. Guardar el en una variable A(0)(i)

  117. Cinemática Directa

  118. Crear Matriz de parámetros de Denavit-Hartenberg

  119. FIN

  120. Hasta que la resta del valor deseado menos el valor obtenido sea menor al valor pequeño propuesto

  121. Desarrollar Matriz homogénea n

  122. Multiplicar la Matriz Homogénea por las anteriores a ella

  123. Cinemática Inversa

  124. Ingresar los valores actuales de q de cada eslabón

  125. Graficar el resultado con cinemtica directa

  126. FIN

Information

Description
Flowchart on Dinamica L-E, created by Kevin Lobato on 27/03/2022.
Created by
Kevin Lobato
Views
0
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?