martes, 10 de agosto de 2010

UNIVERSIDAD DE LAMBAYEQUE (UDL).  ESCUELA PROFESIONAL DE  INGENIERIA DE SISTEMAS



LENGUAJE Y PROGRAMACIÓN DE ROBOTS MONOGRAFÍA PRESENTADA AL CURSO DE METODOLOGIA DEL TRABAJO UNIVERSITARIO



AUTOR: VICTOR JHONATHAN VERA ZURITA


Chiclayo, Agosto de 2010
Lenguaje y Programación de Robots


INTRODUCCION

I. ROBOTICA

1 INTRODUCCION

2 BREVE HISTORIA DE LA ROBOTICA
2.1 GENERACION DE LA ROBOTICA
2.2 ROBOTS
2.2.1 ANNTECEDENTES HISTORICOS: ETAPA LITERARIA
2.2.2 DEFINICION DE ROBOT
2.2.3 CONSTITUCION DE ROBOTS
2.2.3.1 SISTEMA MECANICO
2.2.3.2 SISTEMA DE CONTROL
2.2.3.3 SISTEMA DE PROGRAMACION
2.2.3.4 PARQUES DE ROBOTS


II. LENGUAJE Y PROGRAMACION DE ROBOTS

2.1 CLASIFICACION DE LA PROGRAMACION USADA EN ROBOTICA
2.2 PROGRAMACION GESTUALO DIRECTA
2.3 PROGRACION TEXTUAL
2.3.1 PROGRAMACIÓN TEXTUAL EXPLÍCITA.
2.3.1.1 NIVEL DE MOVIMIENTO ELEMENTAL
2.3.1.2 NIVEL ESTRUCTURADO
2.3.2. PROGRAMACIÓN TEXTUAL ESPECIFICATIVA.
2.4. LENGUAJES DE PROGRAMACIÓN EN FUNCIÓN DE LOS OBJETIVOS

CONCLUSIONES

REFERENCIAS BIBLIOGRAFICAS.



INTRODUCCIÓN

La robótica como hoy en día la conocemos, tiene sus orígenes hace miles de años, además estas máquinas se encuentran mayormente en países desarrollados como Estados Unidos y Alemania, los cuales permiten el acceso a estas máquinas por sus avances tecnológicos.

El término robot se introdujo a este mundo por Karel Kapek a inicios del siglo XX, con su obra ¨Rossum Universal Robots¨

El objetivo de este trabajo de investigación monográfico es describir e informar detalladamente sobre los robots y los lenguajes que se utilizan para su programación.

En el primer apartado se describe lo básico de lo referido a la robótica: sus orígenes, constitución y su distribución en el mundo. Además en el segundo apartado se trata de describir e informar sobre los lenguajes y programación básicos empleados en el mundo de los robots.



I. ROBOTICA



1.1 INTRODUCCIÓN

A continuación se analizan algunas de las definiciones más aceptables de robótica.
Según Crovetto. (2005): La robótica es en la actualidad, un concepto de dominio público. La mayor parte de las personas tiene una idea de lo que significa robótica, conoce sus aplicaciones y el potencial que esta tiene; aunque, no conocen el origen de la palabra robot, y no tiene idea del origen de las útiles aplicaciones de la robótica como ciencia.

Por su parte Baturone. (2001): Sostiene que el término robot se confluyen las imágenes de máquinas para la realización de trabajos productivos y de imitación de movimientos y comportamientos de seres vivos. Los robots actuales son obras de ingeniería y como tales concebidas para producir bienes y servicios o explotar recursos naturales. Desde esta perspectiva son máquinas con las que se continúa una actividad que parte de los propios orígenes de la humanidad, y que desde el comienzo de la edad moderna se fundamenta esencialmente en conocimientos científicos.

Asimismo Torres, Pomares y Otros. (2002): consideraran a la robótica, como ciencia que estudia los robots. Es multidisciplinaria.
La cooperación entre estas tres ciencias contribuye a la automatización de procesos importantes en la industria: la informática, encargada de lo concerniente al tratamiento de la informática; la automática tiene como objetivo asegurar el funcionamiento automático del sistema; la robótica es originariamente un mecanismo, incluye un automatismo y un equipo informático.
El robot es capaz de realizar de modo automático gran cantidad de actividades dentro de la industria.
Su flexibilidad es mucho mayor que la de cualquier máquina y su productividad superior a la de cualquier ser humano en gran cantidad de trabajos y aunque un robot no puede sustituir a un ser humano en cualquier ámbito, puesto que la conducta humana tiene un nivel de complejidad muy superior al sistema informático de cualquier robot, es capaz de realizar operaciones que un ser humano no puede llevar a cabo.

