Informe de Proyecto Brazo Antropomorfico

7
Paul Herrera Bucheli Universidad Internacional del Ecuador Robótica I Informe de Proyecto Tema: Brazo antropomórfico con Visión Artificial Objetivos: Construir un brazo Antropomórfico Controlar el brazo mediante cinemática inversa Realizar una interfaz de control mediante un micro controlador Implementar la visión artificial mediante una cámara web Usar el brazo para que logre jugar Ajedrez Desarrollo: Interfaz La interfaz es lo que comunicara el software de la computadora con el hardware del brazo. La interfaz será capaz de controlar los servomotores usados en los brazos y recopilar información de sensores externos que se podrían usar. Para la interfaz usaremos un Arduino Uno, Arduino es una placa de desarrollo basada en el micro controlador atmega 328, el mismo viene con un software de programación el mismo que no tiene costo. Arduino proporciona el software y los diagramas de hardware por lo cual es de código abierto.

description

Proyecto realizado en la uide para la creacion de un brazo robotico antropomorfico

Transcript of Informe de Proyecto Brazo Antropomorfico

  • Paul Herrera Bucheli Universidad Internacional del Ecuador Robtica I

    Informe de Proyecto

    Tema: Brazo antropomrfico con Visin Artificial

    Objetivos:

    Construir un brazo Antropomrfico

    Controlar el brazo mediante cinemtica inversa

    Realizar una interfaz de control mediante un micro controlador

    Implementar la visin artificial mediante una cmara web

    Usar el brazo para que logre jugar Ajedrez

    Desarrollo:

    Interfaz

    La interfaz es lo que comunicara el software de la computadora con el hardware del brazo.

    La interfaz ser capaz de controlar los servomotores usados en los brazos y recopilar informacin de

    sensores externos que se podran usar.

    Para la interfaz usaremos un Arduino Uno, Arduino es una placa de desarrollo basada en el micro

    controlador atmega 328, el mismo viene con un software de programacin el mismo que no tiene costo.

    Arduino proporciona el software y los diagramas de hardware por lo cual es de cdigo abierto.

  • Paul Herrera Bucheli Universidad Internacional del Ecuador Robtica I Especificaciones Tcnicas

    Arduino Uno

    Microcontroller ATmega328

    Operating Voltage 5V

    Input Voltage (recommended) 7-12V

    Input Voltage (limits) 6-20V

    Digital I/O Pins 14 (of which 6 provide PWM output)

    Analog Input Pins 6

    DC Current per I/O Pin 40 mA

    DC Current for 3.3V Pin 50 mA

    Flash Memory 32 KB (ATmega328) of which 0.5 KB used by bootloader

    SRAM 2 KB (ATmega328)

    EEPROM 1 KB (ATmega328)

    Clock Speed 16 MHz

    Dimensionamiento del Micro controlador

    Control servo motores

    o El Arduino Uno tiene 6 salidas de PWM de las cuales todas pueden ser usadas para

    controlar un servomotor independientemente.

    Conectividad

    o La placa de desarrollo cuenta con un conector USB e internamente posee un conversor

    de USB a TTL con esto generamos un puerto serial en la computadora.

    o La mayora de software de control tiene libreras para la conexin serial con dispositivos

    externos

    o El software LABVIEW que utilizaremos para el reconocimiento de imgenes y para el envi

    de las coordenadas al Arduino tiene un toolkit el cual nos permite una conexin directa y

    bidireccional. Esta conexin tiene una mxima velocidad de 115200 baudios lo cual

    cumple nuestros requisitos para el proyecto.

  • Paul Herrera Bucheli Universidad Internacional del Ecuador Robtica I

    Servomotores

    Un servomotor es conocido tambin como servo es un aparato muy parecido a un motor DC, el servo

    tiene la capacidad de ubicarse en cualquier posicin dentro de su rango de operacin y mantenerse

    estable en dicha posicin. Esto lo hace gracias a un sistema de control, que trae de manera interna que

    consta de un potencimetro y una tarjeta de comparacin. Los servomotores tienen la capacidad de ser

    controlados en posicin y velocidad.

    Los servos se utilizan frecuentemente en sistemas de radio control y en robtica por ejemplo un brazo

    robtico, cada servo sera un grado de libertad, tambin se lo puede aplicar a sistemas automatizados,

    por ejemplo en mquinas de control preciso y rpido. Es posible modificar un servomotor para obtener

    un motor DC con esto pierdes la capacidad de control pero conservas la fuerza y la velocidad que

    caracteriza a los servomotores. Generalmente los servos traen tres cables por lo cual son muy sencillos

    de usar, dos cables para la alimentacin y un tercero para el control donde puedes aplicar PWM

    (Modulacin del ancho del pulso) para que logres un posicionamiento preciso y rpido, por ejemplo

    puedes usar Arduino.

    Control del Servo Motor

    Para controlar el servomotor se vara el ancho de pulso de una seal cuadrada que se aplica al pin de

    control del servomotor.

    En el siguiente cuadro podemos ver las posiciones claves y el tiempo de los anchos de pulso de un

    servomotor estndar.

    La frecuencia de la onda cuadrada puede variar de 1000 hz a 333 hz, generalmente se usa como estndar

    una frecuencia de 500 hz para el control de los servo motores.

  • Paul Herrera Bucheli Universidad Internacional del Ecuador Robtica I Especificaciones Tcnicas Servomotor

    MG996R :Peso- 55.0g

    Dimensiones :40.7*19.7*42.9mm

    Torque 9.4kg/cm(4.8V),11kg/cm(6V)

    Velocidad de Operacin 0.17sec/60degree(4.8v), 0.14sec/60degree(6v)

    Voltaje de Operacin 4.8-7.2V

    Rango de Temperatura 0C_ 55C

    Ancho de Banda 5us

    Software de Reconocimiento de imgenes

    LABVIEW

    LABVIEW es una plataforma y entorno de desarrollo para disear sistemas, con un lenguaje de

    programacin visual grfico. Recomendado para sistemas hardware y software de pruebas, control y

    diseo, simulado o real y embebido, pues acelera la productividad. El lenguaje que usa se llama lenguaje

    G, donde la G simboliza que es lenguaje Grfico.

    Usaremos LABVIEW debido a sus 2 mdulos que nos ofrece para el desarrollo de nuestro proyecto los

    cuales son:

  • Paul Herrera Bucheli Universidad Internacional del Ecuador Robtica I

    NI Vision Development

    El Mdulo NI Vision Development est diseado para desarrollar aplicaciones de visin artificial y

    procesamiento de imgenes usando el entorno de desarrollo grfico de NI LabVIEW para

    Windows y sistemas en tiempo real y C, C++, C# y Visual Basic .NET para sistemas Windows.

    Junto con la extensa biblioteca de funciones de visin artificial y procesamiento de imgenes, este

    mdulo incluye el NI Vision Assistant, un entorno interactivo para generacin de prototipos de

    aplicaciones de inspeccin que pueden generar cdigo listo para ejecutar en cualquiera de los

    lenguajes soportados.

    NI LabVIEW Interface for Arduino Toolkit

    El NI LabVIEW Interface for Arduino Toolkit ayuda a establecer interfaz fcilmente con el micro

    controlador Arduino usando LabVIEW. Con este juego de herramientas y LabVIEW podemos usar

    a nuestro Arduino como una placa de entradas y salidas para el software LabVIEW y con esto

    podemos interactiar fcilmente con nuestro robot desde la computadora.

    Desarrollo de Software

    Interfaz Manual

  • Paul Herrera Bucheli Universidad Internacional del Ecuador Robtica I Mediante esta interfaz podemos controlar manualmente los ngulos de los 5 servos de Nuestros Robots

    tambin podemos seleccionar en que puerto serial est conectado el Arduino en caso de que tengamos

    ms que un puerto serial o dispositivos conectados en el computador.

    Tambin disponemos de un control para seleccionar el tipo de conexin la cual puede ser USB/Serial,

    Xbee o por Bluetooth.

    Se Dispone de un botn de Stop de emergencia que detiene el brazo totalmente en la posicin

    instantnea.

    De los 4 Servos solo controlamos los ngulos debidos a que estos nos dan la posicin final del brazo.

    Y para el servo de la pinza solo tenemos dos posiciones cerrado y abierto

    Diagrama de Bloques LABVIEW

    Este Diagrama de bloques es para el funcionamiento exclusivo manual de los servomotores y la interfaz

    mediante arduino.

  • Paul Herrera Bucheli Universidad Internacional del Ecuador Robtica I Aqu bsicamente esta la configuracin de la interfaz con Arduino la cual se realiza mediante un recurso

    visa de labview.

    Aqu tenemos que configurar que placa de Arduino estamos utilizando, velocidad de conexin, tipo de

    conexin. Despus de esto podemos iniciar la conexin mediante el comando init.

    Despus debemos configurar el nmero de servos que utilizaremos en nuestra aplicacin.

    Tambin debemos configurar todos los pines de los servos como salidas.

    Y despus de esto podemos escribir los ngulos que deseamos en nuestros servos mediante la funcin

    servowrite.

    Siempre a final de la ejecucin del programa se debe cerrar el recurso visa y el arduino.