You are on page 1of 7

Descargado en:

patatabrava.com

ROBTICA INDUSTRIAL (US)


ROBTICA INDUSTRIAL_2
PROF.

06-07

6.1 Introduccin

TEMA 6
Programacin de Robots.

Robot: manipulador multifuncional programable.


Programacin adaptacin rpida y econmica a
diferentes aplicaciones.
Programa: secuencia de acciones simples.

6.1 Introduccin.
6.2 Mtodos de Programacin.
6.3 Requerimientos de un Sistema de
Programacin de Robots.
6.4 Caractersticas Bsicas del Lenguaje
ACL (Advanced Control Language).
6.5 Ejemplo de Programacin de un
Robot Industrial.

Moverse a puntos predefinidos (especifica tray.).


Manipular objetos del entorno.
Condiciones.
Interaccionar con resto de la cadena de montaje (sincroniza
clula de fabricacin).

Programas usuales: en funcin de aplicaciones.


EJERC
Pensar en una aplicacin y obtener
un esquema del programa
1

Planificador De Tareas Y Tray. Robot Ind.


PROGRAMA
E/S

PLANIFICADOR DE
TAREAS
PLANIFICADOR DE
TRAYECTORIAS

GENERADOR DE
TRAYECTORIAS
CONTROLADOR
SENSORES

ACTUADORES

Esquema De Bloques De Clula de Robots

Programa de usuario
Datos del prog usuario (variables,
posiciones, parmetros de tray, etc.)
! Ej:pintar coche de superficie S
! Ej. Recta A"B. Arco B-C-D, etc.
Intrprete del programa
Generador tray (interpola, muestrea,
etc.)
! Ej: Puntos XYZ(kTm) y calcular
puntos qi(kTm)
Programa de Control (calcula voltajes,
lee encoders, etc.)
! Ej: converger qi,real(kTm)" qi(kTm)
Pequeo S.O. Tiempo real multitarea
Datos internos

ACTUADORES
SENSORES

CPU 1 de
brazos
CPU 2 de
brazos
...
CPU n de
brazos

Controlador central
Programa de usuario
Intrprete del programa
Generador tray (interpola,
muestrea, etc.)
Control (calcula voltajes)
S.O. Tiempo real multitarea

E/S adicional (especficos):


E: Sensores Anal. o Dig., Teach pendant, etc.
S: activa herramientas, otros disp., etc

puerto
serie

Work station del robot (PC):


Monitor central (clula):
Sincronizar y depurar cadena
Monitorizar cadena

RED

Escribir,simular, depurar programas


Enviar comandos (modo directo)
Monitorizar robot
4

Ejemplo

6.2. Mtodos De Programacin.

Tarea: Coger pieza de la cinta si hay una nueva DATOS PROGRAMA


Programa (lenguaje de programacin):
Ptos Origen y Destino
(6 coord. mundo)
1. Mover a POS1 en coord propias
Tipo de trayectoria
2. Abrir pinza
Tiempo empleado o
3. Espera sensor (detecta pieza)
velocidad
4. Desactivar cinta transportadora
Precisin
5. Mover a POS2 en lnea recta
6. Cerrar pinza
Mov aprox
7. Aumentar precisin
POS1
8. Mover a POS1 en lnea recta
Mov preciso recta
9. Activar cinta transportadora....
Sensor
POS2
3 es una inst condicional
Cinta trasp.
5
4,8 son inst E/S

Depende mucho de la estructura del robot/controlador


(computadores obsoletos, poca inversin en software robots)

Programacin por guiado o aprendizaje

Ventajas/Inconvenientes Prog. por guiado

En la actualidad no existe lenguaje estndar. Cada fabricante


desarrolla su mtodo particular, vlido slo para sus propios
robots
Todos ellos tienen caractersticas y requerimientos comunes.
Dos mtodos de programacin:
Guiado o aprendizaje: Mover fsicamente el robot, registrar
puntos y algunos comandos simples (botonera, paleta de
programacin o teach pendant).
Textual: Utilizando un lenguaje de programacin.
En la actualidad los sistemas de programacin tienden a
combinar estos dos mtodos.
6

Ventajas: simplicidad en todo.

Guiar o mover el robot, al tiempo que se guardan ciertas


posiciones (lectura de encoders) y comandos simples .

Fcil de aprender (operador, adems


conoce perfectam. la tarea a realizar).
No requiere work station.
Poca memoria.

Guiado pasivo directo: los actuadores estn desconectados y el