En la actualidad la humanidad no tiene idea de los orígenes y las aplicaciones de la robótica como ciencia. Estas ciencias (la informática, la automática y la robótica) contribuyen a la automatización.
Un robot ha sido creado para ayudar al hombre en las actividades pesadas, pero no lo puede sustituir por un nivel de inteligencia superior a la de cualquier máquina.


1.2 BREVE HISTORIA DE LA ROBÓTICA

Según Crovetto. (2005): Por siglos el ser humano ha hecho máquinas que imiten las partes del cuerpo humano. Los antiguos egipcios llegaron a unir brazos mecánicos a las estatuas de sus dioses. Estos brazos fueron operadores por sacerdotes, que clamaban que el movimiento de esta seria inspiración de sus dioses. Los griegos hicieron estatuas que operaban con sistemas hidráulicas y que fueron utilizados para fascinar a los adoradores de los templos.
Jacques de Vauncansos llego a construir varios músicos de tamaño humano a mediados del siglo XVIII. Además en 1805, Henri Maillardert llegó a construir una muñeca mecánica que era capaz de hacer dibujos.
Asimov denomino tres leyes a la robótica: un robot no puede trabajar o actuar contra un ser humano; un robot debe obedecer todas las órdenes dadas por los seres humanos; un robot debe proteger su propia existencia.
Mitológicamente se puede mencionar los siguientes sucesos en la historia de la robótica : Jasia Reichardt, cree que el comienzo de la historia de los autómatas esta en la creación de Adán por Dios; Prometeo, cree que el comienzo de la historia de los autómatas comienza cuando Dios crea al primer hombre y la primera mujer con barro; Vulcano, dios de las artes mecánicas y del fuego, hizo dos estatus femeninas de oro que le brindaban ayuda y protección; Hefaistos crea al gigante talus (de metal) para que guardara a Creta de los Intrusos; Rey de Chipre crea la estatua de Galatea y al enamorarse de ella hace que Afrodita le de vida.

Para Torres, Pomares y Otros (2002): No sólo los robots han tenido su hueco en el cine, también han sido tematica en gran parte de la literatura del siglo XX, un claro ejemplo de ello es la obra del escritor y científico ruso Isaac Asimov. En 1950 publica su obra ¨yo robot¨ en la que introduce, según él las tres leyes que deben regir la inteligencia de los robots, y más en concreto de los humanoides: Un robot no debe dañar a un ser humano o, dejar que un ser humano sufra daño; un robot debe obedecer las ordenes que le son dadas por un ser humano; un robot debe proteger su propia existencia.

El término robótica ha venido evolucionando debido a las creencias de cada uno, como es el caso de Jasia Reichardt, que cree que el comienzo de la historia de la robótica empieza cuando Dios crea a Adán y Prometeo cree que comienza cuando Dios crea al primer hombre y la primera mujer con barro.
Un científico ruso llamado Asimov dio origen a las tres leyes de la robótica en donde un robot no debe dañar a un ser humano, debe obedecerle las órdenes que se les son dadas y por último debe proteger su propia existencia.


1.3 GENERACIONES DE LA ROBÓTICA

Para Batlle (2002): el desarrollo de la robótica, al igual que ocurre con los computadores, esta dividido en generaciones: Primera generación (1960-1980) se construyen robots industriales que realizan tareas repetitivas. Se desarrollan las funciones de manipulación fundamentalmente; segunda generación (1980-1985) se construye robots dotados de sensores capaces de interaccionar con el entorno. En este caso el robot es capaz de modificar su actuación en tiempo real en función de lo que ocurra en su entorno. Se desarrollan considerablemente las funciones de percepción y algo de la planificación; tercera generación (1985-2002) reconstruyen robots móviles. Esto implica un gran desarrollo de la inteligencia artificial aplicada a la robótica, así como la tarea de planificación. Además se mejoran significativamente las funciones de percepción.

Según Bernejo (2003): la primera generación: robots manipuladores son sistemas mecánicos multifuncionales con un sencillo sistema de control; segunda generación: Robots de aprendizaje. Repiten una secuencia de movimientos que ha sido ejecutada previamente por un operador humano. El método de hacerlo es a través de un dispositivo mecánico, el operador realiza los movimientos requeridos mientras el robot le sigue, la memoriza; tercera generación. Robots con control sensoriado. El controlador es una computadora que ejecuta las ordenes de un programa y las envía al manipulador para que realice los movimientos necesarios; cuarta generación. Robots inteligentes. Son similares a los anteriores, pero además poseen sensores que envían información a la computadora de control sobre el estado del proceso. Esto permite una toma de inteligencia de decisiones y el control del proceso en tiempo real.

