Vous êtes sur la page 1sur 12

1.

Entorno de simulacin de un robot


El entorno est basado en una arquitectura cliente-servidor, cuyo funcionamiento, a
grandes rasgos, se pasa a explicar a continuacin.

1.2 Cliente

En la parte cliente de la aplicacin se tiene un programa para manejar los distintos


robots que queramos conectar. El programa est preparado para soportar varios
robots simultneamente (aunque si se est comunicando con Saphira, slo se
permitir uno, por las limitaciones de Saphira), y se conseguira con ello el mismo
efecto que lanzando varias aplicaciones cliente, una por cada robot. El cliente
dispone de controles para elegir a qu servidor conectarse (actualmente, al
simulador Java, al simulador Saphira, o a un robot real a travs de Saphira por un
puerto serie dado), indicando la direccin donde se encuentra el servidor. Esto
permite comunicar con un servidor situado en una mquina remota, conociendo su
direccin IP.

Adems, se permite aadir y quitar robots del servidor, y llevar un control de los
datos de cada robot (lecturas de
snares, estado actual, parmetros
de configuracin, imagen de la
cmara, etc). En la figura 1
podemos ver el aspecto de la aplica
1.2 Servidor

En la parte del servidor, se distingue entre el servidor Java y el servidor Saphira.

El servidor Java implementa un simulador que permite monitorizar la situacin del


mundo, mediante distintas cmaras virtuales colocadas en l o la situacin particular
de cada robot mediante su propia cmara virtual (ver figura 2).

Adems, cuenta con mtodos para obtener los datos de cada robot en cada
instante: deteccin de colisiones con obstculos mediante clculo de
intersecciones, toma de lecturas de los snares, captura de imgenes mediante un
dispositivo de tipo cmara, y toma de otros datos de inters, como puedan ser
estimaciones de posicin mediante otro tipo de dispositivos, filtrado o procesado de
imgenes, etc.

Dentro del servidor Saphira se englobaran tanto la conexin con el simulador


Pioneer como la conexin con un robot real a travs de un puerto serie utilizando
Saphira.

Este tipo de servidor no dispone de ninguna aplicacin visual de monitorizacin,


sino simplemente de un programa que se deja ejecutando y permite la comunicacin
con Saphira. Para poder comunicar con las funciones de Saphira, se ha empleado
JNI (Java Native Interface), una herramienta de Java que permite ejecutar cdigo
escrito en otros lenguajes de programacin.
Se ha minimizado en la medida de lo posible la parte de tratamiento del robot que
hace Saphira, dejando nicamente el reflector de estado, del que tomar los datos
del robot, y utilizando algunas funciones para tomar datos y establecer velocidades.
Lo que se pretende es dejar que se gestionen todas las estructuras desde Java, y
utilizar la API de Saphira para obtener los datos y enviar los comandos bsicos de
movimiento (velocidad lineal y rotacional) al robot.

Para la comunicacin de ambas aplicaciones (cliente y servidor), se ha empleado la


tecnologa

RMI (Remote Method Invocation), una tecnologa Java que permite ejecutar
remotamente comandos de otra mquina, y permitir as la comunicacin en
sistemas distribuidos.

1.3 Sistemas de Coordenadas

Un robot dispone de los siguientes sistemas de coordenadas:

Sistema de Coordenadas del Robot (ROBOT FRAME).


Sistema de Coordenadas Origen de Programacin (PROGRAM ORIGIN).
Un Sistema de Coordenadas propio de cada articulacin (JOINTS).
Los sistemas de coordenadas de herramienta (TOOL FRAME). En el fichero
rkf de descripcin de un robot pueden haberse definido varios, pero el
cargado como activo por defecto siempre es el Tool Frame 0

Por defecto, slo se visualiza en pantalla el sistema de coordenadas de la


herramienta. Para ver donde estn otros sistemas de coordenadas, o incluso para
no ver el sistema de la herramienta, se dispone del botn del Toolbar(opcin del
men Display>>Frames...) que abre un dilogo que permite seleccionar los
sistemas de coordenadas a mostrar as como escalar su tamao.

El dilogo se muestra a la derecha. Los sistemas de coordenadas son


representados con los ejes X,Y,Z de color rojo, verde y azul (RGB). Adems de las
opciones enumeradas anteriormente, la opcin PARTS, que se comentar
posteriormente, posibilita ver los sistemas de coordenadas de operacin de las
piezas del entorno

