Fig.2: Estructura de contencin para pelotas12 Fig.3: Base de pelota....12 Fig.5: Micro controlador vex17 Fig.6: Diagrama elctrico.18 Fig.7: Diseo de robot ares de trabajo.26 Fig.8: Estructura SCARA.27 Fig.9: Cinemtica directa.28 Fig.10: Ejemplo de representacin28 Fig.11: Cinemtica inversa..29 Fig.12: Sistema modelo dinmico.29 Fig.13: Modelo dinmico..30 Fig.14: Modelo dinmico .30 Fig.15: Modelo dinmico .30 Fig.16: Modelo dinmico .31 Fig.17: Modelo dinmico .31 Fig.18: Modelo dinmico .31
Tabla de figuras Tabla.1: Elementos que conforman el robot..12,15 Tabla.2: Elementos de control19,25
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 2
INTRODUCCION
Con el presente trabajo se busc el anlisis y construccin del robot SCARA, y fue seleccionado por sus caractersticas para la realizacin de la tarea a realizar.
La aplicacin de los robots para manejo de materiales ofrece gran potencial para librar a la mano de obra humana de trabajos montonos, cansados o peligrosos. Incluye la transferencia de partes entre sistemas de bandas transportadoras o lneas de procesos en los que las partes pueden ser pesadas, estar calientes, tener propiedades abrasivas o incluso ser radiactivas.
Este proyecto me ha servido para aprender ms de la robtica sus inicios y lo que conlleva en la construccin del robot SCARA as como su programacin y libertad de movimientos adquiridos.
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 3
1.1 Definicin
FUNDAMENTOS Y CONCEPTOS BASICOS
Robot
Es un manipulador controlado por computadora de propsito general consistiendo de varios enlaces rgidos conectados en serie por medio de revolutas o juntas prismticas. Con esta definicin de robot es necesario conocer algunos conceptos bsicos.
Mecanizacin
Dado que las fuerzas generadas por los seres humanos son reducidas, fue necesario inventar dispositivos que amplificaran estas fuerzas, las cuales adquirieron forma de mquinas. Las cinco mquinas ms elementales segn Hero de Alejandra son la palanca, la rueda y el eje, la polea, la cua y el tornillo. Una mquina es el intermediario entre la potencia motriz y aquellas partes que realmente llevan a cabo los movimientos necesarios para realizar el trabajo requerido dice McCloy (1992).
La capacidad de transformacin de las mquinas no es infinita y son muchas las ocasiones en que las limitaciones de las capacidades humanas imponen un problema demasiado grande para que lo pueda resolver la mquina. La mecanizacin para llevar a cabo el trabajo de personas o animales ha estado presente desde hace siglos, pero a pesar de reducir en gran medida el esfuerzo fsico, la mecanizacin no logr quitar la carga de tener que controlarlo.
Control Automtico
Es un control que acta slo, sin intervencin humana. La mayora de los actuales sistemas de control industrial no podran funcionar si dependieran de operadores humanos. El tiempo de reaccin inherente del hombre es aprox. 0.2 seg. y la tendencia de este a aburrirse y distraerse, son algunos de los factores que lo excluyen del sistema segn McCloy (1992).
Automatizacin
Es el desempeo de operaciones automticas dirigidas por medio de comandos programados con una medicin automtica de la accin, retroalimentacin y toma de decisiones. Esta definicin indica que parte de la automatizacin consiste en un programa para determinar el orden de los eventos as como para instruir al sistema sobre cmo debe llevarse a cabo uno de los pasos de la operacin. La computadora ofrece la forma ms flexible de programacin, por lo que no resulta sorprendente que en la actualidad la automatizacin tienda a asociarse con el control por computadora. ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 4
Robtica
La palabra en s misma fue introducida en 1917 por Karel Capek. Un robot es un manipulador programable, multifuncional para mover materiales, partes, herramientas o aparatos especiales con movimientos programados para el desempeo de diversas tareas. Todos los aditamentos para ejecutar movimientos dentro de una sola trayectoria que no son reprogramables, no caen en la categora de los robots. La palabra robot proviene del checo que significa labor forzada o montona.
1.2 Caractersticas de los Robots
Categorizacin por la geometra del brazo Los robots son generalmente caracterizados por el diseo del sistema mecnico. Generalmente hay 6 configuraciones reconocidas de robots: 1) cartesiana, 2) de prtico, 3) cilndrico, 4) esfrico, 5) articulado y 6) SCARA Robots de coordenadas cartesianas (tres ejes lineales)
El posicionamiento puede hacerse por movimiento lineal o vertical a lo largo de los tres ejes: atrs, adelante, adentro, hacia fuera arriba o abajo. Estos ejes son conocidos como ejes cartesianos x, y, z. El rea de trabajo, o sea el desplazamiento es en forma de un cubo segn Groover (1990).
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 5
Utiliza tres dispositivos deslizantes perpendiculares para construir los ejes X, Y, Z Desplazando los tres dispositivos deslizantes entre s, el robot es capaz de operar dentro de un envolvente rectangular de trabajo. La configuracin debido a su apariencia y construccin se denomina ocasionalmente de caja. El robot de prtico es otro nombre utilizado para los robots cartesianos que suelen ser grandes y que tienen la apariencia de una gra del tipo del prtico.
Robot de Prtico Es un tipo de robot cartesiano cuya estructura parece un prtico. Esta estructura es para minimizar deflexin a lo largo de cada eje (ver figura, Chang, 1991). Muchos robots grandes son de este tipo. Las coordenadas X, Y y Z pueden ser derivadas usando el mismo juego de ecuaciones usadas en los robots cartesianos.
Figura Robot prtico
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 6
ROBOT CILINDRICO Robot de coordenadas cilndricas (Dos ejes lineales y un eje rotacional) Segn Chang (1991), un robot cilndrico tiene dos ejes lineales y un eje rotacional. La posicin del manipulador permite al brazo rotar cerca de la base o espalda y los otros dos ejes permiten movimientos hacia arriba, hacia afuera y hacia adentro.
Figura del robot cilndrico (Robots de coordenadas esfricas (un eje lineal y dos ejes rotacionales) A este tipo de configuracin segn Groover (1990), tambin se le suele llamar configuracin polar, utiliza un brazo telescpico que puede elevarse o bajar alrededor de un pivote horizontal. Este pivote est montado sobre una base giratoria. Estas diversas articulaciones proporcionan al robot la capacidad para desplazar su brazo dentro de un espacio esfrico. El robot esfrico rota en su base, pivotes o se inclina en su hombro, y cuenta con extensin y retraccin en su brazo; su rea de funcionamiento es una porcin de esfera.
Figura Robot esfrico ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 7
Robot SCARA Un estilo de robot que parece completamente popular es una combinacin del brazo articulado y el cilndrico. El robot tiene ms de tres ejes y es usado ampliamente en ensamble de electrnica. Esta configuracin minimiza la deflexin del robot cuando carga un objeto cuando se est moviendo a una velocidad programada.
Figura Robot SCARA
1.3 Elementos de los Robots MANIPULADORES Existen muchas maneras de clasificar las operaciones en la que intervienen los robots: segn el mtodo de control, por su complejidad, etc. Actualmente no existe una forma estndar en la industria de categorizar los robots, sin embargo una prctica es la siguiente: a) Geometra del Brazo b) Sistema de Control c) Fuente de Potencia d) Aplicaciones 1) Robots de coordenadas cartesianas (tres ejes lineales) El posicionamiento puede hacerse por movimiento lineal o vertical a lo largo de los tres ejes: atrs, adelante, adentro, hacia fuera arriba o abajo. Estos ejes son conocidos como ejes cartesianos x, y, z. El rea de trabajo, o sea el desplazamiento es en forma de un cubo segn Groove (1990).
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 8
El Sistema del Robot El movimiento es desempeado por todo el sistema, no slo por el robot en s; el brazo mecnico solo lo ejecuta y la tarea es desempeada por toda la clula de trabajo. La figura muestra el sistema de robot:
Figura Componentes del Sistema de Robot El Brazo Mecnico. Es la parte ms familiar del sistema, es la que ejecuta el trabajo. Se clasifica de acuerdo al movimiento. a) Rectangular b) Cilndrico c) Esfrico o Polar d) Articulado Fuente De Potencia. La potencia puede ser suministrada en tres formas: 1. Elctrica 2. Hidrulica 3. Neumtica Un sistema de robot con brazo grande puede llegar a utilizar las tres fuentes de potencia.
El Controlador. Es similar en funciones a una computadora, cuenta con un CPU y una serie de entradas y salidas. En conjuncin con el controlador se tienen las estaciones o terminales de enseanza, los monitores de visin, los paneles frontales del controlador y las memorias permanentes.
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 9
El controlador tiene tres funciones principales:
1. Iniciar y terminar el movimiento del manipulador de acuerdo con una secuencia y en los puntos deseados. 2. Almacenar informacin de la secuencia y la posicin de la memoria. 3. Realizar la interface con el entorno o ambiente en que opera el robot
Efector Final. Es el elemento del robot que realizar la actividad para la cual se coloc el robot en el proceso, esta puede ser como sujetador o como herramienta. Se establece una distincin en las operaciones en trminos del uso del efector final, es decir se trata de una tenaza o de una herramienta.
Operaciones en donde el efector final es generalmente una tenaza.
Esta categora incluye aquellas actividades en las que el robot se usa para manejar productos, cargar o descargar mquinas, transferir o reorientar componentes. En estos casos, el efector final puede adquirir una gran variedad de formas, desde tenazas operadas mecnicamente hasta succionadores, pero su funcin principal sigue siendo sujetar.
Operaciones en donde el efector final es generalmente una herramienta.
La soldadura por puntos domina esta categora. Para llevar a cabo una soldadura por puntos, el robot conduce el efector final, una pistola de soldadura al sitio deseado e inicia la secuencia para soldar. Consistente en sujetar la pieza, aplicar corriente, aplicar presin, cortar corriente y soltar la pieza
Muecas.
Se requiere una mueca para orientar la mano o efector final en el espacio. Si se requiere movilidad el robot deber tener ruedas, rieles o patas. En tanto que los tres primeros eslabones de un robot se usan para el control de la posicin general de un efector final, la funcin principal del eslabn de la mueca es la orientacin angular.
Cada orientacin del efector final requiere un grado de libertad en el conjunto de la mueca. Los tres trminos usados con mayor frecuencia para la orientacin del efector final son inclinacin horizontal, inclinacin vertical y oscilacin.
Tenazas
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 10
Existen muchas formas de suministrar seis grados de libertad a un efector final, pero ninguna de ellas sirve para un propsito til sino hasta que se incluye una verdadera carga de trabajo. Lo anterior puede tomar la forma de una herramienta, Manufactura Integrada por Computadora Robtica ITCH II 77como pueden ser un porta electrodos de soldadura, un taladro, una pistola rociadora, etc. En forma optativa, la carga de trabajo puede ser un objeto, como en el caso de una pieza fundida, un chocolate, una hoja de vidrio, que se transfiere de una estacin de trabajo a otra.
UNIDAD II En nuestro proyecto a realizar utilizaremos el robot SCARA Robot SCARA. Un estilo de robot que parece completamente popular es una combinacin del brazo articulado y el cilndrico. El robot tiene ms de tres ejes y es usado ampliamente en ensamble de electrnica. Esta configuracin minimiza la deflexin del robot cuando carga un objeto cuando se est moviendo a una velocidad programada.
Figura Robot SCARA Explicacin del armado del robot El robot est elaborado para que tenga un balance y cuando tenga que levantar una pelota no se valla a caer para que la cadera cuente con ms fuerza sele instalo juego de cojinete de la placa giratoria ya que este proporciona ms fuerza para poder soportar el eslabn vertical ya que en ese se concretara dnde estar conectado la pinza posterior mente tenemos el eslabn 2 donde tambin contamos con un juego de cojinete de la placa giratoria para reforzar tambin ya que ay tambin se requiere fuerza para lograr sostener el eslabn 3 y que no se cuelgue tanto este eslabn por ltimo se encuntralo motores 3 y 4 los que son uno el que ase que tenga movimiento de arriba hacia abajo la pinza y el otro de abrir y cerrar la misma los motores 1,2 y 3 cuentan con un sensor que es el codificador de eje el cuales el que est midiendo la posicin descuerdo con las vueltas que da cada motor el sensor esta tomado lectura por medio de su encoder interno. ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 11
Fig.1 robot scara El robot ms adecuado para la accin de la actividad que nosotros requerimos que es el movimiento de pelotas, que es tomarla de una pelota y acomodarlas en la base que est destinada.
Fig. 2 estructura de contenccion Fig. 3 la base de pelotas.
Fundamentos para la construccin del robot SCARA En esta parte veremos cules son los elementos con los cuales cuenta nuestro robot para hacer posible el armado y las conexiones elctricas continuacin se presentara una tabla la cual estn los elementos y la informacin de ellos Elementos Descripcin Imagen Sensor Interruptor Bumper El parachoques sensor es un interruptor fsico. Comportamiento de la seal: Cuando no se pulsa el interruptor el sensor mantiene una seal digital de alta en su puerto de sensor. Esta alta seal procede de la Microcontrolador. Cuando un fuerza externa empuja el interruptor en, cambia su seal a un BAJA digitales hasta que el interruptor es liberado.
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 12
El codificador de eje Se utiliza para medir tanto la posicin relativa de y la distancia recorrida por rotacin de un eje. Funciona por el resplandor de la luz en el borde de un disco equipado con ranuras espaciadas uniformemente alrededor de la circunferencia. A medida que el disco gira, la luz pasa a travs de las rendijas y es bloqueada por los espacios opacos entre las rendijas. El codificador entonces detecta cuntas ranuras han tenido luz brille a travs, y en qu direccin el disco est girando.
Servos Usan electrnica interna para identificar el actual ngulo del motor, y usando una seal de entrada, se le indica la posicin deseada.
Motores Motores adicionales pueden ser utilizados para proporcionar un robot con funcionalidad adicional; ms motores significan ms caractersticas. Aadir torque ms disponible a las ruedas. Aumente su aceleracin con ms motores. Incluye tornillos de montaje y un embrague.
Agarrar y manipular objetos
El robot puede agarrar fcilmente y manipular varios objetos. Motor que no estn incluidos. Lo suficientemente fuerte como para sostener una lata 12 oz soda. Lo suficientemente diestro para agarrar una pluma.
Juego de cojinete de la placa giratoria El Juego de cojinete de la placa giratoria VEX proporciona dos opciones de baja friccin, juntas rotatorias de alta carga. Estos son especialmente adecuados para las articulaciones rotacionales con una gran cantidad de carga lateral - este kit hace que sea fcil de construir una torreta en tu robot Engranaje integrado hace que cada sencillo plato giratorio para accionar mientras que otras caractersticas permiten una gran variedad de usos de diseo.
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 13
collar del eje
Collar del eje con tornillo sin cabeza: EN8 acero collar de eje galvanizado con tornillo prisionero para fijarlo en su lugar una vez instalado
Tornillo sin fin
Es el que trasmite el movimiento del motor al engrane el cual ara el movimiento correspondiente
Cremallera dentada 19 dientes
En l la cual se traslada la pinza para poder alcanzar las pelotas
alta resistencia de engranajes de 12 dientes Este engrane es utilizado cuando se requiere trasmitir ms movimiento y para evitar el riesgo de que se dae
agujeros 5x25 placa afligieron Es con el que se ase la estructura del robot lo correspondiente al caparazn
agujeros parachoqu es chasis 2x2x25
El utilizado en las uniones cuando se ocupa hacer una conexin que se requiere un Angulo de 90
Tornillos Para sujetar las placas y los elementos
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 14
bandas de sujecin
Es para ajustar elementos que no se pueden pegar por medio de cornios
Tuercas Para reforzar los tornillos
Batera Es la que alimentar el controlador con 7.2V
Tabla de elementos que conforman el robot
2.1 Manipulador
Robot articulado (tres ejes rotacionales)
Fig. 4. articulaciones del robot ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 15
Los movimientos del robot se realizan por medio de articulaciones accionadas. Tres articulaciones suelen estar asociadas con la accin del brazo y del cuerpo y dos o tres articulaciones se suelen emplear para accionar la mueca. Para la conexin de las diversas articulaciones del manipulador, se emplean unos elementos rgidos denominados uniones. Las articulaciones utilizadas en el diseo de los robots suelen implicar un movimiento relativo de las uniones continuas, movimiento que es lineal o rotacional. Las articulaciones lineales implican un movimiento de traslacin. Hay como mnimo tres tipos de articulaciones giratorias que pueden distinguirse en los manipuladores del robot. Su configuracin es similar a la de un brazo humano. Est constituido por dos componentes rectos, que corresponden al antebrazo y brazo humano, montados sobre un pedestal vertical. Estos componentes estn conectados por dos articulaciones giratorias que corresponden al hombro y al codo. Una mueca est unida al extremo del antebrazo, con lo que proporciona varias articulaciones suplementarias.
2.2 SISTEMAS SENSITIVOS SISTEMAS DE CONTROL Y MOTORES DE IMPULSION. Las acciones de las coyunturas individuales deben ser controladas en orden por el manipulador para ejecutar el ciclo de movimiento deseado. En esta seccin se examinan los tipos de sistemas de impulsin y los sistemas de control asociados que se utilizan en robtica. Controlador Para este robot se requiere un controlador el cual nos ayudara para hacer la conexin con la maquina en al cual se ara el programa el cual controlara en esta ocasin utilizaremos en controlador el micro controlador VEX El microcontrolador VEX coordina el flujo de informacin y el poder en el robot. Todos los otros componentes del sistema deben electrnicos de interfaz con el microcontrolador y la funcin como una unidad cohesiva. El microcontrolador contiene el programa del robot y procesa todas las seales recibidas de los operadores humanos a bordo y sistemas de sensores. Tambin gestiona la asignacin de potencia a bordo del robot, y controla directamente los motores.
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 16
2.3 ELEMENTOS DE CONTROL A) Servo control o Control de lazo cerrado. Consiste en retroalimentacin continua respecto a la velocidad, direccin y posicin de los dedos del robot. Los robots controlados por servomecanismos, pueden separarse en dos clases principales: robots punto a punto (PTP) y de trayectoria continua (CP).
2.4 Caja de programacin
Fig. 5. microcontrolador VEX
Puertos de motor: Conecta hasta (8) motores VEX o servos. Interrumpir Puertos: Interrupciones son entradas digitales, diseados para seales de alta prioridad que requieren atencin inmediata por parte del microcontrolador. Digital / Anloga Puertos de entrada: 16 puertos de entrada / salida de usos mltiples para los sensores. TX / RX Puertos: permiten que el usuario se comunique directamente con el procesador de usuario dentro del microcontrolador a travs de un puerto serie TTL. ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 17
Puerto Serie: Uso con el kit de programacin VEX para reprogramar el microcontrolador. Rx1 y RX2 puertos: Conecte los receptores de radio para comunicarse con el microcontrolador de forma inalmbrica desde un transmisor. Puerto de la batera: Conecte una fuente de alimentacin 7.2V, como el soporte de la batera o la batera de 7.2V Robot VEX.
El diagrama elctrico
Fig.6 Diagrama elctrico
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 18
Proceso Es el actuador primario utilizado para girar el brazo del robot
Maquina Motor 393 de 2 hilos fabricante VEX Robotics Design Sistem. Que hace Proporciona una fuerza y es transmitida a cualquier mecanismo Como lo hace por medio de mecanismos de rotacin de acero resistentes, en los engranes internos y es configurado a altas velocidades Quien lo hace Esta tarea es realizada por el micro controlador donde el motor es conectado en los puertos del (1-10). Porqu se hace Esta mquina es de increble ayuda debido a su capacidad de transporte y velocidad.
Proceso Codificador rotatorio que mide los pulsos exactos de las vueltas o giros que debe de dar el motor para girar el brazo del robot.
Maquina Sensor encoder eje ptico fabricante VEX Robotics Design Sistem. Que hace Bsicamente para la posicin y deteccin de un movimiento Como lo hace convirtiendo la posicin angular de un eje a un cdigo digital Quien lo hace Por medio de una barra de aluminio de logra el movimiento Porqu lo hace Para saber si ha llegado a la posicin indicada y exacta. ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 19
Proceso Sensor eficaz del sistema de deteccin.
Maquina Interruptor de parachoques. Fabricante VEX Robotics Design Sistem. Que hace Proporciona informacin de retroalimentacin al micro controlador cuando ocurren eventos inesperados. Como lo hace Por medio de un switch al ser presionado por algo. Quien lo hace Su funcin est pre programada en el micro controlador. Porqu lo hace Es una defensa para protegerse y le permita salir de la situacin.
Proceso Coordina el flujo de la informacin y potencia del robot
Maquina micro controlador fabricante VEX Robotics Design Sistem. Que hace es el cerebro de cada robot Vex Como lo hace El micro controlador interacta con los dems componentes del robot Quien lo hace Por medio de un software de programacin. Porqu lo hace Por medio de una lgica le facilite leer instrucciones de operacin.
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 20
Proceso Es el encargado de levantar y bajar la pinza del robot
Maquina Motor 393 de 2 hilos fabricante VEX Robotics Design Sistem. Que hace Proporciona una fuerza y lo hace para levantar cualquier objeto, hasta donde se le indique. Como lo hace Por medio de una Catarina que tiene un agarre con el vstago y va a lo largo del canal. Quien lo hace Esta tarea es realizada por el micro controlador donde el motor es conectado en los puertos del (1-10). Porqu se hace Porque es indispensable al momento de trasladar cualquier objeto ya que evita con su altura cualquier obstculo que se le atraviese. ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 21
Proceso Este servomotor acta para agarrar cualquier objeto
Maquina Servo motor 3hilos fabricante VEX Robotics Design Sistem. Que hace Este tiene como tarea ejercer potencia para despus ser trasmitida a cualquier otro mecanismo. Como lo hace Abre y cierra las pinzas del robot Quien lo hace Es accionado por el micro controlador ya previamente programado. Porqu lo hace Su perfeccin lo hace necesario para esta tarea.
Proceso Es el encargado de todo el cuerpo del robot a 180 o - 180.
Maquina Motor 393 de 2 hilos fabricante VEX Robotics Design Sistem. Que hace Proporciona una fuerza y lo hace para levantar cualquier objeto, hasta donde se le indique. Como lo hace Por medio de una Catarina que tiene un agarre con el vstago y va a lo largo del canal. Quien lo hace Esta tarea es realizada por el micro controlador donde el motor es conectado en los ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 22
puertos del (1-10). Porqu lo hace Porque es indispensable al momento de trasladar cualquier objeto ya que evita con su altura cualquier obstculo que se le atraviese.
Proceso Codificador rotatorio que mide los pulsos en los giros del motor encargado de levantar y bajar la pinza del robot
Maquina Sensor encoder eje ptico fabricante VEX Robotics Design Sistem. Que hace Bsicamente para la posicin y deteccin de un movimiento Como lo hace convirtiendo la posicin angular de un eje a un cdigo digital Quien lo hace Por medio de una barra de aluminio de logra el movimiento Porqu lo hace Para saber si ha llegado a la posicin indicada y exacta.
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 23
Tablas de elementos de control
Proceso Codificador rotatorio
Maquina Sensor encoder eje ptico fabricante VEX Robotics Design Sistem. Que hace Bsicamente para la posicin y deteccin de un movimiento Como lo hace convirtiendo la posicin angular de un eje a un cdigo digital Quien lo hace Por medio de una barra de aluminio de logra el movimiento Porqu lo hace Para saber si ha llegado a la posicin indicada y exacta. ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 24
2.5 Fuente de energa
UNIDAD III CINEMTICA DEL ROBOT La cinemtica del robot estudia el movimiento del mismo con respecto a un sistema de referencias. As, la cinemtica se interesa por la descripcin analticamente del movimiento especial del robot como una funcin de tiempo y en particular por las relaciones que existen entre la posicin y la orientacin del extremo final del robot con los valores que toman sus coordenadas articulares. 3.1 Articulaciones El robot el cual tomaremos para es el robot tipo SCARA (Selective Compliance Assembly Robot Arm). El cual constara con 3 grados de libertad, ya que tiene 3 grados de libertad seria que tiene cadera, hombro y codo los nombres se le otorgan estos nombres de acuerdo al funcionamiento de cada articulacin. Por el movimiento que realizar tendr un campo de trabajo cilndrico ya que por medio de la cadera es de girar e derecha a izquierda no podr una vuelta de 360 grados ya que por cuestiones de su cableado interrumpiera y ya que puede pegar con su propia base si la pinza esta abajo, pero su rea de trabajo tendra un radio de 36cm y con una aproximacin de 250grados Proceso Almacenar energa elctrica y distribuirla
Maquina Batera fabricante VEX Robotics Design Sistem. Que hace Proporciona energa elctrica para que funcionen todos los componentes que tiene el robot. Como lo hace Por medio de conexin almbrica transmite cargas elctricas que permiten el movimiento del robot Quien lo hace La batera proporciona la energa, pero el que da la orden es el micro controlador Porqu lo hace Para un funcionamiento del robot y lograr un objetivo ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 25
3.2 Rotacin
Fig. 7. Diseo del robot con rea de trabajo Juego de engranes En nuestro en encargado de trasmitir el movimiento del robot hacia el robot es el robot son los engranes que es Engranaje es una rueda o cilindro dentado empleado para transmitir un movimiento giratorio o alternativo desde una parte de una mquina a otra para determinar la velocidad la cual se trasmitir se utiliza la formula seria revoluciones por minute sobre la cantad de diente con el engrane trasmisor (ya que en este arreglo de engranes cuenta con un tornillo sin fin ese no altera ya que no ejerce un cambio en la velocidad) seria
Como se obtuvo en la formula la velocidad final se tomara en cuenta para lo que ser la articulacin uno y dos ya que en la tres la correspondiente al movimiento de la pinza no se ara operacin ya que la trasmisin de energa es directa a la cremallera el funcionamiento del engrane aqu es solo para que se pueda trasmitir el movimiento a la pinza y que logre moverse Existen dos tipos de cinemticas del robot Cinemtica directa: es cuando al extremo final del robot (En este caso la pinza del robot) con respeto al sistema de coordenadas que se les dar Cinemtica inversa: consiste en encontrar los valores que debe de obtener las coordenadas de las articulaciones del robot A continuacin de presentar una imagen realizando lo que sera Cinemtica directa y Cinemtica inversa
MODELO DIRECTO En este apartado se pretende resolver el modelo cinemtico directo del manipulador SCARA. ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 26
Los ejes de los distintos sistemas de coordenadas se asignan haciendo coincidir el eje con el eje de la articulacin. El eje se elige en la direccin de la perpendicular comn entre el eje de la articulacin y el eje de la siguiente articulacin. El ltimo eje del sistema de referencia, se asigna siguiendo la regla de la mano derecha. 3.3 Translacin Se muestran los sistemas de referencia asignados en la configuracin SCARA. En el robot SCARA tenemos 3 articulaciones, 2 de las cuales son de rotacin y una prismtica. Para el modelo cinemtico los parmetros de la estructura del robot que se van a usar son L 2 y L 3 , las longitudes de los enlaces 1 y 2 respectivamente y L 1 la altura de los enlaces 1 y 2 con respecto a la base.
Figura 8: Asignacin de cuadros de referencia a la estructura SCARA
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 27
Cinemtica directa
Fig. 9. Cinemtica directa En este tipo de procedimiento lo correspondiente es tomar mediciones al robot articulacin por articulacin ya sea y en cada donde haiga movimiento el resultado que da indica las coordenadas en milmetros que son X= 0 Y=49000 Z=69500
Fig. 10 Ejemplo de representacin MODELO INVERSO Aqu se desarrolla el modelo cinemtico inverso de la configuracin SCARA, resuelto mediante mtodos analticos, adems de ver las implicaciones que pueden tener sobre el modelo las restricciones reales del robot en cuanto a movimiento se refiere. ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 28
Cinemtica inversa
Fig. 11: Cinemtica inversa UNIDAD IV 4,1 MODELADO DINMICO Para poder simular un robot necesitamos un modelo acerca de cmo se mueve cuando se aplica un conjunto de pares de fuerza
Fig.12 : Sistemas de referencia para la resolucin del modelo dinmico ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 29
Figuras 13,14 modelo dinmico ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 30
Figuras 15,16 modelo dinmico
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 31
Figuras 17,18 modelo dinmico Por ltimo cabe destacar que el modelo dinmico del manipulador se puede usar para la simulacin de algoritmos de control del robot as como para la implementacin de distintas estrategias de control. Existen tcnicas de control que usan estimaciones del modelo dinmico y que por sucesivas iteraciones son capaces de eliminar los errores existentes debido a la estimacin de dicho modelo. Podemos destacar control adaptativo y control con ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 32
aprendizaje. Otras usan el modelo dinmico del robot para generar los pares que compensen las desviaciones y que las variables articulares sigan la trayectoria deseada (par computado)
UNIDAD V 5.1 Programacin de robots Una de las partes principales de nuestro robot es el programa el cual es el que el que ara capas de que l se pueda mover y haga lo que se requiere para que satisfaga nuestras necesidades par esto el programa utilizado ser uno escrito en C el programa utilizar ser el siguiente : Resumen de descripcin de comandos en programa ROBOTC.
#pragma config(Sensor, dgtl1, SensorJ1, sensorQuadEncoder) #pragma config(Sensor, dgtl3, SensorJ2, sensorQuadEncoder) #pragma config(Sensor, dgtl5, SensorJ3, sensorQuadEncoder) //se configuran los puertos para los motores y sensores de controlador. #pragma config(Sensor, dgtl7, ON, sensorTouch) #pragma config(Motor, port2, MotorJ1, tmotorNormal, openLoop) #pragma config(Motor, port3, MotorJ2, tmotorNormal, openLoop) #pragma config(Motor, port4, MotorJ3, tmotorNormal, openLoop, reversed) #pragma config(Motor, port5, MotorPinza, tmotorServoStandard, openLoop) //Coditos de configuracin del programa //*!!Code automatically generated by 'ROBOTC' configuration wizard !!*//
float J1=0,J2=0,J3=0; //variables de tipo decimal float x0=465,y0=0,z0=200; //variables de tipo decimal float q1,q2,q3; //variables de tipo decimal int L1=165,L2=325 //variables de tipo entero llamadas L1,L2 y se cumplen si toman el valor asignado despus del sigo igual
bool bMotorsDisabled = true; //bool// en el programa permite expresar el resultado de una comparacin. (verdadero falso) bool bClickInProgress = false; //Crea variables tipo boleano llamado bMotorsDisabled y bMotorsDisabled
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 33
float q1grados,q2grados,q3grados; //declaracion de variables decimales y les asigna un valor inicial de q1,q2,q3 expresados en grados bool J1OK=0; //variable de tipo boleano que sera verdadero si j1,j2,j3 es igual a cero. bool J2OK=0; bool J3OK=0;
float eTJ1=0,eT0J1=0,IJ1=0,iT0J1=0,DJ1=0,SPJ1=0,CVJ1,J1FF=127,J1RE=-127; //se crean variables con coma flotante asignndoles un valor inicial. float P_J1=0.5,I_J1=0.001,D_J1=0.0; //declaracin de variables con coma decimal asignando un valor inicial.
float eTJ2=0,eT0J2=0,IJ2=0,iT0J2=0,DJ2=0,SPJ2=0,CVJ2,J2FF=127,J2RE=-127; // declaracin de variables con coma decimal asignndole un valor inicial. float P_J2=0.6,I_J2=0.0005,D_J2=0.0;
float eTJ3=0,eT0J3=0,IJ3=0,iT0J3=0,DJ3=0,SPJ3=0,CVJ3,J3FF=60,J3RE=-100; //declaracin de variables con coma decimal asignando un valor inicial. float P_J3=0.5,I_J3=0.0005,D_J3=0.0; //declaracin de variables con coma decimal asignando un valor inicial.
int PulsosJ1(int Grados1); //se creea una variable de tipo entero con nombre(PulsosJ1)- y se le asigna el valor de la variable tipo entero (int Grados1) int PulsosJ2(int Grados2); //se creea una variable de tipo entero con nombre(PulsosJ2)- y se le asigna el valor de la variable tipo entero (int Grados2) int PulsosJ3(int mm);Se //se creea una variable de tipo entero con nombre(PulsosJ3)- y se le asigna el valor de la variable tipo entero (int Grados3) void Pinza(int estado); //Se declara la funcin pinza con argumento (variable de tipo entero de nombre estado) ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 34
void POSJ1(); //declaracin de funciones de nombre posJ1, posJ2 , posJ3 sin argumento void POSJ2(); void POSJ3();
void Inversa(); //declaracin de funcione de nombre inversa void Inicializar(); //declaracin de funcione de nombre inicializar void processButton(); //declaracin de funcione de nombre processButton void Move(int x, int y, int z); //declaracin de funcione de nombre "move" con argumento de variables tipo entero llamadas x, y, z
//**************************INICIA PROGRAMA PRINCIPAL**************************** task main() //tarea de nombre main y que se inicia cada vez que se ejecuta el programa seguido de su tarea escrita en el cuerpo de la funcin mail { //Inicializar(); while (1) //ciclo while que se cumple si la funcin inicializar es igual a uno. y las subrutinas se mandan llamar aqu en el programa principal. { processButton();
if (bMotorsDisabled) { Move(0,0,150); /* Move(430,0,140); //se mueve a la posicin que tiene en su argumento Pinza(1); //abre la pinza Move(430,-105,60); / /se mueve a la posicin que tiene en su argumento ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 35
Pinza(0); Move(430,105,140); Pinza(1); */ bMotorsDisabled=false; //comparacin de variable tipo boleano y se hace falso. } } } //************************************************************* ****************** void processButton() //corre la funcin processButton y el programa hace las comparaciones if o else { if (bClickInProgress) { if (SensorValue[ON]) bClickInProgress = false; //comienza el programa al presionar el botn que tiene el robot } else { if (!SensorValue[ON]) { bMotorsDisabled = !bMotorsDisabled; bClickInProgress = true; } } }
Void Inversa() // se manda llamar a la funcin inversa se hace la comparacin las condiciones if o else { //Cinemtica inversa del robot q2=acos(((x0*x0)+(y0*y0)-132850)/(107250)); q2grados=((q2*180)/PI); q1=atan(y0/x0)-atan((325*sin(q2))/(165+(325*cos(q2)))); if(((y0>=0)&&(x0<0))||((y0<0)&&(x0<0)))q1grados=((q1*180)/PI)+180; ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 36
else q1grados=((q1*180)/PI);
J1=q1grados; q2grados=((q2*180)/PI); //con esta sintaxis se logra la localizacin de las coordenadas del punto deseado. J2=q2grados; q3=140-z0; q3grados=q3; J3=q3grados; }
int PulsosJ1(int Grados1) //Se nombra a la variable de tipo entero pulsos J1 y se le asigna el valor de la variable tipo entero de nombre grados1 { int temp1; temp1=((Grados1+90)/0.00745897563401)-12066; return temp1; } int PulsosJ2(int Grados2) { int temp2; temp2=((Grados2+90)/0.00745897563401)-12066; return temp2; } int PulsosJ3(int mm) { float temp3; temp3=(mm*1275.0)/140.0; return temp3; }
void Inicializar()//..se nombra a la inicializar { SensorValue[SensorJ1] = 0; //se borra el valor guardado de la posicin del robot al reubicar el robot a-su posicin inicial SensorValue[SensorJ2] = 0; SensorValue[SensorJ3] = 0; } ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 37
void POSJ1() //se nombra a la funcin posJ1 y se enlistan las condiciones if y else. { //CONTROL J1 SPJ1=PulsosJ1(J1); eTJ1=SPJ1-SensorValue[SensorJ1]; IJ1=(I_J1*eTJ1)+iT0J1; DJ1=D_J1*(eTJ1-eT0J1); CVJ1=(P_J1*eTJ1)+IJ1+DJ1; if (CVJ1>J1FF){CVJ1=J1FF;} //translacin de la posicin actual a la deseada lo mismo pasa con posj2 y posj3 if (CVJ1<J1RE){CVJ1=J1RE;} if (IJ1>J1FF){IJ1=J1FF;} if (IJ1<J1RE){IJ1=J1RE;} iT0J1=IJ1; eT0J1=eTJ1;
} void POSJ2() //se nombra a la funcin pos J2 y el programa realiza las condiciones de la funcin { //CONTROL J2 SPJ2=PulsosJ2(J2); eTJ2=SPJ2-SensorValue[SensorJ2]; IJ2=(I_J2*eTJ2)+iT0J2; DJ2=D_J2*(eTJ2-eT0J2); CVJ2=(P_J2*eTJ2)+IJ2+DJ2; if (CVJ2>J2FF){CVJ2=J2FF;} if (CVJ2<J2RE){CVJ2=J2RE;} if (IJ2>J2FF){IJ2=J2FF;} if (IJ2<J2RE){IJ2=J2RE;} iT0J2=IJ2; eT0J2=eTJ2;
ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 38
if(abs(eTJ2)>=5){motor[MotorJ2]=CVJ2;J2OK=false;} else {J2OK=true;motor[MotorJ2]=0;} } void POSJ3() //se nombra a la funcin pos posJ3 con sus respectivas condiciones if y else. { //CONTROL J3 SPJ3=PulsosJ3(J3); eTJ3=SPJ3-SensorValue[SensorJ3]; IJ3=(I_J3*eTJ3)+iT0J3; DJ3=D_J3*(eTJ3-eT0J3); CVJ3=((P_J3*eTJ3)+IJ3+DJ3); if (CVJ3>J3FF){CVJ3=J3FF;} if (CVJ3<J3RE){CVJ3=J3RE;} if (IJ3>J3FF){IJ3=J3FF;} if (IJ3<J3RE){IJ3=J3RE;} iT0J3=IJ3; eT0J3=eTJ3;
void Pinza(int estado) //se nombra a la funcion pos pinza con argumento de la variable tipo entero de nombre estado - //y se realiza la comparacin en las condiciones si tiene valor de uno la funcion estado se ejecuta la condicion if y si no se cumple la siguiente instruccin. { if(estado==1) motor[MotorPinza] = 127; //manipula la pinza else motor[MotorPinza] = -127; }
void Move(int x, int y, int z)//se llama a la funcion "move" con argumentos de variables tipo entero llamados X,Y,Z { ANTOLOGIA DE ROBOTICA 2014
Eliseo Guadalupe Crdenas Barajas Pgina 39
x0=x;y0=y;z0=z; while(!((J1OK)&&(J2OK)&&(J3OK))) {Inversa();POSJ1();POSJ2();POSJ3();} //dirige a la posicion por medio de las subrutinas inversa posj1 posj2 posj3 wait1Msec(1000); J1OK=false; J2OK=false; J3OK=false; }
Bibliografa Documento U1-MEC-0704 otorgado por el ingeniero Ing. Ulises Bauelos Amezcua http://www.vexrobotics.com/ http://www.electronicaestudio.com/docs/1550_Tutorial_de_ENGRANES.pdf Libro fundamentos de robtica http://www.enlaces.udec.cl/robotica/index.php?option=com_content&view=article&id=46#r