Sei sulla pagina 1di 6

Proyecto (informe final).

Grupo ISS
Pontificia Universidad Católica de Chile
Departamento de Ingeniería Mecánica y Metalúrgica
Horas utilizadas en el informe: 18
Saavedra, Diego Subercaseaux Pérez, Maximiliano
Izquierdo R-T, Matías
ID:55 ID:60
ID: 53
dssaavedra@uc.cl msubercaseaux@uc.cl
mizquierdo1@uc.cl

Resumen — El presente trabajo muestra los resultados de 𝑠𝜃(𝑠) 𝐾


𝐺(𝑠) = = 𝐽𝐿 𝑠 2+(𝑏𝐿+𝐽𝑅)𝑠+(𝑏𝑅+𝐾2) [8]
modelar un motor de corriente continua en lazo abierto, para 𝑉(𝑠)
luego cerrar el lazo mediante distintas combinaciones de control De lo anterior vemos que el modelo de la función de
proporcional, integral y derivativo. Se simuló la respuesta y esta transferencia G(s) es de orden 2, lo que indica que puede
fue comparada con los resultados reales. Se concluye que el modelarse siguiendo la ecuación general
modelo de la planta discrepa del comportamiento real en su 2
𝜔𝑛
respuesta transiente, y que al cerrar el lazo el error de 𝐺(𝑠) = 𝑘 𝑠 2+2𝜔 2 [9]
𝑛 𝜁𝑠+𝜔𝑛
aproximar la planta en lazo abierto se magnifica.
El esquema general del funcionamiento de la planta
Palabras clave—Motor, Control, PID, Arduino. (motor) se ilustra a continuación.

I. TEORÍA Y MODELO DEL SISTEMA FÍSICO

A. Modelación del sitema físico


El modelo matemático de un motor de corriente continua
Figura 1. Esquema del comportamiento del motor (planta) ante
se obtiene a partir de las ecuaciones mecánicas y eléctricas que
una entrada de voltaje en escalón.
se listan a continuación:

B. Identificación de la planta y experimentos en lazo


𝑇 = 𝐽𝜃̈ + 𝑏𝜃̇ [1] abierto.
𝑑𝑖
𝐿 𝑑𝑡 + 𝑅𝑖 = 𝑉 − 𝐾𝜃̇ [2] El motor con el que se trabajó corresponde a un motor DC
común en aplicaciones de robótica. Se puede buscar en la web
T: Torque de salida del motor. con el siguiente nombre: “30:1 Metal Gearmotor 37Dx68L
J: Momento de inercia del motor. mm with 64 CPR Encoder”.
b: Constante del motor. El experimento consistió en tomar los datos de la respuesta
L: Inductancia de la armadura. de la velocidad angular del motor a un voltaje de 100 PWM
R: Resistencia eléctrica de la armadura (3V). Los datos se resumen en el siguiente gráfico:
K: Constante del motor
V: Voltaje suministrado al motor

Además, el torque en un motor de corriente continua está


dado por:
𝑇 = 𝑘𝑖𝑎 [3]

Donde ia corresponde a la corriente de armadura.


Juntando [3] y [1], tenemos
𝑇 = 𝐾𝑖𝑎 = 𝐽𝜃̈ + 𝑏𝜃̇ [4]

Aplicando transformada de Laplace a [2] y [4], tenemos:


