Vamos a empezar a hacer nuestro primer robot. Para hacer un
ejemplo sencillo vamos a hacer un robot rastreador. El robot rastreador es un
robot que sigue una línea negra sobre fondo blanco sobre un circuito que pueden
haber bifurcaciones. En el caso de haber una bifurcación justo antes se indica
en un lado o en otro del recorrido cual es el camino correcto que ha de seguir el robot.
Vamos a hacer un caso sencillo para comprobar que funciona y
después iremos mejorándolo poco a poco para intentar hacer el recorrido
propuesto en un menor tiempo.
Microcontrolador:
El robot será manejado por un PIC16F876A. Para este proyecto
podríamos haber usado algún microcontrolador un poco menos potente, pero voy a
usar este ya que después usaremos algunas características que tiene este
microcontrolador y que por ejemplo no dispone el PIC16F84.
Motores y driver:
En la primera versión del robot vamos a utilizar como
actuadores unos servomotores trucados. Es decir, cogemos dos servomotores los
abrimos y les quitamos los topes para que ahora giren totalmente y nos sirva
para la tracción del robot.
Para manejar dichos motores utilizamos un L293D que básicamente
es un circuito puente en h. En las entradas metemos, por un lado, la dirección
en que giran los motores. Por el otro lado, la interrupción para que se muevan
o pararlos. El circuito lo alimentamos con 5v aunque puede mover motores de
hasta 36V.
Para la dirección de giro de los motores deberemos de coordinar
las entradas del L293 de la siguiente manera.
Entrada 1
|
Entrada 2
|
Salida
|
0
|
0
|
No gira
|
+5v
|
0
|
Gira sentido 1
|
0
|
+5v
|
Gira sentido 2
|
+5v
|
+5v
|
No gira
|
Para que gire a uno u otro lado necesitamos que la entrada 1
y la entrada 2 sean diferentes. Esto lo podemos hacer usando dos salidas del
pic (sacamos 0 y 1, o 1 y 0). Para evitar confusiones y reducir el número de
patillas usadas del microcontrolador vamos a usar el integrado 74HCT04 que
tiene puertas inversoras.
Con esto conseguimos usar solo una pata del microcontrolador
por motor. Ya que este integrado invierte la señal y conecta ambas al motor.
Sensores
Para poder distinguir la línea a seguir (color negro) del
fondo (color blanco) vamos a usar el sensor CNY70. El CNY70 es un optoacoplador
que nos va a permitir hacer la distinción entre si lo que el robot ve es blanco
o es negro (más bien entre si se refleja luz o no).
En la primera versión
del robot usaremos 4 de estos dispositivos. 2 para poder seguir la línea
principal y otros 2 a los lados que pueden ver si hay alguna indicación de
bifurcación.
Esquema
El esquema del robot será el siguiente
En los siguientes posts intentaré profundicar con cada uno de estos apartados.