1.4 Comandos de Programacin

Como ya se haban mencionado los comandos de programacin (en ste ejercicio


nicamente se mover el brazo robtico solamente se utilizara el comando MOV),
ahora se escribir la redaccin de la programacin

NOTA: en este caso la numeracin del rengln del nmero de programacin ira de
10 en 10 por si existe algn error o comando que nos haya hecho falta, podremos
agregarlo sin ningn problema
2. Entorno de Programacin

2.1 Programacin Gestual o Directa

En este tipo de programacin, el propio brazo interviene en el trazado del camino y


en las acciones a desarrollar en la tarea de la aplicacin. Esta caracterstica
determina, inexcusablemente, la programacin "on-line".

La programacin gestual se subdivide en dos clases:

Programacin por aprendizaje directo.


Programacin mediante un dispositivo de enseanza.

En el aprendizaje directo, el punto final del brazo se traslada con ayuda de un


dispositivo especial colocado en su mueca, o utilizando un brazo maestro o
maniqu, sobre el que se efectan los desplazamientos que, tras ser memorizados,
sern repetidos por el manipulador.

La tcnica de aprendizaje directo se utiliza, extensamente, en labores de pintura. El


operario conduce la mueca del manipulador o del brazo maestro, determinando los
tramos a recorrer y aquellos en los que la pistola debe expulsar una cierta cantidad
de pintura. Con esta programacin, los operarios sin conocimientos de "software",
pero con experiencia en el trabajo a desarrollar, pueden preparar los programas
eficazmente.

La programacin por aprendizaje directo tiene pocas posibilidades de edicin, ya


que, para generar una trayectoria continua, es preciso almacenar o definir una gran
cantidad de puntos, cuya reduccin origina discontinuidades. El "software" se
organiza, aqu, en forma de intrprete.

La programacin, usando un dispositivo de enseanza, consiste en determinar las


acciones y movimientos del brazo manipulador, a travs de un elemento especial
para este cometido. En este caso, las operaciones ordenadas se sincronizan para
conformar el programa de trabajo.

El dispositivo de enseanza suele estar constituido por botones, teclas, pulsadores,


luces indicadoras, ejes giratorios o "joystick".

Dependiendo del algoritmo de control que se utilice, el robot pasa por los puntos
finales de la trayectoria enseada. Hay que tener en cuenta que los dispositivos de
enseanza modernos no slo permiten controlar los movimientos de las
articulaciones del manipulador, sino que pueden, tambin, generar funciones
auxiliares, como:

- Seleccin de velocidades

- Generacin de retardos

- Sealizacin del estado de los sensores

- Borrado y modificacin de los puntos de trabajo

- Funciones especiales
2.2 Programacin Textual Explicita

El programa queda constituido por un texto de instrucciones o sentencias, cuya


confeccin no requiere de la intervencin del robot; es decir, se efectan "off-line".
Con este tipo de programacin, el operador no define, prcticamente, las acciones
del brazo manipulado, sino que se calculan, en el programa, mediante el empleo de
las instrucciones textuales adecuadas.

En una aplicacin tal como el ensamblaje de piezas, en la que se requiere una gran
precisin, los posicionamientos seleccionados mediante la programacin gestual no
son suficientes, debiendo ser sustituidos por clculos ms perfectos y por una
comunicacin con el entorno que rodea al sistema.

En la programacin textual, la posibilidad de edicin es total. El robot debe


intervenir, slo, en la puesta a punto final.

Segn las caractersticas del lenguaje, pueden confeccionarse programas de


trabajo complejos, con inclusin de saltos condicionales, empleo de bases de datos,
posibilidad de creacin de mdulos operativos intercambiables, capacidad de
adaptacin a las condiciones del mundo exterior, etc.

Dentro de la programacin textual, existen dos grandes grupos, de caractersticas


netamente diferentes:

Programacin textual explcita.


Programacin textual especificativa.

En la programacin textual explcita, el programa consta de una secuencia de


rdenes o instrucciones concretas, que van definiendo con rigor las operaciones
necesarias para llevar a cabo la aplicacin. Se puede decir que la programacin
explcita engloba a los lenguajes que definen los movimientos punto por punto,
similares a los de la programacin gestual, pero bajo la forma de un lenguaje formal.
Con este tipo de programacin, la labor del tratamiento de las situaciones
anormales, colisiones, etc., queda a cargo del programador.