Figura 2. Respuesta experimental de la planta ante un escalón de
𝐾𝑖(𝑠) = 𝐽𝑠 2 𝜃(𝑠) + 𝑏𝑠 𝜃(𝑠) 100 PWM.
𝐽𝑠 2 𝜃(𝑠)+𝑏𝑠 𝜃(𝑠)
𝑖(𝑠) = [5]
𝐾
A continuación, se utilizó el paquete de control que se
ofrece en el entorno de programación Jupyter para encontrar
𝐿𝑠 𝑖(𝑠) + 𝑅 𝑖(𝑠) = 𝑉(𝑠) − 𝐾𝑠 𝜃(𝑠) [6]
una planta de segundo orden que tuviera una respuesta similar
Reemplazando [5] en [6] se puede despejar la razón entre
a la encontrada experimentalmente. Luego de algunas
la posición angular del rotor y al voltaje aplicado, que
iteraciones se llegó a los parámetros necesarios de la ecuación
corresponde a la función de transferencia de la planta en
[9]
cuestión:
𝜃(𝑠) 𝐾 𝜔𝑛 = 65 ; 𝜁 = 8 ; 𝑘 = 1,63
𝐻(𝑠) = = [7] Con lo que la planta puede ser modelada mediante la
𝑉(𝑠) 𝐽𝐿 𝑠 3+(𝑏𝐿+𝐽𝑅)𝑠 2+(𝑏𝑅+𝐾 2 )𝑠
Si queremos obtener la velocidad angular, basta con función de transferencia
derivar la expresión anterior, lo que en el dominio de Laplace 652
sería equivalente a dividir por S. Luego: 𝐺(𝑠) = 1,63 𝑠 2+2·65·8·𝑠+652 [10]
La siguiente figura muestra el resultado de modelar la
planta con los parámetros anteriores

Figura 5. Esquema del lazo cerrado (control).

A. Consideraciones: Encoders del motor


Se debe tener en cuenta que los encoders del motor poseen
una resolución de 64 conteos (o “pulsos”) por vuelta. Además,
el motor posee una reducción de 30:1, por lo que la cantidad
Figura 3. Respuesta real v/s respuesta simulada. Entrada: escalón real de pulsos por vuelta que entregan los encoders del motor
de 100PWM. es de 64x30=1920 pulsos/vuelta.
Para corroborar que efectivamente se puede modelar la Lo anterior quiere decir que, para pasar de RPM a
planta como una función de transferencia como la encontrada pulsos/segundo es necesario hacer la siguiente conversión:
en la ecuación [9], es necesario mostrar linealidad e invarianza 1920
en el tiempo de la planta real. La figura (LA SIGUIENTE) 𝑅𝑃𝑀 = 𝑝𝑢𝑙𝑠𝑜𝑠/𝑠𝑒𝑔𝑢𝑛𝑑𝑜 [11]
60
consiste en la aplicación de la mitad del voltaje a la planta
(50PWM) en intervalos de 5 segundos. B. Respuesta de la planta en lazo abierto
Se analizó la planta en lazo abierto, para compararla con
la respuesta real obtenida.

Figura 4. Aplicación de escalón de 50 PWM a la planta en


intervalos de tiempo.
Figura 6. Respuesta en lazo abierto. Real v/s simulada. Entrada:
Escalón 100 PWM.
De aquí podemos observar que, al aplicarle la mitad de la
entrada a la planta, la salida es aproximadamente la mitad (80 La figura anterior muestra visualmente que existe una
rpm en vez de 163 rpm). También se puede observar diferencia considerable entre la respuesta simulada y la real,
visualmente que la respuesta es la misma independientemente por lo que se iteró cambiando levemente los parámetros de la
del tiempo en el que sea aplicada la entrada (i.e, la salida es la función encontrada en la primera experiencia de laboratorio.
misma, sin importar el momento en el que se aplica el voltaje). Los nuevos parámetros obtenidos son
Con esto se puede concluir linealidad e invarianza en el
𝜔𝑛 = 70 ; 𝜁 = 7 ; 𝑘 = 1,63
tiempo para la planta, lo que permite la modelación de esta
como una función de transferencia LTI de orden 2.

II. CONTROLADOR PID


