MONOGRÁFICO: Controlabot - Controlabot (5) |
EQUIPAMIENTO TECNOLÓGICO - Didáctica de la tecnología | |||||||||
Sunday, 01 November 2009 00:00 | |||||||||
Page 5 of 7
CONTROLABOT (5)
IntroducciónEl objetivo final de este monográfico es la construcción de un dispositivo móvil, dotado de sensores y reprogramable a través del puerto paralelo. Con el desarrollo de estos primeros capítulos adquirimos los conocimientos técnicos y teóricos que nos permitirán lograr dicho objetivo, si bien nos interesa además experimentar con una serie de dispositivos típicamente utilizados en las aulas de Tecnología y de fácil adquisición en las tiendas de electrónica, incluyendo el control de pequeños motores. Los drivers en robóticaLa corriente suministrada por el puerto, que hasta ahora utilizábamos para encender leds, es insuficiente para accionar un pequeño motor; la solución para que funcionen es añadir una alimentación de voltaje externa, pero a través de un nuevo componente electrónico denominado genéricamente en robótica como driver. En un monográfico anterior denominado Robot-bichos digitales explicaba como crear una tarjeta de control con transistores darlington TIP 120 y TIP 125 combinados formando un esquema electrónico de puente en H. Sin embargo, existen circuitos integrados comerciales que incorporan esta disposición en H, ya que es muy utilizada en robótica; de entre los más comunes yo he escogido el TC-4424. Se trata de un driver de rápida respuesta, económico, que incorpora diodos de protección (necesarios en nuestro caso para no dañar el puerto paralelo del ordenador) y sólo 8 patillas, con lo que se facilita enormemente su conexionado y la explicación de su funcionamiento a los alumnos; como cada motor necesita un integrado para su control, también se detectan rápidamente los posibles fallos en el accionamiento del móvil. En el esquema de conexionado del driver se observa que a un lado se disponen las patillas donde se soldarían los cables de salida provenientes de los pines del puerto paralelo, y del otro, las patillas que deben unirse a los cables del motor; las dos patillas, una a cada lado, que se alternan con las anteriores son para la conexión con el portapilas (teniendo en cuenta la polaridad) y quedan dos últimas patillas extremas sin utilidad, ya que están desconectadas del circuito interno de las anteriores. Diseño de una tarjeta para robótica de reducidas dimensionesComo ya planteé en las propuestas de mini-tarjetas controladoras de los capítulos anteriores, podemos conectarnos al puerto paralelo de ordenador con un cable standar grueso, o podemos pelarlo y eliminar todos los cables correspondientes a los pines que no vayamos a utilizar; en mi primera propuesta de tarjeta con drivers utilizaré la segunda opción ya que es más fácil de entender y confeccionar. La tarjeta que he diseñado tiene de dimensiones cuadradas de 4,5 cm, y pistas de cobre en su cara inferior cada 5 mm (cada dos perforaciones). Para su elaboración situaré los dos drivers en la zona central (pinchados sobre un zócalo), haciendo coincidir las patillas de datos con las pistas de cobre, con una separación entre ellos de 1,5 cm y dejando a ambos lados al menos 3 pistas libres (a través de las que posteriormente ampliaré las posibilidades de funcionamiento con la incorporación de sensores). Con el cable paralelo ya pelado, dejaré solamente los cables correspondientes a los cuatro primeros pines de datos de salida, los pines 12 y 13 de entrada y el pin 25 de masa (cortocircuitado con el resto de los de puesta a tierra del conector); en total 7 cables que en su otro extremo soldaré (con una disposición simétrica) al mismo número de pistas de cobre en la tarjeta, haciendo coincidir cada par de cables de datos con las patillas de su driver. En el siguiente paso uniré, con un cable fino rígido, las patillas de idéntica polaridad a ambos lados de los drivers, para después pelarles en una zona intermedia, en la que soldaré un trozo de cable que atraviese por un agujero de la placa coincidente con una pista de cobre de las situadas en el espacio entre los drivers: de este modo he definido cuáles serán las pistas a las que conectaré la alimentación de las pilas. Para poder enlazar los cables de los motores y el portapilas con la pistas correspondientes de la placa voy a utilizar tres regletas dobles de circuito impreso (cuya distancia de separación entre patillas coincide con la distancia entre pistas de cobre) que situaré por delante de los drivers (coincidiendo con las patillas de salida a los motores), y también entre ellos (sobre las pistas citadas en el párrafo anterior). El penúltimo paso será resolver el conexionado de sensores a la placa, para lo que he optado por utilizar tres pines metálicos alineados donde podré pinchar los cables que se conectan a los sensores; uno de los pines metálicos de cada lado (el más extremo) se debe conectar a la pista correspondiente al cable del puerto paralelo de cada entrada (número 12 a un lado y 13 al otro), mientras que las otras dos se unen, mediante cables en superficie, con las pistas de los polos positivo y negativo de la alimentación. Antes de dar la placa por finalizada debo cortar las pistas de cobre justo debajo de cada driver (ya que sino entradas y salidas estarían conectadas, inutilizando el dispositivo) y también delante de las regletas de los motores (por precaución). Construcción de un robot-exploradorAntes de comprobar la tarjeta para el control de pequeños motores diseñada en el capítulo anterior, voy a construirme un sencillo robot-explorador con una pieza de tablero perforado de 8 x 10 cm, una rueda loca, un portapilas de 6V y dos motores con mecanismo de gran reducción (con carcasa de plástico) y dos ruedas pequeñas. La rueda loca la sujetaré al tablero con dos tornillos con tuercas (de métrica 4 mm), mientras que los motores (una vez dispuestas las ruedas en su eje de salida) los encolaré al tablero con pistola termofusible, dejando los cables soldados a sus bornes con una longitud suficiente. En la parte superior del tablero será donde se sitúe la tarjeta de control de los motores (unida a un ordenador mediante los cables de salidas hacia el puerto), junto con el portapilas. Para verificar la tarjeta con los drivers podemos sujetarla sobre el tablero de nuestro móvil (con una simple goma elástica), conectando a continuación los cables de ambos motores y del portapilas en las regletas azules y gris, respectivamente; enviando el mensaje ESCRIBEPUERTO 888 seguido del número 1 ó 2 (motor derecho) y 4 u 8 (motor izquierdo), comprobaremos si los ejes giran en los dos sentidos. Primeros programas de exploraciónNuestro pequeño robot móvil ya puede ser programado para hacer movimientos temporizados, es decir, mediante un control en bucle abierto, sin la intervención de sensores; podemos escribir procedimientos con los que el móvil realice un sencillo baile, un movimiento de zig-zag, una maniobra de aparcamiento o sencillamente trace un recorrido. Para cualquiera de estos ejemplos necesitamos conocer que combinación de salidas (suma de dos números decimales, uno para cada motor) deben ser enviadas desde el puerto paralelo para producir el movimiento de nuestro móvil en sentido de avance, de retroceso y de giro a la derecha o a la izquierda; en el siguiente procedimiento se alternarían, en ese mismo orden, estas cuatro posibilidades, variando su duración mediante una variable con operadores matemáticos: PARA BAILECITO :SEG ESCRIBEPUERTO 888 (1+4) ESPERA :SEG*2 ESCRIBEPUERTO 888 (2+8) ESPERA :SEG ESCRIBEPUERTO 888 (1+8) ESPERA :SEG/2 ESCRIBEPUERTO 888 (2+4) ESPERA :SEG/2 ESCRIBEPUERTO 888 0 FIN Para lograr que nuestro robot reaccione a variables física externas (contacto, luz, magnetismo,etc..), además de incluir la primitiva LEEPUERTO 889 en nuestros programas, debemos utilizar las conexiones de entrada que hemos previsto en nuestra tarjeta. He recuperado los cables que se incluyen (pero no se usan) al adquirir un lector de CDRom para los ordenadores , ya que disponen de un conector con tres cables para insertar en pines metálicos como los que he soldado en mi tarjeta. Soldando dos de estos cables en las patillas de un pulsador de tipo final de carrera (con una resistencia de 100 ohmios en serie con una de sus patillas) y fijando éste sobre la plataforma del móvil con cola termofusible, dispondremos de un sensor de contacto o detector de choques, elemento que duplicaremos a ambos lados del extremo frontal del móvil. La programación de su funcionamiento esquivando obstáculos puede escribirse así: PARA SALVAOBSTACULO SI ((LEEPUERTO 889) = 120) [ESCRIBEPUERTO 888 5] SI ((LEEPUERTO 889) = 104) [ESCRIBEPUERTO 888 10 ESPERA 50 ESCRIBEPUERTO 888 9 ESPERA 50] SI ((LEEPUERTO 889) = 88) [ESCRIBEPUERTO 888 10 ESPERA 50 ESCRIBEPUERTO 888 6 ESPERA 50] SI ((LEEPUERTO 889) = 72) [ESCRIBEPUERTO 888 10 ESPERA 50] SALVAOBSTACULO FIN Cuando se ejecuta el programa el robot avanza recto, pero si detecta un obstáculo con su pulsador izquierdo, retrocederá medio segundo y girará otro tanto a la derecha, reiniciándose el programa; si detecta el obstáculo por la derecha, retrocederá y después girará a la izquierda y, por último, en el caso de sean presionados los dos detectores la vez, el robot antes de continuar su avance de modo indefinido, retrocederá durante medio segundo. Para detener el programa pulsaremos ALTO en la pantalla de MSWLogo 6.3c. ConclusiónPuede proponerse a los alumnos que escriban programas que nos permitan salir de un laberinto o efectuar otros movimientos más caprichosos cuando se presionen los finales de carrera, en lo que constituirá, sin duda, su experiencia más auténtica en el mundo de la robótica.
|