SlideShare ist ein Scribd-Unternehmen logo
1 von 12
Downloaden Sie, um offline zu lesen
UNIVERSIDAD TECNICA PARTICULAR DE LOJA

                                   La Universidad Católica de Loja




Escuela de Electrónica y Telecomunicaciones


Proyecto de Fin de Curso de Metodología de la
                Programación


          Tema: “Brazo mecánico”


                Integrantes:
        Luis Gerardo Hidalgo García
      José Vicente Jaramillo Valdivieso
     Juan Francisco Maldonado Morales
    Mauricio Fernando Román Rodríguez


                  Periodo:

               2009 –2010
1. Objetivos:

         1.1. Objetivos generales:
   -     Construcción de un brazo mecánico con movimiento en los ejes X,Y y Z
         para recolección de objetos livianos.

         1.2. Objetivos específicos:
   -     Diseñar el programa en lenguaje C y programar los microcontroladores.
   -     Construir la parte mecánica, que incluye el ensamblaje del brazo y los
         servomotores.
   -     Ensamblar y conectar la parte mecánica al ordenador.



   2. Descripción:


             PC                         PIC                        Brazo Mecánico
       Programa en PC




Construcción de brazo mecánico en base de aluminio, movilizado con
servomotores, por medio de la programación en C++, con una pinza en el extremo
para la recolección de objetos.

Las instrucciones de C++ serán enviadas a través del puerto serial para darle
movilidad al brazo, los componentes del brazo se encontrarán en un protoboard o
en una placa la cual estará conectada al computador. La energía necesitada para
mover el brazo se tomará de una fuente de alimentación la cual será distribuida
cables. El brazo tendrá 3 articulaciones y movilidad en los ejes X, Y, Z. Este brazo
será capaz de recoger objetos livianos mediante sus pinzas.



   3. Herramientas:

         3.1. Hardware:
   -     Servomotores.
   -     Aluminio.
   -     Microcontolador pic12f683.
   -     Pulsantes.
-   Resistencias.
   -   Transistores.
   -   Protoboard.
   -   Cable DB9.
   -   Fuente de Alimentación.
   -   Cristal de 9 Mhz
   -   Computador con puerto serial.

       3.2. Software:
   -   Programa C++.
   -   Programa Visual Basic.


   4. Metodología:

Para la investigación de todo lo concerniente al proyecto utilizamos lluvia de ideas
para el diseño del brazo robótico. Para la investigación de los conceptos utilizamos
la técnica del mapa mental para realizar un borrador de lo que necesitamos
investigar.

Para realizar el programa vamos a utilizar la herramienta de lenguaje de
programación C++, ya que es un programa que nos facilita programar vía
comunicación serial, también es considerado un programa base para el desarrollo
de los demás programas que poseen sus bases en C.

Diagrama del Circuito:




                                       Imagen 1.
5. Fundamentos Teóricos:

Protoboard: “El dispositivo más básico y grande, que permite conectar los otros
fácilmente, es la protoboard. Está hecha para poder comunicar dos elementos
conductores (alambres, patas de dispositivos, fuentes de voltaje) sin necesidad de
soldarlos, sino simplemente al introducirlos en dos o más agujeros que por debajo
están interconectados. No todos los agujeros de la protoboard están comunicados
entre sí. Este es un diagrama simple de su funcionamiento, las franjas grises
muestran lo que serán líneas de conducción separadas: tiras metálicas dobladas
para agarrar los alambres”. [1]




                                     Imagen 2.



Servomotor:

   Imagen 3.

                  “Un servomotor de modelismo —conocido generalmente como
                  servo o servo de modelismo— es un dispositivo actuador que
                  tiene la capacidad de ubicarse en cualquier posición dentro de
                  su rango de operación, y de mantenerse estable en dicha
                  posición. Está formado por un motor de corriente continua, una
caja reductora y un circuito de control, y su margen de funcionamiento
generalmente es de menos de una vuelta completa.

Los servos de modelismo se utilizan frecuentemente en sistemas de radiocontrol y
en robótica, pero su uso no está limitado a estos”.[2]



Microcontrolador pic12f683:

“Un microcontrolador es un circuito integrado o chip que incluye en su interior las
  Imagen 4.
tres unidades funcionales de una computadora: unidad central de procesamiento,
memoria y unidades de E/S”.[3]


Cristales de Cuarzo:


          Imagen 5.

                         “La importancia de los cristales de cuarzo en electrónica
                         es el resultado de su extremadamente alto factor de
                         calidad “Q”, tamaño relativamente pequeño y excelente
                         estabilidad en temperatura. Los cristales de cuarzo
                         están compuestos de dióxido de silicio. Su propiedad es
                         un fenómeno llamado “piezoeléctrico”, que consiste en
                         aplicar stress o tracción mecánica a un cuarzo y este