Las generaciones de la robótica se desarrollan a mediados del siglo XX, en donde explican como se ha ido evolucionando los robots manipuladores a robots inteligentes.


1.4 ROBOTS

1.4.1 ANTECEDENTES HISTORICOS: ETAPA LITERARIA

Según Crovetto (2005): una obra checoslovaca que fue publicada en 1917 por Karel Kapek, conocida como ¨Rossums Universal Robots¨, dando lugar a la palabra checa ¨robota¨ que quiere decir servidumbre o trabajador forzado, y al traducirla al ingles se convirtió en el termino robot. Esta narración se refiere a un brillante científico llamado Rossum y su hijo, que desarrollan una sustancia química similar al protoplasma. Usan esta sustancia para fabricar robots, y sus planes serian que los robots sirvan a la clase humana de modo obediente para ejecutar todos los trabajos físicos.

Según Feliu (1997): el término robot proviene de la palabra checa ¨robota¨, que quiere decir trabajo. El dramaturgo checo Karel Kapek fue el primero en utilizar en su actual aceptación, cuando escribió en 1923 una obra satírica titulada R. U. R. (Robots Universales de Rossum). En esta obra, Rossum era un relojero que construyó unas máquinas parecidas a los seres humanos y que denomino robots. Al principio estas máquinas trabajan sin parar y sustituían a los obreros humanos, pero al final se rebelaron contra sus creadores aniquilando a la raza humana, esta obra de teatro es la responsable de la forma en que la mayor parte de las personas se imaginan a los robots: como máquinas parecidas a los seres humanos dotadas de inteligencia y personalidad propia.

Según Ollero (2001): el término robot aparece por primera vez en 1921, en la obra teatral R. U. R (Rossum Universal Robots) del novelista y autor dramático checo Karel Kapek en cuyo idioma la palabra ¨robota¨ significa fuerza del trabajo o servidumbre. Por aquellos años la producción en grandes series se había introducido en numerosa fábrica. Se discute ya del poder de las máquinas y la dominación de los hombres por las máquinas; argumento de esta y otras obras teatrales y películas de los años veinte en los que aparecen trabajadores robóticos.

El término robot aparece a inicios del siglo XX, en la obra de Karel Kapek titulada ¨Rossum Universal Robots.¨ En dicha obra los robots se desempeñaban en un trabajo forzoso como obreros. Los robots trabajaban sin parar pero un día se rebelaron contra los seres humanos aniquilándolos.


1.4.2 DEFINICION DE ROBOT

Para García (2002): es un manipulador multifuncional reprogramable con varios grados de libertad, capaz de manipular materias, piezas, herramientas dispositivos especiales según trayectorias variables programadas para realizar tareas diversas.

Según Velasco (2007): de acuerdo con el diccionario de la universidad de Oxford, un robot es un aparato mecánico que se parece y hace el trabajo de un ser humano.

Según El Instituto de Robots de América: es un manipulador reprogramable y multifuncional concebido para transportar materiales, piezas, herramientas o sistemas especializados con movimientos variados y programados, con la finalidad de ejecutar tareas diversas.
Un robot es un manipulador multifuncional reprogramable, creado para realizar tareas diversas y además tiene un parecido a los seres humanos.

1.4.3 CONSTITUCION DE LOS ROBOTS



1.4.3.1 SISTEMA MECANICO

Según Ollero (2001): en el sistema mecánico puede distinguirse entre el órgano terminal, el brazo articulado, y un vehículo. En la mayor parte de los robots industriales no existe tal vehículo, estando fija la base del brazo.

Según Feliu (2002): comprende una serie de elementos mecánicos unidos entre si por articulaciones. Entre estos elementos se conforman tres dispositivos denominados brazo, muñeca y elemento final, normalmente una pinza para fijación de objetos.

Brazo esta constituido por la concatenación de miembros y articulaciones; muñeca esta colocada al extremo del brazo y dota al robot de grados de libertad adicionales que le permiten orientarse en el espacio; elemento final es una herramienta especificada que depende de la aplicación que se desee dar al robot.

1.4.3.2 SISTEMA DE CONTROL

Según Groover (1997): el controlador de un robot está formado por el hardware y el software electrónicos. La mayoría de las unidades de control de robots actuales se basan en un sistema de microcomputadora. Los sistemas de control en la robótica se clasificaban según el control limitado de secuencia, reproducción con control puto a punto, la producción con control de trayectoria continua y control de inteligencia.

