Capítulo 6: Modelo de robot: 1. Descripción del modelo monociclo Un modelo cinemático aportará las bases necesarias para describir el movimiento de un móvil en función de la velocidad y aceleración del mismo sin centrarse en las fuerzas que intervienen en el movimiento. En concreto, al desarrollar las ecuaciones del modelo monociclo se plantarán las bases y ecuaciones a las que reduciremos, por simplicidad, otros modelos y en particular el modelo biciclo con guiado diferencial. Para comprender las ecuaciones del monociclo se representa la siguiente figura donde podemos inferir que: v x =V cos fi v y =V sen fi 66
Ilustración 31: Monociclo de las que integrando el comportamiento obtenemos fácilmente las ecuaciones de posición. 2. Descripción del modelo biciclo con guiado diferencial En el modelo de guiado diferencial tenemos dos ruedas y cada una de ellas tiene la libertad de moverse a una velocidad independiente. Debido a las condiciones de ligadura existentes en el modelo podemos reducir el modelo de biciclo a un modelo de monociclo sin más que encontrar el CIR del movimiento. En la siguiente figura podemos observar el biciclo y el monociclo equivalente asociado: 67
Ilustración 32: Guiado diferencial Cuyas ecuaciones asociadas como monociclo equivalente serán: 3. Modelado de Minibot como monociclo equivalente a partir del monociclo con guiado diferencial: 3.1. Descripción: Existe multitud de documentación referente al modelado de robot, en concreto para la realización del modelado se ha hecho uso de Designing Autonomous Mobile Robots del autor John Holland y de Manipuladores y robot moviles del autor Aníbal Ollero Baturone. 3.2. Modelo cinemático directo: Se entiende por modelo cinemático directo aquel que tiene como parámetros de entrada 68
los datos cinemáticos de velocidades del robot y nos aportan como salida la posición futura que ocuparán. En este proyecto se utilizarán bibliotecas con la cinemática directas de robots creadas en simulink. Estos bloques de simulink solo tendrán que ser personalizados con los parámetros del robot MiniBot para ser utilizados. Los resultados obtenidos con estos diagramas de bloques son suficientemente precisos para poder ser utilizados en primera instancia en el desarrollo del escenario propuesto ya que arrojan errores respecto a los obtenidos con las ecuaciones del movimiento inferiores al 0.04%. Las ecuaciones del robot con guiado diferencial modeladas en simulink se agruparán en el siguiente bloque donde las entradas al mismo son los valores de velocidad angular de las ruedas y los de salida serán la posición y orientación espacial del robot.: 3.3. Modelo cinemático inverso: Se entiende por modelo cinemático inverso aquel que tiene como parámetros de entrada los datos cinemáticos de posiciones del robot y nos aportan como salida la velocidad que deben adquirir los motores para alcanzarla. Existen también bibliotecas con modelos inversos para guiado diferencial para simulink que arrogan errores de 0,13% respecto a las ecuaciones diferenciales del movimiento. 69
4. Algoritmo de control: 4.1. Control bucle abierto: El control en bucle abierto se basará en imponer tensiones a los motores utilizando los PWM que la placa del MiniBot tiene instalada y esperando que el sistema siga el comportamiento esperado. Puesto que no tenemos sensores integrados en el robot que nos permitan obtener información sobre la exactitud o desviación de la posición real respecto de la esperada, en primera instancia se utilizará este método de control apoyado en las ecuaciones del movimiento. 4.2. Control con estimador de estados: Puesto que no se dispone de la posición en la que se encuentra el sistema, pero en cambio si que disponemos del valor de aceleración del robot MiniBot utilizando el chip acelerómetro del WaspMote podremos realizar un estimador de la posición para realimentarla y así hacer un control de bucle cerrado. Una imagen de los bloques del estimador de estados utilizado es la siguiente: 70
Ilustración 33: Estimador de estados Donde la planta del sistema se modela de la siguiente forma: Ilustración 34: Diagrama de bloques del control del sistema En definitiva, nosotros impondremos el camino por el que queremos que el robot se desplace, con ayuda del control de posición generaremos una ruta de posiciones suficientemente cercanas por las que el robot irá avanzando. Dados estos puntos intermedios entre las posiciones impuestas se utilizará la cinemática inversa para obtener el valor de las velocidades de los motores que se traducirán en un cambio de posición del robot. Para cerrar el bucle, leeremos la aceleración del acelerómetros e integraremos para calcular velocidad y posición del robot que será comparada por el control proporcional para aumentar o disminuir el error y permitir un control más preciso del robot. 71