lenguajes de programación en la robótica

30
UNIVERSIDAD TECNOLÓGICA INDOAMERICA Lenguajes de Programación en la Robótica Ingeniería en Sistemas Noveno Semestre David Freire

Upload: david-freire

Post on 29-Jul-2015

51 views

Category:

Education


3 download

TRANSCRIPT

1. Lenguajes de Programacin en la Robtica Ingeniera en Sistemas Noveno Semestre David Freire 2. Introduccin Trminos y Significados Historia Propiedades y caracteristicas Clasificacin Campos de la robtica Desarrollo Lenguajes de programacin Concluciones 3. INTRODUCCIN A LA ROBTICA Uno de los sueos, que con el tiempo ha ido acompaado al hombre con el paso del tiempo, es llegar a simular acciones y actitudes parecidas, tanto a un animal o al ser humano, y no solo en apariencia. Movimientos, acciones sino tambin con el intelecto del ser humano. Siendo este ltimo el paso menos evolucionado hasta la actualidad ya que hasta hoy solo a sido ficcin nada mas. El principal objetivo de la robtica es poder llegar a todas estas acciones se dan que la humanidad se encuentra con riesgos mucho mas altos y sobre todo peligrosos para el ser humano, entonces la tecnologa en compaa con la robtica lo que busca es disminuir o eliminar todo eso. 4. El termino robot, se dio a conocer a nivel mundial a partir de 1923, mediante el escritor Karel Copek, el cual fue usado en su comedia Rossums Universal Robots Hoy en da este termino ya es mucho mas comn y sobre todo nos es mas claro, pero tenemos el significado dado por las siguientes entidades: Un manipulador multifuncional y reprogramable, el cual esta diseado para mover materiales, piezas, herramientas, o dispositivos especiales, mediante movimientos programados y variables que permiten llevar a cabo diversas tareas (Robot Institute of America) TRMINOS Y SIGNIFICADOS DE LA ROBTICA 5. HISTORIA DEL ROBOT Siglo XVIII.- J. de Vaucansan construyo varias muecas mecnicas tamao humano (ejecutaban piezas de msica). 1805.- H. Maillardet, construyo una maquina capaz de hacer dibujos. 1946.- G.C Devol, desarrollo un dispositivo controlador que poda registrar seales elctricas por medio magntico, las que reproduca y accionaba una maquina mecnica. 1959.- se introdujo el primer robot comercial por Planet Corporation, se lo controlaba por interruptores de fin de carrera. 1960.- Introduccion del promer robot Unimate, se baso en transferencia de articulaciones programada en Devol, usa principio de control numrico y tenia transmisin hidrulica. 1966.- Trallfa (Noruego), construyo e instalo un robot de pintura por pulverizacin. 1968.- Se invento Shakey, desarrollado por SRI, estaba provisto por sensores, cmara y sensores tctiles. 1971.- Standford Arm, brazo robot de accionamiento elctrico. 1973.- SRI, desarrollo el primer lenguaje de programacin de robots del tipo computadora se denomino WAVE. 6. HISTORIA DEL ROBOT 1974.- Asea, introdujo su robot IRB6, de completo accionamiento elctrico y Kawasaki, instalo su robot de soldadura para las estructuras de motocicletas, tambin en este mismo ao, Cincinnati Milacron introdujo el robot T3, con control de computadora. 1981.- en la universidad de Carnegie-Mellon, introdujo un robot de impulsin elctrica. Usaba motores elctricos en las articulaciones. 1984.- Robots 8.- La operacin tpica de estos sistemas permita que se desarrollaran programas de robots utilizando grficos interactivos en una computadora personal y luego se cargaban en el robot. 1989.- Genghis, primer robot andante, desarrollado en Masachusetts Institute of Technology. 1999: Sony Lanza el Perro mascota Robtico AIBO. 2000: Honda presenta a ASIMO el Robot Humanoide. 2001: Cyberknife, un Cirujano robtico, es autorizado para funcionar en los Hospitales Estad oUnidenses. 7. Versatilidad: Potencialidad estructural de ejecutar tareas diversas y/o ejecutar una misma tarea de forma diversa. Esto impone al robot una estructura mecnica de geometra variable. Autoadaptabilidad al entorno: Significa que un robot debe, por s solo, alcanzar su objetivo(ejecutar su tarea) a pesar de las perturbaciones imprevistas del entorno a lo largo de la ejecucin de su tarea. Esto supone que el robot sea consciente de su entorno y que por lo tanto posea sentidos artificiales. PROPIEDADES DE LOS ROBOTS 8. Los robots operacionales pueden estar constituidos por cuatro entidades: Sistema mecnico articulado.- usualmente dotado de motores: elctricos, hidrulicos o mecnicos. Ya que estos son los encargados de generar el movimiento indicado a cada una de sus articulaciones, usando sus respectivas transmisiones que pueden ser: cables, cintas, correas con muecas. El entorno, es cada uno de sus limites a los cuales se encuentra atado, ya que del mismo depende su espacio alcanzable, debido a que si estn en lugar fijo, su alcance es relativamente corto. Dentro de proceso o actividades se encontrara con diferentes obstculos los cuales debe evitar y algunos que sean necesario para realizar su tarea. Debido a esto hay la interaccin entre su parte fsica y su entorno. Usando Cmaras, detectores de fuerzas, de proximidad, captadores tctiles es tomada la informacin del entorno donde desarrolla cada una de sus actividades. CLASIFICACIN DE LOS ROBOTS 9. Tareas a realiza.- es cada uno de los trabajos que deseamos que realice un robot. Cada una de las descripciones para cada tarea se las realiza con la ayuda de los lenguajes que pueden ser a travs de los gestos, donde se lo ensea al robot todo lo que debe hacer; orales, se lo habla; por escrito, en el que se le escriben las instrucciones en un lenguaje compatible con el robot. El cerebro del robot es el rgano de tratamiento de la informacin. El cerebro es aquel que tiene el papel principal y que contiene en sus memorias: Un modelo del robot fsico: seales de excitacin de los accionadores y desplazamientos que son consecuencia de ellas. Un modelo del entorno: descripcin de lo que se encuentra en el espacio que se puede alcanzar. Programas: permiten que las tareas sean comprendidas las tareas a realizar (Algoritmos de control) CLASIFICACIN DE LOS ROBOTS 10. CLASIFICACIN DE LOS ROBOTS Criterio Clasificacin Geometra Esta basada de acuerdo a la forma del rea de trabajo producida por el brazo del robot (rectangular, cilndrica, esfrica) Configuracin Polar.- utiliza coordenadas polares para especificar cualquier posicin, rotacin de una base, un ngulo de elevacin y la extensin lineal del brazo. Cilndrica.- sustituye un movimiento lineal por uno de rotacin sobre una base. Coordenadas cartesianas.- posee tres movimientos lineales y su nombre proviene de las coordenadas cartesianas. Grados de libertad Consiste en controlar el numero de grados de libertad que tengan. Esto se l o considera a cada eje a lo largo del cual se puede mover el brazo de un robot 11. CLASIFICACIN DE LOS ROBOTS Criterio Clasificacin rea de aplicacin Ensamblaje No ensamblaje: suelda, pintura, revestir, manejo de materiales, carga y descarga de maquinaria. Tcnica de control Lazo cerrado: la posicin del brazo del robot es monitoreada continuamente usando un sensor de posicin, modificando la energa que se manda al actuador. Sistema de brazo abierto: el controlador no conoce la posicin de la herramienta mientras el brazo se mueve de un punto a otro. Esta tcnica es muy til cuando todos las piezas a ser tratadas son exactamente iguales. Fuente de energa Energa hidrulica: en los actuadores hidrulicos fluye un liquido que comnmente es aceite. Su ventaja es que son pequeos en comparacin a la energa que proporcionan, pero su desventaja es que son propensos a fugas. 12. CLASIFICACIN DE LOS ROBOTS Criterio Clasificacin Fuente de energa Energa neumtica: se trata de actuadores neumticos en los cuales se trasfiere gas bajo presin. Pero generalmente tienen dos posiciones: retrados y extendidos. Energa elctrica: los actuadores elctricos incluyen una fuente de poder y de un motor elctrico. La mayora de aplicaciones usan servomotores. 13. En la actualidad este campo es muy amplio, por tal motivo la podemos encontrar en la productividad, investigacin, medicina, etc. Dentro de la produccin, estos robots se destacan por tener consigo una disminucin de la mano de obra, pero adems ayuda en el mejoramiento con relacin a la calidad y el acabo del producto con mayor rapidez y eficacia. En el mbito cientfico, la mayora de los robots son usados en: zonas o lugares en los cuales se le hace difcil de acceder al hombre ya sea por ser un medio hostil o demasiado peligroso: submarino, el espacio, irradiacin por centrales nucleares. Debido a estas situaciones se han diseado dos tipos de robots de acuerdo a su misin y su sentido de operacionalidad: Robot autnomo.- son programados para realizar su misin, en la mayora se trata de trabajos sencillos sin necesidad de reflexionar y de comprender su entorno. Teleoperacin o telepresencia.- este tipo de maquinas estn controladas a distancia por un puesto maestro monitoreado por el operador (hombre). CAMPOS DE LA ROBTICA 14. En el campo de la medicina o tambin que se la podra llamar asistencia individual lo mas destacado esta en la asistencia medica de personas paraliticas o partes del cuerpo amputadas. Con estas aplicaciones podramos indicar que cubre campos como: Prtesis: creacin de manos y piernas artificiales. rtesis: se trata de estructuras rgidas motorizadas, las cuales van alrededor del miembro paralizado. Teltesis: se utiliza en pacientes paralticos de los cuatro miembros, los cuales son robots que se los controla a distancia a partir de las zonas de motrocidad que haya podido conservar. CAMPOS DE LA ROBTICA 15. La herramienta mas eficaz para la comunicacin siempre a sido el lenguaje, por tal motivo la relacin que se da de robtica-hombre, tambin usan estos mecanismos, donde encontramos las siguientes forma: Reconocimiento de palabras separadas: es un sistema muy primitivo y limitado. Enseanza y repeticin: es la mas comn sobre todo en los robots industriales, ya que implica ensear a los robots todos y cada uno de sus movimientos que se necesite realizar. Reproduciendo y repitiendo el movimiento enseado: ya una vez que sea correcto en movimiento, entonces al robot se lo hace que funcione a la velocidad que se lo necesita que ejecute sus actividades en el modo repetitivo. Lenguajes de programacin de alto nivel: son los encargados de suministrar una solucin mucho mas general en la comunicacin Hombre-Robots, donde encontramos los lenguajes clsicos como: Fortran, Basic, Pascal los cuales no disponen de los comandos e instrucciones que se necesita para la programacin en la robtica. DESARROLLO 16. En este tipo de programacin se podra indicar que salimos de lo habitual ya que aqu se utiliza caracteres diferentes. Explicito, aqu el responsable en es operados de acciones de control, instrucciones adecuadas, o las cuales estn basadas en la modelacin del mundo exterior. Este tipo de programacin es la mas utilizada en aplicaciones industriales: Programacin gestual: exige el empleo de manipulador en la fas de enseanza, trabaja on-line. Programacin textual: aqu no participa la maquina, ya que las trayectorias son calculadas de forma precisa matemticamente. PROGRAMACIN USADA EN LA ROBTICA 17. Aqu el propio brazo es quien interviene en el trazado de su camino y tambin en las acciones a desarrollar en la tarea de la aplicacin (on-line) y se divide en dos clases: Programacin por aprendizaje directo: se efectan el desplazamiento requerido en su funciones mediante el punto final del brazo trasladndolo con ayuda de un dispositivo especial colocado en su mueca, el cual los va memorizando. Aqu el programador tiene pocas posibilidades de edicin. Programacin mediante dispositivo de enseanza: aqu lo que se trata es de que se determinen cada una de las acciones y movimientos del brazo manipulador, mediante un elemento especial. Cada una de las operaciones son sincronizadas as conformando su programa de trabajo. Los dispositivos modernos permiten generar funciones auxiliares como: o Seleccin de velocidad o Generacin de retratos o Sealizacin del estado de los sensores. o Borrado y modificacin de los puntos de trabajo. o Funciones especiales. PROGRAMACIN GESTUAL O DIRECTA 18. Esta constituido por un texto de instrucciones o sentencias, en la cual no interfiere el robot, ya que el operador no define las acciones del brazo manipulado sino que son calculados por el programa. Se trata de una aplicacin similar a un ensamblaje de piezas que requiere de una gran precisin la cual la programacin gestual no es suficiente. Aqu la posibilidad de edicin es total, y el robot solo interviene en su puesta a punto final. Esta programacin textual est dividida en dos grandes grupos de diferencias marcadas: Programacin textual explcita. Programacin textual especificativa. PROGRAMACIN TEXTUAL 19. Cuando se aplica este tipo de programacin el programa consta de una secuencia de ordenes o instrucciones concretas las cuales definen las operaciones e instrucciones necesarias para que se lleve acabo la aplicacin. Con este tipo de programacin se encuentra englobada con los lenguajes que define cada uno de los movimientos punto por punto. En este tipo de programacin nos encontramos con dos niveles: Movimiento articular: el lenguaje controla el movimiento de las articulaciones del brazo. Movimiento cartesiano: este define los movimientos relacionados con el sistema de manufactura. PROGRAMACIN TEXTUAL EXPLCITA 20. En este tipo de programacin, el usuario describe mediante una modelizacin los objetos y las tareas a realizar sobre estos. Para este tipo de programacin, se necesita un modelo del entorno del robot que, normalmente, ser una base de datos. La programacin consistir en describir las tareas; esto permite realizar trabajos complicados. El modelo de la programacin textual especificativa puede estar referida a objetos o a objetivos: En el primero, el lenguaje trabaja con objetos y establece relaciones entre estos; este tipo de lenguajes son de alto nivel (expresin de sentencias en lenguaje similar al comn) PROGRAMACIN TEXTUAL ESPECIFICATIVA 21. Gestual punto a punto.- se los aplica con el robot in suti, similar a las norma de funcionamiento de magnetofono, con instrucciones como: Reproducir, Grabar, Adelantar, etc. Aun que tambin puede disponer de instrucciones auxiliares como Insert y Delete. Entre los lenguajes mas conocidos que usan este sistema son el Funky, desarrollado por IBM, sus movimientos pueden estar dentro de coordenadas cartesianas, cilndricas o de unin. Este sistema usa mando de tipo joystick, y cada uno de sus movimientos se expresan en forma de lenguaje: ANORAD, EMYLY, RCL, RPL, SIGLA, VAL, MAL. Y cada uno de ellos mantiene el nfasis en los movimientos primitivos, sean coordenadas articulares o cartesiana. Como ventajas de ellos podramos indicar sus saltos condicionales y a subrutina y aumento de las operaciones con sensores. La mayora disponen de comandos de tratamiento a sensores bsicos como: fuerza, tacto, movimiento, proximidad y presencia. El RPL, dispone de un sistema complejo de visin, que es capaz de seleccionar una pintura y reconocimiento de objetos en su base de datos. LENGUAJES DE PROGRAMACIN 22. EMILY y Sigla Estos lenguajes son transportables y pueden admitir proceso en paralelo simple. Anorad Este lenguaje se encuentra basado en una transformacin de un lenguaje de control numrico, de la casa Anorad Corporation, y que usa un procesador, microprocesador 68000 de Motorola 16/32 bits. VAL Lo diseo UNIMATION INC, para robots UNIMATE y PUMA, aplica Cpu, LSI-II, que se encargan de comunicar con cada uno de los procesadores individuales que se permiten regular el servo control de cada una de las articulaciones. Estas instrucciones son relativamente sencilla ya que usan instrucciones en ingles de forma intuitiva. LISPT PROGRAM PICKUP 1. APRO PART, 25.0 2. MOVES PART 3. CLOSE, 0.0.0 4. APRO PART, -50.0 5. APRO DROP, 100.0 6. MOVES DROP 7. OPEN, 0.0.0 8. APRO DROP, -100.0 END LENGUAJES DE PROGRAMACIN 23. RPL Dotado con un LSI-II como procesador central, y aplicado a los robots PUMA, ha sido diseado por SRI INTERNATIONAL. EMILY Es un lenguaje creado por IBM para el control de uno de sus robots. Usa el procesador IBM 370/145 SYSTEM 7 y est escrito en Ensamblador. SIGLA Desarrollado por OLIVETTI para su robot SUPER SIGMA, emplea un mini-ordenador con 8 K de memoria. Escrito en Ensamblador, es del tipo intrprete. MAL Se ha creado en el Politcnico de Miln para el robot SIGMA, con un Mini-multiprocesador. Es un lenguaje del tipo intrprete, escrito en FORTRAN. RCL Aplicado al robot PACS y desarrollado por RPI, emplea, como CPU, un PDP 11/03. Es del tipo intrprete y est escrito en Ensamblador. LENGUAJES DE PROGRAMACIN 24. Estructura de programacin explcita Debido a cada una de sus caractersticas muy relevantes que este tipo de programacin contiene, es muy importante destacar los diferentes lenguajes que usan este tipo de programacin. AL Trata de proporcionar definiciones acerca de los movimientos relacionados con los elementos sobre los que el brazo trabaja. Fue diseado por el laboratorio de Inteligencia Artificial de la Universidad de Stanford, con estructuras de bloques y de control similares al ALGOL, lenguaje en el que se escribi. Est dedicado al manipulador de Stanford, utilizando como procesadores centrales, a un PDP 11/45 y un PDP KL-10. HELP Creado por GENERAL ELECTRIC para su robot ALLEGRO y escrito en PASCAL/FORTRAN, permite el movimiento simultneo de varios brazos. Dispone, asimismo, de un conjunto especial de subrutinas para la ejecucin de cualquier tarea. Utilizando como CPU, a un PDP 11. MAPLE Escrito, como intrprete, en lenguaje PL-1, por IBM para el robot de la misma empresa, tiene capacidad para soportar informaciones de sensores externos. Utiliza, como CPU a un IBM 370/145 SYSTEM 7. PAL Desarrollado por la Universidad de Purdure para el manipulador de Stanford, es un intrprete escrito en FORTRAN y Ensamblador, capaz de aceptar sensores de fuerza y de visin. Cada una de sus instrucciones, para mover el brazo del robot en coordenadas cartesianas, es procesada para que satisfaga la ecuacin del procesamiento. Como CPU, usan un PDP 11/70. LENGUAJES DE PROGRAMACIN 25. Estructura de programacin explcita MCL Lo cre la compaa MC DONALL DOUGLAS, como ampliacin de su lenguaje de control numrico APT. Es un lenguaje compilable que se puede considerar apto para la programacin de robots "off-line". MAL EXTENDIDO Procede del Politcnico de Miln, al igual que el MAL, al que incorpora elementos de programacin estructurada que lo potencian notablemente. Se aplica, tambin, al robot SIGMA. Especificativa a nivel objeto. En este grupo se encuentran tres lenguajes interesantes: RAPT AUTOPASS LAMA LENGUAJES DE PROGRAMACIN 26. RAPT Su filosofa se basa en definir una serie de planos, cilindros y esferas, que dan lugar a otros cuerpos derivados. Para modelar a un cuerpo, se confecciona una biblioteca con sus rasgos ms representativos. Seguidamente, se define los movimientos que ligan a los cuerpos a ensamblar (alinear planos, encajar cilindros, etc.). As, si se desea definir un cuerpo C1, se comienza definiendo sus puntos ms importantes, por ejemplo: P1 = < x, 0, 0 > P2 = < 0, y, 0 > P3 = < x/2, y, 0 > P4 = < 0, 0, z > Si, en el cuerpo, existen crculos de inters, se especifican seguidamente: C1 = CIRCLE/P2, R; C2 = CIRCLE/P4, R; A continuacin, se determinan sus aristas: L1 = L/P1, P2; L2 = L/P3, P4; Si, anlogamente al cuerpo C1, se define otro, como el C2, una accin entre ambos podra consistir en colocar la cara inferior de C1 alineada con la superior de C2. Esto se escribira. AGAINST / BOT / OF C1, TOP / OF C2; El lenguaje RAPT fue creado en la Universidad de Edimburgo, departamento de Inteligencia Artificial; est orientado, en especial, al ensamblaje de piezas. Destinado al robot FREDY, utiliza, como procesador central, a un PDP 10. Es un intrprete y est escrito en lenguaje APT. LENGUAJES DE PROGRAMACIN 27. LAMA Procede del laboratorio de Inteligencia Artificial del MIT, para el robot SILVER, orientndose hacia el ajuste de conjuntos mecnicos. Aporta ms inteligencia que el AUTOPASS y permite una buena adaptacin al entorno. La operatividad del LAMA se basa en tres funciones principales: Creacin de la funcin de trabajo. Operacin inteligente. Generacin de la funcin de manipulacin. Interpretacin y desarrollo, de una forma interactiva, de una estrategia de realimentacin para la adaptacin al entorno de trabajo. En funcin de los objetivos. La filosofa de estos lenguajes consiste en definir la situacin final del producto a fabricar, a partir de la cual se generan los planes de accin tendentes a conseguirla, obtenindose, finalmente, el programa de trabajo. Estos lenguajes, de tipo natural, suponiendo una potenciacin extraordinaria de la Inteligencia Artificial, para descargar al usuario de las labores de programacin. Prevn, incluso, la comunicacin hombre-mquina a travs de la voz. Los lenguajes ms conocidos de este grupo son: STRIPS HILAIRE LENGUAJES DE PROGRAMACIN 28. STRIPS Fue diseado, en la Universidad de Stanford, para el robot mvil SHAKEY. Se basa en un modelo del universo ligado a un conjunto de planteamientos aritmtico-lgicos que se encargan de obtener las subrutinas que conforman el programa final. Es intrprete y compilable, utilizando, como procesadores, a un PDP-10 y un PDP-15. HILAIRE Procedente del laboratorio de Automtica Y Anlisis de Sistemas (LAAS) de Toulouse, est escrito en lenguaje LISP. Es uno de los lenguajes naturales ms interesantes, por sus posibilidades de ampliacin e investigacin. LENGUAJES DE PROGRAMACIN 29. APLICACIN DE LA ROBTICA