Según Ollero (2001): en un sentido amplio, el sistema de control involucra tanto bucles de retroalimentación de la información suministrada por los sensores internos, como del entorno. Los sensores internos miden el estado de la estructura mecánica y en particular, giros o desplazamientos relativos entre articulaciones, velocidades, fuerzas y pares. Estos sensores permiten cerrar bucles de control de las articulaciones de la estructura mecánica.


1.4.3.3 SISTEMAS DE PROGRAMACION

Según García (2002): además los robots cuentan con unas unidades de programación muy versátiles a las que se les puede añadir módulos adicionales que les permiten controlar dispositivos auxiliares ajenos al propio robot. Esto se ha ido muy favorecido por la creciente facilidad con la que se opere sobre estas unidades de control.

Sistema mecánico, comprende una serie de elementos articulados entre si; el sistema de control, conformado por el hardware y el software electrónicos; sistema de programación es muy versátil.


1.5 PARQUE DE ROBOTS

Para Feliu (2002): propone la siguiente distribución de los robots : Por Países se da de la siguiente manera Japón con un 57%, Europa con el 23%, Estados Unidos con el 11%, Alemania con el 45%, Italia con el 19%, Francia con el 10%, Inglaterra con el 7%, España con el 5%y Suecia con el 3%; Por Aplicaciones: soldadura punto 35%, soldadura de arco 17%, manipulación de función 16%, manipulación para paletizado/empaquetado/manipulación de materiales 11%, aplicaciones en materiales de pintura/sellado/ adhesivos 4%; Por Sectores: industria de la automoción 65%, transformados metálicos y minerales 11%, industria química, del caucho y productos plásticos 10%.

Según Torres, Pomares y Otros (2002): por cada 10 000 empleados en la industria manufacturera, hay 293 robots en Japón, 120 en Alemania, 95 en Italia, 80 en Suecia, 59 en Francia, y cerca de 50 en España, Norte America, Suiza y el Benelux. En la industria de automóvil, destacando en Europa, Alemania e Italia con el robot por cada 10 trabajadores de producción.

Los robots se distribuyeron en los países desarrollados de todo el mundo, siendo Japón el que tiene mayor cantidad de robots y Suecia el que tiene menor cantidad de robot. Pero también se distribuyen según el trabajo, el área que son mas colocados los robots son en soldadura y en las que son menos colocadas en la pintura.



II. PROGRAMACIÓN Y LENGUAJE DE ROBOTS



2.1 CLASIFICACION DE LA PROGRAMACION USADA EN ROBOTICA

Según Candelas (2005): la programación empleada en robótica puede tener un carácter explicito, en el que el operador es el responsable de las acciones de control y de las instrucciones adecuadas que las implementan, o estar basada en la modelación del mundo exterior, cuando se describe la tarea y el entorno y el propio sistema las decisiones.

La programación explicita es la utilizada en las aplicaciones industriales y consta de dos técnicas fundamentales: a) programación gestual, guía el brazo del robot directamente a lo largo de la trayectoria que debe seguir. Los puntos del camino se graban en memoria y luego se repiten. Este tipo de programación, exige el empleo del manipulador en la fase de enseñanza; b) programación textual, las acciones que ha de realizar el brazo se especifican mediante las instrucciones de un lenguaje. En esta labor no participa la maquina (off-line). Las trayectorias del manipulado r se calculan matemáticamente con gran precisión. Los niveles según el trabajo del robot: lenguajes elementales, que controlan directamente el movimiento de las articulaciones del manipulador; lenguajes dirigidos a posicionar el elemento terminal del manipulador; lenguajes orientados hacia el objeto sobre el que opera el sistema; lenguajes enfocados a la tarea que realiza el robot.


2.2 PROGRAMACION GESTUALO DIRECTA

Según Candelas (2005): el brazo interviene en el trazado del camino y en las acciones a desarrollar en la tarea de la aplicación. Esta característica determina, inexcusablemente, la programación ¨on-line¨.

A) La programación gestual se subdivide en dos clases:

a) Programación por aprendizaje directo

El punto final del brazo es trasladado con ayuda de un dispositivo especial puesto en su muñeca, o usando un brazo maestro o maniquí, en el cual se efectúan los desplazamientos que, luego ser memorizados, serán repetidos por el manipulador. Esta programación Posee pocas posibilidades de edición. El software se organiza de forma de intérprete.

b) Programación mediante un dispositivo de enseñanza.

Consisten especificar las acciones y movimientos del brazo manipulador, mediante un elemento especial para este cometido. La estructura del ¨software¨ es de tipo intérprete. Las operaciones sincronizadas para conformar el programa de trabajo. Los dispositivos de enseñanza modernos permiten que se pueda generar funciones auxiliares, además del control de los movimientos: Selección de velocidades; Generación de retardos; Señalización del estado de los sensores; Borrado y modificación de los puntos de trabajo y Funciones especiales.

