Está en la página 1de 18

Benemérita Universidad Autonóma de Puebla

Maestría en Ciencias de la Electrónica Opción en Automatización

Tarea 10 “Identificación paramétrica de un


péndulo”

Alumno: Brandon Toxqui Gómez

Profesor:
Dr. Fernando Reyes Cortés

25 de marzo de 2021
Índice
1. Resumen 2

2. Introducción 3
2.1. Señales de excitación persistente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2. Definición: Señal de excitación persistente fuerte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.3. Definición: Señal de excitación persistente debil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

3. Objetivos 5
3.1. General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2. Particulares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

4. Planteamiento del problema 5

5. Solución del problema 8


5.1. Esquemas de regresión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5.1.1. Esquema de regresión dinámico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5.1.2. Esquema de regresión de la energía . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5.1.3. Esquema de regresión de la potencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.2. Identificación de parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.2.1. Identificación de parámetros mediante el regresor del modelo dinámico . . . . . . . . . . . . . . 9
5.2.2. Identificación de parámetros mediante el regresor del modelo de energía . . . . . . . . . . . . . 10
5.2.3. Identificación de parámetros mediante el regresor del modelo de potencia . . . . . . . . . . . . 11
5.3. Diseño de la trayectoria de excitación persistente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

6. Conclusiones 14

7. Anexos 15
7.1. Anexo1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
7.1.1. Modelo dinámico del pendulo y señal de torque . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
7.1.2. Principal esquema de regresión dinámica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
7.1.3. Algoritmo mínimos cuadrados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7.2. Anexo2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7.2.1. Principal esquema de regresión de la energía . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7.3. Anexo3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
7.3.1. Principal esquema de regresión de la potencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

1
1. Resumen

En el siguiente trabajo se presenta una introducción sobre las señales de excita-


ción persistente, las cuales tienen una amplia aplicación en el área de indentificación
paramétrica dentro de la robótica. Posteriormente se presenta el modelo dinámico
de un péndulo de transmisión directa, y se presentan los esquemas de regresión diná-
mico, de la energía y de la potencia para el péndulo. Hecho esto se implementan en
MATLAB los regresores para realizar la identificación de parámetros. Posteriormen-
te se da un análisis cualitativo de la señal de excitación persistente que se propuso
y se presentan sus gráficas.

2
2. Introducción

Identificación paramétrica es una herramienta atractiva para determinar los pará-


metros dinámicos de robots manipuladores, sobre todo cuando existe dificultad para
medirlos directamente. Sin embargo, la naturaleza no lineal del modelo dinámico de
robots manipuladores hace que la tarea de identifación paramétrica no sea trivial
[Reyes, 2021].

2.1. Señales de excitación persistente

El propósito de utilizar señales de excitación persistente (persistent excitation)


es exhibir todos los modos dinámicos del sistema a identificar, tal que se registre
información relevante sobre la dinámica del proceso. De ahí que se debe diseñar con
mucho cuidado el tipo de señal que se va a utilizar en el proceso de identificación
paramétrica usando el método de mínimos cuadrados [Reyes, 2021].
Una condición suficiente para que una entrada u(tk ) sea de excitación persistente,
es que debe ser periódica con n distintas componentes senoidales, de esta forma el
vector de regresión φ(tk ) cumple con la condición de persistencia.

3
2.2. Definición: Señal de excitación persistente fuerte

Una señal escalar u(tk ) se dice de excitación persistente fuerte de orden n, si para
todo tk , existe un entero positivo tal que [Reyes, 2021]:
 
u(tk + n)
 
tX
k +ζ
u(tk + n − 1) h
  i
ρ1 I > 
 ..
 u(t + n) u(t + n − 1)
 k k ... u(tk + 1) > ρ2 I (1)
tk 
 . 

u(tk + 1)

donde ρ1 , ρ2 ∈ R+ , además I es la matriz identidad, I ∈ Rn+1×n+1

2.3. Definición: Señal de excitación persistente debil

Una señal escalar u(tk ) se dice ser de excitación persistente debil de orden n, si
satisface lo siguiente [Reyes, 2021]:
 
u(tk + n)
 
N u(t + n − 1) h
1 X  k  i
ρ1 I ≥ lı́m 
.
 u(t + n)
k u(tk + n − 1) . . . u(tk + 1) ≥ ρ2 I (2)
N →∞ N  .. 
tk =1  
 
u(tk + 1)

La condición de una señal de excitación persistente débil tiene una interesante in-
terpretación en el dominio de la frecuencia.

Una señal estacionaria u(tk ) es de excitación persistente débil de orden n si su


