Está en la página 1de 9

Robtica. Unidad 2.

Programacin de Robots.

Elabora: Guillermo Alan Moran Aguilar.

Introduccin.
Programar un robot consiste en indicar paso por paso las diferentes acciones como
moverse a un punto, soltar o tomar algo, soldar y dems, que ste deber realizar durante su
funcionamiento, la flexibilidad en la aplicacin del robot y, por lo tanto, su utilidad van a depender
en gran parte de las caractersticas de su sistema de programacin.
Programacin no textual.
En este tipo de programacin no se cuenta con un Script o lnea de instrucciones para ser
introducidas al robot, Existen 2 mtodos dentro de esta categora por Hardware y mediante
enseanza.
Programacin por Hardware se divide a su vez en 2 categoras:
Programa Cableado.
Programa definido mecnicamente.
Por otra parte mediante enseanza se divide en:
En lnea.
Modo pasivo.
Modo activo.
Fuera de lnea.
Programacin por Hardware.
La programacin por hardware consta en esencia de conexiones fsicas necesarias para
que el robot realice los movimientos necesarios sin el apoyo de un programa informtico que
otorgue las instrucciones a los elementos de accin (actuadores).
Se usa en robots simples y se requiere la puesta de diversos elementos como son fines de
carrera, retenedores mecnicos, contactos, relevadores. Todos estos conectados a la parte de
control, dada la simplicidad de este mtodo se recomiendan su uso simplemente para
operaciones simples.
Actualmente se considera descontinuado, ya que este metodo ya no se le considera robot,
dado que robot ahora implica ser reprogramable.
Programa Cableado.
El programa por hardware mediante cableado no usa ninguno de los lenguajes de
programacin. Se considera como la primera generacin de la robotica
El programa se logra mediante la configuracin del hardware en si para crear la
secuencia dentro del controlador, usando interconexiones entre los cables as como componentes
electrnicos bsicos como relevadores. Se puede hacer que el robot realice las operaciones que
sean necesarias.
Mediante el uso de Switch como sensores para determinar la posicin, la configuracin del
hardware nos permite movernos de una posicin hasta otro dada la configuracin del hardware
usando los Switch y saber si ya est en el lugar designado o se tiene que seguir administrando
voltaje al actuador.
En esta programacin tambin recae los robots manipuladores a distancia, que son
accionados por cuerdas y poleas para la generacin del movimiento necesario, como por ejemplo:
el manipulador de materiales radioactivos tele-operado mediante acoplamientos mecnicos
introducido en 19478 por R.C. Goertz.
Programa definido mecnicamente.
Como el mtodo por cableado este es uno de los primeros mtodos as como los ms
simples. El definido mecnicamente como su nombre lo dice consta de topes mecnicos asi como
engranajes, mecanismos, levas, etc..
Funciona de manera continua dado el movimiento de los actuadores cuentan ya sea con
topes, mecanismos o engranajes. Todos estos configurados de tal manera que el movimiento d
generan trayectorias y movimientos los cuales son considerados el programa por lo que estos se
deben calcular y disear para su correcto funcionamiento.
Esta forma de crear robots hoy en da se considera primitiva ya que un robot industrial
debe ser reprogramable y este no permite reprogramacin, teniendo que crear un nuevo diseo
para cada aplicacin que se necesite.
El programa definido mecnicamente fue el primero en crearse. Los primeros robots eran
echos por relojeros y constaban de complicados mecanismos constituidos por engranajes,
tensores, poleas, etc. en un principo no eran aplicados a porcesos industiales si no a entretener,
como lo son el hombre de hierro de Alberto Magno o el gallo de Estrasburgo.
Los cuales eran conformados por engranajes y un sistema de cuerda lo cual generaba el
giro necesario para hacer los movimientos.

Programacin por enseanza
Consiste en mover el brazo manipulador, normalmente mediante un sistema de joystick o
de botonera, a las posiciones por las que se desea que pase al ejecutar la tarea y memorizarlas
para luego repetirlas, pudiendo tambin asignar velocidades a cada una de las articulaciones este
tipo de programacin es la ms utilizada y todos los robots del mercado cuentan con este sistema
para la programacin de sus robots.

Ilustracin 1. Ejemplo, programacin por enseanza. .

