Está en la página 1de 8

TUTORIAL DE ROBOTICA

CONSTRUCCION Y DESARROLLO DE UN PEQUEO ROBOT MOBIL PARTE 2 Por: Cesar Dario Quinteros

En esta segunda parte del tutorial, he decidido poner toda la informacin


faltante en el post de foros de electronica hacerca del coneccionado, funcionamiento y propiedades del circuito de control utilizado en el pequeo robot que construi, mas otras modificaciones que le he hecho al driver de motores y a los sensores infrarrojos. Tambien habra ejemplos nuevos de deteccion de obstculos por infrarrojos, bumpers mecanicos, comunicacin via I RED (infrarrojos) y via radio. Fig.1

Descripcion del circuito de entrada de la interface I.D.C En la figura 1, podemos apreciar el esquematico de la etapa de entrada de
nuestra interface. Los conectores CN1 a CN6, pueden ser usados para conectar cualquier tipo de sensor, ya sea pasivo o activo. Cada conector cuenta con 3 pines, uno positivo, uno de entrada, (pin central) y uno de masa permitiendo asi, alimentar por ejemplo, un sensor que requiera de alimentacin, algo asi como un CNY70. esta clase de sensores son muy utilizados en robotica para hacer la clasica rutina del siguelineas o tambien en los sumobots. Los pines de entrada se conectan directamente a las entradas de 6 inversores del tipo SHMIT TRIGER que ademas de invertir la seal, sirven para adaptar niveles logicos y evitar ruidos y posibles deformaciones de la seal proveniente del sensor conectado. Las salidas de las 6 puertas inversoras IC1A a IC1F, estan conectadas a un conector del tipo Molex doble fila que se conecta al puerto A0 a A5 del pic y puede ser jumpeado (lease yampeado) para habilitarlas o deshabilitarlas pudiendo asi, decidir si usamos el puerto A del pic directamente como e/s, o si queremos usarlo como entradas filtradas por dichas puertas.

fig.2

El puerto A, descripcion En la figura 2 podemos apreciar el circuito de la etapa CPU que se encarga
de procesar las seales provenientes de los sensores conectados en sus puertos de e/s, ya sea puerto A o puerto B. Como podemos ver en el circuito, el perto A0 a A5, va conectado al conector molex que mencionamos anteriormente. El puerto A6 y A7, estan separados de este conector, ya que en algunas practicas, mas especficamente las de comunicacin o envio de trenes de pulso, sera necesario conectar un cristal de cuarzo. En practicas que no lo requieran, estos pueden ser usados como e/s (entradas salidas) y hasta aqu, la descripcin del puerto A.

El puerto B, descripcion
Podemos ver tambien en la misma figura, que el puerto B0 a B7, se encuentra conectado a 4 borneras dobles, lo que nos da un total de 8 conectores atornillables si se me permite el termino. Estas borneras son muy utiles ya que no necesitamos armar ningun conector como en el caso del puerto A. solo tenemos que pelar los cables, insertarlos y apretarlos con un destornillador o desarmador como mas les guste decir. Qu que podemos conectar ah en ese puerto? Bueno, se podria decir que podemos conectar desde un simple microswitch hasta un encoder optico o mecanico, pasando por servos, pantallas lcd, drivers de motores, que es nuestro caso, modulos de rf, sensores infrarrojos. podemos conectarlo a la pc, etc,etc,etc, y muuuchos etc. En cierta manera, la interface no solo sirve para el robot, tambien podria ser el cerebro de un potente sistema de alarma por ejemplo, el unico limite es nuestra imaginacin pero en este caso, la vamos a usar para hacer que nuestro robot sea lo mas inteligente posible. Por ahora pasemos a los drivers de los motores.

El puente H, driver de motores En la figura 3 podemos apreciar el circuito de la primera version de


controlador de motores que utilce. Se trata de un puente H clasico formado por 8 transistores configurados en Darlington y protegidos contra corrientes inversas y transitorias por 4 diodos del tipo 1N4007. vale decir que tuve que armar 2 de estos circuitos para controlar los dos motores del robot. Que les puedo decir no obtuve buenos resultados del mismo. por alguna razon los motores funcionaban como si les faltara alimentacin.

Fig.3

La ventaja de este circuito es que puede manejar corrientes dehasta5A, esto no