operador mueve el robot.
Guiado pasivo por maniqu (si robot pesa mucho o para no
detener la clula): robot idntico pero mucho ms ligero.
Guiado activo: mover el robot (utilizando sus propios actuadores)
con un joystick, teach pendant o teclado.

Inconvenientes: pobreza.

Pocos tipos y nmero de instrucciones.


Difcil estructuras condicionales, iterativas.
Difcil depurar y modificar programas.
No pueden ser programas largos.
Difcil interaccionar con E/S.
Sacar el robot (si no hay robot maniqu) de la cadena de
produccin durante mucho tiempo (guiado, programacin,
depuracin).
Puede ser peligroso para operador o robot

Se pueden grabar bastantes puntos de una tray. para


luego interpolar (continuous path), o slo ciertos puntos
de paso (via points).
Para la repeticin de la trayectoria se especifica otra
velocidad, tipo de trayectoria, precisin, etc.
Desde el teach pendant se pueden insertar condiciones,
accesos E/S, etc. (muy simples)
7

Programacin Textual o por Lenguaje RPL

Ejemplo Programacin Textual (I)

RPL: Robot Programming Language


Serie de rdenes (en secuencia) que se pueden
editar y posteriormente ejecutar.
Existe un texto o cdigo alto nivel (que se traducir
al cdigo mquina de la CPU).
Dos niveles:
Nivel Robot: comandos son movimientos simples.
Nivel Tarea, objeto o escena: se especifican objetivos,
tareas o el estado en que deben quedar los objetos (el
programador piensa en las relaciones entre piezas; el
robot es una simple herramienta)

Ejemplo Programacin Textual (II)

1.Definir: Estado y nombre


de piezas (escenario)
2.Ensamblar A dentro D

P4

P2

P1
P3

OTRO EJEMPLO:
1.Estado inicial (t=0):
descripcin geomtrica
2.Estado Final(t=T s):
A dentro D (eje A = eje
HUECO-D y Base A = Base
HUECO-D)

EJERC
Pensar en posibles prog a nivel de
tarea del Boletn Prob Tema 5

10

Ejemplo Programacin Textual (y III)


Programa a nivel de Robot: rdenes simples

Programa a nivel de Tarea o Escena


Importante el modelado geomtrico y estado de piezas
(como vietas de cmo debe quedar cada escena). Puede
ser muy complejo definirlo.
Importante la Inteligencia Artificial.
Ventaja: El programador piensa en la cadena de montaje;
el robot es una simple herramienta cuyas caractersticas
exactas no tiene por qu conocer.
Interesante: el chequeo de situaciones imprevistas las
hace el compilador o intrprete. Ej: Manipulacin de
muchos objetos o interrupciones, sincronismo de 2 robots
EJERC
Pensar en el trabajo que debera
hacer el compilador en estos
ejemplos difciles

Programa a nivel de
Tarea o Escena

P5

Actualmente: programacin a nivel robot (VAL II,


ACL, AML, V+, RAPID) con posibilidad de guiado.
El resto est en fase de investigacin.
9

Otros ejemplos (difciles):


Pintar coche.
Torres de Hanoi.

Tarea : Ensamblar la pieza A dentro de orificio D


Se subrayan palabras clave del lenguaje

11

1. Mover_ a Pl via P2
2. Vel = 0.2 * VELMAX
3. AbrirPinza
4. Prec = ALTA
5. Mover_ recta_ a P3
6. CerrarPinza
7. Espera= 0.5
8. Mover_ recta_ a Pl
9. Prec = MEDIA
10.Vel = VELMAX
11.Mover_ a P4 via P2
12.Prec = ALTA
13.Vel = 0.2 * VELMAX
14.Mover_ recta_ a P5
15.AbrirPinza
16....

;Situarse sobre pieza B


;Reducir velocidad
;Abrir pinza
;Aumentar precisin
;Descender vert. en lnea recta
;Cerrar pinza para coger piezaB
;Espera garantiza cierre pinza
;Ascender vert. en lnea recta
;Decrementar precisin
;Aumentar velocidad
;Situarse sobre bloque C
;Aumentar precisin
;Reducir velocidad
;Descender vert. en lnea recta
;Abrir pinza

La inteligencia, el conocimiento del entorno y la sincronizacin las pone


el programador.
12

Ventajas/Inconven. Prog. Textual a nivel robot

Otro ejemplo de Paletizado

Ventajas (respecto a program. por guiado):


Estructuras de programacin similares a las de los
computadores (iterativas, condicionales, subrutinas).
Acceso a E/S con comandos (interaccin entorno).
Sincronizacin fcil (rdenes Espera, Mientras
Entrada no activada..., etc.).