espectro de potencia tiene dos componentes espectrales diferentes de cero (una
en cada lado del espectro) en n puntos o más.

El anterior argumento, tambien admite la siguiente interpretación: la entrada


escalar u(tk ) tiene una función de distribución espectral, la cual es diferente de
cero en 2n puntos o más.

4
3. Objetivos

3.1. General

Realizar la identificación paramétrica de el servomecanismo tipo pendulo mostra-


do en la figura 1.

3.2. Particulares

1. Realizar el proceso de identificación paramétrica:

dinámico

energía

potencia

2. Diseñar una trayectoria de excitación persistente y demuestre usando los datos


de simulación que cumple las condiciones necesarias para ser considerada de
excitación persistente.

3. Utilize la norma L[θ̃] para medir el desempeño de los esquemas de regresión.

4. Planteamiento del problema

Considere el modelo dinámico del péndulo:

τ = Ip q̈ + mglc sen(q) + bq̇ + fc signo(q̇) (3)

Este modelo representa al péndulo de la figura 1 donde:

5
Ip momento de inercia: [0,16N m − seg 2 /rad],

m masa: [5kg],

lc centro de masa: [0,008m],

g constante de aceleración gravitacional: [9,81m/seg 2 ]

b coeficiente de fricción viscosa: [0,45N m],

fc coeficiente de fricción de Coulomb: [0,45N m],

q, q̇, q̈ posición, velocidad y aceleración articular, respectivamente,

τ representa el par o torque aplicado al servomotor (señal de excitación persis-


tente).

Figura 1: Péndulo de transmisión directa

1. Realizar el proceso de identificación paramétrica para los siguientes modelos de


regresión:

6
dinámico

energía

potencia

2. Diseñar una trayectoria de excitación persistente y demuestre usando los datos


de simulación que cumple las condiciones necesarias para ser considerada de
excitación persistente.

3. Utilize la norma L[θ̃] para medir el desempeño de los esquemas de regresión.

7
5. Solución del problema

5.1. Esquemas de regresión

A continuación se muestran los 3 regresores lineales mediante los cuales se realizó


la identificación paramétrica del péndulo.

5.1.1. Esquema de regresión dinámico

Considerando al modelo dinámico del pendulo dado por la siguiente expresión:

τ = Ip q̈ + mglc sen(q) + bq̇ + fc signo(q̇) (4)

se tiene el siguiente esquema de regresión dinámico:


 
ˆ
 Ip 
 ˆ 
 
mglc 

e(k) = τ (k) − q̈(k) sen(q(k)) q̇(k) signo(q̇(k)) 


 (5)
 b̂ 
 
ˆ
 
fc

5.1.2. Esquema de regresión de la energía

El modelo de energía del pendulo se describe en [1], de este análisis resulta el


siguiente esquema de regresión lineal de la energía para el pendulo:
 
ˆ
 Ip 
 ˆ 
 
Z t 
mgl c
e(k) = [1 − cos(q)] 0t q̇ 2 dt 0t |q̇|dt  (6)

q̇τ dt − 1 2 R R
2
q̇ 


0  b̂ 
 
fˆc
 

8
5.1.3. Esquema de regresión de la potencia

El modelo de potencia del péndulo se describe en [1], del análisis resulta el si-
guiente modelo de regresión lineal:
 
 Iˆp 
 
# ˆ 
 

mglc 
" 
e(k) = τ q̇ − q̇ q̈ sen(q)q̇ q̇ 2 |q̇| 
 
 (7)
 b̂ 

 
ˆ
 
fc
 

5.2. Identificación de parámetros

Como sabemos, para realizar una correcta identificación de parámetros utilizando


el método de mínimos cuadrados es necesario, diseñar una señal de excitación per-
sistente (torque τ ) que nos permita obtener todos los modos dinámicos de nuestro
sistema, esto con la finalidad de recabar una mayor cantidad de información. El
análisis de esta señal de excitación persistente se realiza en la siguiente sección.

5.2.1. Identificación de parámetros mediante el regresor del modelo dinámico

A continuación se muestran las lineas de código, en las cuales se puede apreciar


al vector “fi” que contiene a las mediciones de las variables que estan relacionadas
con los parámetros a identificar:
f i =[qpp , sin ( q ) , qp sign ( qp ) ] ;
[ r , theta_hat ]= mincuad ( tau , f i ) ;
theta_hat

9
Como se puede observar, el vector de mediciones y la entrada τ ingresan a la función
de minimos cuadrados, la cual nos regresa “theta_hat” que corresponde al vector
de parámetros estimados. El resultado arrojado por este regresor es el siguiente:
 
 0,16 
 
 
