Introducción
Este tutorial presenta los métodos numéricos más utilizados en el área de ingeniería. Por ejemplo, en el controlador PID se puede aproximar la acción integral y derivativa utilizando estos métodos. Además, estas técnicas se utilizarán en los siguientes blogs para el modelamiento y control de Robots Autónomos.
Las pruebas se realizaron en Matlab, más detalles en el siguiente video.
En robótica se requiere medir la razón de cambio de las variables del robot. Por ejemplo la razón de cambio de la posición es la velocidad y la razón de cambio de la velocidad es la aceleración.
La derivada xp puede ser descrita por la pendiente de la recta formada entre las muestras (k-1)T y kT de la función, conocida como diferenciación con un paso atrás (backward difference), tal como muestra la figura 1.
Donde k={0, 1, 2, .....} y T es un intervalo de tiempo constante (tiempo de muestreo).
También se puede aproximar la derivada entre las muestras kT y (k+1)T de la función, conocida como diferenciación hacia adelante (forward difference).
Implementación en Matlab
La figura 2 y 3 muestra la diferenciación numérica real, aproximada de una función senoidal.
Considerando que la integral de la aceleración es la velocidad, y la integral de la velocidad es la posición. Es decir, existe una relación entre la integral y la derivada. Por lo tanto se puede considerar que son operaciones inversas.
Entonces si se considera la diferenciación hacia adelante (forward difference) la integral numérica esta dada por.
Implementación en Matlab
La figura 4 y 5 muestra la integración numérica real, aproximada de una función coseno. La diferenciación numérica permite aproximar la derivada de una función. En la figura 5 se ha disminuido el tiempo de muestreo T a 0.01 segundos resultando una mejor aproximación.
Las pruebas se realizaron en Matlab, más detalles en el siguiente video.
Diferenciación numérica
La diferenciación numérica permite aproximar la derivada de una función. La derivada de una función representa la razón de cambio con respecto al tiempo.En robótica se requiere medir la razón de cambio de las variables del robot. Por ejemplo la razón de cambio de la posición es la velocidad y la razón de cambio de la velocidad es la aceleración.
La derivada xp puede ser descrita por la pendiente de la recta formada entre las muestras (k-1)T y kT de la función, conocida como diferenciación con un paso atrás (backward difference), tal como muestra la figura 1.
Donde k={0, 1, 2, .....} y T es un intervalo de tiempo constante (tiempo de muestreo).
Figura 1. Aproximación de la derivada de una función.
También se puede aproximar la derivada entre las muestras kT y (k+1)T de la función, conocida como diferenciación hacia adelante (forward difference).
Implementación en Matlab
La figura 2 y 3 muestra la diferenciación numérica real, aproximada de una función senoidal.
Figura 2. Diferenciación con un paso atrás (backward difference) con T=0.1s.
Figura 3. Diferenciación hacia adelante (forward difference) con T=0.1s.
Integración numérica
Considerando que la integral de la aceleración es la velocidad, y la integral de la velocidad es la posición. Es decir, existe una relación entre la integral y la derivada. Por lo tanto se puede considerar que son operaciones inversas.
Entonces si se considera la diferenciación hacia adelante (forward difference) la integral numérica esta dada por.
Implementación en Matlab
La figura 4 y 5 muestra la integración numérica real, aproximada de una función coseno. La diferenciación numérica permite aproximar la derivada de una función. En la figura 5 se ha disminuido el tiempo de muestreo T a 0.01 segundos resultando una mejor aproximación.
Figura 4. Integración numérica considerando (forward difference) con T=0.1s.
Figura 5. Integración numérica considerando (forward difference) con T=0.01s.