B) Los lenguajes usados en este grupo son:


  • T3: original de CINCINNATI MILACROM para su robot T3. Dispone de un dispositivo de enseñanza ("teach pendant"). El procesador usado en T3 es el AMD 2900 ("bit slice"), mientras que en el FUNKY está constituido por el IBM SYSTEM-7.


  • FUNKY: creado por IBM para uno de sus robots. Usa un mando del tipo "joystick" para el control de los movimientos. Dispone de un comando especial para centrar a la pinza sobre el objeto.

Según López y Gonzáles (2000): en un primer nivel se tendrán aquellos lenguajes de programación que únicamente permitan a introducción de una secuencia fija de movimientos, de forma no textual y con el robot ON-LINE.

No se dispone, en este caso, de sentencias de control del programa y existen pocas posibilidades de edición. La programación se efectúa de forma muy simple, no necesitándose conocimientos previos de computadores para llevarla a cabo.

Lenguajes de programación incluidos en este grupo son:


  • FUNKY: Creado por IBM para uno de sus robots (procesador IBM SYSTEM-7). Lenguaje interpretado, escrito punto por punto, que permite el movimiento de un único brazo. Transportable.


  • T3: Original de CINCINNATI MILACROM para su robot T3, con procesador AMD 2900 bit slice. Lenguaje escrito punto por punto, que permite el movimiento de un solo brazo. Transportable. Puede ser interpretado, compilado y ensamblado.


  • GRASP: (Graphical Robot Applications Simulations Package) fue desarrollado por BYG Systems.

En el lenguaje FUNKY se usa un mando del tipo joystick para el controla de los movimientos y dispone de un comando especial para centrar a la pinza sobre el objeto, mientras que el T3 dispone de un dispositivo de enseñanza. Ambos permiten efectuar revisiones, paso a paso, del programa, insertar o borrar determinadas instrucciones, etc.



2.3 PROGRACION TEXTUAL

Según López y Gonzáles (2000): la programación textual se realiza OFF-LINE, configurando el programa a base de un conjunto de órdenes o sentencias en modo de textos. En este caso, la programación se realiza sin la intervención directa del robot, salvo en su puesta a punto para concluir dicha fase.

La programación textual podrá ser explicita o implícita. En el primer caso, los programas se componen de secuencias con instrucciones detalladas para su ejecución, mientras que, en el segundo, a partir de la especificación de las tareas que se vallan a efectuar o de los objetivos que se pretendan obtener, será el propio sistema de control el encargado de generar las órdenes concretas para su ejecución. Será necesario, en este caso, dotar al sistema de un modelo del entorno que le permite tomar las decisiones oportunas, así como de un conjunto de sensores adecuado para recibir información de dicho entorno.

La evolución de los nuevos lenguajes empleados en robótica industrial conduce cada vez más hacia la programación textual, que permite la creación y depuración de programas sin necesidad de emplear el robot durante la fase de programación. Con ello e tendrán ventajas relativas al coste de las maquinas, al tiempo empleado en la creación de programas y ala posibilidad de que el dispositivo que se programa este operando, conjuntamente, con otra serie de maquinas y robots.


Según Candelas (2005): el programa queda constituido por un texto de instrucciones o sentencias, cuya confección no requiere de la intervención del robot; es decir, se efectúan "off-line". Con este tipo de programación, el operador no define, prácticamente, las acciones del brazo manipulado, sino que se calculan, en el programa, mediante el empleo de las instrucciones textuales adecuadas.

Dentro de la programación textual, existen dos grandes grupos, de características netamente diferentes:


2.3.1 Programación textual explícita.

Según Candelas (ibídem): en la programación textual explícita, el programa consta de una secuencia de órdenes o instrucciones concretas, que van definiendo con rigor las operaciones necesarias para llevar a cabo la aplicación.

Dentro de la programación explícita, hay dos niveles:


2.3.1.1 Nivel de movimiento elemental

Según Candelas (ibídem): comprende los lenguajes dirigidos a controlar los movimientos del brazo manipulador. Existen dos tipos:


  • Articular, cuando el lenguaje se dirige al control de los movimientos de las diversas articulaciones del brazo.


  • Cartesiano, cuando el lenguaje define los movimientos relacionados con el sistema de manufactura, es decir, los del punto final del trabajo (TCP). utilizan transformaciones homogéneas. indican los incrementos angulares de las articulaciones.



