Construyendo un Servomecanismo

 

Proyecto: Construyendo un servomecanismo

Autor: Todorobot

 

Introducción:

Un servomecanismo es un mecanismo capaz de devolver mediante un sensor su estado actual, de tal manera que la controladora pueda tomar las decisiones necesarias.

Los servomecanismos mas comunes utilizan un simple potenciómetro conectado al eje que se desea controlar. Este es el caso que desarrollaremos en este proyecto, haciendo uso de la Interfaz para Puerto Paralelo  y del Conversor de 3 canales. Ambos publicados en esta misma sección.

 

Desarrollo práctico:

Si analizamos el circuito correspondiente al conversor A/D de 3 canales, veremos que ocupa prácticamente todos los ports disponibles en la interfaz. Por lo tanto hay que resolver como manejar tres motores DC a la vez que se está utilizando el conversor A/D. Para ello lo primero es liberar algunos pines del port de salida TTL, es posible hacerlo configurando el conversor para que trabaje con menos bits de resolución.

En este caso trabajaremos solamente con 5 bits de resolución, por lo que los jumpers J1, J2 y J3 deben estar abiertos. De esta manera el conversor trabajará entre los valores decimales 0 y 31 (ver proyecto "Construyendo un Conversor A/D de 3 canales"). De esta manera, solamente usaremos TTL0 a TTL4 para realizar la conversión y nos quedarán libres TTL5 a TTL7 para adicionar el hardware necesario para controlar 3 motores DC.

En el siguiente archivo podemos apreciar el circuito para el manejo de hasta 3 motores DC:

ver archivo SERVO.PDF

 SERVO.PDF es el circuito que es necesario adicionar a la salida de la Interfaz (además de conectar a ella el conversor A/D de 3 canales) para posibilitar el manejo de hasta 3 motores DC. (IMPORTANTE: estos motores podrán ser de 3v a 12v y con un consumo máximo de 1A c/u)

Como podemos ver, el pin TTL7 del port de salida de la Interfaz se utilizará como señal de clock para activar el  FlipFlop IC1, mientras que las salidas TTL0 a TTL5 se usarán para controlar el giro de los 3 motores.

El hecho de usar TTL7 para el clock, nos asegura que podemos compartir las mismas señales que está usando el converdos A/D, pero IC1 solo será afectado cuando TTL7 pase de de 0v a 5v, provocando que el estado de las salidas TTL0 a TTL5 pasen a las salidas Q1 a Q6 del IC1. Estas son las que en definitiva controlaran los movimientos de los motores.

De esta manera, cuando estemos realizando la conversión, la única precaución a tomar es el hecho de no afectar el pin TTL7 (dejarlo en nivel bajo). Una vez terminada la conversión y resuelto que deben hacer los motores, se pondrá el valor correspondiente en las salidas TTL0 a TTL5 y se enviará un pulso de clock (flanco ascendente) mediante TTL7.

Como driver de potencia se utiliza el H-Bridge BA6286 de ROHM. Estos chips permiten controlar motores DC con un consumo de hasta 1A.

En la siguiente  imagen podemos observar un motorreductor acoplado directamente a un potenciómetro de 1Mohm lineal:

Realizando una adaptación al software de conversión publicado en el proyecto del conversor A/D, podremos fácilmente indicar la posición requerida para cada motor y el soft se encargará de llevar el motor a la posición correcta.

Obviamente el potenciómetro no tiene porque estar acoplado directamente al eje del motor, este puede estar acoplado al eje de por ejemplo a una articulaciones de un brazo mecánico. De esta forma no importa cuantas vueltas gire el motor en sí, sino lo importante es la posición real de la articulación que se está controlando. Por otro lado este potenciómetro no tiene porque ser del tipo redondo estandar, según las necesidades de nuestro diseño, este puede ser de desplazamiento lineal y/o del tipo multivueltas.

Para bajar el fuente del programa en Qbasic has click AQUI. Si deseas bajar directamente el programa ejecutable entonces has click AQUI.

 

Conclusión:

Los servomecanismos son sumamente utilizados en todo tipo de dispositivos y muy especialmente en robótica, ya que debido a su sencillez y confiabilidad son muy útiles para posicionar mecanismos. Si bien los motores paso a paso son capaces de moverse en la dirección y grados solicitados con total precisión, estos no tiene la posibilidad de advertir si por algún motivo no han podido realizar el movimiento solicitado. Es en estos casos es donde un servomecanismo lleva la delantera. Incluso es totalmente posible combinar la utilización de motores P-P con sistemas de servomecanismos, con lo cual es posible obtener una gran precisión de movimientos , a la vez que se está verificando si realmente la posición del motor paso a paso es la que debe ser.

 

.