La segunda experiencia de laboratorio consistió en
controlar el motor para que cumpla ciertos requerimientos al
aplicarle una entrada en escalón de 360 grados (1 vuelta). Para
esto se modificó la función de transferencia: Como la ecuación
[9] nos entrega la velocidad (medida en rpm) del motor,
entonces, integrando en el dominio de Laplace, se llega a la
ecuación [7]. La figura siguiente ilustra el esquema de
funcionamiento de la planta en lazo cerrado, controlada
mediante PID.
Figura 7. Respuesta en lazo abierto. Escalón de 100PWM.
Segunda iteración.
Se aprecia en la figura anterior que se ha encontrado un los sensores da un valor más uniforme a la variable e_d.
modelo que se ajusta mucho mejor a la respuesta real en lazo Luego se actualizan las variables d1, d2, d3, d4
abierto que la propuesta en la primera experiencia de d4=d3;
laboratorio. Con esto tenemos entonces que la nueva función d3=d2;
de transferencia se puede modelar como d2=d1;
652 d1=error;
𝐺(𝑠) = 1,63 𝑠 2+2·65·8·𝑠+652 [12]
b) Tercera modificación: Prevención ante cambios
C. Instrucciones del laboratorio abruptos de referencia
La experiencia pedía 4 tipos de control distintos que, en En caso de existir un cambio de referencia, el error se
lo posible, cumplieran con los siguientes requerimientos: puede hacer muy grande, con lo que la variable d lo hace
- Error permanente (ep) < 2 % también. De ocurrir esto se generarían inestabilidades al
Sobreoscilación (Mp) < 15 % existir cambios en la referencia. Esto se soluciona no
- Tiempo de respuesta (Tr) < 500 ms considerando la variable error en el cálculo de d cuando
- Tiempo de establecimiento (Ts) < 2 s existen estos cambios.
Los 4 tipos de control a utilizar fueron: if (ref=ref_anterior)
- Control P {d=kd·(error-e_d)/dt}
- Control PI else
- Control PD {d=kd · -ed/dt
- Control PID ref_anterior=ref}
Finalmente, se le da velocidad al motor, según la suma de
las 3 variables PID (según corresponda el caso)
D. Implementación de los controladores motorout=p+i+d;
1) Definición de variables md.setM1speed(motorout);
Mediante el comando float se definieron las variables de
III. COMPARACIÓN EXPERIMENTAL
código:
kp (ganancia proporcional) En esta sección se muestran los resultados obtenidos con
ki (ganancia integrativa), las distintas configuraciones de control exhibidas en la
kd (ganancia derivativa), sección anterior.
ref (referencia de valor 1920), A. Control P
error_acumulado (suma de errores para implementar
control integral) La implementación del control proporcional consistió en
e_d (error que se utilizará para implementar el control iterar con la ganancia hasta que se obtuvo un Kp de 0.6. Los
derivativo) resultados obtenidos fueron:
d1, d2, d3, d4 (variables que se utilizarán para filtrar la - ep = 0.68 %
señal) - Mp = 16.6 %
2) Control proporcional - Tr = 231 ms
La implementación de este control es simple. Definiendo - Ts = 610 ms
una variable float p=kp·error; se genera un valor De lo que se desprende que no fue posible cumplir con el
requerimiento de sobreoscilación. El siguiente gráfico
proporcional al error, e que realimenta la planta.
muestra las respuestas real y simulada del sistema
3) Control integral realimentado con el control proporcional.
Se define float i=ki·error_acumulado·dt; La variable
error_acumulado guarda error en el tiempo, haciendo que el
factor i se haga cada vez más grande.
a) Primera modificación: Limitar el efecto de la
integral
Con esto logramos que el factor i no crezca infinitamente,
poniendo una cota a su valor:
if (error_acumulado>=1000)
{error_acumulado=1000;}
if (error_acumulado<=-1000)
{error_acumulado=-1000;}
4) Control derivativo
float d;
d=kd·(error-e_d)/dt Con esto se le da valor a la parte Figura 8. Respuesta real v/s simulada. Control P.
derivativa del control. Aquí, e_d guarda el valor del error
anterior captado por los sensores. Se puede ver que la respuesta simulada es notoriamente
a) Segunda modificación: Filtrar el ruido de los peor que la real, teniendo, por ejemplo, una sobreoscilación de
sensores. casi 50%, y un tiempo de establecimiento de 2 segundos. En
la siguiente sección se hará un análisis más detallado de lo que
e_d=(d1+d2+d3+d4)/4; Se toma el promedio de los
ocurre.
últimos 4 errores captados por los sensores. Filtrar el ruido de
B. Control PI
Similar al procedimiento del control proporcional, en esta
instancia se iteró buscando ganancias Kp y Ki que cumplieran
las condiciones. Los resultados fueron:
Kp = 0.2
Ki = 0.01
ep = 1.15 %
Mp = 17.6 %
Tr = 264 ms
Ts = 700 ms Figura 10. Respuesta real v/s simulada. Control PD

