Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Parte IV
Diferenciación numérica
Contenido
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 2 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Figura 1: Gottfried Wilhelm von Leibniz (1646-1716). Figura 2: Isaac Newton (1643-1727). Figura 3: Leonhard Paul Euler(1707-1783).
h iT
∂V(x)
Rt d
Notación matemática: I(t) = 0
f (σ)dσ; ẋ = dt
x; V̇(x) = ∂x
ẋ.
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 3 / 21
Introduction Método de diferenciación numérica Derivada de una función M ATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Diferenciación numérica
Diferenciación numérica
Es la técnica de aproximar a la derivada de una función por métodos numéricos.
La derivada es una operación matemática sobre funciones o variables de estado, y que tiene una diversidad de
aplicaciones en ingeniería. En robótica hay varios procesos donde se requiere medir la razón de cambio de las
variables. Por ejemplo,
d
La derivada de una función representa la razón de cambio con respecto al tiempo: dt
f (t).
Los algoritmos incluyen un término denominado acción de control derivativo con la finalidad de generar
amortiguamiento o freno mecánico y con dicha acción se pretende mejorar la respuesta transitoria del robot.
Para lograr esto, se inyecta la velocidad de movimiento, la cual representa la variación temporal de la
posición.
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 4 / 21
Introduction Método de diferenciación numérica Derivada de una función M ATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
La fricción viscosa y de Coulomb son fenómenos físicos que se encuentran presentes en los sistemas
mecánicos, la derivada de la posición forma parte de este fenómeno:
El modelado dinámico de sistemas mecatrónicos y robots incluye derivadas de las variables de estado
para conformar la estructura matemática adecuada para estudiar y analizar todos los fenómenos físicos
del sistema:
ẋ = f (x).
La teoría de estabilidad de sistemas dinámicos es otro ejemplo donde se utilizan derivadas: ẋ = f (x);
V(x) > 0 =⇒ V̇(x) < 0).
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 5 / 21
Introduction Método de diferenciación numérica Derivada de una función M ATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Concepto de derivada
d f (t + 4t) − f (t)
f (t) = lı́m (1)
dt 4t→0 4t
donde 4t representa un infinitésimo intervalo. Si el límite existe, entonces la derivada de f (t) está dada por ḟ (t).
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 6 / 21
Introduction Método de diferenciación numérica Derivada de una función M ATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Concepto de derivada
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 7 / 21
Introduction Método de diferenciación numérica Derivada de una función ATLAB: diferenciación numérica
M Ejemplos Solución numérica de ecuaciones diferenciales lineales
Concepto de derivada
d
Si f (t) representa posición, la razón de cambio de la posición es la velocidad de movimiento: dt
f (t) = ḟ (t).
d d d2
El cambio temporal de la velocidad es la aceleración: dt dt
f (t) = dt2
f (t) = f̈ (t).
d d d d3
...
Jerk es la derivada de la aceleración: dt dt dt
f (t) = dt3
f (t) = f (t).
Por otro lado, la integral de la velocidad es la posición ± una condición inicial f (0). Es decir, existe una
relación muy cercana entre la integral y la derivada; se puede considerar que son operaciones inversas
una de la otra.
La integral de una derivada:
t
Z t Z t Z t
df (σ)
ḟ (σ)dσ = dσ = df (σ) = f (σ) = f (t) − f (0)
0 0 dσ
0
0
retorna la función original f (t) más una constante que depende de las condiciones iniciales f (0).
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 8 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Concepto de derivada
f (t+ M t) − f (t)
ḟ (t) = lı́m =m
Mt→0 t+ M t − t
f (t)
m
f (t)
f (t+ M t)
O t t + Mt t
t+ M t − t f (t)
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 9 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Interpretación de la derivada
Interpretación de la derivada
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 10 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Interpretación de la derivada
Un método ampliamente utilizado en robótica y control automático para aproximar la derivada de f (t) es
el método de Euler.
Partiendo de la definición de derivada (1),
d f (t + 4t) − f (t)
f (t) = lı́m
dt 4t→0 4t
Por otro lado, a la definición de derivada (1) aplicamos la técnica muestreo, siendo tk = kh, donde k ∈ N, es
decir, k = 1, 2, · · · , n y h ∈ IR+ es el período de muestreo, obtenemos:
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 11 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Interpretación de la derivada
: :
Figura 5: Línea tangente de la función f : tk , f (tk ) y tk−1 , f (tk−1 ) . Figura 6: Línea tangente de la función f : tk+1 , f (tk+1 ) y tk , f (tk ) .
También se puede tomar la pendiente de la línea tangente en: (tk+1 , f (tk+1 )) y (tk , f (tk )). En este caso, el intervalo
de tiempo 4tk está dado por: 4tk = tk+1 − tk = (k + 1)h − kh = h como se muestra en la figura 6.
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 12 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Función diff()
Función diff
MATLAB tiene la función diff la cual realiza la diferenciación numérica entre valores adyacentes de un vector x.
La sintaxis de la función diff es la siguiente:
y= diff(x)
La función diff también se aplica a matrices, entonces opera en cada columna de la matriz, y retorna una matriz
con el mismo número de columnas, en este caso la sintaxis es:
B= diff(A)
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 13 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Ejemplo 6.1:
Aproximar la derivada con respecto al tiempo de la función sen(t) mediante diferenciación numérica.
Para obtener la derivada temporal por diferenciación numérica de la función sen(t) se hace uso del método
de Euler. El intervalo de diferenciación numérica se selecciona de 0 a 10 segundos, con incrementos de un
milisegundo. El método analítico conduce dtd sen(t) = cos(t). Por lo tanto, se comparará la solución aproximada
de Euler con la solución analítica.
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 14 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 15 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 16 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Ejemplo 7.1:
Emplear el método de Euler para convertir la siguiente ecuación diferencial en su equivalente expresión por
diferenciación numérica.
y(s) α
αu(t) = a2 ÿ(t) + a1 ẏ(t) + a0 y(t) ⇐⇒ = 2
(3)
u(s) a2 s + a1 s + a0
y(tk ) − y(tk−1 )
ẏ(t) ' ẏ(tk ) =
h
y(tk )−y(tk−1 ) y(tk−1 )−y(tk−2 )
ẏ(tk ) − ẏ(tk−1 ) h
− h
ÿ(t) ' ÿ(tk ) = =
h h
y(tk ) − 2y(tk−1 ) + y(tk−2 )
ÿ(tk ) =
h2
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 17 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Para implementar la solución discreta y(tk ) de la ecuación (3) se requieren los estados y(tk−1 ) y y(tk−2 ) y el
período de muestre h.
El método de Euler es ampliamente utilizado para resolver ecuaciones diferenciales lineales, usando el
procedimiento de este ejemplo se obtiene la solución en forma discreta de sistemas dinámicos lineales.
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 18 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 19 / 21
Introduction Método de diferenciación numérica Derivada de una función MATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
w2n
0 1 0
G(s) = 2 ⇒ ẋ = 2 x + 2 u; y= 1 0 x
2
s + 2ρwn s + wn −wn −2ρwn wn
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 20 / 21
Introduction Método de diferenciación numérica Derivada de una función M ATLAB: diferenciación numérica Ejemplos Solución numérica de ecuaciones diferenciales lineales
´
´
´
6 disp( Simulación de un sistema lineal de segundo orden )
´
´
7 [t,x]=ode45( ssoA ,sigma,cond_iniciales,opciones);
´
8 [n, m]=size(t);
9 y=zeros(n,m); u=ones(n,m); u(1,1)=0;
10 wn=1; rho=0.35; % parámetros de la planta.
11 a0=wn∧ (2); a1=2∗rho∗wn; a2=1; alpha=wn∧ 2;
12 for k=3:n
13 y(k)=(1/(a0+a1/h+a2/h∧ 2))∗(alpha∗u(k)+(2∗a2/h∧ 2+a1/h)∗y(k-1)-a2/h∧ 2∗y(k-2));
14 end
15 figure(1), %1
16 subplot(3,1,1); plot(t, x(:,1))
17 subplot(3,1,2); plot(t,y)
18 subplot(3,1,3); plot(t,y, t, x(:,1))
Dr. Fernando Reyes Cortés Período: Otoño ( 18 de agosto de 2023) Benemérita Universidad Autónoma de Puebla Licenciatura en Ingeniería Mecatrónica/Electrónica
Robótica I (FCES 034 003, NRC: 20639) Preliminares matemáticos Microsoft Teams (Otoño 2023 ROBOTICA I, NRC: 20639) Facultad de Ciencias de la Electrónica 21 / 21