Inconvenientes: ms complejidad.
Necesita work station y programador de computadores
Los comandos suelen depender del robot y lenguaje
concretos.
Nmero elevado de instrucciones.
Difcil tener en cuenta accidentes, fallos, imprevistos.

Caja de
desechos

13

6.3 Requerimientos De Sist Progr. Robots(I)

Requerimientos De Sist Progr. Robots (II)

No hay estndar pero s caractersticas comunes.


Tipos de instrucciones similares.
Entorno de programacin.
Lenguajes interpretados (no compilados).
Depuracin, ejec paso a paso, simulacin.

Modelado del entorno (pobre).


Formas: generalm definidas con variables.
Def de unin rgida (tras ensamblaje),
adosamiento por gravedad, etc.
CAD en leng a nivel de tarea.

Especificar movimiento.

Tipos de datos y operadores.

14

Tipo de tray, punto destino, puntos de paso, veloc


o duracin, precisin, etc.
MOVE, SPEED

Convencionales (enteros, reales, booleanos, etc).


posicin, ngulo, etc. y operadores.
VAL II emplea (q1, ..., q6), (px ,py ,pz , , , ).
AML emplea (px ,py ,pz , , , ).
AL emplea (q1, ..., q6) y matrices de transf homog
ACL emplea (q1, ..., q6), (px ,py ,pz), relativas.
DEFP,TEACH,SET

Flujo de ejecucin.

15

Inicializacin (HOME) y finalizacin (END)


Similar a leng programacin procedurales
Subrutinas, iterativas, condicionales.
IF, ANDIF, FOR, GOSUB, ETC.

16

Requerimientos de Sist Progr. Robots (y III)

Esquema de Bloques de SCORBOT

Paralelismo (multitarea) y sincronismo.

SENSORES

Esperas, semforos, buzones.


Eventos (interrupciones configurables: prioridad,
instante en que son atendidas)
DELAY, WAIT, POST, PEND

ACTUADORES

Controlador central

E/S adicional
(especficos)

i8031, Motorola 68010


puerto serie
RS232

Manejo de E/S

Unidad de control o

Instrucciones de activacin y desactivacin.


Lecturas/escrituras analgicas (sensor de fuerza).
Red para conectar clula de fabricacin.
SET OUT, IF IN, ENABLE

Work station (PC) ATS


SCORBASE / ROBOCELL
Edicin y carga de
programas ACL

17

6.4 Caractersticas Bsicas De ACL (I)

18

6.4 Caractersticas Bsicas De ACL (y II)


Leng textual similar a lo explicado, no muy
estructurado ni potente.
Multitarea.
Adems simulador SCORBASE / ROBOCELL.
Dos modos:

SCORBOT ER 5 , 4, 9, 14, etc. (antes Eshed Robotec,


ahora: Intelitek, Israel). http://www.intelitek.com/
Robots ER 3,4,5, orientados a didctica y pequeos.
ACL=Advanced Control Language (nombre comercial).
Unidad de control SCORA: visibles y modificables los
parmetros internos (abierta).
Ms de 300 parmetros configuran (ACL se adapta al
robot fsico de que disponemos):

Direct (ATS, Advanced Terminal Software, guiado).


Edit (textual). Modos: programacin, backup.

Grupo A son los ejes. Grupo B para accesorios.


Grupo C para un eje concreto.
Tipos de Coord (posiciones): propias, XYZ, RP
Posiciones globales
Variables globales/privadas/sistema

Servocontrol (Ej: P,I,D)


Protecciones de ejes (Ej: T a la cual se corta el ampl.)
Limites de ejes, velocidad (Ej: Ang max, min, etc.)

No tiene unidad de FP las unidades en que se miden


las variables son pequeas (0.1 mm, 0.1 grado, 0.01 s)
para trabajar con nmeros enteros.
19

20

Estructura de un Programa en ACL


1. Definiciones
2. Inicializaciones
3. Algoritmo y
movimientos
(con subrutinas)
Notas:
Todas las posic
son globales
Var locales y
globales
No se envan
parmetros a
subrut (usar
globales)

PROGRAM NOMBRE * Programa principal


DEFP P1
* Definicin de posiciones
(tb recoger posiciones en modo directo)
HOME
SET V1=0
* Inicializar variab. y posiciones
DEFINE V1 V2 * Definicin de variables
PRINTLN ... VAR ...
GOSUB SUBPROG1
...
GOSUB SUBPROG2
...
END
**********************************************
PROGRAM SUBPROG1
...
END
PROGRAM SUBPROG2
...
END
21

You might also like