0,3924
 

theta_hat = θ̂ = (8)
 
 
 0,45 
 
 
 
 
0,45
 

Si observamos el vector de parámetros estimados, corresponden exactamente a los


mismos valores de paramétros reales que se presentaron para el péndulo. Los detalles
de la función donde se tiene al modelo dinámico del pendulo y el resto del programa
principal se encuentran en el anexo1.

5.2.2. Identificación de parámetros mediante el regresor del modelo de energía

A continuación se muestran las lineas de código, en las cuales es posible apreciar


el vector “fi” que contiene las mediciones de las variables necesarias para realizar
la estimación. Una vez obtenidas, ingresan a la función de minímos cuadrados para
retornar los parámetros estimados:
f i =[1/2∗ qp . ∗ qp , (1−cos ( q ) ) , Int2 , I n t 3 ] ;
[ r , theta_hat ]= mincuad ( Int1 , f i ) ;
theta_hat

Como se observa el vector “fi” y la entrada Int1 que corresponde a la energía


aplicada, ingresan a la función de minimos cuadrados la cual nos retorna el siguiente

10
resultado:  
0,1963
 
 
0,3161
 

theta_hat = θ̂ = (9)
 
 
0,4623
 
 
 
 
0,0588
 

Como se observa para este esquema de regresión los paramétros de estimación difie-
ren demasiado de los parámetros reales. Esto se puede deber a la señal de excitación
persistente que se propuso, ya que solo con este esquema de regresión es con el que
se tuvo problemas. Los detalles del código se dan en el anexo2.

5.2.3. Identificación de parámetros mediante el regresor del modelo de potencia

A continuación se muestran las lineas de código en las cuales se puede apreciar


al vector “fi” que contiene las mediciones de las variables necesarias para realizar la
estimación, posteriormente este vector de mediciones ingresa a la funcion de mínimos
cuadrados, que nos retorna los parámetros estimados:
f i =[qp . ∗ qpp , sin ( q ) . ∗ qp , qp . ∗ qp , abs ( qp ) ] ;
[ r , theta_hat ]= mincuad ( tau . ∗ qp , f i ) ;
theta_hat

Como se observa el vector “fi” y la entrada τ q̇ que corresponde a la potencia aplicada,


ingresan a la función de mínimos cuadrados la cual nos retorna el siguiente resultado:
 
 0,16 
 
 
0,3924
 

theta_hat = θ̂ = (10)
 
 
 0,45 
 
 
 
 
0,45
 

11
Observando el vector de parámetros estimados, vemos que estos corresponden exac-
tamente a los mismos valores de parámetros reales que se presentaron para el modelo
del péndulo. Se piensa que esto se debe a que el modelo de potencia, sale propia-
mente del modelo dinámico del robot, de hecho solo multiplicamos ambos lados de
la expresión por q̇ para obtener dicho modelo, por lo que en esencia, toda la infor-
mación del modelo dinámico esta presente en el modelo de potencia. El programa
principal donde se tiene al modelo de potencia y los detalles se dan en el anexo3.

5.3. Diseño de la trayectoria de excitación persistente

La señal de torque que se inyecto al sistema para realizar el proceso de identifi-


cación paramétrica es la siguiente:

τ = 4,5sen(0,48 ∗ pi ∗ t + rand(1)) + 3,2sen(0,85 ∗ pi ∗ t + rand(1)); (11)

Inspeccionando dicha señal, vemos que cumple con las caracteristicas de una señal
de excitación persistente segun [1], ya que como observamos en la expresión nuestra
señal de excitación tiene 2 componentes senoidales, ya que son las necesarias para
identificar los 4 parámetros del pendulo, ademas las frecuencias, corresponden al
tipo irracional ya que se encuentran multiplicadas por pi. Por otra parte la fase de
estas señales se propone aleatoria utilizando rand() de MATLAB que proporciona
numeros aleatorio con distribución uniforme. Finalmente las amplitudes de estas
señales se propusieron experimentalmente, teniendo en cuenta que no se debe so-
brepasar el torque máximo de 15N-m. A continuación se muestra la linea de código,
donde se implementa el torque:
tau =4.5∗ s i n ( 0 . 4 8 ∗ p i ∗ t+rand ( 1 ) ) + 3 . 2 ∗ s i n ( 0 . 8 5 ∗ p i ∗ t+rand ( 1 ) ) ;

12
La gráfica de la señal de excitación persistente utlizada en los 3 esquemas de regresión
es la siguiente: Como se puede observar, la señal no sobrepasas el torque máximo,