genera un campo eléctrico directamente proporcional y viceversa.


La aplicación de un campo eléctrico sobre un cristal genera una fuerza en la
estructura del cristal, haciendo que este vibre a una frecuencia determinada. Los
cristales de cuarzo proveen una fuente fiable de aplicaciones en crono-medición,
incluyendo relojes, servo controles, dispositivos analógico digitales y micro
procesadores”.[4]



Puerto serial:

        Imagen 6.
                           “Un puerto serie o puerto serial es una interfaz de
                           comunicaciones de datos digitales, frecuentemente
                           utilizado por computadoras y periféricos, en donde la
                           información es transmitida bit a bit enviando un solo bit a
                           la vez, en contraste con el puerto paralelo que envía
varios bits simultáneamente. La comparación entre la transmisión en serie y en
paralelo se puede explicar usando una analogía con las carreteras. Una carretera
tradicional de un sólo carril por sentido sería como la transmisión en serie y una
autovía con varios carriles por sentido sería la transmisión en paralelo, siendo los
vehículos los bits que circulan por el cable”.[5]



C++: “es un lenguaje de programación diseñado a mediados de los años 1980 por
Bjarne Stroustrup. La intención de su creación fue el extender al exitoso lenguaje
de programación C con mecanismos que permitan la manipulación de objetos. En
ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++
es un lenguaje híbrido.

Posteriormente se añadieron facilidades de programación genérica, que se sumó
a los otros dos paradigmas que ya estaban admitidos (programación estructurada
y la programación orientada a objetos). Por esto se suele decir que el C++ es un
lenguaje de programación multiparadigma.

Actualmente existe un estándar, denominado ISO C++, al que se han adherido la
mayoría de los fabricantes de compiladores más modernos. Existen también
algunos intérpretes, tales como ROOT.

Una particularidad del C++ es la posibilidad de redefinir los operadores
(sobrecarga de operadores), y de poder crear nuevos tipos que se comporten
como tipos fundamentales.

El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje
fue utilizado por primera vez fuera de un laboratorio científico. Antes se había
usado el nombre "C con clases". En C++, la expresión "C++" significa "incremento
de C" y se refiere a que C++ es una extensión de C”.[6]



Visual Basic: “(Visual Studio) constituye un IDE (entorno de desarrollo integrado
o en inglés Integrated Development Enviroment) que ha sido empaquetado como
un programa de aplicación, es decir, consiste en un editor de código (programa
donde se escribe el código fuente), un depurador (programa que corrige errores en
el código fuente para que pueda ser bien compilado), un compilador (programa
que traduce el código fuente a lenguaje de máquina), y un constructor de interfaz
gráfica o GUI (es una forma de programar en la que no es necesario escribir el
código para la parte gráfica del programa, sino que se puede hacer de forma
visual)”.[7]



   6. Alcance:

El alcance máximo de nuestro proyecto es lograr movimiento del brazo mecánico
en los ejes X, Y y Z para la recolección de objetos livianos y su traslado a un
destino diferente.

Resultados esperados:

Una vez terminado el proyecto, se tendrá un brazo mecánico capaz de recolectar
objetos livianos por medio de una pinza, posteriormente trasladarlos a su destino
final dentro del rango de movimiento del brazo.
7. Desarrollo de Módulos.
      7.1. Hardware:

Los pasos a describir son secuenciales.

1ra Etapa:

Envió de pulsos por el pin 3 hacia el pic para la transformación de las ordenes a
código binario.

2da Etapa:

Enviar los pulsos del pic al brazo mecánico.

3ra Etapa:

Recepción de pulsos y transformar código binario a instrucción normal.



      7.2.   Software:

Los pasos a describir son secuenciales

1ra Etapa:

Implantar objeto de transmisión serial.

2da Etapa:

Implantar puntos de comunicación serial.

3ra Etapa:

Empezar comunicación serial.

4ta Etapa:

Ingreso de instrucciones por teclado y su almacenamiento en sus respectivas
variables.

5ta Etapa:

Transmisión de datos vía comunicación serial.
6ta Etapa:

Recepción y ejecución de instrucciones.



   8. Flujograma del Programa en PC:
8.1.   Algoritmo del programa en PC:



1. Inicio
2. Encender Ordenador
3. Abrir software
4. Conectar el brazo al puerto serial del ordenador
5. Mientras (Programa=Encendido) Entonces
6.     Si (Motor 1=Controlado) Entonces
7.         Si (Orden= Derecha)
8.             Mover a derecha
9.         Caso Contrario
10.             Mover a izquierda
11.        Ingresar Grados
12. Caso Contrario
13.        No moverse
14.     Si (Motor2=Controlado) Entonces
15.         Si (Orden= Arriba)
16.             Mover hacia arriba
17.         Caso Contrario
18.             Mover hacia abajo
19.          Ingresar grados
20. Caso Contrario
21.          No Moverse
22. Si(Motor3= Controlado) Entonces
23.        Si(orden=arriba)
24.          Mover hacia arriba
25.        Caso Contrario
26.           Mover hacia abajo
27.        Ingresar Grados
28. Caso Contrario
29.         No moverse
30. Si(Motor4= Abierto)
31.        Cerrar motor4
32. Caso Contrario
33.        Abrir Motor4
34. Ir a instrucción 6
35. Fin mientras
36. Fin
9. Flujograma del Microcontrolador:

                               INICIO




                    Incluir librería “Modedefs.bas”




                        Establecer variables
                     globales arriba, abajo, izq,
                      der, grad, abrir, cerrar de
                              tipo char




                                                      NO   No transmitir
                           ¿Está conectado?
                                                               nada


                                        SI


                       Controlar Servomotor 1
                       Transmitir izq, der, grad




                      Controlar Servomotor 2
                    Transmitir arriba, abajo, grad




                      Controlar Servomotor 3
                    Transmitir arriba, abajo, grad




                       Controlar Servomotor 4
                       Transmitir abrir, cerrar




                      SI
                             ¿Continuar?




                                        NO


                                 FIN
9.1.   Algoritmo del microcontrolador:

1. Inicio
2. Incluir librería “modedefs.bas” para establecer comunicación con puerto
    serial.
3. Establecer variables globales arriba, abajo, izquieda, derecha, grado, abrir y
    cerrar de tipo char
4.      Si (coneccion=true)Entonces
5.      Controlar servomotor 1 por pin 7
6.          Transmitir izquierda, derecha, grados.
7.      Controlar servomotor 2 por pin 6
8.          Transmitir arriba, abajo y grados.
9.      Controlar servomotor 3 por pin 5
10.          Transmitir arriba, abajo y grados.
11.     Controlar servomotor 4 por pin 3
12.          Transmitir arriba y cerrar.
13.     Caso contrario
14.           No transmitir
15. Fin si
16. Fin



10. Referencias:

-   Imagen 1 “Diagrama de circuitos”, disponible en:
    http://www.xbot.es/microplans/servos4.htm

-   Imagen 2 y [1] “Protoboard”, disponible en:
    http://taller.tagabot.org/index.php/Arduino/Armada

-   Imagen 3 y [2] “Servomotor”, disponible en:
    http://es.wikipedia.org/wiki/Servomotor_de_modelismo

-   Imagen 4 “Microcontrolador”, disponible en:
    http://parts.digikey.com/1/parts/557513-ic-mcu-flash-2kx14-8soic-pic12f683-i-
    sn.html

-   [3] “Microcontrolador”, disponible en:
    http://es.wikipedia.org/wiki/Microcontrolador

-   Imagen 5 y [4] “Cristal de cuarzo”, disponible en:
    http://www.endrich.com/es/site.php/4533

-   Imagen 6 “Puerto serial”, disponible en:
    http://es.wikipedia.org/wiki/Archivo:SerialPort_ATX.jpg
-   [5] “Puerto serial”, disponible en:
    http://es.wikipedia.org/wiki/Puerto_serie

-   [6] “C++”, disponible en:
    http://es.wikipedia.org/wiki/C%2B%2B

-   [7] “Visual Basic”, disponible en:
    http://es.wikipedia.org/wiki/Microsoft_Visual_Basic

Weitere ähnliche Inhalte

Was ist angesagt?

2.3. Configuraciones en Paralelo y Serie-Paralelo de Diodos
2.3. Configuraciones en Paralelo y Serie-Paralelo de Diodos2.3. Configuraciones en Paralelo y Serie-Paralelo de Diodos
2.3. Configuraciones en Paralelo y Serie-Paralelo de DiodosOthoniel Hernandez Ovando
 
Los semiconductores
Los semiconductoresLos semiconductores
Los semiconductoresIDAT
 
Cuadro comparativo entre: Motores de CA y motores de CD/CC
Cuadro comparativo entre: Motores de CA y motores de CD/CCCuadro comparativo entre: Motores de CA y motores de CD/CC
Cuadro comparativo entre: Motores de CA y motores de CD/CCOscar Morales
 
