Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Servomotores y su control
Uso y aplicaciones de los microbots Este mes comenzamos la
ucha gente se pregunta si conandadura de la sistir el prximo hito de la robtica en una serie de mquimicrobtica. Los microbots nas econmicas que repten, piensen y se pueden emplearse desde el conduzcan como insectos. As opinan los investigadores del Laboratorio de insecsimple entretenimiento de tos del Instituto de Tecnologa de Masaficionados hasta sachusetts. En este laboratorio se han creaplicaciones de ado pequeos robots con movimientos y comportamiento de insectos. Sus diseaneurofisiologa, ciberntica, dores los han bautizado con el nombre de estudios del comportamiento insectoides. Rodney Brooks, director del laboratorio para evitar obstculos, de insectoides del MIT realiza un nuevo vehculos espaciales, etc. enfoque que l denomina arquitectura de subsuncin. Con este enfoque no se aaden al sistema conductas nuevas hasta que las anteriores estn perfectamente a punto y en marcha. En la arquitectura de subsuncin las conductas com plejas son el resultado evolutivo de una variedad de funciones de conducta sim ples. Uno de estos robots es Genghis, que entre los sensores de que dispone est dotado de dos barbas de gato y seis sensores de infrarrojos. Los sensores de infrarrojos operan conjuntamente con el mdulo de Foto 1. Diferentes robots con movimientos similares a insectos. portamientos muy complejos. Se demuestra merodeo, dotando a Genghis de una conque la tcnica de subsuncin sigue funcioducta inslita. En esta modalidad Genghis nando al aadir estratos de comportamiento descansa tranquilamente hasta que detecta ms y ms complejos. radiacin infrarroja, procedente por ejemplo de un tobillo humano prximo. Cuando Hexpodos esto se produce se activa su mdulo de locoUna vez nos hemos introducido en el mocin y en ese momento comienza a avantema, comencemos por el principio. El prizar hacia la pierna del desprevenido sujeto. mer robot que se va ha describir es un hexClaro est, la persona tiene tiempo para podo. Hagamos un poco de historia. El apartarse, pero mediante el mdulo de guiamicrobot llamado HexWalker (foto 2) fue do Genghis puede ser implacable. creado originalmente por los miembros de Se ha comprobado que sistemas de conla sociedad R.S.S.C. (The Robotics Society of trol muy sencillos pueden dar lugar a com -
South California) como un kit asequible para iniciarse en la construccin de robots. Estaba inspirado en un artculo de Gary Malolepsys aparecido en la revista The Robot Builder en el nmero de febreromarzo de 1994. El kit para la construccin del HexWalker apareci en enero de 1995 fabricado y distribuido por M&T Systems. Despus de tres aos de febril actividad en la fabrica y de cientos de imitaciones el kit dej de fabricarse en M&T Systems. Segn se lee en su pgina web, las lneas de produccin estn ahora en silencio, los trabajadores han emigrados a verdes praderas, quedan slo lejanos ecos de la actividad. El lector no debe preocuparse por este motivo, ya que se ha localizado un kit similar en Inglaterra, el StampBug (foto 3), fabricado por la empresa Milford Instruments (no muy barato que digamos), que es el que se va a detallar. Pero adems, se darn en este y posteriores artculos suficientes explicaciones para que el lector pueda construir su propio hexpodo sin necesidad de adquirir el kit, ampliando incluso sus prestaciones y el nmero de sensores.
Servomotores
La fuerza que mover nuestro hexpodo la proporcionarn tres servomotores iguales a los que se emplean en modelismo y radio control para hacer girar la direccin de los coches o mover los timones de los aviones. Adems, hemos de dar las gracias al modelismo, que nos permite disponer de este tipo de motores a un precio relativamente asequible. Un servomotor (foto 4) es un dispositivo en forma de caja negra al que llegan tres cables. Contiene un pequeo motor, una caja de engranajes, un potencimetro de un
segundos como el Futaba FPS3003, hasta el FPS9402 con un par de 8 Kg, una velocidad de giro de 0,1 segundos y engranajes metlicos. Aunque para el aprendizaje es suficiente un servo de los ms baratos, los mejores tienen engranajes metlicos y mayor velocidad de giro, que junto al par de fuerzas determinan su precio. Dando un repaso a las revistas de radiocontrol, se puede constatar que en los comercios espaoles dedicados a estos menesteres los servos ms econmicos tienen un precio que ronda las 2.500-3.000 pesetas, como los servos Futaba FPS-3003 o los FMA300, con un par de unos 3,5 Kg y una velocidad de giro de unos 0,23 segundos. Podis echar
momento la seal de error suele ser de unos 5s, diferencia entre el ancho del pulso de la seal de entrada y el ancho del pulso de la seal interna. Esto se corresponde con una fraccin de grado del recorrido del servomotor. Al ser el cero demasiado crtico, cuando el error est en este rango, conocido como zona muerta o guard band, el servo apaga los drivers del motor. Si la seal de error no est por debajo de estos 5s, la electrnica interna continuar
Entre las ventajas que aporta el empleo de un servo estn las siguientes: poco peso, alta potencia (par de fuerza), fiabilidad, fortaleza (los servos y su electrnica normalmente sobreviven a choques y funcionan en ambientes de alta temperatura, suciedad, humedad y vibraciones), simplicidad, versatilidad y bajo coste. En las tiendas de modelismo pueden encontrarse muchos tipos de servomotores de las casas Futaba, FMA, Multiplex, Sanwa, etc. con par de fuerza que va desde unos 3 Kg/cm y una velocidad de giro de unos 0,22
Las bondades de C
Hoy en da el uso del lenguaje C se ha extendido en la programacin de sistemas hardware debido a que, a pesar de ser un lenguaje de alto nivel, est relativamente cerca del lenguaje ensamblador. Aunque al principio puede ser algo complicado, una vez dominada la sintaxis y el uso de punteros (bsico en este lenguaje), el C se vuelve una herramienta de programacin muy potente y eficaz. En los artculos publicados anteriormente se prometi que tambin se tratara el lenguaje C para los microcontroladores PIC. En estos meses se ha estado preparando la versin en castellano del compilador C2C desarrollado por Pavel Baranov. Entre las caractersticas ms destacadas del compilador C2C encontramos las siguientes: Compatible con la mayora de los microcontroladores PIC y Scenix. Soporta variables de 8 y 16 bits, al igual que matrices unidimensionales de 8 bits y punteros. Incluye variables predefinidas que hacen referencia a los diferentes registros de los microcontroladores. Permite el empleo de expresiones de 8 y 16 bits. Gran variedad de funciones integradas en el compilador como conversin a BCD, transmisin serie, etc. Tambin permite la inclusin de rutinas de tratamiento de interrupciones. Insercin de cdigo ensamblador. Empleo y construccin de libreras para uso posterior. Entorno de programacin amigable e intuitivo que incluye un asistente de configuracin del microcontrolador que nos permitir, entre otras cosas, la programacin multitarea y configurar de forma fcil el modo de operacin del microcontrolador. Caractersticas bsicas del lenguaje C como definicin de funciones y procedimientos que permiten el paso/devolucin de parmetros.
Hay dos formas de contemplar este tipo de esquemas de control. Desde el punto de vista del controlador, es un sistema de bucle abierto. No existe retroalimentacin entre el servomotor y el sistema que genera los pulsos. Desde el punto de vista del nivel local (interior del servo) es un sistema de bucle cerrado. La electrnica del servomotor est constantemente tratando de eliminar la Figura 1. Conexiones de diferentes marcas de diferencia entre los comandos y la servomotores. posicin actual. un vistazo a algunas pginas web de estos Esta doble personalidad es una comercios: www.ciberia.es/Relcomhobbyes caracterstica muy importante, ya o www.rcompany, entre otras. que el servo necesita una atencin El voltaje de alimentacin nominal, mnima por parte del controlador, suele ser el que pueden proporcionar cuatro pero a su vez de forma constante resiste actibateras de NiCd 4 x 1.2 V = 4.8 V. En la vamente corrigiendo las influencias externas prctica este valor puede variar. Algunas que pueden llevar el eje lejos de la posicin compaas de radiocontrol fabrican paqueordenada. tes de cinco celdas de NiCd que proporcioAunque los servos son los posicionanan un valor nominal de 6 V. dores casi ideales, son tambin fciles de Si el voltaje es demasiado bajo, la resmodificar para aplicaciones especiales. Por puesta del servo se hace ms lenta. En el ejemplo, se puede alterar el circuito de hexpodo se emplearn cuatro pilas alcaliretroalimentacin para modificar el rango nas de 1,5 V. Aunque puede parecer que el de giro. La mayora de los servomotores se consumo ser alto, el consumo de corriente han diseado para un viaje de unos 90, depende en su mayor parte del momento pero en muchos casos esta limitacin puede superarse. Cuando se necesite mayor cantidad de giro de la que el fabricante ha dotado al servo, la mejor solucin es actuar modificando el potencimetro del circuito de retroalimentacin. Para ello se aade una resistencia de un valor comprendido entre 1K5 a 2K2 en serie con cada extremo del potencimetro y luego se vuelve a montar. De esta forma los pulsos de la seal de control aumentarn el rango de giro. Tambin se puede modificar el servo para que Figura 2. Posiciones del eje de un servomotor segn la anchura del se comporte como un pulso de entrada. Un tren de pulsos, con repeticin comprendida entre pequeo motor controla40 y 100Hz, controla la posicin del servo. Tpicamente los servos tienen un rango de 90, pero puede ampliarse a 180 o ms. Muchos dor mediante pulsos. Si se servos poseen una resolucin de la posicin mejor de medio grado. quita el potencimetro
interno y se sustituye por dos resistencias de 2K5, el circuito interno creer que el eje del motor se encuentra siempre en posicin centrada, as pues, si se enva seal de control para que se posicione a la derecha, el servo tratar de corregir continuamente la posicin y girar en ese sentido. Se tiene de este modo un motor con engranajes cuya direccin de rotacin pueden ser controlada por un tren de pulsos mediante la tcnica PWM. Por otro lado, si se aplican seales analgicas al circuito de retroalimentacin se
En el listado del programa (dividido en cuatro partes a lo largo del artculo) se Comprobador dan todas las explicaciones La aplicacin de este para su perfecto entendimes consistir en realizar miento. En l slo aparecen un comprobador de servo- Figura 3. Esquema de bloques de funcionamiento de un servomotor dos instrucciones nuevas: control PWM se obtiene del pin PB0, motores, empleando para ello el Mdulo-01 PULSOUT y GOSUB-RETURN. Adems disponible en una de las bornas el conecy el de aprendizaje (foto 5). del programa que se presenta para los lectotor de salida CN3 del Mdulo de aprenSe utilizan dos pulsadores del Mdulo res que siguen el curso de Pbasic, el mismo dizaje. Tambin la alimentacin del de aprendizaje: el A0 que al ser pulsado tambin se ha escrito completamente en servo se ha tomado del Mdulo de har girar el motor en pasos de 1 hacia ensamblador. aprendizaje, ya que se dispone de +5 en la derecha y el A4 que girar el motor en PULSOUT Pin, Duracin las bornas de CN4, mientras que la masa pasos de 1 hacia la izquierda. La seal de Pin: Valores de 0 a 7. se encuentra junto con PBO en la Duracin: Hasta 655,350. borna CN3. Esta instruccin genera un pulso en Pin Los displays de siete segmentos de un ancho especificado en Duracin en del Mdulo de aprendizaje indicarn unidades de 10s. Como la variable Durala posicin del eje del servo en cin es de 16 bits, pueden generarse pulsos nmero de grados girado. Para que de hasta 655.350s. El pulso es generado funcionen los displays de siete seginvirtiendo la polaridad del Pin dos veces, mentos, deberemos cambiar la posipor lo que el estado inicial del mismo detercin de los jumpers J5, J6, J7, J8, J9 mina su polaridad. El Pin es programado y J11, de tal forma que ahora en automticamente como salida y puede estar lugar de controlar los botones A1, comprendido entre 0 y 7. A2 y A3, ataquen los transistores Ejemplo: que controlan los displays. Pulsout 5, 100 Enva un pulso de 1 ms de En la posicin central del motor ancho al Pin 5 marcarn 00, mientras que si se GOSUB Etiqueta avanza hacia la derecha irn apareEsta instruccin salta a la lnea que ciendo los grados del giro, es decir, si comienza por Etiqueta y ejecuta el cdigo que le sigue. Cuando encuentra la instruccin RETURN regresa y contina la ejecucin del programa por la lnea siguiente a la instruccin GOSUB. El cdigo que se Microcontroladores PIC. La solucin en un chip. Martn Cuenca, E., Angulo J.M y Anguencuentra entre Etiqueta y la instruccin lo, I. (1998). 2 Edicin. Paraninfo-ITP. RETURN se conoce como subrutina. Diseo y Realizacin de Aplicaciones Industriales con Microcontroladores PIC . Martn Las subrutinas se pueden anidar, es decir, Cuenca, E. y Moreno Balboa, J.M. (en preparacin). es posible que una subrutina llame a otra Fundamentos de Electrnica Moderna. Teora y Diseo de Circuitos . subrutina, pero el anidamiento est restrinMartn Cuenca, E. y Moreno Balboa, J.M. (1998). gido a un mximo de cuatro niveles. A new model describing coordination pattern of the legs of a Walking Stick Insect. RETURN Cruse, H. (1997). Biological Cybernetics 107-113. Retorno de una subrutina. Como Ms informacin A Model of Leg coordination in the stick insect, Carasius mososus: I. A geomese ha indicado, cuando se encuentra Los lectores interesados en adquirir trical consideration of contralateral and ipsilateral coordination mechanims betweuna instruccin RETURN se conel compilador de Basic PBC o el compilador de en two adjacent legs. Dean, J. (1991). Biological Cybernetics 393-402. tina la ejecucin del cdigo que C en castellano C2CWes pueden solicitarlo A Design concept for Legger robots derived from walking stick insect Weidesigue a la instruccin GOSUB que directamente al autor del artculo. mann, H.J. et al. (1993). Proceedings of IEEE/RSJ International Conference on Intelligener el salto a la subrutina.
Bibliografa
gent Robots and Systems. 545-552. Mathematical recreations. Insectoids invade a field of Robots Dewdney, A.K. (1991). Scientific American. 93-95.
PC
ACTUAL
Dr. Eugenio Martn Cuenca (emartin@goliat.ugr.es) Ing. Luis Javier Asensio Morcillo