Programación 3 ABB.

Aprender Lenguaje RAPID, podremos programar desde RobotStudio, o desde la FlexPendant.

  1. Instrucción TPReadNum; Mostrará en la pantalla de operador un mensaje con un teclado numérico. TPReadNum se encarga de asignar el valor numérico introducido en una variable, en primer lugar indicaremos la variable en la cual guardaremos la respuesta numérica, por ultimo indicaremos el texto que se mostrará en la pantalla. El formato de esta instrucción es :
    TPReadNum <Variable>,"Texto a mostrar en la pantalla";
  2. Control de Flujo TEST; Según el valor de la variable ejecutaremos unas instrucciones u otras, para verlo mas claro pondremos unos ejemplos mas adelante. El formato de esta instrucción es el siquiente:
    TEST <variable>
    CASE <Valor de la variable con el que queremos ejecutar las siguientes instrucciones> :
    
    !Instrucciones a ejecutar en el primer caso
    
    CASE <Valor de la variable con el que queremos ejecutar las siguientes instrucciones>:
    
    !Instrucciones a ejecutar en el segundo caso
    
    ENDTEST
  3. Control de Flujo TEST; Ejemplo con una variable "Numero" y 4 opciones diferentes:
    VAR Num Numero := 0;
    !Declaro Numero y la inicializo en 0
    
    TEST Numero 
    CASE 1:
    !Instrucciones que realizaremos valiendo Numero =  1
    
    MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0;
    
    CASE 2:
    !Instrucciones que realizaremos valiendo Numero =  2
    
    MoveJ Target_20,v1000,fine,MyTool\WObj:=wobj0;
    
    CASE 3,4:
    !Instrucciones que realizaremos valiendo Numero =  3 o Numero = 4
    
    MoveJ Target_30,v1000,fine,MyTool\WObj:=wobj0;
    
    CASE 5,6,8:
    !Instrucciones que realizaremos valiendo Numero =  5 o Numero = 6 o Numero = 8
    
    MoveJ Target_40,v1000,fine,MyTool\WObj:=wobj0;
    
    ENDTEST
  4. Ejemplo usando estas instrucciones  TPReadNum & TEST; Si quiere realizar el ejemplo puede tomar como base el ejercicio Programación 1 ABB:
    MODULE Module1
    	CONST robtarget Target_10:=[[547.330665099,0,451.64730631],[0.190808996,0,0.981627183,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    	CONST robtarget Target_20:=[[579.997326386,-300.000184257,-0.002460883],[0.00007062,0.000000176,-0.999999998,0.000000105],[-1,1,-2,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    	CONST robtarget Target_30:=[[580.000005471,300.000017813,-0.000058921],[0.000070808,0.000000206,-0.999999997,0.000000106],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    	CONST robtarget Target_20_2:=[[580.004388386,-300.000173756,49.997538618],[0.00007062,0.000000176,-0.999999998,0.000000105],[-1,1,-2,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    	CONST robtarget Target_30_2:=[[580.007086271,300.000028414,49.999940578],[0.000070808,0.000000206,-0.999999997,0.000000106],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
        CONST robtarget Target_50:=[[339.99,300,0],[0.014306426,0.021153167,0.999670738,0.002507023],[0,-1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
        CONST robtarget Target_50_2:=[[339.99,300,50],[0.014306426,0.021153167,0.999670738,0.002507023],[0,-1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
        CONST robtarget Target_40:=[[589.999996765,300.000000063,-0.000079507],[0.014305147,0.021155022,0.999670717,0.002507207],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
        VAR Num NumeroCase := 0;
        !***********************************************************
        !
        ! Módulo:  Module1
        !
        ! Descripción:
        !   <Introduzca la descripción aquí>
        !
        ! Autor: Carlos Urrestarazu
        !
        ! Versión: 1.0
        !
        !***********************************************************
        
        
        !***********************************************************
        !
        ! Procedimiento Main
        !
        !   Este es el punto de entrada de su programa
        !
        !***********************************************************
        PROC main()
    		TPErase;
            TPReadNum NumeroCase,"Introduzca un numero entre: 1 y 2.";
    		TEST NumeroCase
                CASE 1:
                TPWrite "Soldando Derecha";
        			MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0;
        			MoveJ Target_20_2,v1000,fine,MyTool\WObj:=wobj0;
        			MoveJ Target_20,v1000,fine,MyTool\WObj:=wobj0;
        			MoveJ Target_20_2,v1000,fine,MyTool\WObj:=wobj0;
                CASE 2:
        			TPWrite "Soldando Izquierda";
        			MoveJ Target_30_2,v1000,fine,MyTool\WObj:=wobj0;
        			MoveJ Target_30,v1000,fine,MyTool\WObj:=wobj0;
            ENDTEST
            MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0;
            !Añada aquí su código
        ENDPROC
    ENDMODULE



     Links de Interés:


    Fecha de Publicación: 29/01/2021