|
Controlador
de 8 servos a través del puerto serial de una PC
|
Como ya expuse
en la sección servos
para controlar uno hay que enviar pulsos seguidos con
un ancho determinado. El ancho y la frecuencia de esos
pulsos varían un poco entre marca y marca, pero
todos están dentro de un rango similar. Para
asegurar que nuestros pulsos sean compatibles con la
gran mayoría de las marcas de servos podemos
achicar un poco el rango entonces nuestros pulsos deben
ir desde 1,2 ms a 1,8 ms. con esto aseguramos no dañar
los servos.
Programar
un servo en un PIC es tarea sencilla, pero hacerlo para
8 servos es muy complicado ya que como sabemos los servos
requieren de los pulsos constantemente, al dejar de
recibirlos el motor deja de funcionar y el servo puede
variar su posición aplicando una pequeña
fuerza a su eje.
En intentos anteriores llegue a crear un programa que
controlaba dos servos recibiendo las señales
del puerto serial de una PC con relativo éxito,
pero vi muy complicado llegar a programar para 8.
|
imagen
de la controladora con 4 servos conectados
|
En una recorrida por Internet encontré el sitio de
una empresa que hizo un programa para controlar los 8 servos
en forma serial con la PC y levantó el código
ya compilado (.hex) para el PIC y el código en visual
Basic para controlar los servos desde la PC.
Al programar el PIC y hacer mis pruebas vi que la controladora
funciona muy bien y la usamos con unos alumnos de un colegio
técnico para controlar unos robots que hicieron en
un taller de robótica en el que dicto clases.
Así que
acá esta la info. para que ustedes puedan crear sus
controladoras.
Los materiales
son:
- Un zócalo
de 18 pines para el PIC
- Un PIC16F84
- Una resistencia
de 4,7K
- Un cristal de
4Mhz
- Dos capacitares
de 22Pf
- Una resistencia
de 22k
- Un conector
DB9 hembra para conectar al serial de la PC
- Un switch para
el reset
- Una placa virgen
o perforada
- Servos (por
lo menos uno)
Este es el diagrama
para la controladora

Hay que tener en
cuenta que el PIC debe funcionar con 5V, es recomendable usar
un regulador de voltaje como el 7805 para asegurar la estabilidad
de la corriente, los servos pueden funcionar entre 4 y 7.2
volts
Del RB0 al RB7 deben ir conectados a los cables de señal
de los servos(cable blanco o amarillo), el positivo(cable
rojo) del servo debe ir al positivo de la fuente de alimentación,
preferentemente no hacer pasar por el regulador porque el
consumo de varios servos puede quemarlo, y el negativo del
servo(cable negro) debe ir a tierra del circuito.
Para programar el PIC se necesita un programador como el que
fue descrito en la sección PIC16F84.
si no poseen un programador es cuestión de contactarme
y yo les programo el PIC
Una vez creado
el circuito es cuestión de colocar el PIC previamente
programado con el programa compilado, conectar a la PC el
cable serial y hacer correr el programa controlador de servos.
En este
archivo está
el código compilado para el PIC y un programa hecho
por mi en Visual Basic para controlar los 8 servos. También
incluyo el código fuente de mi programa para que ustedes
realicen modificaciones o sus propios programas.
Cualquier consulta,
inquietud pueden realizarla en el foro
así como también espero leer sobre sus experiencias
y sus proyectos con esta controladora.
Saludos!!!
Webmaster
|