Equivalencia de circuitos delta estrella
Equivalencia de circuitos delta estrellaEquivalencia de circuitos delta estrella
Equivalencia de circuitos delta estrellaEvaldes01
 
Electrónica potencia 2
Electrónica potencia 2Electrónica potencia 2
Electrónica potencia 2JUAN AGUILAR
 
Aplicaciones del diodo
Aplicaciones del diodoAplicaciones del diodo
Aplicaciones del diodoEnrique
 
Conclusión mecatronica
Conclusión mecatronicaConclusión mecatronica
Conclusión mecatronicaManuel Zeinos
 
sistemas electrónicos (DIODO IDEAL, REAL Y APLICACIONES)
sistemas electrónicos (DIODO IDEAL, REAL Y APLICACIONES) sistemas electrónicos (DIODO IDEAL, REAL Y APLICACIONES)
sistemas electrónicos (DIODO IDEAL, REAL Y APLICACIONES) Sonerteck Mtz
 
conductores, semiconductores y aislantes
 conductores, semiconductores y aislantes conductores, semiconductores y aislantes
conductores, semiconductores y aislantesLuisf Muñoz
 
Problemas resueltos transformadores
Problemas resueltos transformadoresProblemas resueltos transformadores
Problemas resueltos transformadoresLaurita Cas
 
Amplificadores operacionales
Amplificadores operacionalesAmplificadores operacionales
Amplificadores operacionalesJomicast
 

Was ist angesagt? (20)

Analisis de señales
Analisis de señalesAnalisis de señales
Analisis de señales
 
2.3. Configuraciones en Paralelo y Serie-Paralelo de Diodos
2.3. Configuraciones en Paralelo y Serie-Paralelo de Diodos2.3. Configuraciones en Paralelo y Serie-Paralelo de Diodos
2.3. Configuraciones en Paralelo y Serie-Paralelo de Diodos
 
Los semiconductores
Los semiconductoresLos semiconductores
Los semiconductores
 
Optoacopladores
OptoacopladoresOptoacopladores
Optoacopladores
 
Cuadro comparativo entre: Motores de CA y motores de CD/CC
Cuadro comparativo entre: Motores de CA y motores de CD/CCCuadro comparativo entre: Motores de CA y motores de CD/CC
Cuadro comparativo entre: Motores de CA y motores de CD/CC
 
2.- Estructura mecanica de un robot
2.- Estructura mecanica de un robot2.- Estructura mecanica de un robot
2.- Estructura mecanica de un robot
 
Equivalencia de circuitos delta estrella
Equivalencia de circuitos delta estrellaEquivalencia de circuitos delta estrella
Equivalencia de circuitos delta estrella
 
Electrónica potencia 2
Electrónica potencia 2Electrónica potencia 2
Electrónica potencia 2
 
Aplicaciones del diodo
Aplicaciones del diodoAplicaciones del diodo
Aplicaciones del diodo
 
2.5. Rectificador de Media Onda
2.5. Rectificador de Media Onda2.5. Rectificador de Media Onda
2.5. Rectificador de Media Onda
 
Conclusión mecatronica
Conclusión mecatronicaConclusión mecatronica
Conclusión mecatronica
 
Circuitos rectificadores
Circuitos rectificadoresCircuitos rectificadores
Circuitos rectificadores
 
Conclusion de labview
Conclusion de labviewConclusion de labview
Conclusion de labview
 
sistemas electrónicos (DIODO IDEAL, REAL Y APLICACIONES)
sistemas electrónicos (DIODO IDEAL, REAL Y APLICACIONES) sistemas electrónicos (DIODO IDEAL, REAL Y APLICACIONES)
sistemas electrónicos (DIODO IDEAL, REAL Y APLICACIONES)
 
Tiristores
TiristoresTiristores
Tiristores
 
conductores, semiconductores y aislantes
 conductores, semiconductores y aislantes conductores, semiconductores y aislantes
conductores, semiconductores y aislantes
 
2.4. Compuertas AND - OR con Diodos
2.4. Compuertas AND - OR con Diodos2.4. Compuertas AND - OR con Diodos
2.4. Compuertas AND - OR con Diodos
 
Transistores
TransistoresTransistores
Transistores
 
Problemas resueltos transformadores
Problemas resueltos transformadoresProblemas resueltos transformadores
Problemas resueltos transformadores
 
Amplificadores operacionales
Amplificadores operacionalesAmplificadores operacionales
Amplificadores operacionales
 

Ähnlich wie Construcción de brazo mecánico para recolección de objetos

