Brazo Robótico Con Lego
Enviado por mbleducht • 31 de Enero de 2013 • 1.576 Palabras (7 Páginas) • 745 Visitas
Introducción
Este proyecto involucra algunos de los temas cubiertos en el programa de la asignatura “Interfaces Hardware-Software”, controlando un brazo robótico con elementos de material Lego™ como estructura de apoyo, además de servomotores, sensores de contacto y sensores de luz incluidos en el kit Mindstroms Educations ™. Se implementó un interfaz por medio de los joysticks de un control genérico.
A continuación se describen las características de los sensores, cables, servomotores que se utilizaron además del Brick NTX el cual a través de este hacemos el acoplamiento de los elementos antes mencionados.
Este tipo de kits es una gran ventaja en la simulación y puesta en práctica para proyectos, ya que una valiosa ayuda para sentar las bases antes de comenzar con trabajos más complicados.
Desarrollo
LEGO Mindstorms es un kit de robótica educativa desarrollado por LEGO. En concreto, el modelo NXT es el sucesor de otro más antiguo, el RCX. Este, que fue el primer modelo comercializado, nació de los acuerdos de colaboración entre LEGO y el MIT (Instituto Tecnológico de Massachusetts). Su éxito hizo que rápidamente se extendiera su uso a gran cantidad de aficionados a la robótica.
Aunque la comercialización del NXT se ha enfocado hacia el mercado recreativo, la flexibilidad y capacidad de este lo han llevado a ser aceptado ampliamente como una herramienta de docencia a tener en cuenta.
MONTAJE:
En cuanto al kit utilizado, se comenzó con el LEGO Mindstorms Education Base Set Como su nombre indica, este es un kit de base, más orientado a la iniciación con el NXT en las aulas, y con una pequeña guía para el montaje de un único y simple robot. Disponía de todos los elementos electrónicos necesarios como el ladrillo, tres motores, diversos sensores, y cables cruzados.
La estructura fue tomada del manual de Modelos BONUS LEGO® MINDSTORMS® NXT 1.0, denominado RoboArm T-56.
La estructura terminada se caracterizó del siguiente modo:
El robot se programó en RobotC, que es un lenguaje de programación desarrollado por la Carnegie Mellon Robotic Academy, como una alternativa al lenguaje grafico NXT-G incluido por LEGO en su NXT. Como su nombre indica, está basado en C, y es bastante similar al lenguaje NXC (Not eXactly C), también basado en C. RobotC es bastante intuitivo, y suple las carencias derivadas del uso de un lenguaje de tan alto nivel como es NXT-G, permitiendo crear aplicaciones bastante más complejas. También es ampliamente usado en campeonatos de robots. RobotC solo es funcional en sistemas operativos Windows.
El NXT dispone de cuatro puertos de entrada para sensores, todos idénticos.
Si miramos el extremo de un cable del NXT, se puede ver que está formado por seis pines o cables más pequeños de distintos colores. Cuando conectamos el cable a un puerto de entrada cualquiera, la función de cada pin dependerá del tipo de sensor al que este conectado. La numeración y disposición de los seis pines se muestra en la siguiente figura:
La descripción de cada uno de los pines se muestra a continuación:
Pin 1(Blanco): AN
Este pin puede tener dos usos: como entrada analógica, o como fuente de energía para algunos sensores del antiguo RCX.
Si se usa este pin como entrada analógica, que será lo más común, la señal es conectada a un convertidor analógico-digital de 10 bits, incluido dentro del procesador del NXT. Esto se explicará con mayor detenimiento en el siguiente apartado.
Pines 2 y 3 (Negro y rojo): GND
Son los pines de tierra, que están conectados el uno con el otro dentro del NXT y dentro de los sensores, por lo que realmente es indistinto usar solo un pin o ambos. Todas las señales son medidas tomando estos pines de masa como referencia.
Pin 4 (Verde): IPOWERA
Proporciona la corriente necesaria a todos los sensores del NXT, y a los encoders de los motores. Está conectado internamente a los siete puertos de entrada y salida del brick y tiene un límite de corriente de 180mA. Eso significa que cada puerto dispone de aproximadamente de unos 25mA, aunque se puede consumir más si otro consume menos. Si la carga total supera el límite máximo, la tensión de 4.3V de que dispone cae rápidamente.
Pines 5 y 6 (Amarillo y azul): DIGIAI0 y DIGIAI1
Son pines de entrada/salida usados para el protocolo de comunicación digital
I2C, tal y como la que usa el sensor de ultrasonidos. Más información se puede encontrar
El convertidor A/D del NXT
Como se ha dicho, una de las especificaciones técnicas del NXT, indica que dispone internamente de un convertidor analógico-digital entre los pines 1 y 2 de los puertos de entrada. El esquemático correspondiente se puede ver en la Figura siguiente
Dentro del NXT, una resistencia de 10kΩ (resistencia de pull-up) está permanentemente conectada entre el pin 1 y una tensión de 5V. El pin 2, como se dijo antes, corresponde a la toma de tierra (0V). Ambos pines están conectados a un convertidor A/D que, al ser de 10 bits, convertirá la tensión de entrada en un valor digital entre 0 y 1023 (lo que llamaremos el valor raw o en
...