Ilustracin 2. Botonera o Teach Pendant
Este tambin se le conoce como gestual, a pesar de sus caractersticas especiales, aun en
este caso, el programa puede ser almacenado para tener un respaldo.
Adems de poder mover el brazo manipulador mediante la botonera a algunos robots se
les puede ensear mediante el aprendizaje directo el en cual el punto final del brazo es trasladado
con ayuda de un dispositivo especial puesto en su mueca, o usando un brazo maestro o maniqu,
en el cual se efectan los desplazamientos que, luego ser memorizados, sern repetidos por el
manipulador. Esta programacin Posee pocas posibilidades de edicin. El software se organiza de
forma de intrprete.

Ilustracin 3. Ejemplo de aprendizaje directo.
Dependiendo de la forma en que se realice el proceso de enseanza se tienen 4 tipos de
programacin:

En lnea
Modo pasivo
Modo activo
Fuera de lnea
En lnea:
Un robot es programado En lnea cuando durante el desarrollo del programa se hace uso
del propio robot de forma que se haga que el extremo describa las trayectorias deseadas. Es
necesario que durante el tiempo del desarrollo del programa se disponga del robot fsicamente.
Modo pasivo.
Tambin llamado aprendizaje directo manual o pasivo. En este caso, el programador,
mueve fsicamente el robot a lo largo de la trayectoria que se desea aprender. Este mtodo se
utiliza para trayectorias complejas como en aplicaciones de moldeado o de pintura en spray.
Cuando el robot no es manipulable fsicamente, se dispone de un dispositivo de enseanza
de la misma geometra y caractersticas que el robot real, para su manipulacin, como puede ser
una maqueta o modelo a escala del mismo.

Modo activo.
En este tipo de aprendizaje, se utiliza un dispositivo de enseanza, cuya funcin es indicar
al robot las acciones a realizar para describir la tarea deseada. A lo largo de la trayectoria, se
seguir una serie de puntos que se almacenarn en la memoria del controlador. Es ms utilizado
para programar trayectorias simples punto a punto, debido a la dificultad para utilizar el
dispositivo de enseanza para programar trayectorias complejas.

Fuera de lnea.
La programacin por enseanza Fuera de lnea, permite desarrollar los programas estando
fuera de la estacin de trabajo o dentro de esta, tambin es usado para pre-programar los robots
antes de la instalacin, se programa de la misma manera que los dems mtodos ya sea con un
teach pendant o guiado.
Tambin dentro de este tipo de programacin esta se puede realizar utilizando paquetes
software que permiten simular los movimientos del robot, utilizando para ello un modelo
cinemtico, y en ocasiones dinmico del robot.




Programacin Textual.
La programacin textual utiliza lenguajes de programacin, para indicar la tarea al robot.
Puede ser clasificada en tres niveles: nivel robot, objeto y tarea. Dependiendo de que las rdenes
se refieran a los movimientos a realizar por el robot, al estado en que deben ir quedando los
objetos manipulados o al objetivo a conseguir.
La programacin textual podr ser explcita o implcita. En el primer caso, los programas se
componen de secuencias con instrucciones detalladas para su ejecucin, mientras que, en el
segundo, a partir de la especificacin 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 ejecucin. 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 informacin de dicho entorno.

Ilustracin 4. Niveles de programacin robots.
La evolucin de los nuevos lenguajes empleados en robtica industrial conduce cada vez
ms hacia la programacin textual, que permite la creacin y depuracin de programas sin
necesidad de emplear el robot durante la fase de programacin. Con ello e tendrn ventajas
relativas al coste de las maquinas, al tiempo empleado en la creacin de programas y a la
posibilidad de que el dispositivo que se programa est operando, conjuntamente, con otra serie
de mquinas y robots.
La programacin textual Explicita se divide en 2 categoras.
Nivel objeto
Nivel robot.


Nivel Objeto.

En el caso de la programacin explicita se le conoce como programacin estructurada.
Los lenguajes de este grupo permiten la definicin de estructuras de datos y de control
complejas, incorporando elementos de programacin estructurada. Se dispone de la posibilidad
de definicin de puntos, lneas, 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 comprensin del programa,
existiendo asimismo disponibilidad total para su edicin, ya que las acciones del manipulador
quedan definidas como instrucciones textuales. En este grupo se encuentran los lenguajes:
AL: Fue diseado 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 simultneo 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 ejecucin de cualquier tarea.
MAPLE: Escrito, como intrprete, 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 intrprete escrito en FORTRAN y Ensamblador que permite
manipulador un solo brazo y aceptar sensores de fuerza y visin. Es transportable.
MCL: Lo cre la compaa McDONALL 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. Permite la manipulacin de varios brazos.
MAL EXTENDIDO: Procede del Politcnico de Miln, al igual que el MAL, al que incorpora
elementos de programacin estructurada que lo potencian notablemente. Es compilable.

