Informe de Proyecto Brazo Antropomorfico
-
Upload
paul-herrera -
Category
Documents
-
view
15 -
download
0
description
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.