Vous êtes sur la page 1sur 5

Ejercicio Feedback Nº2.

Unidad Didáctica 6

Se pretende conseguir que el Robot realice las siguientes Operaciones:

PROC main()
MoveL PHOME,v1000,z50,tool0;
TPErase;
TPReadFK OPCION,"ELIGE
TRAYECTORIA","CUA",stEmpty,"TRI",stEmpty,"CIR";
TEST OPCION
CASE 1:
Cuadrado;
CASE 3:
Triangulo;
CASE 5:
Circulo;
ENDTEST
ENDPROC
ENDMODULE

En la Main, lo que hacemos es movernos a una posición de reposo PHOME. Mediante


el código TPReadFK, podemos leer las teclas de la pantalla, que hemos llamado como
pide en el programa “CUA” , “TRI” , “CIR”. He dejado espacios intermedios para hacer
que el entorno grafico sea mas agradable.
Después de elegir una de las 3 opciones, capturamos en la variable OPCION el numero
de registro, y mediante los Cases de la instrucción TEST, iremos a la rutina
seleccionada.

Ejercicio feedback Página 1 de 5


 CUA: El Robot ejecuta una rutina o movimiento que describa un Cuadrado con el
siguiente mapa de puntos. P1 a P2 a P3 a P4 y nuevamente a P1.

PROC Cuadrado()
MoveL p1,v500,fine,tool0;
MoveL p2,v500,fine,tool0;
MoveL p3,v500,fine,tool0;
MoveL p4,v500,fine,tool0;
MoveL p1,v500,fine,tool0;
RETURN;
ENDPROC
Al llamar a este procedimiento nos genera un cuadrado, moviéndose entre puntos con
un movimiento lineal, a una velocidad que es el doble de la velocidad que llevaría en
modo manual. Para que haga un cuadrado perfecto la zona será fine.

Ejercicio feedback Página 2 de 5


TRI: El Robot ejecuta una rutina o movimiento que describa un triangulo con el
siguiente mapa de puntos. P5 a P6 a P7 y nuevamente a P5.

PROC Triangulo()
MoveL p5,v500,fine,tool0;
MoveL p6,v500,fine,tool0;
MoveL p7,v500,fine,tool0;
MoveL p5,v500,fine,tool0;
RETURN;
ENDPROC

Al llamar a este procedimiento nos genera un triagulo, moviéndose entre puntos con un
movimiento lineal, a una velocidad que es el doble de la velocidad que llevaría en modo
manual. Para que haga un triangulo perfecto la zona será fine.

Ejercicio feedback Página 3 de 5


 CIR: El Robot ejecuta una rutina o movimiento que describa un Círculo con el
siguiente mapa de puntos. P8 a P9 a P10 a P11 y nuevamente a P8.

PROC Circulo()
MoveJ p8,v400,fine,tool0;
MoveC p9,p10,v400,fine,tool0;
MoveC p11,p8,v400,fine,tool0;
RETURN;
ENDPROC

Al llamar a este procedimiento nos genera un círculo, moviéndose entre puntos con un
movimiento lineal, a una velocidad de 400 mm/s. Para que haga un círculo perfecto la
zona será fine.

Ejercicio feedback Página 4 de 5


MODULE FEEDBACK16
Definición de los puntos de posición del programa.

CONST robtarget
CONST robtarget p11:=[[1050,-150,1250],[0.707107,0,0.707107,0],[-1,-1,0,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p10:=[[1050,0,1100],[0.707107,0,0.707107,0],[0,0,0,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p9:=[[1050,150,1250],[0.707107,0,0.707107,0],[0,0,-1,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p8:=[[1050,0,1400],[0.707107,0,0.707107,0],[0,0,0,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p7:=[[1100,-200,1000],[0.707107,0,0.707107,0],[-1,-1,0,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p6:=[[1100,200,1000],[0.707107,0,0.707107,0],[0,0,-1,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p5:=[[1100,0,1400],[0.707107,0,0.707107,0],[0,0,0,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p4:=[[1100,-200,1400],[0.707107,0,0.707107,0],[-1,-1,0,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p3:=[[1100,-200,1000],[0.707107,0,0.707107,0],[-1,-1,0,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p2:=[[1100,200,1000],[0.707107,0,0.707107,0],[0,0,-1,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p1:=[[1100,200,1400],[0.707107,0,0.707107,0],[0,0,-1,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget PHOME:=[[950,0,1400],[0.707107,0,0.707107,0],[0,0,0,0],
[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

Definición de la variable numérica OPCION.


VAR num OPCION:=0;

Ejercicio feedback Página 5 de 5

Vous aimerez peut-être aussi