PRÁCTICA 1. FOLLOW LINE. PRUEBA 2

En la segunda prueba se ha modificado el control PD realizado en la prueba anterior.En este caso, se ha buscado el centro de la línea en tres filas de la imagen, para poder saber si nos encontrábamos en recta o curva. Con los dos centros situados más arriba se ha estimado cual es la recta que pasaría por ellos. Una vez se tiene esta recta, se puede saber si dicha recta corta el centro situado más abajo. Si la recta corta el punto se considerará que nos encontramos en recta y sino en curva.

Para las rectas se han hecho tres controles PD dependiendo de la desviación que presentaba el coche. Y para las curvas se ha usado otro control PD. Por lo que en función de la desviación que tiene y de si está en recta o en curva se aplicarán unos valores u otros en self.motors.setV() y self.motors.setW().

En el control PD se sigue la siguiente fórmula:

Control PD
corrección = Kp*error + Kd*(error - error_anterior)

Kp es la constante aplicada para el control proporcional y la Kd la aplicada al control derivativo.

Hay que decir que se ha tratado de ajustar los valores para que no oscilara mucho, aunque sigue oscilando un poco. En algunas ocasiones el centro situado más abajo se pierde y entonces detecta la recta como una curva. A pesar de ello se han conseguido los siguientes resultados:

Comentarios

Entradas populares de este blog

PRÁCTICA 2. 3D RECONSTRUCTION . PUNTOS DE INTERÉS Y EPIPOLAR

PRÁCTICA 2. 3D RECONSTRUCTION. MEJORA

PRÁCTICA 1. FOLLOW LINE. PRUEBA 4