Práctica 3: Documentación


PÁGINA EN CONSTRUCCIÓN!!!

Hardware

Para esta práctica no hay que construir hardware adicional. Se utilizará el Robot con encoders en las dos ruedas y el cable serie de la práctica 2.

Software

En esta práctica hay muchos elementos implicados: software en la GPBOT, rutinas de atención a las interrupciones, software en el PC y comunicaciones serie. Se recomienda encarecidamente hacerlo todo poco a poco. Si se hace una aplicación inicial, que lo incluya todo, se puede convertir en un infierno para depurar (¿Qué está fallando? ¿El software del micro? ¿Las interrupciones? ¿Las comunicaciones? ¿El software del PC?).

  1. Generación de señales PWM

Con el 6808 se pueden generar utilizando los temporizadores. La frecuencia tiene que ser mayor de 15KHz (para que se encuentre en un rango no audible). Es necesario implementarlo mediante interrupciones. Se puede encontrar más información en el manual de programación de la GP-BOT.

Se recomienda hacer primero un programa que sólo genere una señal PWM para un motor. Cuando funcione, ampliarlo para mover el otro robot, con un PWM independiente del anterior.

  1. El servicio TMA (Tensión media Aplicada). Una vez que se tenga hecho el PWM, se puede partir del servidor genérico usado en la práctica 2 y añadir el servicio TMA, definido como mejor considere el alumno. Mediante este servicio, se debe poder establecer el valor del PWM para cada uno de los motores. La resolución mínima es de 8 bits, es decir, que al menos se deben poder seleccionar entre 256 velocidades diferentes, incluida la velocidad 0 (parado) y la máxima. Es el momento para hacer en el PC un cliente que pruebe el servicio.

  2. Lectura de transiciones de los encoders. Se debe realizar también por interrupciones. Se pueden utilizar diversos enfoques. Uno es utilizar los capturadores. Estos periféricos, integrados en el microcontrolador, se configuran para que generen interrupciones cuando se produzcan transiciones. El único problema es que están asociados al puero D, y los sensores están en los puertos A y C. Se recomienda hacer un programa que use los capturadores para mostrar en un led el estado del sensor, de manera que si se guira manualmente la rueda del robot, se pueda ver cómo el led parpadea con una frecuencia proporcional a la velocidad de giro de la rueda.

  3. Servicio LT (Lectura de transiciones). Una vez que se tengan controlados los capturadores, se pueden integrar con el servidor, creando el servicio de lectura de transiciones. Cada vez que se produzcan transiciones, se almacenarán en una variable interna del servidor. Este servicio simplemente devolverá el valor de estas variables y las volverá a inicializar a cero. Llegados a este punto, se estarán emplando al menos 3 interrupciones (1 ó 2 para los PWM y 2 para los capturadores). Programar un cliente de prueba en el PC.

  4. Controlador. Una vez que todo esto funcione correctamente, se puede empezar a realizar el controlador de velocidad.









Juan González Gómez, 2004

Se conceden permisos para copiar, distribuir y modificar la información contenida en esta página siempre y cuando se mantenga esta nota

Última modificación: 22-Abril-2004