D. Control PID
Los resultados que se obtuvieron con esta configuración
fueron:
- Kp = 0.5
- Ki = 0.02
- Kd = 0.02
- ep = 0.63 %
- Mp = 0 %
- Tr = 340 ms
- Ts = 470 ms
Se observa que se cumplen todas las condiciones
Figura 9. Respuesta real v/s simulada. Control PI. necesarias. Comparando con la configuración PD el
desempeño es peor. De aquí podemos observar que en los dos
La figura 9 muestra una discrepancia: Si se comparan los casos en los que se incluyó el control integral en la
resultados experimentales entre el control P y el PI se ve que, realimentación, el desempeño empeoró.
si bien el control PI cumple con 3 de las 4 condiciones, la
respuesta empeora obteniendo sobreoscilación, error
permanente y tiempo de establecimiento peores que los
obtenidos con el control proporcional.
La simulación del control PI tiene un desempeño
notoriamente mejor que el control P, disminuyendo la
sobreoscilación casi a la mitad. La discrepancia entre los
resultados experimentales y los simulados pueden deberse a
que la primera modificación (limitación del efecto de la
integral) no fue suficiente para mejorar la perfomance del
control; por el contrario, lo empeoró. Se podría haber
aumentado el límite de efecto de esta.

C. Control PD Figura 11. Respuesta real v/s simulada. Control PID.


Los resultados de implementar esta configuración fueron:
IV. ANÁLISIS DE RESULTADOS
- Kp = 0.95
En la sección III se pudo apreciar visualmente que las
- Kd = 0.02 simulaciones para cada tipo de control no se ajustan a la
- ep = 0.42% realidad. El análisis se enfocó en el control proporcional, por
su mayor simplicidad para sacar conclusiones.
- Mp = 0 %
Se obtuvo el lugar geométrico de las raíces para la planta
- Tr = 249 ms (ver figura 12), variando la ganancia Kp hasta 0.6 (valor de la
- Ts = 340 ms ganancia en el caso del control proporcional). Para un Kp =
0.6 los polos se ubican en -975 + 0j y – 2 ± 12j.
Se puede ver que se cumple con todos los requerimientos.
notar que ahora la sobreoscilación es de 0%, algo que no fue
logrado con el control P ni PI.
Figura 12. LGR del modelo actual de la planta. Se pueden Figura 14. LGR del modelo de la planta con parámetros cambiados.
apreciar dos de los tres polos que posee debido al zoom que se
hizo para visualizer de mejor manera el sector de interés. Se puede ver en la figura anterior que el nuevo lugar de las
raíces encontrado contiene a los polos deseados. Sin embargo,
Por otro lado, se encontró la ubicación real de los polos del para Kp=0.6 los polos se encuentran aproximadamente en – 7
sistema analizando la respuesta real del control proporcional ± 20j, mientras que para un Kp = 0.3 los polos se encuentran
y con las siguientes ecuaciones: en el lugar deseado (o lo que es lo mismo, dividir por 2 la
ganancia de la planta y luego realimentar con un Kp = 0.6).
ln(𝑀𝑝)2
𝜁 = √𝜋2 +ln(𝑀𝑝)2 [13] Las siguientes figuras muestran la comparación entre la
4.6
nueva respuesta simulada y la respuesta real. Se puede notar
𝑡𝑠 = 𝜁𝜔 [14] que con esta nueva planta y un Kp = 0.3 la respuesta es muy
𝑛
similar, sin embargo, para un Kp=0.6 (que es la ganancia
Reemplazando con los valores de sobreoscilación y correcta) la respuesta del transiente sigue siendo muy distinta.
tiempo de establecimiento obtenidos para el control
proporcional se obtienen
𝜁 ≅ 0.49 ; 𝜔𝑛 ≅ 15.2
Con estos valores se obtienen dos polos complejos
conjugados, cuyas ubicaciones están en – 7.5 ± 13.3j

