Aprende robótica con Arduino en español
Autor: Francisco Carabaza.
Este es el tercer robot que he construido, actualmente operativo, construido tomando como base un kit de Lynxmotion, está controlado por microcontrolador Basic Stamp IIsx de Parallax, y tiene capacidad de movimiento, ya que esta montado sobre una base que anteriormente tenía tres ruedas, pero en la actualidad esta movido por dos orugas de goma comandadas por sendos servomotores HiTec HS300, modificados.
Esta provisto de un brazo que lleva adosado en la parte superior de su pinza manipuladora con un par de sensores de infrarrojo, para detección de obstaculos, proximidad y medición de luz ambiente, tambien posee un sistema de videocámara CCD montada sobre el brazo, que envía imagenes a la tarjeta capturadora del PC por medio de un transmisor de televisión VHF que emite imagen y sonido en
una frecuencia de 224 Mhz, Además esta equipado con un sensor volumetrico de ultrasonidos para captar movimiento, y dos encoders ópticos en las orugas para determinar su giro. Está alimentado por dos bloques de baterias de 6 voltios y 700 mA/h que proporcionan 12 voltios a los circuitos de control y sensores y otra mas de 7,2 voltios y 1600 mA/hora para los servomotores.
Como proximas mejoras, tengo previsto dotarle de medidor de distancia por sonar ultrasónico, aprovechando la circuiteria de un metro electrónico de la marca COATI, y un sistema de comunicacion de datos por via radiofrecuencia entre el robot y un PC para envio de ordenes y recepción de información desde los sensores del robot.
|
Este es el area de acción del brazo, en la imagen la zona azul indica que partes puede acceder
la pinza. |
EL BRAZO
El brazo tiene 5 grados de libertad que le permiten giro de cintura, hombro comandado por 2 servos colocados en tandem, funcionando en paralelo, para mejorar el par motor, codo, muñeca y pinza con una capacidad de apertura de unos 30 milimetros, que puede manipular objetos de pequeño peso (unos 100 gramos aproximadamente), total 6 servomotores.
LOS SERVOMOTORES
El conjunto robot esta movido por un total de 8
servomotores HITEC HS300, funcionando a 5 voltios y que proporcionan un par de unos 3,5 Kg con una palanca de 25,4 milimetros, suficiente para las especificaciones de tamaño y peso de la máquina.
Estos servomotores del tipo de los utilizados en modelos de radiocontrol, son del tipo digital proporcional y reciben sus pulsos de control de posición de una tarjeta controladora Mini SSCII de Scott Edwars que proporciona la referencia de posicion para cada uno de los motores todo
ello a traves de una linea serie, y tres bytes de datos con el
siguiente formato:
|
Byte1 = Sync (255) 'Este byte es solo con el proposito de que el controlador de servos identifique el comienzo de una nueva orden a procesar.
Byte2 = Servo #(0-7) 'El segundo byte determina a que servo estamos haciendo referencia
Byte3 = Position (0-254) 'Por ultimo, el tercer byte, determina la posición, pero ojo, que no todos los servos permiten el mismo recorrido.
Habrá que averiguar de manera práctica cuales son los limites reales de cada servo que utilicemos para no forzarlos.
Para los servomotores Hitec, asi como muchos otros de los usados para radiocontrol, la duración del pulso alto, determina la posición final del servo, que será de 0,5 milisegundos para una posición completamente a la izquierda, y de unos 2 milisegundos para estar completamente a la derecha.
Estos pulsos, deben ser refrescados con cierta frecuencia, ya que si no se hace asi, el servo se "relaja", yo he comprobado que entre 20 y 40 milisegundos de estado de pulso bajo, proporcionan un buen funcionamiento (esta duración no es demasiado rigida y no interfiere con la posición final del servo).
LA BASE MÓVIL
El robot está montado sobre una base móvil con dos orugas procedentres de una excavadora de juguete, y estan movidas por dos servomotores Hitec-HS300 modificados para rotación continua y que lo dotan de dirección diferencial. Anteriormente la base tenia tres ruedas, dos de las cuales estaban comandadas por motores y una tercera en la parte trasera giratoria, el motivo de sustituir estas ruedas por las orugas fue para evitar que el robot quedara atascado frente a pequeños obstaculos, y ahora es capaz de deambular por terreno con ciertas irregularidades.
La manera de modificar servomotores, no es demasiado complicada:
Ya tenemos un servomotor para utilizarlo como giros completos, ahora cuando le mandemos posiciones proximas al centro, el servomotor, estara parado. Con posiciones mas bajas que el centro, girara hacia la izquierda, tanto mas rapido como mas lejos la posición logica lo este del centro, y viceversa para los giros a derecha.
NUEVO SISTEMA DE TRACCIÓN POR ORUGAS.
Se acabó el atascarse en cualquier pequeño obstaculo, con la incorporación de estas orugas el robot se
convirtión en un pequeño "Todo-terreno". Estas orugas provienen de una excavadora de juguete y fueron montadas en la base del robot, cortandolas del chasis original del juguete y sustituyendo sus motores originales por unos servos HiTec HS300 modificados para giro libre.
Detalle de la oruga
|
ENCODERS OPTICOS DE RUEDAS
Aunque no se aprecia en la fotografía, las orugas van provistas en su cara interior de unos encoders opticos de infrarrojos que determinan la cantidad de giro de cada rueda y que llevan la información de retorno al computador a traves del puerto paralelo, estos fueron construidos tomando como base fotodiodos de infrarrojos y leds, obtenidos de un raton de ordenador antiguo. El conjunto de cada encoder se monto con macarron termorretractil de distintos diametros, y fue enviado a unos inversores con disparador de schmitt a traves de un potenciometro para ajustar la sensibilidad.
|
Primera fase del Robot
|
MODIFICACIONES
En su origen, el robot NR3 era un brazo construido en base a un kit de Lynxmotion, controlado a traves del PC, con 5 grados de libertad, montado sobre una base fija y con conexión RS-232 para recibir la informacion de posición para cada servomotor con una placa mini SSC-II.
No tenia ningún tipo de realimentación de información a la computadora de control, debido a que utiliza para el posicionamiento de sus distintas articulaciones un control de lazo cerrado local, es decir, que la computadora manda ordenes para colocar un servo en un determinado angulo, y este lo ejecuta, pero, la computadora no tiene constancia de que el robot llegue a conseguir su tarea (Closed loop).
La siguiente mejora fue el añadirle una base movil CARPET ROVER, tambien en kit de Lynxmotion con tres ruedas y dos servos para dotarle de dirección diferencial.
Con el diametro de las ruedas a 5 centimetros, se conseguía una velocidad de unos 25 cm por segundo.
Mas tarde fueron añadidos unos encoders opticos a las ruedas, construidos artesanalmente. Montando el brazo sobre la base movil, se consiguió, dotar de capacidad de movimiento al brazo robótico.
Siguiente añadido: Un detector volumetrico de ultrasonidos, procedente de una alarma para automóvil, y que lleva información de vuelta al ordenador a traves del puerto paralelo, y con el cual es capaz de detectar movimiento, con un alcance de unos 4 metros (ajustable).
Vista (por decirlo de alguna forma). Formado por dos detectores de reflexión de infrarrojo, montados sobre la pinza manipuladora, y con un circuito de control que oscila , y cuya frecuencia, depende de la distancia a la que pongamos un objeto, el paso siguiente es contar cuanto dura un periodo de esa oscilación, determinando la frecuencia y por consiguiente la cantidad de luz reflejada que se recibe, dotandolo de capacidad para detectar diferentes objetos en base a su tono, seguir lineas marcadas en el suelo, etc.
Con todo esto, mostrado hasta ahora, el robot quedó como se muestra a continuación:
|
|
Actualmente he eliminado las tres ruedas, y desmontado los servomotores, y sus correspondientes encoders, para modificar su sistema de tracción, incorporando al robot unas orugas de goma procedentes de una excavadora de juguete, sustituyendo los motores originales del juguete por unos servomotores HITEC-300, y acoplados a la base del robot.
Llego el momento de incorporar el microcontrolador Basic Stamp II Sx y probar algo de inteligencia, NR3 sigue la linea perfectamente pero... Problema a la vista: reducida autonomia con baterias procedentes de telefonos moviles de desecho. Hay que pensar en cambiar su alimentación.
Fue necesario adaptar la base del brazo agrandando su parte trasera para acomodar los motores de las orugas asi como para colocar las baterias y el radio-transmisor de de audio y video.
Siguiente incorporación: Transmisor de imagen y bloques de baterias mejoradas:
|
TV, |
BATERIAS
En un principio, el robot estaba conectado al Ordenador que lo controlaba y le proveia de alimentación, pero al decidir hacerlo autonomo, fue necesario dotarlo de alimentación a base de baterias, y primeramente probe a hacerlo con unos bloques construidos con partes de baterias de antiguos telefonos móviles para conseguir, unos 5 v con 5 celulas de 1,2 voltios, y otra pila auxiliar de NiCd de 8,4 voltios para alimentar la circuiteria de control.
|
Con la adición del transmisor de video y sus requisitos de alimentacion de 12 voltios, pense en cambiar la pequeña pila recargable de 8,4 v por dos bloques de 6 voltios, conectados en serie, con lo cual se consiguen 12 voltios con una autonomia de 700 mA/hora, suficiente para mantener funcionando un buen rato el sistema de microcontrolador, sensores, camara de video y transmisor de imagen.
El apartado de alimentacion de los servomotores, fue mejorado con la adicion de una bateria de 7,2 v y 1600 mA /hora, que dotan a los motores de un mayor par, que el que proporcionan funcionando a los 5 voltios que proporcionaba la fuente de alimentacion conmutada del PC.
¡Al fin es autónomo, ya no cuelga del PC 386!
COLOCACIÓN DE LA CÁMARA
Para la transmisión de imagenes desde el robot a la tarjeta capturadora en el PC añadí una videocamara marca PRO-BASIC, obtenida de un sistema de vigilancia por circuito cerrado de TV, con sensor CCD, con una alimentación de 8v, y un consumo de poco mas de 100 mA.
La cámara tambien va equipada con un microfono para captar el sonido ambiental.
Esta cámara se montó en la parte trasera del codo del robot para asi, no cargar demasiado al propio brazo robot:
|
|
Cámara CCD color.
|
Colocación de la videocámara
|
TRANSMISOR DE IMAGEN Y SONIDO POR RADIOFRECUENCIA
|
Circuito transmisor de Video y Audio
|
La imagen y sonido recibidos de la cámara CCD equipada con microfono se envian a este transmisor, adquirido en forma de Kit (www.iberfutura.es )
Este circuito, permite enviar señal audio/video a una distancia de unos 300 metros en función del entorno; para la recepción puede utilizarse un televisor normal, o sintonizadora de TV para ordenador, ajustada al canal 12 de la VHF.
El uso en la etapa de RF de dos módulos Aurel premontados y ajustados, permitió realizar este montaje de manera bastante sencilla.
Posee entradas separadas para las señales de audio y vídeo. El circuito comprende una capsula microfónica y tambien puede utilizarse otra fuente de sonido exterior.
La potencia de salida del modulador es de 2 mW que luego se envian a un amplificador que entrega en antena una potencia de 50 mW con una alimentación de 12 voltios y un consumo de unos 150 mA.
Como antena utilizo un trozo de cobre rígido de 34 cm de longitud.
MEDIDA DE DISTANCIAS POR ULTRASONIDOS
|
Circuito del Metro Electrónico COATI
|
Este es el circuito del metro electronico que voy a modificar para incorporar al robot un sistema de sonar de ultrasonidos para medida de distancia a diferentes objetos, que ira montado sobre el brazo para poder variar el objetivo. Es similar al utilizado por las maquinas de fotos de la marca POLAROID, para su sistema de enfoque:
Bibliografía:
- A little description about this robot: http://www.lynxmotion.com/proj036.htm
- Página personal del autor:
http://perso.wanadoo.es/carabaza/descr_NR3.htm
Etiquetas:
Bienvenido a
Aprende Robotica
© 2025 Creado por Lorenzo M. Oliver. [Imágenes licenciadas por Depositphotos.com] Tecnología de