Nivel Robot.
Disminuye la complejidad del programa. La programacin se realiza de manera ms
cmoda, ya que las instrucciones se dan en funcin de los objetos a manejar. Una planificacin de
la tarea se encargar de consultar una base de datos y generar las instrucciones a nivel de robot.
En el caso de la programacin explicita tambin se le conoce como elemental.
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
homogneas. indican los incrementos angulares de las articulaciones.
Lenguajes de programacin incluidos en este grupo son:
ANORAD.- Se trata de una transformacin de un lenguaje de control numrico de la casa
ANORAD CORPORATION, utilizado para robot ANOMATIC. Utiliza, como procesador, al
microprocesador 68000 de Motorola de 16/32 bits.
VAL.- Fue diseado 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 servo
control de cada articulacin.
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.

La programacin implcita a su vez se divide en 2 categoras.
Nivel tarea
Nivel objeto

Nivel Tarea.
El sistema informtico para la programacin textual Implcita ha de disponer del modelo
del universo, o mundo donde se encuentra el robot. Este modelo ser, normalmente, una base de
datos ms o menos compleja,
El trabajo de la programacin consistir, simplemente, en la descripcin de las tareas a
realizar, lo que supone poder llevar a cabo trabajos complicados.
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.). 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.
AUTOPASS.- Creado por IBM para el ensamblaje de piezas; utiliza instrucciones, muy
comunes, en el idioma ingls. Precisa de un ordenador de varios Megabytes de capacidad de
memoria y, adems de indicar, como el RAPT, puntos especficos, prev, tambin, colisiones y
genera acciones a partir de las situaciones reales. Realiza todos sus clculos sobre una base de
datos, que define a los objetos como poliedros de un mximo de 20,000 caras. Est escrito en PL/1
y es intrprete y compilable.
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 e Interpretacin y desarrollo, de una forma interactiva, de una estrategia de
realimentacin para la adaptacin al entorno de trabajo.

Nivel objeto.
En la programacin a nivel objeto, nicamente se define el producto final, trasfiriendo el
trabajo de definicin de los estados intermedios desde el usuario hasta el sistema informtico de
control.
Los lenguajes de este tipo de programacin son de muy alto nivel y se encuentran ms en
la fase de investigacin y desarrollos que aplicados industrialmente, es necesario un incremento
de la inteligencia del sistema robotizado para poder emplearlos, basado en elementos de la
inteligencia artificial.
Los lenguajes ms conocidos de este grupo son:
HILAIRE: Procedente del laboratorio de automtica y anlisis de sistemas de Toulouse para
robots con procesadores IMS 80 C H, Est escrito en lenguaje LISP, interprete que permite la
manipulacin de varios brazos simultneamente.
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.


Bibliografa.
Por Hardware:
*Hilario Lpez Garca, Rafael Gonzlez Librn, Universidad de Oviedo, 1996
* Lenguaje y programacin de robots monografa presentada al curso de metodologa del
Trabajo universitario, autor: Victor Jhonathan Vera Zurita,
http://lenguaje-programacion-robots.blogspot.mx/
* PROGRAMACION, PLANIFICACION Y CONTROL EN ROBOTICA, Ral Suarez,
https://iocnet.upc.edu/usuaris/raulsuarez/papers/ppc-de-robots99.pdf
Por enseanza:
* Hilario Lpez Garca, Rafael Gonzlez Librn, Universidad de Oviedo, 1996
* PROGRAMACION, PLANIFICACION Y CONTROL EN ROBOTICA, Ral Suarez,
https://iocnet.upc.edu/usuaris/raulsuarez/papers/ppc-de-robots99.pdf
*Programming Robots, http://thnet.co.uk/thnet/robots/33.htm

Explicita:
*Hilario Lpez Garca, Rafael Gonzlez Librn, Universidad de Oviedo, 1996
*Lenguajes de programacin de los robots.
http://www.monografias.com/trabajos3/progrob/progrob.shtml
*Programacin de Robots, ITESCAM.
www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r36961.DOC
Implcita:
*Hilario Lpez Garca, Rafael Gonzlez Librn, Universidad de Oviedo, 1996
*Lenguajes de programacin de los robots.
http://www.monografias.com/trabajos3/progrob/progrob.shtml
* Programacin de Robots, ITESCAM.
www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r36961.DOC