Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porFrasquito Carrera Modificado hace 9 años
1
Robótica Inteligente Tema 7: Control L. Enrique Sucar Alberto Reyes Marco López ITESM Cuernavaca
2
Control Introducción Control clásico –Lazo abierto – lazo cerrado –Control ON-OFF –Control proporcional –Control proporcional-derivativo –Control proporcional-integral
3
Introducción Tarea básica de un controlador – ajustar el estado de un proceso (variable de proceso - VA) a un valor deseado (valor de referencia - VR) La diferencia entre ambos valores es el error: E = VR - VA Entonces el objetivo del controlador es reducir el error a cero (o al mínimo)
4
Sistema de Control ControladorProceso Sensor VAVR E + -
5
Ejemplo 1 – mantener al robot a una distancia (DR) de la pared (seguimiento de pared)
6
Ejemplo 2 – mantener al robot sobre la línea (seguimiento de línea)
7
Ejemplo – mantener al robot a una distancia (DR) de la pared (seguimiento de pared) Control dirección Robot Sensor de distancia DADR E
8
Lazo abierto vs. lazo cerrado Lazo abierto – se ajusta el valor del controlador de acuerdo al valor deseado pero no hay medición del valor actual (retroalimentación) Lazo cerrado – se mide la salida del proceso de forma que se compare con el valor deseado y se pueda automáticamente reducir el error
9
Lazo abierto Control dirección Robot Sensor de distancia DADR Lazo cerrado Control dirección Robot DA DR
10
Algoritmo de Control La forma de ajustar el proceso en función del error se le denomina el algoritmo de control Algunos de los algoritmos básicos en control clásico son: –Control ON –OFF –Control proporcional –Control proporcional derivativo (PD) –Control proporcional integral (PI) –Control proporcional integral-derivativo (PID)
11
Control ON - OFF Se basa en que el controlador tiene sólo dos estados (ON/OFF, abieto/cerrado, izq./der.) Si comparamos el VA con el VR, se toma una de las dos posibles acciones dependiendo del signo del error Por ejemplo, en un control de temperatura de un refrigerador: –Si Temp > T-ref. encender compresor –Si Temp < T-ref. apagar compresor
12
Control ON - OFF OFF ON Ref. T
13
Control ON - OFF Normalmente se tiene una zona de tolerancia (GAP o histéresis) en la que se mantiene el estado anterior Algoritmo de control: E = VR – VA C = signo E Si |E| - ½ GAP < 0 OFF Si |E| + ½ GAP > 0 ON
14
Control ON – OFF, con GAP OFF ON Ref. T Gap
15
Control On-Off ● Esquema de control on-off void main() { while(1) { int error = goal – sensor_lecture; int power = 100; if(error < (goal - gap))/*to far from line*/ left(power); else right(power); /* turn toward the line */ msleep(100L); /* 10 iterations per second */ }
16
Control ON – OFF Respuesta Temp. Ref. Tiempo Control ON OFF
17
Control On-Off ● Control On-Off – Resultados experimentales para seguimiento de linea recta, con diferentes valores de (setpoint).
18
Control On-Off
20
– Cuando la dirección del robot sobrepasa el limite inferior de la banda, entonces el volante se gira completamente a la izquierda, pero debido a la inercia del sistema pasa algun tiempo para que la dirección del vehiculo cambie. – En la siguiente ocación que la dirección del robot sobrepasa el limite superior de la banda, entonces el volante se gira completamente a la derecha, sobrepasandose a la dirección deseada.
21
Control On-Off ● Es fácil notar que el robot oscila al rededor del valor de referencia del algoritmo y por lo tanto nunca viajará en linea recta
22
Control Proporcional (P) En lugar de tener una acción constante que sólo depende del signo del error, podemos hacer que la magnitud del control dependa del tamaño del error En otras palabras la ley de control debe ser de la siguiente forma: V = KE + M –E = PV – SP (error) –K es una constante de proporcionalidad –M es una posición donde E = 0
23
Control proporcional ● La ecuación anterior define una linea recta Error VV M Valor de la posición Totalmente a la derecha Totalmente a la izquierda 0% 100% Rango de la variable de proceso Set point
24
Control proporcional ● La pendiente de la línea, determina el cambio en el giro del volante, que corresponde al valor del error. M Valor de la posición Totalmente a la derecha Totalmente a la izquierda 0% 100% PV SP
25
Control proporcional ● El porcentaje de cambio del error, necesario para mover el volante a escala completa, se conoce como banda proporcional (PB). – Por lo tanto, en la figura anterior se nota que se requiere de un valor grande de error para girar el volante completamente en cualquier dirección. – En la figura siguiente se requiere de un error pequeño para girar el volante completamente en cualquier dirección.
26
Control proporcional M Valor de la posición Totalmente a la derecha Totalmente a la izquierda 0% 100% PV SP
27
Control proporcional ● La relación entre la ganancia proporcional y la banda proporcional es: K = 100/PB donde PB esta en porcentaje El termino de estado estable M se conoce como restablecimiento manual (manual reset)
28
Control proporcional ● La acción de control con respecto al tiempo de este esquema se muestra en la siguiente figura: Derecha Izquierda Volante PV SP E
29
Control proporcional ● Control proporcional void main() { while(1) { int error = reference – sensor_lecture; int power = 100error + M; if(error < goal)/*to far from line */ left(power); else right(power); /* turn toward the line */ msleep(100L); /* 10 iterations per second */ }
30
Control proporcional
34
Control Proporcional - Derivativo (PD) ● De las graficas anteriores se puede ver que al incrementar la ganancia proporcional, no mejora el comportamiento del sistema. Para ganancias grandes, se lleva al sistema rápidamente al valor de referencia, pero aún se tienen sobretiros y oscilaciones. ● La solución es agregar al algoritmo de control un término que permita corregir el efecto del momento del sistema, cuando se esta moviendo hacia el valor de referencia
35
Control Proporcional Derivativo ● Donde: E = Valor de referencia - lectura del sensor, es el error K p es la constante del término proporcional K d es la constante del término derivativo dE/ d t es la derivada del error
36
Control Proporcional Derivativo void main() { while(1) { int sensor_lecture = analog(CENTRAL_SENSOR); int error = reference - sensor_lecture int power = kp*error - kd(erro - last_error); if(sensor_lecture < goal) /* to far from line /* left(power); else right(power); /* turn toward the line */ msleep(100L); /* 10 iterations per second */ int last_error = error; }
37
Control Proporcional Derivativo ● La potencia ahora es una función del error proporcional (k p *error) y la derivada del error (k d *(error - last_error)) o velocidad del error
38
Control Proporcional Derivativo
39
● Los resultados muestran una reducción en el sobretiro y una minimización en el comportamiento oscilatorio del sistema. ● Debe observarse la naturaleza discreta de la grafica de velocidad, debida principalmente al “error de muestreo discreto”. ● Este error es a consecuencia del intervalo que existe entre la lectura del error en un instante dado y el valor del error un instante anterior.
40
Control Proporcional Derivativo
41
● Para ganancias derivativas grandes un sistema podria presentar inestabilidades de tal forma que el sistema se puede frenar y detenerse aún sin alcanzar el valor de referencia. ● Cuando la velocidad pasa por el valor cero, entonces la ganancia obliga al sistema a moverse de nuevo y el control empieza a corregir otra vez. Lo que da como resultado un comportamiento poco elegante.
42
Control Integral ● El control proporcional genera un error residual, cada vez que se recarga el sistema y por lo tanto ese error debe reinicializarse manualmente, si se desea tener un error cero. ● Una forma de reinicializar el controlador de manera autómatica, es indicandole al controlador que mueva el volante en la dirección donde se reduce el error hasta que no se tenga mas error.
43
Control Integral ● Por ejemplo se podría hacer que el volante gire a velocidad constante, a este tipo de reset se le conoce como control flotante de velocidad única, donde “flotante” se refiere a la dependencia de la razón de cambio en el controlador sobre el error.
44
Control Integral ● Un modo común de reset es el control de velocidad proporcional flotante, en el que la razón del movimiento del volante es proporcional a la derivada del error: ● Integrando la ultima ecuación se obtiene:
45
Control Proporcional Integral (PI) ● Si se combinan el control proporcional con el control integral se obtiene:
46
Control Proporcional Integral
47
● La salida del controlador (posición del volante) crece casi instantaneamente por una cantidad KE como resultado de la parte proporcional ● Pero debido a que el error persiste, el termino integral continua moviendo el volante a velocidad constante, donde la pendiente se obtiene de la ganancia de reset K I
48
Control Proporcional Integral ● Despues de transcurrido el tiempo T I, conocido como tiempo de reset, el movimiento del volante debido a la pendiente del temino integral, se iguala al termino proporcional ● Por lo tanto el ajuste del reset se puede expresar en terminos del T I o de su reciproco
49
Control proporcional integral derivativo (PID) Se pueden combinar los términos derivativos e integrales y así obtenemos un control proporcional-integral-derivativo Este tipo de controladores –PID son muy comunmente utilizados en muchas aplicaciones, combinando las ventajas del PD y PI
50
¿Cómo medir el error? Si el sensor nos da una lectura continua (por ejemplo de distancia), entonces podemos usar dicha medida como el error, respecto a la referencia (distancia deseada) Si tenemos sensores binarios (como detectores de línea), podemos combinar varios sensores y de esta forma tener una estimación (discreta) del error
51
Error Error: -2 0 1 2
52
Referencias Martin, Robotic Explorations, Cap. 5 Bibbero, Microprocessors in Instruments and Control, Cap. 2 [Dodek y Jenkin] – Cap. 7 Libros de Control, por ejemplo: –Analysis and Syntesis of Linear Control Systems. Chi- Tsong-Chen. Holt Rinehart Winston. –Digital Control of Dynamic Systems. Gene F. Franklin, J. David Powel and Michael Workman. Addison-Wesley. –Modern Control Engineering. Kasuhiko Ogata. Prentice- Hall. –Modern Control Systems. Richard C. Dorf and Robert Bishop. Addison Wesley.
53
Actividades Especificación y programación del control básico de su robot para realizar su tarea: –Seguimiento de línea (laberinto) –Ir a la meta (lego) Practicar con diferentes algoritmos de control en el laboratorio virtual
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.