Lenguajes de programación incluidos en este grupo son:


  • ANORAD.- Se trata de una transformación de un lenguaje de control numérico de la casa ANORAD CORPORATION, utilizado para robot ANOMATIC. Utiliza, como procesador, al microprocesador 68000 de Motorola de 16/32 bits.


  • VAL.- Fue diseñado por UNIMATION INC para sus robots UNIMATE y PUMA. (FIG. 1) Emplea, como CPU, un LSI-II, que se comunica con procesadores individuales que regulan el servocontrol de cada articulación.


  • RPL.- Dotado con un LSI-II como procesador central, y aplicado a los robots PUMA, ha sido diseñado 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 intérprete.


  • MAL.- Se ha creado en el Politécnico de Milán para el robot SIGMA, con un Mini-multiprocesador. Es un lenguaje del tipo intérprete, escrito en FORTRAN.


  • RCL.- Aplicado al robot PACS y desarrollado por RPI, emplea, como CPU, un PDP 11/03. Es del tipo intérprete y está escrito en Ensamblador.




Según López y Gonzáles (ibídem): en este caso, el objetivo del programa son los movimientos primitivos que se efectuaran por parte del manipulador. Estos movimientos se definirán por guiado, aunque la secuencia se puede definir o modificar por programa.

Los lenguajes de programación incluidos en este grupo permiten la utilización de estructuras de control, saltos condicionales, subrutinas con transferencia de parámetros… así como de la información procedente de sensores para interactuar con el entorno. En este grupo los lenguajes que se encuentran:


  • ANORAD: se trata de una transformación de un lenguaje de control numérico de la casa ANORAD CORPORATION, utilizado para el robot ANOMATIC, con un procesador Motorola 68000. Es un lenguaje no transportable e interpretado, escrito en ensamblador, que permite el movimiento de un solo brazo.


  • VAL: fue diseñado por UNIMATION INC para sus robots UNIMATE Y PUMA con procesador I. SI 11/02. Lenguaje no transportable e interpretado, escrito en ensamblador, que permite el movimiento de un solo brazo.


  • RPL: Aplicado a los robots PUMA, ha sido diseñado por SRI INTERNACIONAL. Lenguaje no transportable y compilado e interpretado, escrito en FORTAN, permite el movimiento de un solo brazo.


  • EMILY: Es un lenguaje creado por IBM para el control de uno de sus robots, con procesador IBM 370/145 SYSTEM 7. Escrito en Ensamblador, permite el movimiento simultáneo de dos brazos. Puede ser interpretado y ensamblado. Es transportable.


  • SIGLA: desarrollado por OLIVETTI para su robot SUPER SIGMA, con un procesador mini Computador. Escrito en emblador, permite el movimiento simultaneo de varios brazos (uno a cuatro), es del tipo interpretado y transportable.


  • MAL: se ha creado en el politécnico de Milán para el robot SIGMA (procesador multimicro minicomputador). Escrito en FORTRAN, es un lenguaje interpretado y transportable. Permite el Movimiento simultáneo de dos brazos.


  • WAVE: Ha sido desarrollado en la Universidad de Stanford. Es explicito, pero incluye un modelo del entorno del brazo para fines de planificación. Es compatible e independiente del robot utilizado.


  • PLAW: desarrollado en el Electrotechnical Research Center, Komatsu, LTD. Lenguaje tipo BASIC especifico para soldaduras al arco de CO2, definición de tres tipos de coordenadas y control adaptativo.


  • RCL: Aplicado al robot PACS (procesador PDP 11/03) y desarrollado por RPL. Es del tipo interpretado, escrito en ensamblador. Permite el movimiento de un solo brazo y no es transportable.

2.3.1.2 Nivel estructurado

Candelas (ibídem): determina relaciones entre el objeto y el sistema del robot, para que los lenguajes se desarrollen sobre una estructura formal. El uso de lenguajes con programación explícita estructurada aumenta la comprensión del programa, reduce el tiempo de edición y simplifica las acciones encaminadas a la consecución de tareas determinadas.

