Sei sulla pagina 1di 29

Robótica

Programación del robot


Un robot industrial es básicamente un manipulador
multifuncional reprogramable, siendo esta capacidad de
reprogramación la que permite su adaptación de una manera
rápida y económica a diferentes aplicaciones.
La programación de un robot se puede definir como el proceso mediante el
cual se le indica a éste la secuencia de acciones que deberá llevar a cabo
durante la realización de su tarea. Estas acciones consisten en su mayor parte
en moverse a puntos predefinidos y manipular objetos del entorno.
Durante la ejecución de un programa se interacciona con la memoria del
sistema, leyendo y actualizando el contenido de las variables utilizadas en el
programa.

Son el sistema de control cinemático y dinámico del robot los encargado de dar
la señal de mando a los accionamientos del robot a partir de las
especificaciones del movimiento que se les proporciona; y con las entradas-
salidas del sistema, consiguiéndose así la sincronización del robot con el resto
de las máquinas y elementos que componen su entorno.
A un robot se le demandan por lo general elevadas prestaciones en velocidad y
precisión de movimiento.

Este objetivo ha marcado en gran medida las investigaciones y avances


tecnológicos realizados en el campo de la robótica, pues se requiere la
utilización de materiales más ligeros, de sistemas de transmisión sin holgura y
con baja inercia, de actuadores rápidos y precisos o de sensores de elevada
resolución, lo que ha permitido mejorar de manera notable la calidad del
movimiento del robot.
Del mismo modo, los algoritmos de control del robot tienen por objetivo
mejorar al máximo las características de velocidad y precisión.

El control cinemático selecciona trayectorias que idealmente deberá seguir el


robot para, teniendo en cuenta sus limitaciones, ajustarse lo mejor posible a
las especificaciones del movimiento dadas por el usuario.

En la práctica, este ajuste del movimiento del robot a las especificaciones del
usuario no será del todo posible, pues las características dinámicas del robot
(inercias, rozamiento, holguras, etc.) muchas veces desconocidas, impiden en
general, una coincidencia entre la trayectoria deseada qd(t) y la real q(t).
El objetivo fundamental de los modelos cinemáticos y dinámicos de un robot,
es establecer las adecuadas estrategias de control del robot que traen como
consecuencia una mayor calidad de sus movimientos.

El control cinemático establece las trayectorias que debe seguir cada


articulación del robot para cumplir con los requerimientos del usuario. Dichas
trayectorias se seleccionaran dependiendo de las restricciones físicas propias
de los accionamientos y a criterios de calidad como suavidad o precisión de la
misma.

El control dinámico tiene por misión procurar que las trayectorias realmente
seguidas por el robot q(t) sean lo más parecidas posibles a las propuestas por
el control cinemático qd(t).
El sistema de programación es, por tanto, la herramienta con que cuenta el
usuario para acceder a las diversas prestaciones del robot, existiendo una
relación directa entre las características y posibilidades del sistema de
programación y las del robot en sí mismo.
MÉTODOS DE PROGRAMACIÓN DE ROBOTS (CLASIFICACIÓN)

Programar un robot consiste en indicar paso por paso las diferentes


acciones (moverse a un punto, abrir o cerrar la pinza, etc.) que éste deberá
realizar durante su funcionamiento automático. La flexibilidad en la
aplicación del robot y, por tanto, su utilidad dependerá en gran medida de
las características de su sistema de programación.
Existen diferentes formas de indicarle a un robot, cual debe ser su tarea a
realizar, en principio podemos usar lenguajes de programación textual
similares a C, Java, el mismo Pascal,... etc. Por otra parte, podemos señalar la
tarea a un robot usando programación por guiado o aprendizaje.

Veremos algunas de las características de estas dos clases de programación.

No obstante debemos observar que ninguno de los tipos de programación le


permite al robot ”aprender” nuevas tareas, es decir, solamente realizarán la
tarea para la cual fueron programados.
Activo
Método de
programación
Pasivo
Guiado
Guiado básico
Potencia
Guiado
Programación
extendido
Robot

Textual Objeto

Tarea
PROGRAMACIÓN GUIADA
La programación por guiado o aprendizaje consiste en hacer
realizar al robot, o a una maqueta del mismo, la tarea
(llevándolo manualmente por ejemplo) al tiempo que se
registran las configuraciones adoptadas, para su posterior
repetición de manera automática.
Para guiar al robot por las trayectorias o puntos deseados se utilizan
diferentes soluciones.

Si los actuadores del robot están desconectados y es el programador quien


debe aportar directamente la energía para mover el robot, se trata de un
guiado pasivo.

En este caso, el programador puede tomar el extremo del robot y llevarlo


hasta los puntos deseados siguiendo las trayectorias más adecuadas. La
unidad de control del robot registrará, de manera automática, la señal de los
sensores de posición de las articulaciones en todos los puntos recorridos
Este tipo de guiado se denomina guiado pasivo directo. Un ejemplo de robot
industrial programado por este procedimiento se encuentra en los robots de
pintura de la firma Gaiotto.
La dificultad física de mover toda la estructura del robot se resuelve con la
utilización del guiado pasivo por maniquí.

En este caso se dispone de un doble del robot mientras que éste permanece
fuera de línea. El maniquí posee idéntica configuración que el robot real, pero
es mucho más ligero y fácil de mover. La programación se efectúa llevando de
la mano a este doble, mientras que la unidad de control muestrea y almacena,
con determinada frecuencia, los valores que toman los sensores de posición de
las articulaciones, para su posterior repetición por el robot.

Los robots, también de pintura, fabricados por Nordson se programan