Programación en PLC Xinje - banda transportadora
Programación en PLC Xinje - banda transportadoraProgramación en PLC Xinje - banda transportadora
Programación en PLC Xinje - banda transportadoraLenin Jiménez
 
F3 edwin rodriguez_203055_3 (1)
F3 edwin rodriguez_203055_3 (1)F3 edwin rodriguez_203055_3 (1)
F3 edwin rodriguez_203055_3 (1)edwin andres
 
DISEÑO ELECTRONICO
DISEÑO ELECTRONICODISEÑO ELECTRONICO
DISEÑO ELECTRONICOsgtc_24
 
191256975 micro-practicas
191256975 micro-practicas191256975 micro-practicas
191256975 micro-practicasproyband
 
Informe de proyecto final de control discreto
Informe de proyecto final de control discretoInforme de proyecto final de control discreto
Informe de proyecto final de control discretoSamuel Guiza Jerez
 
Manual de Uso Detallado de Proteus
Manual de Uso Detallado de ProteusManual de Uso Detallado de Proteus
Manual de Uso Detallado de ProteusPaolaPerez263
 
Guia de aprendizaje circuitos
Guia de aprendizaje circuitosGuia de aprendizaje circuitos
Guia de aprendizaje circuitosAlexis Zapata
 
Diseño de un sistema de microcontroladores maestro-esclavo mediante el uso de...
Diseño de un sistema de microcontroladores maestro-esclavo mediante el uso de...Diseño de un sistema de microcontroladores maestro-esclavo mediante el uso de...
Diseño de un sistema de microcontroladores maestro-esclavo mediante el uso de...MariaBarradas17
 
Diseño de un robot móvil omnidireccional mayabot
Diseño de un robot móvil omnidireccional mayabotDiseño de un robot móvil omnidireccional mayabot
Diseño de un robot móvil omnidireccional mayabotAlvaro Cortes Manica
 
Defensa proyecto desarrollo de aplicación web para la gestión de nomina y cab...
Defensa proyecto desarrollo de aplicación web para la gestión de nomina y cab...Defensa proyecto desarrollo de aplicación web para la gestión de nomina y cab...
Defensa proyecto desarrollo de aplicación web para la gestión de nomina y cab...kyaalena
 
Recuperacion de soporte tecnico -Las caracteristicas de los simuladores
Recuperacion de soporte tecnico -Las caracteristicas de los simuladoresRecuperacion de soporte tecnico -Las caracteristicas de los simuladores
Recuperacion de soporte tecnico -Las caracteristicas de los simuladoresMaryuriVega5
 
Reporte de practica #1
Reporte de practica #1Reporte de practica #1
Reporte de practica #1Will Alcantar
 

Ähnlich wie Construcción de brazo mecánico para recolección de objetos (20)

Programación en PLC Xinje - banda transportadora
Programación en PLC Xinje - banda transportadoraProgramación en PLC Xinje - banda transportadora
Programación en PLC Xinje - banda transportadora
 
F3 edwin rodriguez_203055_3 (1)
F3 edwin rodriguez_203055_3 (1)F3 edwin rodriguez_203055_3 (1)
F3 edwin rodriguez_203055_3 (1)
 
Rostro Expresivo
Rostro ExpresivoRostro Expresivo
Rostro Expresivo
 
intro_VHDL.pdf
intro_VHDL.pdfintro_VHDL.pdf
intro_VHDL.pdf
 
Intro vhdl
Intro vhdlIntro vhdl
Intro vhdl
 
Control de motor (eje flexible)
Control de motor (eje flexible)Control de motor (eje flexible)
Control de motor (eje flexible)
 
Control de motor (eje flexible)
Control de motor (eje flexible)Control de motor (eje flexible)
Control de motor (eje flexible)
 
DISEÑO ELECTRONICO
DISEÑO ELECTRONICODISEÑO ELECTRONICO
DISEÑO ELECTRONICO
 
191256975 micro-practicas
191256975 micro-practicas191256975 micro-practicas
191256975 micro-practicas
 
Informe de proyecto final de control discreto
Informe de proyecto final de control discretoInforme de proyecto final de control discreto
Informe de proyecto final de control discreto
 
Manual de Uso Detallado de Proteus
Manual de Uso Detallado de ProteusManual de Uso Detallado de Proteus
Manual de Uso Detallado de Proteus
 
Guia de aprendizaje circuitos
Guia de aprendizaje circuitosGuia de aprendizaje circuitos
Guia de aprendizaje circuitos
 
2 juanpedro montero
2 juanpedro montero2 juanpedro montero
2 juanpedro montero
 