Figura 2: Señal de excitación persistente

sin embargo, parece no ser periodica. Teniendo esto en cuenta se hizo mas grande el
tiempo de simulación (t=70s), para visualizar mejor el comportamiento, el resultado
se muestra en la figura 3, como se aprecia la señal vuelve a ser periodica en t=38s.

Figura 3: Torque con tiempo de simulacion t=70s

13
6. Conclusiones

Es importante estudiar y entender los métodos de identificación parámetrica, ya


que estos son de vital importancia cuando no se conocen los modelos númericos del
robot. Además tambien se debe prestar especial atención al diseño de la trayectoria
de excitación persistente, ya que esta tiene caracteristicas muy especificas de como
se debe diseñar para que la identificación de parámetros resulte efectiva. En caso
de que esta señal de entrada no este bien diseñada se pueden tener errores en la
convergencia de los parámetros estimados. Por otra parte el esquema de regresión
de la energía no tiene tan buen desempeño en comparación con el de potencia y el
del modelo dinámico, esto se debe a que el modelo de energía del péndulo no es tan
rico en información como lo es el modelo dinámico.

Referencias

[1] Reyes Cortés Fernando, Control de Robots Manipuladores (Identificación para-


métrica). Puebla, BUAP, FCE (Diapositivas), 2021.

[2] Reyes Cortés Fernando, MATLAB Aplicado a Robótica y Mecatrónica. Alfaome-


ga, México, 2012.

14
7. Anexos

7.1. Anexo1
7.1.1. Modelo dinámico del pendulo y señal de torque

f u n c t i o n xp=pendulo ( t , x , bandera )
g l o b a l tau qpp
i f ( bandera==9) %e v a l u a l a a c e l e r a c i ón
q=x ( : , 1 ) ;
qp=x ( : , 2 ) ;
e l s e %i n t e g r a c i ón numerica
q=x ( 1 ) ;
qp=x ( 2 ) ;
end
%Par á metros d e l pé ndulo
Ip = 0 . 1 6 ; %momento de i n e r c i a
m=5; %masa
l c =0.008; %c e n t r o de masa
g = 9 . 8 1 ; %c o n s t a n t e de a c e l e r a c i ón g r a v i t a c i o n a l
b = 0 . 4 5 ; %c o e f i c i e n t e s de f r i c c i ón
f c =0.45;

%tau =4.3∗ s i n ( 0 . 4 5 ∗ p i ∗ t +0.1154) + 2∗ s i n ( 0 . 9 ∗ p i ∗ t − 0 . 5 5 ) ;


tau =4.5∗ s i n ( 0 . 4 8 ∗ p i ∗ t+rand ( 1 ) ) + 3 . 2 ∗ s i n ( 0 . 8 5 ∗ p i ∗ t+rand ( 1 ) ) ;
%tau =5.0∗ s i n ( 1 . 2 ∗ p i ∗ t+rand ( 1 ) ) + 7 . 0 ∗ s i n ( 0 . 5 5 ∗ p i ∗ t+rand ( 1 ) ) ;
%a c e l e r a c i ón a r t i c u l a r d e l pendulo
qpp=(tau−b∗qp−f c ∗ s i g n ( qp)−m∗g∗ l c ∗ s i n ( q ) ) / Ip ;
%Vector de s a l i d a
xp=[qp ;
qpp ] ;
7.1.2. Principal esquema de regresión dinámica

c l c ; c l e a r a l l ; c l o s e a l l ; format s h o r t g
g l o b a l tau qpp %v a r i a b l e s g l o b a l e s
t i =0;h = 0 . 0 0 1 ; t f =10;
t=t i : h : t f ;
ci =[0;0];
o p c i o n e s=o d e s e t ( ’ RelTol ’ , 1 e −3 , ’ I n i t i a l S t e p ’ , 1 e −3 , ’ MaxStep ’ , 1 e −3); %opcionesODE
[ t , x]= ode45 ( ’ pendulo ’ , t , c i , o p c i o n e s ) ; %S o l u c i ón numerica d e l s i s t e m a
xp=pendulo ( t , x , 9 ) ;
q=x ( : , 1 ) ;

15
qp=x ( : , 2 ) ;
f i =[qpp , s i n ( q ) , qp s i g n ( qp ) ] ;
[ r , theta_hat ]= mincuad ( tau , f i ) ;
theta_hat
p l o t ( t , tau )
7.1.3. Algoritmo mínimos cuadrados