A continuación, se exponen las características más representativas de los lenguajes dedicados a la programación estructurada.


  • AL: Trata de proporcionar definiciones acerca de los movimientos relacionados con los elementos sobre los que el brazo trabaja. Fue diseñado 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. utiliza vectores, posiciones y transformaciones. tiene comandos para el control de la sensibilidad del tacto de los dedos (fuerza, movimiento, proximidad, etc.).


  • HELP: Creado por GENERAL ELECTRIC para su robot ALLEGRO y escrito en PASCAL/FORTRAN, permite el movimiento simultáneo de varios brazos. Dispone, asimismo, de un conjunto especial de subrutinas para la ejecución de cualquier tarea. Utilizando como CPU, a un PDP 11. carece de capacidad de adaptación sensorial.


  • MAPLE: Escrito, como intérprete, 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. permite la definición de puntos, líneas, planos y posiciones. tiene comandos para el control de la sensibilidad del tacto de los dedos (fuerza, movimiento, proximidad, etc.).


  • PAL: Desarrollado por la Universidad de Purdure para el manipulador de Stanford, es un intérprete escrito en FORTRAN y Ensamblador, capaz de aceptar sensores de fuerza y de visión. Cada una de sus instrucciones, para mover el brazo del robot en coordenadas cartesianas, es procesada para que satisfaga la ecuación del procesamiento. Como CPU, usan un PDP 11/70. carece de capacidad de adaptación sensorial.


  • MCL: Lo creó la compañía MC DONALL DOUGLAS, como ampliación de su lenguaje de control numérico APT. Es un lenguaje compilable que se puede considerar apto para la programación de robots "off-line". tiene comandos para el control de la sensibilidad del tacto de los dedos (fuerza, movimiento, proximidad, etc.). Posee comandos de visión para identificar e inspeccionar objetos.


  • MAL EXTENDIDO: Procede del Politécnico de Milán, al igual que el MAL, al que incorpora elementos de programación estructurada que lo potencian notablemente. Se aplica, también, al robot SIGMA.


Según López y Gonzáles (ibídem): los lenguajes de este grupo permiten la definición de estructuras de datos y de control complejas, incorporando elementos de programación estructurada. Se dispone de la posibilidad de definición de puntos, líneas, planos… así como de transformaciones de coordenadas y de capacidad sensorial para interaccionar con el entorno.



En este caso, se consigue una mayor facilidad para la comprensión del programa, existiendo asimismo disponibilidad total para su edición, ya que las acciones del manipulador quedan definidas como instrucciones textuales. En este grupo se encuentran los lenguajes:


  • AL: Fue diseñado por el laboratorio de inteligencia Artificial de la Universidad de Stanford para su manipulador con dos brazos y con procesadores PDP 11/45 y PDP KL-10, indistintamente. Escrito en ALGOL, permite el movimiento simultáneo de dos brazos y es transportable. Trata de proporcionar definiciones acerca de los movimientos relacionados con los elementos sobre los que el brazo trabaja. Puede ser compilado e interpretado, así como ejecutado en un VAX.


  •  HELP: Creado por GENERAL ELECTRIC para su robot ALLEGRO con procesador PDP/11. Escrito en PASCAL/FORTRAN, permite el movimiento simultaneo de varios brazos (uno a cuatro) y es transportable. Puede ser compilado e interpretado. Dispone, asimismo, de un conjunto especial de subrutinas para la ejecución de cualquier tarea.


  • MAPLE: Escrito, como intérprete, en lenguaje PL-1 por IBM para el robot de la misma empresa (procesador IBM 370/145 SYSTEM 7), tiene capacidad para soportar informaciones de sensores externos. Es transportable y permite manipulador un solo brazo.


  • PAL: Desarrollado por la Universidad de Purdue para el manipulador de Stanford con procesador PDP 11/70, es un intérprete escrito en FORTRAN y Ensamblador que permite manipulador un solo brazo y aceptar sensores de fuerza y visión. Es transportable.


  • MCL: Lo creó la compañía McDONALL DOUGLAS, como ampliación de su lenguaje de control numérico APT. Es un lenguaje compilable que se puede considerar apto para la programación de robots ¨OFF-LINE¨. Permite la manipulación de varios brazos.


  • MAL EXTENDIDO: Procede del Politécnico de Milán, al igual que el MAL, al que incorpora elementos de programación estructurada que lo potencian notablemente. Es compilable.

2.3.2. Programación textual especificativa.

Según Candelas (ibídem): el sistema informático para la programación textual especificativa ha de disponer del modelo del universo, o mundo donde se encuentra el robot. Este modelo será, normalmente, una base de datos más o menos compleja,