Figura 15. Respuesta del nuevo modelo a un control proporcional.


Comparación con resultado experimental.

Figura 13. LGR del modelo de la planta y polos de la respuesta


real.

La figura anterior muestra que los polos de la planta


simulada no pasan por los polos de la respuesta real (los que
están marcados por una estrella en la imagen); por lo que se
concluye que no se puede llegar a simular una respuesta
similar a la real sólo variando la ganancia; por lo que el
problema se encuentra en la identificación de la planta.
Se iteró para distintos valores de ç y wn hasta encontrar
unos que hicieran pasar el lugar de las raíces de la planta Figura 16. Respuesta real v/s simulada con nuevos parámetros y
simulada por los polos deseados, llegando a los valores ganancia reducida a la mitad.

𝜁 ≅ 2 ; 𝜔𝑛 ≅ 60
V. CONCLUSIONES
Se encontró una aproximación para la planta que
representaba la respuesta en lazo abierto para una entrada de
voltaje y una salida en rpm. Al integrar la planta en el dominio
de Laplace, se notó que la modelación no había sido certera, un Kp = 0.6. Sabemos que esto no es posible de hacer, puesto
por lo que se corrigieron sus parámetros en una segunda que cambiar la ganancia de la planta tiene efecto en su
iteración. respuesta en lazo abierto, la cual pasaría a ser distinta.
En la segunda experiencia de laboratorio se diseñaron Finalmente se notó que, al aproximar la planta en lazo
cuatro tipos de controles, combinando proporcional, integral abierto mediante un modelo, se genera un error que puede ser
y derivativo. El control PD resultó ser el control con mejor despreciable para esa aplicación, pero al realimentar la planta
perfomance, seguido del PID. dicho error se magnifica.
Las simulaciones de la planta en lazo cerrado no fueron
capaces de simular la realidad, teniendo una respuesta VI. REFERENCIAS
transiente muy distinta a la real. Este resultado fue discutido [1] Pololu: Robotics and electronics. 30:1 Metal Gearmotor 37Dx68L mm
usando la herramienta del Lugar Geométrico de las Raíces with 64 CPR Encoder. Revisado por última vez el 13/06/2018 en
(LGR) mediante el cual se encontraron los polos de la planta https://www.pololu.com/product/2823
real. [2] Troni, G. Apuntes de clase Control de Sistemas Mecánicos. Pontificia
Universidad Católica de Chile.
Lo más cerca que se estuvo de modelar el control [3] Python Control Sistems Library: System gain and dynamics. Revisado
proporcional de forma que su comportamiento fuera similar por última vez el 13/06/2018 en http://python-
al real, fue buscando valores de ç y wn mediante LGR y control.readthedocs.io/en/latest/matlab.html#system-gain-and-
dynamics
utilizando un Kp = 0.3, o lo que es lo mismo, reduciendo la
ganancia de la planta a la mitad y realimentando la planta con

Potrebbero piacerti anche