utilizando este procedimiento.
Frente a estos sistemas pasivos, otra posibilidad permite emplear el propio
sistema de accionamiento del robot, controlado desde una botonera o un
bastón de mando (Joystick) para que sea éste el que mueva sus articulaciones.

Se dirá entonces que se trata de un guiado activo.

Ejemplos de este tipo se encuentran en los robots de la antes ASEA y ahora


ABB (ARLA) o en los de Cincinnati Milacron (T3). En este caso, lo habitual es
que la unidad de control únicamente registre aquellas configuraciones del
robot que el programador indique expresamente.
Atendiendo a la potencia del sistema, se puede hablar de guiado básico y de
guiado extendido.

Guiado básico: El robot es guiado consecutivamente por los puntos por los
que se quiere que pase durante la fase de ejecución automática del programa.

Durante ésta, la unidad de control interpola dichos puntos según


determinadas trayectorias. En muchas ocasiones no es posible incluir ningún
tipo de estructuras de control dentro del programa, por lo que los puntos son
recorridos siempre secuencialmente, en el mismo orden en que se
programaron.

Un caso límite de este tipo de programación sería la utilizada en casi todos los
robots de pintura, en los que la unidad de control muestrea automáticamente
los puntos recorridos por el robot con una frecuencia muy alta.
Guiado extendido: Permite especificar, junto a los puntos por los que deberá
pasar el robot, datos relativos a la velocidad, tipo de trayectoria, precisión con
la que se desea que se alcancen los puntos, control del flujo del programa,
atención a entradas/salidas binarias, etc.

En este caso, el método de guiado utilizado es el de la botonera o joystick. La


programación por guiado extendido aumenta notablemente la potencia del
sistema de programación.
Los métodos de programación por guiado son muy útiles e incluso
imprescindibles en muchas ocasiones.

Además presentan ventajas, como que son fáciles de aprender y que requieren
un espacio de memoria relativamente pequeño para almacenar la información.

Sin embargo, presentan una serie de inconvenientes, de los que el más


destacable es la necesidad de utilizar al propio robot y su entorno para realizar
la programación, obligando a sacar al robot de la línea de producción,
interrumpiendo ésta. Otros inconvenientes frecuentes son la inexistencia de
una documentación del programa y la dificultad de realizar modificaciones en
el mismo, inconvenientes ambos que conducen a una difícil depuración y
puesta a punto de las aplicaciones.
PROGRAMACIÓN TEXTUAL
Como alternativa a la programación por guiado, el método de programación
textual permite indicar la tarea al robot mediante el uso de un lenguaje de
programación específico.

Un programa se corresponde ahora, como en el caso de un programa general,


a una serie de órdenes que son editadas y posteriormente ejecutadas. Existe,
por lo tanto, un texto para el programa.

La principal ventaja de la programación textual es que existe la posibilidad de


especificar distintos tipos de movimientos y trayectorias.
En este caso, como ya se mencionó la idea es indicarle al robot su tarea
mediante el uso de una serie de comandos, los cuales son digitados y
posteriormente ejecutados directamente en el robot o en un simulador.

Para la etapa de programación textual no se requiere que el robot esté


presente, lo que en algunos casos suele ser de gran utilidad, esto hace que la
programación textual sea también conocida como la programación fuera de
línea u off-line.
La programación textual puede ser clasificada en tres niveles:

• Robot.
• Objeto.
• 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 (o subobjetivo parcial) a conseguir.
En la actualidad, la programación de robots se queda materialmente en el
primero de ellos (nivel robot), existiendo una gran cantidad de lenguajes de
programación textual a este nivel, de entre los que se pueden destacar por
orden cronológico:

• AL (Universidad de Stanford- 1974)


• AML (IBM- 1979)
• LM (Universidad de Grenoble, SCEMI- 1981).
• VALII (UNIMATION- 1983)
• V+ (ADEPT- 1989)
• RAPID (ABB -1994)
Para aclarar el modo en que se programaría un robot en cada uno de los niveles
anteriormente mencionados, se va a resolver una tarea concreta utilizando las tres
alternativas.

La figura representa el robot y su entorno. Se pretende situar la pieza A, sobre la


que se apoya la pieza B, en el interior del orificio de la pieza D.

A continuación se presenta el programa en los tres niveles de manera simplificada


y utilizando lenguajes hipotéticos.
Nivel robot: Es necesario especificar cada uno de los movimientos que ha de
realizar el robot, así como la velocidad, direcciones de aproximación y salida,
apertura y cierre de la pinza, etc.

Será necesario también descomponer la tarea global en varias subtareas, como


por ejemplo, quitar B de A (poniendo B sobre C), introducir A en D, etc. Para el
ejemplo que se está considerando, la operación que consiste en colocar B sobre C
tendría el siguiente aspecto:
Nivel Objeto: Disminuye la complejidad del programa. La programación se
realiza de manera más cómoda, ya que las instrucciones se dan en función de
los objetos a manejar.

Un planificador de la tarea se encargará de consultar una base de datos y


generar las instrucciones a nivel de robot.
Nivel Tarea : El programa se reduce a una única sentencia ya que se especifica
qué es lo que debe hacer el robot en lugar de cómo debe hacerlo.
Es importante destacar que, cada vez con mayor notoriedad, los sistemas de
programación de robots tienden a combinar los dos modos básicos (guiado y
textual), permitiéndose desarrollar el programa mediante la escritura de las
instrucciones, y utilizando la posibilidad de guiado en línea en aquellos
momentos en que sea necesario.

Sistemas como RAPID de ABB, VAL II de Staübli y V+ de Adept Technology son


ejemplos de esta ambivalencia.

Como resumen, la figura recoge los diferentes métodos de programación de


robots existentes.

Potrebbero piacerti anche