El trabajo de la programación consistirá, simplemente, en la descripción de las tareas a realizar, lo que supone poder llevar a cabo trabajos complicados.
RAPT.- Su filosofía 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 más representativos. Seguidamente, se define los movimientos que ligan a los cuerpos a ensamblar (alinear planos, encajar cilindros, etc.). 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 intérprete y está escrito en lenguaje APT.


  • AUTOPASS.- Creado por IBM para el ensamblaje de piezas; utiliza instrucciones, muy comunes, en el idioma inglés. Precisa de un ordenador de varios Megabytes de capacidad de memoria y, además de indicar, como el RAPT, puntos específicos, prevé, también, colisiones y genera acciones a partir de las situaciones reales. realiza todos sus cálculos sobre una base de datos, que define a los objetos como poliedros de un máximo de 20,000 caras. Está escrito en PL/1 y es intérprete y compilable.


  • LAMA.- Procede del laboratorio de Inteligencia Artificial del MIT, para el robot SILVER, orientándose hacia el ajuste de conjuntos mecánicos. Aporta más inteligencia que el AUTOPASS y permite una buena adaptación al entorno. La operatividad del LAMA se basa en tres funciones principales: Creación de la función de trabajo. Operación inteligente; Generación de la función de manipulación e Interpretación y desarrollo, de una forma interactiva, de una estrategia de realimentación para la adaptación al entorno de trabajo.


2.4. LENGUAJES DE PROGRAMACIÓN EN FUNCIÓN DE LOS OBJETIVOS.

La filosofía de estos lenguajes Según Candelas (ibídem) consiste en definir la situación final del producto a fabricar, a partir de la cual se generan los planes de acción tendentes a conseguirla, obteniéndose, finalmente, el programa de trabajo.

Estos lenguajes, de tipo natural, suponiendo una potenciación extraordinaria de la Inteligencia Artificial, para descargar al usuario de las labores de programación. Prevén, incluso, la comunicación hombre-máquina a través de la voz.


Los lenguajes más conocidos de este grupo son:


  • STRIPS.- Fue diseñado, en la Universidad de Stanford, para el robot móvil SHAKEY. Se basa en un modelo del universo ligado a un conjunto de planteamientos aritmético-lógicos que se encargan de obtener las subrutinas que conforman el programa final. Es intérprete y compilable, utilizando, como procesadores, a un PDP-10 y un PDP-15.


  • HILAIRE.- Procedente del laboratorio de Automática Y Análisis de Sistemas (LAAS) de Toulouse, está escrito en lenguaje LISP. Es uno de los lenguajes naturales más interesantes, por sus posibilidades de ampliación e investigación.


CONCLUSIONES

Los robots comienzan a integrarse en la sociedad a los inicios del siglo XX.

Si bien el hombre ha buscado crear maquinas que puedan realizar las mismas tareas que él, ahora su meta va mas allá: lograr que estas no solo reproduzcan conductas inteligentes, sino que lo hagan utilizando los mismos principios que se han descubierto.

Sistema mecánico, comprende una serie de elementos articulados entre si; el sistema de control, conformado por el hardware y el software electrónicos; sistema de programación es muy versátil.

Programación gestual se componen de secuencias con instrucciones detalladas para su ejecución Este tipo de programación, exige el empleo del manipulador en la fase de enseñanza.

Los lenguajes de la programación gestual permiten efectuar revisiones, paso a paso, del programa, insertar o borrar determinadas instrucciones, etc.

Programación textual se realiza a partir de la especificación de las tareas que se vallan a efectuar; será el propio sistema de control el encargado de generar las órdenes concretas para su ejecución; y no interviene el robot directamente.


REFERENCIAS BIBLIOGRAFICAS

Candelas Rodríguez, Samuel. Lenguaje de programación de los robots Tecnología – Robótica. México: universidad autónoma de México. 2005.

Crovetto Huerta, Christian. Inteligencia Artificial e Introducción a la robótica. Cap. Lima: Grupo editorial Megabyte. 2005.

Feliu Batlle, Vicente. Avances en robótica y visión por computador: temática de la robótica. La mancha: ediciones de la universidad de castilla. La mancha. 2002.

Feliu Batlle, Vicente. Informática industrial: robótica la mancha: ediciones de la universidad de castilla. La mancha. 1997.

García Higuera, Andrés. Avances en Robótica y Visión por computador: aplicaciones: robótica industrial, fabricación automatización. La mancha: Ediciones de la Universidad de Castilla. La Mancha. 2002.

Groover, Mikell. Fundamentos de manufactura moderna materiales, procesos y sistemas: automatización programable. México: Pearson educación, S.A. 1997.

López, Hilario; Gonzáles, Rafael. Programación de robots industriales: control remoto del robot ASEA IRB2000.universidad de Oviedo. 2000

Ollero Baturone, Aníbal. Robótica manipuladores y robots móviles. Barcelona: Marcombo, S.A. 2001.

Torres Fernando; pomares, jorge y otros. Robots y sistemas sensoriales. Cap 1. Madrid: Persson educación, S.A. 2002.

Velasco Sánchez, Enrique. Educatrónica innovación en el aprendizaje de las ciencias y la tecnología. España: ediciones Díaz de Santos. 2007.