Diseño de un sistema de microcontroladores maestro-esclavo mediante el uso de...
Diseño de un sistema de microcontroladores maestro-esclavo mediante el uso de...Diseño de un sistema de microcontroladores maestro-esclavo mediante el uso de...
Diseño de un sistema de microcontroladores maestro-esclavo mediante el uso de...
 
Diseño de un robot móvil omnidireccional mayabot
Diseño de un robot móvil omnidireccional mayabotDiseño de un robot móvil omnidireccional mayabot
Diseño de un robot móvil omnidireccional mayabot
 
Software simulación electrónica
Software simulación electrónicaSoftware simulación electrónica
Software simulación electrónica
 
diseño de brazo de 6 GDL
diseño de brazo de 6 GDLdiseño de brazo de 6 GDL
diseño de brazo de 6 GDL
 
Defensa proyecto desarrollo de aplicación web para la gestión de nomina y cab...
Defensa proyecto desarrollo de aplicación web para la gestión de nomina y cab...Defensa proyecto desarrollo de aplicación web para la gestión de nomina y cab...
Defensa proyecto desarrollo de aplicación web para la gestión de nomina y cab...
 
Recuperacion de soporte tecnico -Las caracteristicas de los simuladores
Recuperacion de soporte tecnico -Las caracteristicas de los simuladoresRecuperacion de soporte tecnico -Las caracteristicas de los simuladores
Recuperacion de soporte tecnico -Las caracteristicas de los simuladores
 
Reporte de practica #1
Reporte de practica #1Reporte de practica #1
Reporte de practica #1
 

Mehr von Luis Gerardo Hidalgo (6)

Web2.0
Web2.0Web2.0
Web2.0
 
Brazo
BrazoBrazo
Brazo
 
Tv digital
Tv digitalTv digital
Tv digital
 
Cibercafes
CibercafesCibercafes
Cibercafes
 
Semana2
Semana2Semana2
Semana2
 
Jornadas De Telec Loja
Jornadas De Telec LojaJornadas De Telec Loja
Jornadas De Telec Loja
 

