Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema 3
PROGRAMACION DE ROBOTS Y SENSORES
1
UNIVERSIDAD AUTÒNOMA TOMÀS FRÌAS
CARRERA INGENIERÌA DE SISTEMAS
MATERIA ROBOTICA – OPT 005 Ing. Gustavo A. Puita Choque
2
UNIVERSIDAD AUTÒNOMA TOMÀS FRÌAS
CARRERA INGENIERÌA DE SISTEMAS
MATERIA ROBOTICA – OPT 005 Ing. Gustavo A. Puita Choque
Se puede dar una actualización contínua de algunas o todas estas variables, o bien a
intervalos discretos de tiempo.
Además, en el caso de que varios procesos puedan actualizar la misma variable, deberán
considerarse prioridades entre ellos(generalmente, todos ellos relacionados con los
sensores).
Deberán estar presentes mecanismos para especificar las acciones de inicialización y
terminación. Típicamente, al comenzar un programa de robot puede ser necesario el
calibrado del mismo y su posicionamiento en un lugar concreto, así como un auto-test del
hardware, si es posible. Del mismo modo, Al acabar también se puede llevar al robot a algún
lugar conocido, y luego se suele anular la ganancia de todos los amplificadores de los
motores, para evitar el movimiento accidental.
METODOS DE PROGRAMACION
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.
3
UNIVERSIDAD AUTÒNOMA TOMÀS FRÌAS
CARRERA INGENIERÌA DE SISTEMAS
MATERIA ROBOTICA – OPT 005 Ing. Gustavo A. Puita Choque
robot. Un ejemplo es el caso de los robots de pintura fabricados por Nordson, los cuales son
programados utilizando este procedimiento.
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 quiere alcanzar los puntos, control del
flujo del programa, atención a entradas/salidas binarias, etc. En este caso, el método guiado
de utilizado es el de la botonera o joystick. El guiado extendido aumenta la potencia del
sistema de programación.
Los métodos por guiado son muy útiles y presentan ventajas, como que son fáciles de
aprender y requieren de un espacio de memoria relativamente pequeño para almacenar la
información. Pueden ser programados por operadores familiarizados con la aplicación, pero
4
UNIVERSIDAD AUTÒNOMA TOMÀS FRÌAS
CARRERA INGENIERÌA DE SISTEMAS
MATERIA ROBOTICA – OPT 005 Ing. Gustavo A. Puita Choque
PROGRAMACIÓN TEXTUAL
Este método de programación permite indicar la tarea al robot a través de un lenguaje de
programación específico Un programa se entiende como una serie de órdenes que son editadas y
posteriormente ejecutadas, por lo tanto, existe un texto para el programa.
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 descomponer la tarea global en varias subtareas.
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 específica 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 de aquellos
momentos que sea necesario.
REQUERIMIENTOS DE UN SISTEMA DE PROGRAMACIÓN DE ROBOTS
A pesar de la falta de normalización entre los métodos de programación de robots existentes, las
necesidades comunes han originado un cierto paralelismo y afinidad entre casi todos ellos. Esta
circunstancia permite establecer una serie de características generales que se manifiestan en los
elementos de programación que contienen.
Los requerimientos que se vienen estableciendo tradicionalmente para un sistema de programación
de robots son los siguientes:
Entorno de programación.
Modelado del entorno.
Tipo de datos.
Manejo de entradas/salidas (digital y analógica).
Control de movimiento.
Control del flujo de ejecución del programa.
5
UNIVERSIDAD AUTÒNOMA TOMÀS FRÌAS
CARRERA INGENIERÌA DE SISTEMAS
MATERIA ROBOTICA – OPT 005 Ing. Gustavo A. Puita Choque
Entorno de programación
Como cualquier lenguaje de programación convencional, es de gran importancia, para conseguir un
aumento considerable de la productividad de la programación, contar con un entorno de
programación adecuado a las necesidades.
Es pues importante que un sistema de programación de robots presente una buena capacidad de
depuración y de ejecución paso a paso, teniendo especialmente en cuenta la interacción en tiempo
real que existe entre los distintos equipos de la célula con el controlador del robot. También es
aconsejable la existencia de una buena motorización continua del desarrollo del programa.
6
UNIVERSIDAD AUTÒNOMA TOMÀS FRÌAS
CARRERA INGENIERÌA DE SISTEMAS
MATERIA ROBOTICA – OPT 005 Ing. Gustavo A. Puita Choque
Objetos independientes.
El movimiento de uno no afecta al otro.
Dependencia de unión rígida.
El movimiento de uno implica al otro y viceversa.
Dependencia de unión no rígida.
El movimiento de uno implica al otro pero al revés.
El modelo relacional, una vez programado se actualiza automáticamente durante la ejecución del
programa, mediante una estructura que correlacione los diferentes objetos del sistema en general,
simplificando así la tarea del programador.
Tipos de datos
Como todo sistema de programación, aquellos destinados al control de robots deben contar con
datos convencionales de programación, tipos de datos como enteros, reales, boléanos, etc.
Son necesarios para una programación estructurada y normalmente utilizados como base de
control para sentencias que involucren variables, las mismas que definirán funcionalidades
del robot con su entorno o de manera específica una trayectoria o acción del robot.
7
UNIVERSIDAD AUTÒNOMA TOMÀS FRÌAS
CARRERA INGENIERÌA DE SISTEMAS
MATERIA ROBOTICA – OPT 005 Ing. Gustavo A. Puita Choque
8
UNIVERSIDAD AUTÒNOMA TOMÀS FRÌAS
CARRERA INGENIERÌA DE SISTEMAS
MATERIA ROBOTICA – OPT 005 Ing. Gustavo A. Puita Choque
En muchas ocasiones, el movimiento del robot en un entorno con obstáculos obliga a la utilización
de una trayectoria de línea recta, para asegurar que el robot no colisione con ellos. Sin embargo,
muchos sistemas de programación disponen de los denominados puntos de paso o vía points, para
resolver este tipo de situaciones.
El control del robot, recibe las referencias de posición procedentes del programa, no admitiendo una
nueva referencia hasta que el robot no alcanza la referencia en vigor con la precisión indicada. De
esta manera, si la precisión se define como baja, el extremo del robot se encaminará hacia la
siguiente configuración sin haber llegado a la anterior y sin tener que disminuir apenas su velocidad.
El resultado final es que el movimiento gana en continuidad y velocidad a costa de perder una
precisión innecesaria en esos puntos de paso.
La consideración de las señales captadas por los sensores en la especificación de los movimientos
del robot, puede hacerse a varios niveles. La primera posibilidad responde a la interrupción del
movimiento del robot por verificarse algún tipo de condición externa programada, ésto se denomina
movimiento protegido o monitorizado. La segunda alternativa, implica la modificación del
movimiento, en cuanto a la situación de destino o la velocidad, según la información captada del
entorno, de esta manera el movimiento del extremo del robot queda alterado, adaptándose a las
necesidades de un entorno cambiante o parcialmente indeterminado, estos movimientos se conocen
como acomodaticios.
Control de flujo de ejecución del programa
Al igual que en cualquier lenguaje de programación de propósito general, un lenguaje de
programación de robots permite al programador especificar de alguna manera un flujo de ejecución
de operaciones. Se emplean para ello las estructuras habituales de bucles (for, repeat, while, etc).
También es importante la capacidad de procesamiento en paralelo, tanto para el control de varios
robots trabajando conjuntamente bajo las órdenes de un solo programa, como para el control de un
único robot en una celda de trabajo cuyos equipos se encuentran igualmente bajo el control del
programa del robot.
Es importante para la mayoría de las aplicaciones tener un control de interrupciones mediante las
cuales distintos equipos en funcionamiento puedan interaccionar con el robot. Se debe poder fijar la
prioridad en el tratamiento de las mismas, así como activarlas y desactivarlas durante la ejecución
de diversas fases del programa.