era lo que yo necesitaba ya que los motores que utilice solo consumen unos cuantos miliamper y eso resulto en una desventaja por lo que pense que era demasiado para el robot, esto sin mensionar que la placa reulto algo voluminosa y ocupaba mucho espacio en el pequeo robot. Sin embargo no me arrepenti de haberla hecho ya que resulto que el primer diseo, tenia un error de configuracin de transistores. por haberme acostumbrado al uso de integrados para esto, me habia olvidado como se hacia un puente H con transistores, Gracias a Google y a esta experiencia, pude recuperar mi memoria y correjir el problema. Despus de unas cuantas practicas que luego subi al foro, decidi cambiar de driver de motor y utilice un integrado TDA7073 de Philips que ya habia usado en mi robot hexapodo radiocontrolado con excelentes resultados. El siguiente es el circuito de dicho driver

Fig.4

Como podemos ver en la figura 4, el driver se simplifica muchisimo y el pcb resulta mucho mas pequeo, asi si se puede utilizar sin perder espacio en el chasis del robot. Despus de unas cuantas pruebas con excelentes resultados obtenidos con el nuevo driver, me di a la tarea de optimizarlo aun mas y se me ocurrio la idea de controlar los dos motores usando solo una linea de control en lugar de las cuatro que se necesitan normalmente. Cmo? controlar 2 motores con un solo hilo? Si, con un solo hilo. Esto es posible pero agregando un nuevo componente al driver de los motores, ese componente, es un PIC12F629 y es muy economico. este pequeo micro, posee 1 pin de entrada y 5 pines de e/s (entrada salida) suficientes para el nuevo proposito. Despus de un tiempo de programacin en pbp, logre conseguir que el micro hiciese lo que yo queria, recibir un tren de pulsos cuyo ancho varia entre 0,5 y 2,5 milisegundos en saltos de 0,5 milisegundos para lograr las 5 funciones de: ADELANTE, ATRS, IZQUIERDA, DERECHA Y PARO. Por ejemplo, si enviamos un tren de pulsos de 0,5 milisegundos, el robot permanece parado. Si enviamos un tren de pulsos de 1 milisegundo, el robot se mueve adelante. Si enviamos un tren de pulsos de 1,5 milisegundos, el robot retrocedera y asi sucesivamente hasta llegar a 2,5 milisegundos. Esto me da la ventaja de que, en lugar de utilizar 4 pines del micro principal, solo uso uno para lograr las 5 funciones y asi me quedan libres los otros 3 pines demas para usarlos con otros perifericos que quiera conectar a la interface principal.

En la figura 5 podemos ver el circuito de lo que yo he dado en llamar: DRIVER DE MOTORES MICROCONTROLADO.

Fig.5 Diagrama de funciones segn el ancho de pulso entrante


Ancho de pulso Funcion lograda 0,5 ms 1 ms 1,5 ms 2 ms 2,5 ms Parado, estacionario Ir adelante retroceder Ir a la izquierda Ir a la derecha Parado, estacionario Estas funciones pueden lograrse con pic basic pro utilizando el comando PULSOUT, Por ejemplo: PULSOUT portb.0,100 envia un pulso de 1ms al portb, ir adelante Como puede verse, es bastante sencillo de lograr con pbp. En definitiva, es como controlar un servo trucado, nadamas que en lugar de un solo motor, controlamos 2 motores en ambos sentidos con una sola linea de control.

Sin conectar, 1 o 0 logico

Como puede verse, podemos controlar fcilmente ambos motores y en consecuencia la direccion en que va nuestro robot solo enviando el ancho de pulso correspondiente a cada funcion por medio de cualquiera de los puertos e/s de la interface I.D.C. ahora nos quedan 15 puertos libres para usar a nuestro antojo sin tener que preocuparnos de el embrollo de cables que se hace cuando conectamos el driver de motores comun con sus 4 cables de control, y sus 2 cables de alimentacin, total: 6 cables. y todo se logro aumentando un pic de bajo costo al driver de motores.

Mas adelante veremos como implementar un radiocontrol utilizando esta tecnica, pero primero terminemos con la explicacin de las partes del robot.

Etapa de alimentacin

Fig.6

Bien, ahora pasemos a describir la parte de alimentacin de nuestro chiquitin.


En la figura 6 vemos la etapa de alimentacin compuesta por una llave de corte, un simple regulador 78L05 y un par de capacitores que serviran de filtro para nuestro circuito. La tension de una bateria de entre 7,5 y 9 voltios se conecta al accionar la llave directamente a la entrada regulador 78L05 del que se obtiene la tension regulada de 5 voltios para la etapa de logica digital. La tension obtenida, es filtrada por los capacitares C3 y C4 para luego ser aplicada al circuito de control digital interface I.D.C. la tension para alimentar el driver de motores, el integrado TDA7073, es tomada dirtectamente de la bateria. Tambien se puede alimentar dicho integrado, conectando la tension de 5 voltios de logica digital de ser necesario. Mas adelante veremos como se interconectan todos los modulos que conforman nuestro robot de la manera mas eficiente.

También podría gustarte