Construcción de brazo mecánico para recolección de objetos

  • 1. UNIVERSIDAD TECNICA PARTICULAR DE LOJA La Universidad Católica de Loja Escuela de Electrónica y Telecomunicaciones Proyecto de Fin de Curso de Metodología de la Programación Tema: “Brazo mecánico” Integrantes: Luis Gerardo Hidalgo García José Vicente Jaramillo Valdivieso Juan Francisco Maldonado Morales Mauricio Fernando Román Rodríguez Periodo: 2009 –2010
  • 2. 1. Objetivos: 1.1. Objetivos generales: - Construcción de un brazo mecánico con movimiento en los ejes X,Y y Z para recolección de objetos livianos. 1.2. Objetivos específicos: - Diseñar el programa en lenguaje C y programar los microcontroladores. - Construir la parte mecánica, que incluye el ensamblaje del brazo y los servomotores. - Ensamblar y conectar la parte mecánica al ordenador. 2. Descripción: PC PIC Brazo Mecánico Programa en PC Construcción de brazo mecánico en base de aluminio, movilizado con servomotores, por medio de la programación en C++, con una pinza en el extremo para la recolección de objetos. Las instrucciones de C++ serán enviadas a través del puerto serial para darle movilidad al brazo, los componentes del brazo se encontrarán en un protoboard o en una placa la cual estará conectada al computador. La energía necesitada para mover el brazo se tomará de una fuente de alimentación la cual será distribuida cables. El brazo tendrá 3 articulaciones y movilidad en los ejes X, Y, Z. Este brazo será capaz de recoger objetos livianos mediante sus pinzas. 3. Herramientas: 3.1. Hardware: - Servomotores. - Aluminio. - Microcontolador pic12f683. - Pulsantes.
  • 3. - Resistencias. - Transistores. - Protoboard. - Cable DB9. - Fuente de Alimentación. - Cristal de 9 Mhz - Computador con puerto serial. 3.2. Software: - Programa C++. - Programa Visual Basic. 4. Metodología: Para la investigación de todo lo concerniente al proyecto utilizamos lluvia de ideas para el diseño del brazo robótico. Para la investigación de los conceptos utilizamos la técnica del mapa mental para realizar un borrador de lo que necesitamos investigar. Para realizar el programa vamos a utilizar la herramienta de lenguaje de programación C++, ya que es un programa que nos facilita programar vía comunicación serial, también es considerado un programa base para el desarrollo de los demás programas que poseen sus bases en C. Diagrama del Circuito: Imagen 1.
  • 4. 5. Fundamentos Teóricos: Protoboard: “El dispositivo más básico y grande, que permite conectar los otros fácilmente, es la protoboard. Está hecha para poder comunicar dos elementos conductores (alambres, patas de dispositivos, fuentes de voltaje) sin necesidad de soldarlos, sino simplemente al introducirlos en dos o más agujeros que por debajo están interconectados. No todos los agujeros de la protoboard están comunicados entre sí. Este es un diagrama simple de su funcionamiento, las franjas grises muestran lo que serán líneas de conducción separadas: tiras metálicas dobladas para agarrar los alambres”. [1] Imagen 2. Servomotor: Imagen 3. “Un servomotor de modelismo —conocido generalmente como servo o servo de modelismo— es un dispositivo actuador que tiene la capacidad de ubicarse en cualquier posición dentro de su rango de operación, y de mantenerse estable en dicha posición. Está formado por un motor de corriente continua, una caja reductora y un circuito de control, y su margen de funcionamiento generalmente es de menos de una vuelta completa. Los servos de modelismo se utilizan frecuentemente en sistemas de radiocontrol y en robótica, pero su uso no está limitado a estos”.[2] Microcontrolador pic12f683: “Un microcontrolador es un circuito integrado o chip que incluye en su interior las Imagen 4.
  • 5. tres unidades funcionales de una computadora: unidad central de procesamiento, memoria y unidades de E/S”.[3] Cristales de Cuarzo: Imagen 5. “La importancia de los cristales de cuarzo en electrónica es el resultado de su extremadamente alto factor de calidad “Q”, tamaño relativamente pequeño y excelente estabilidad en temperatura. Los cristales de cuarzo están compuestos de dióxido de silicio. Su propiedad es un fenómeno llamado “piezoeléctrico”, que consiste en aplicar stress o tracción mecánica a un cuarzo y este genera un campo eléctrico directamente proporcional y viceversa. La aplicación de un campo eléctrico sobre un cristal genera una fuerza en la estructura del cristal, haciendo que este vibre a una frecuencia determinada. Los cristales de cuarzo proveen una fuente fiable de aplicaciones en crono-medición, incluyendo relojes, servo controles, dispositivos analógico digitales y micro procesadores”.[4] Puerto serial: Imagen 6. “Un puerto serie o puerto serial es una interfaz de comunicaciones de datos digitales, frecuentemente utilizado por computadoras y periféricos, en donde la información es transmitida bit a bit enviando un solo bit a la vez, en contraste con el puerto paralelo que envía varios bits simultáneamente. La comparación entre la transmisión en serie y en paralelo se puede explicar usando una analogía con las carreteras. Una carretera tradicional de un sólo carril por sentido sería como la transmisión en serie y una autovía con varios carriles por sentido sería la transmisión en paralelo, siendo los vehículos los bits que circulan por el cable”.[5] C++: “es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación C con mecanismos que permitan la manipulación de objetos. En
  • 6. ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido. Posteriormente se añadieron facilidades de programación genérica, que se sumó a los otros dos paradigmas que ya estaban admitidos (programación estructurada y la programación orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma. Actualmente existe un estándar, denominado ISO C++, al que se han adherido la mayoría de los fabricantes de compiladores más modernos. Existen también algunos intérpretes, tales como ROOT. Una particularidad del C++ es la posibilidad de redefinir los operadores (sobrecarga de operadores), y de poder crear nuevos tipos que se comporten como tipos fundamentales. El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que C++ es una extensión de C”.[6] Visual Basic: “(Visual Studio) constituye un IDE (entorno de desarrollo integrado o en inglés Integrated Development Enviroment) que ha sido empaquetado como un programa de aplicación, es decir, consiste en un editor de código (programa donde se escribe el código fuente), un depurador (programa que corrige errores en el código fuente para que pueda ser bien compilado), un compilador (programa que traduce el código fuente a lenguaje de máquina), y un constructor de interfaz gráfica o GUI (es una forma de programar en la que no es necesario escribir el código para la parte gráfica del programa, sino que se puede hacer de forma visual)”.[7] 6. Alcance: El alcance máximo de nuestro proyecto es lograr movimiento del brazo mecánico en los ejes X, Y y Z para la recolección de objetos livianos y su traslado a un destino diferente. Resultados esperados: Una vez terminado el proyecto, se tendrá un brazo mecánico capaz de recolectar objetos livianos por medio de una pinza, posteriormente trasladarlos a su destino final dentro del rango de movimiento del brazo.
  • 7. 7. Desarrollo de Módulos. 7.1. Hardware: Los pasos a describir son secuenciales. 1ra Etapa: Envió de pulsos por el pin 3 hacia el pic para la transformación de las ordenes a código binario. 2da Etapa: Enviar los pulsos del pic al brazo mecánico. 3ra Etapa: Recepción de pulsos y transformar código binario a instrucción normal. 7.2. Software: Los pasos a describir son secuenciales 1ra Etapa: Implantar objeto de transmisión serial. 2da Etapa: Implantar puntos de comunicación serial. 3ra Etapa: Empezar comunicación serial. 4ta Etapa: Ingreso de instrucciones por teclado y su almacenamiento en sus respectivas variables. 5ta Etapa: Transmisión de datos vía comunicación serial.
  • 8. 6ta Etapa: Recepción y ejecución de instrucciones. 8. Flujograma del Programa en PC:
  • 9. 8.1. Algoritmo del programa en PC: 1. Inicio 2. Encender Ordenador 3. Abrir software 4. Conectar el brazo al puerto serial del ordenador 5. Mientras (Programa=Encendido) Entonces 6. Si (Motor 1=Controlado) Entonces 7. Si (Orden= Derecha) 8. Mover a derecha 9. Caso Contrario 10. Mover a izquierda 11. Ingresar Grados 12. Caso Contrario 13. No moverse 14. Si (Motor2=Controlado) Entonces 15. Si (Orden= Arriba) 16. Mover hacia arriba 17. Caso Contrario 18. Mover hacia abajo 19. Ingresar grados 20. Caso Contrario 21. No Moverse 22. Si(Motor3= Controlado) Entonces 23. Si(orden=arriba) 24. Mover hacia arriba 25. Caso Contrario 26. Mover hacia abajo 27. Ingresar Grados 28. Caso Contrario 29. No moverse 30. Si(Motor4= Abierto) 31. Cerrar motor4 32. Caso Contrario 33. Abrir Motor4 34. Ir a instrucción 6 35. Fin mientras 36. Fin
  • 10. 9. Flujograma del Microcontrolador: INICIO Incluir librería “Modedefs.bas” Establecer variables globales arriba, abajo, izq, der, grad, abrir, cerrar de tipo char NO No transmitir ¿Está conectado? nada SI Controlar Servomotor 1 Transmitir izq, der, grad Controlar Servomotor 2 Transmitir arriba, abajo, grad Controlar Servomotor 3 Transmitir arriba, abajo, grad Controlar Servomotor 4 Transmitir abrir, cerrar SI ¿Continuar? NO FIN
  • 11. 9.1. Algoritmo del microcontrolador: 1. Inicio 2. Incluir librería “modedefs.bas” para establecer comunicación con puerto serial. 3. Establecer variables globales arriba, abajo, izquieda, derecha, grado, abrir y cerrar de tipo char 4. Si (coneccion=true)Entonces 5. Controlar servomotor 1 por pin 7 6. Transmitir izquierda, derecha, grados. 7. Controlar servomotor 2 por pin 6 8. Transmitir arriba, abajo y grados. 9. Controlar servomotor 3 por pin 5 10. Transmitir arriba, abajo y grados. 11. Controlar servomotor 4 por pin 3 12. Transmitir arriba y cerrar. 13. Caso contrario 14. No transmitir 15. Fin si 16. Fin 10. Referencias: - Imagen 1 “Diagrama de circuitos”, disponible en: http://www.xbot.es/microplans/servos4.htm - Imagen 2 y [1] “Protoboard”, disponible en: http://taller.tagabot.org/index.php/Arduino/Armada - Imagen 3 y [2] “Servomotor”, disponible en: http://es.wikipedia.org/wiki/Servomotor_de_modelismo - Imagen 4 “Microcontrolador”, disponible en: http://parts.digikey.com/1/parts/557513-ic-mcu-flash-2kx14-8soic-pic12f683-i- sn.html - [3] “Microcontrolador”, disponible en: http://es.wikipedia.org/wiki/Microcontrolador - Imagen 5 y [4] “Cristal de cuarzo”, disponible en: http://www.endrich.com/es/site.php/4533 - Imagen 6 “Puerto serial”, disponible en: http://es.wikipedia.org/wiki/Archivo:SerialPort_ATX.jpg
  • 12. - [5] “Puerto serial”, disponible en: http://es.wikipedia.org/wiki/Puerto_serie - [6] “C++”, disponible en: http://es.wikipedia.org/wiki/C%2B%2B - [7] “Visual Basic”, disponible en: http://es.wikipedia.org/wiki/Microsoft_Visual_Basic