El grupo

El grupo

jueves, 24 de marzo de 2011

Practica 4

CR7. EL ROBOT EQUILIBRISTA

Hoy comenzamos con la práctica del robot equilibrista.  Consiste en mantener erguido  a CR7 sobre dos ruedas, usando la teoría de estabilización PID dada en clase de teoría aplicada  a una situación práctica.

Un PID (Proporcional Integral Derivativo) es un mecanismo de control por realimentación que calcula la desviación o error entre un valor medido y el valor que se quiere obtener, para aplicar una acción correctora que ajuste el proceso. El algoritmo de cálculo del control PID se da en tres parámetros distintos: el proporcional, el integral, y el derivativo. El valor Proporcional determina la reacción del error actual. 

La Integral genera una corrección proporcional a la integral del error, esto nos asegura que aplicando un esfuerzo de control suficiente, el error de seguimiento se reduce a cero. El Derivativo determina la reacción del tiempo en el que el error se produce. La suma de estas tres acciones es usada para ajustar al proceso vía un elemento de control

P = Controlador Proporcional.

P_{\mathrm{sal}}=K_p\,{e(t)}


I = controlador integral

 I_{\mathrm{sal}}=K_{i}\int_{0}^{t}{e(\tau)}\,{d\tau}


D = Controlador de la derivada

D_{\mathrm{sal}}=K_d\frac{de}{dt} 


La salida de estos tres términos, el proporcional, el integral, y el derivativo son sumados para calcular la salida del controlador PID. Definiendo u (t) como la salida del controlador, la forma final del algoritmo del PID es:
\mathrm{u(t)}=\mathrm{MV(t)}=K_p{e(t)} + K_{i}\int_{0}^{t}{e(\tau)}\,{d\tau} + K_{d}\frac{de}{dt}
u(t)=(-kp*error) + ki * (integralError) + kd * (ErrorIntegral)))


Aplicando esta teoría a la practica conseguiremos que CR7 se mantenga estable unos minutos.

Comenzamos con el montaje de Cr7, ponemos el sensor de luz próximo al suelo en el centro del robot par que tome bien las medidas.

Ponemos los dos motores a ambos extremos del ladrillo del robot y le ponemos las ruedas hacia adentro del robot para que tenga mas estabilidad.

Para terminar le ponemos una hoja de papel encima del sensor para evitar que la luz del aula modifique los valores del sensor de luz lo menos posible.

Una vez terminado el montaje, nuestro robot tiene este aspecto:






Primero calibramos el sensor de  luz tomando datos de 3 posiciones antes de iniciar el controlador PID. Calibramos al caerse para hacia adelante y hacia atrás y por último calibramos en  el punto de equilibrio.

Observamos que cada vez que calibramos da un valor distinto pero que no influye en en comportamiento del robot, funcionando a veces con valores muy dispares y cayéndose con valores iguales.

Después de programar el código y corregir bastantes errores, y de probar muchas muchas veces conseguimos dar un valor bastante aproximado al ideal de las constantes kp, kd,ki que quedaron con los valores: kp=15, kd=30, ki=1,1.

Con estos valores y una vez cogido el "truco" a las posiciones de calibración, conseguimos que el 60% de las veces funcione con unos resultados mas que aceptables.

Aquí vemos a CR7 en plana acción.





Después de mucho tiempo tenemos terminada la práctica. Nos ha costado lo suyo encontrar el valor de las variables así como los ángulos de calibración pero ya tenemos a CR7 listo para saltar a los terrenos de juego.




miércoles, 9 de marzo de 2011

Dia 9

Dia 9

    Tras la explicacion de la practica, nos ponemos mano a la obra y
    vemos que el primer apartado que tenemos que realizar es conseguir
    que el robot choque con un obstaculo.
    El comportamiento en principio es sencillo,el robot tiene que avanzar
    y cuando choque contra algún objeto,retroceda,gire hacia el lado que
    menos distancia tenga que recorrer y avance por ese lado hasta que
    haya rebasado totalmente el objeto y siga su camino.

 

    Este apartado es aparentemente sencillo,simplemente hemos necesitado el
    sensor de contacto y un obstaculo con un poco de peso,como puede ser una lata
    como aparece en la foto de arriba

    Por ultimo,empezamos a realizar el siguiente apartado.
    Este es muy parecido al anterior solo que esta vez el robot se guía por su
    sensor de ultrasonidos para esquivar el obstaculo.



    Y ya podemos irnos tranquilos que ya hemos entregado la practica 2 y avanzado    bastante en la siguiente




Dia 10

    Hoy,como CR7 se lesionó recientemente contra el Malaga,hemos decidido
    no forzarle mucho.

   



    Como terminamos antes de lo previsto,hemos decidido continuar en la practica
    Ahora nos toca realizar el comportamiento de seguir la luz,para ello
    hemos hecho uso de los sensores que nos dieron los profesores en la clase anterior






    El codigo parece sencillo, hay que calibrar la luz ambiente antes de empezar
    a ejecutar el codigo.
    Una vez el robot tenga la luz ambiente podrá empezar a moverse.La cuestión a realizar es
    que el robot recibe luz por ambos sensores, si la luz que recibe es igual
    en ambos sensores el robot avanza,si es mayor en el sensor derecho el robot avanza girando
    hacia la derecha y si es mayor la recibida por la izquierda hará lo mismo pero hacia la
    izquierda.
    Para su correcta realizacion necesitamos de una linterna que actua de foco a seguir.