f u n c t i o n [ r , theta_hat ]= mincuad ( y , f i )
[ n ,m]= s i z e ( f i ) %n= numero de r e n g l o n e s , m numero de columnas
theta_hat = [ 1 :m] ’ ; %v e c t o r columna de pá r a m e t r o s
theta_hat (1)=0; % C o n d i c i ón i n i c i a l d e l v e c t o r de parametros
p s i = [ 1 :m] ’ ; %Vector columna de o b s e r v a c i o n e s
P=eye (m,m) ∗ 10 e20 ; %Matriz de c o v a r i a n z a P
r=eye ( n ,m) ; %r e g i s t r o para l a s par á metros e s t i m a d o s
f o r k=1:n %a l g o r i t m o r e c u r s i v o de mí nimos cuadrados
f o r i =1:m %s e forma e l r e g r e s o r
p s i ( i ,1)= f i ( k , i ) ;
end
e=y ( k)−theta_hat ’ ∗ p s i ; %e r r o r de r e g r e s i o n
theta_hat=theta_hat +(P∗ p s i ∗ e )/(1+ p s i ’ ∗P∗ p s i ) ; %v e c t o r estimado
P=P−(P∗ p s i ∗ ( p s i ’ ) ∗ P)/(1+ p s i ’ ∗P∗ p s i ); % Matriz de c o v a r i a n z a
f o r i =1:m
r ( k , i )= theta_hat ( i , 1 ) ; %r e g i s t r o por cada i t e r a c i o n de parametros e s t i m a
end
end
end
7.2. Anexo2
7.2.1. Principal esquema de regresión de la energía

c l c ; c l e a r a l l ; c l o s e a l l ; format s h o r t g
g l o b a l tau %v a r i a b l e s g l o b a l e s
t i =0;h = 0 . 0 0 1 ; t f =10;
t=t i : h : t f ;
ci =[0;0];
o p c i o n e s=o d e s e t ( ’ RelTol ’ , 1 e −3 , ’ I n i t i a l S t e p ’ , 1 e −3 , ’ MaxStep ’ , 1 e −3); %opcionesODE
d i s p ( ’ S i m u l a c i o n puede demorar por u s a r f u n c i o n e s d i s c o n t i n u a s . . . ’ )
[ t , x]= ode45 ( ’ pendulo ’ , t , c i , o p c i o n e s ) ; %S o l u c i ón numerica d e l s i s t e m a

xp=pendulo ( t , x , 9 ) ;

[m n]= s i z e ( t ) ;
q=x ( : , 1 ) ;

16
qp=x ( : , 2 ) ;
I n t 1=z e r o s (m, 1 ) ;
I n t 2=z e r o s (m, 1 ) ;
I n t 3=z e r o s (m, 1 ) ;
f o r k=2:m
I n t 1 ( k ,1)= I n t 1 ( k −1 ,1) + h∗qp ( k , 1 ) ∗ tau ( k , 1 ) ;
I n t 2 ( k ,1)= I n t 2 ( k −1 ,1) + h∗qp ( k , 1 ) ∗ qp ( k , 1 ) ;
I n t 3 ( k ,1)= I n t 3 ( k −1 ,1) + h∗ abs ( qp ( k , 1 ) ) ;
end

f i =[1/2∗ qp . ∗ qp , (1− c o s ( q ) ) , Int2 , I n t 3 ] ;


[ r , theta_hat ]= mincuad ( Int1 , f i ) ;
theta_hat
p l o t ( t , tau )
7.3. Anexo3
7.3.1. Principal esquema de regresión de la potencia

c l c ; c l e a r a l l ; c l o s e a l l ; format s h o r t g
g l o b a l tau qpp %v a r i a b l e s g l o b a l e s
t i =0;h = 0 . 0 0 1 ; t f =10;
t=t i : h : t f ;
ci =[0;0];
o p c i o n e s=o d e s e t ( ’ RelTol ’ , 1 e −3 , ’ I n i t i a l S t e p ’ , 1 e −3 , ’ MaxStep ’ , 1 e −3); %opcionesODE
[ t , x]= ode45 ( ’ pendulo ’ , t , c i , o p c i o n e s ) ; %S o l u c i ón numerica d e l s i s t e m a

xp=pendulo ( t , x , 9 ) ;

[m n]= s i z e ( t ) ;
q=x ( : , 1 ) ;
qp=x ( : , 2 ) ;

f i =[qp . ∗ qpp , s i n ( q ) . ∗ qp , qp . ∗ qp , abs ( qp ) ] ;


[ r , theta_hat ]= mincuad ( tau . ∗ qp , f i ) ;
theta_hat
p l o t ( t , tau )

17

También podría gustarte