Los lenguajes del tipo cartesiano utilizan transformaciones homogneas. Este


hecho confiere "popularidad" al programa, independizando a la programacin del
modelo particular del robot, puesto que un programa confeccionado para uno, en
coordenadas cartesianas, puede utilizarse en otro, con diferentes coordenadas,
mediante el sistema de transformacin correspondiente. Son lenguajes que se
parecen al BASIC, sin poseer una unidad formal y careciendo de estructuras a nivel
de datos y de control.

2.3 Paro de Emergencia

Ante una situacin de Fault provocada por cualquier tipo de fallo o paro de
emergencia, el carmario de control del robot no permite entrada de potencia al
servoamplificador con lo que el robot nunca se mover.
2.4 Cambio de Velocidad

En el software de simulacin de robots llamado COSIMIR se encuentran diferentes


comandos con los cuales podrs cambiar de velocidad, estos se muestran en la
siguiente imagen.
2.5 Deteccin de Errores

Desde la aparicin de los primeros sistemas de control, los requerimientos de


eficiencia y robustez en los diferentes procesos industriales han ido paulatinamente
incrementndose. Este ha sido en parte el resultado del aumento en la competencia
por el mercado, en que los sistemas ms eficientes ahorran tiempo y dinero a sus
dueos. Con este objetivo en mente, durante la dcada de 1970 aparecieron los
primeros trabajos de sistemas de deteccin de fallas, que buscaban indicar cundo
se produca un error en el sistema y as prevenir posibles problemas posteriores. A
continuacin, se desarrollaron sistemas ms complejos de monitoreo y control que
no slo permitan detectar el momento en el que ocurra una falla en el sistema, sino
que tambin tomar las medidas necesarias para corregir el error, como por ejemplo
modificar las variables de control para minimizar los efectos de la falla.

Por su parte, las fallas pueden ser caracterizadas segn su efecto. Las fallas de tipo
fuerte son aquellas en las que un parmetro cambia en un instante corto de tiempo,
permaneciendo as posteriormente. Tal es el caso cuando los sensores se
descomponen y mantienen constante el valor de salida sin importar la variacin en
la variable medida, o cuando un motor deja de entregar el momento de torsin
necesario. Por otro lado, las fallas suaves son aquellas que aparecen lentamente y
se van incrementando en el tiempo. Ese es el caso de fallas degenerativas, como
el desgaste, que hace cambiar los parmetros en forma paulatina.

El proceso completo que permite detectar una falla y las acciones posteriores
realizadas en base a la informacin obtenida, puede dividirse en tres etapas
principales: deteccin, diagnstico y correccin o acomodacin de la falla.
3. Control de movimiento del robot
3.1 sistemas de coordenadas

WORLD

Son las coordenadas del robot (X,Y,Z) referidas a un sistema cuyo origen se
encuentra en la base del robot.

JOINT

En este sistema de coordenadas cada punto en el espacio es referido mediante la


variacin de ngulo de cada uno de los ejes del robot con respecto a la posicin de
calibracin del robot (todos los ejes a 0)

TCP

Siempre que se utiliza un robot industrial, este va acompaado de una herramienta


en su mueca que bien puede ser una garra o una pinza en el caso de la
manipulacin o bien puede ser una pinza de soldadura o incluso una antorcha.

El TCP va a ser un sistema de coordenadas cuyo origen va a estar situado en un


punto especfico de la herramienta, de tal forma que nos ayude en la programacin
y reprogramacin del robot.

TOOL

Es el sistema de coordenadas asociadas al TCP, cuando movemos al robot en este


sistema lo hacemos conforme al sistema que hemos definido previamente en la
obtencin del TCP.

3.2 Movimientos

Para un objeto que se mueve, se pueden distinguir al menos tres tipos de


movimientos diferentes: translacin, rotacin y vibracin.
3.2.1 Movimiento de traslacin
Un cuerpo est en translacin si todos los puntos que lo componen describen la
misma trayectoria que puede ser rectilnea o curvilnea.

Cada punto de un cuerpo rgido en translacin tiene la misma velocidad y


aceleracin.

3.2.2 Rotacin
Un cuerpo est en traslacin si se mueve alrededor de un eje fijo (centro de rotacin)
y describe una circunferencia cuyo radio es su distancia al eje.

En el movimiento de rotacin en una dimensin hablamos de posicin angular,


velocidad angular y aceleracin angular.

Vous aimerez peut-être aussi