Programación 2 ABB.

Aprender Linguaxe RAPID, poderemos programar desde RobotStudio, ou desde a FlexPendant.

  1. Instrución TPReadFK; Mostrará na pantalla de operador unha mensaxe con distintas opcións de resposta. TReadFK  encárgase de ler as teclas de función da programadora, en primeriro lugar indicaremos a variable na cal gardaremos a resposta, a continuación indicaremos o texto que se mostrará na pantalla, por ultimo temos 5 StEmpty cos que xogaremos para ir activando ou desactivando botóns. Se os deixamos por defecto no se mostrará ningún botón, se queremos mostrar un botón substituiremos ese texto polo nome que lle queremos dar ao noso botón, como veremos no exemplo. O formato desta instrución é :
    TPReadFK <Variable>, "Texto a mostrar na pantalla", StEmpty, StEmpty, StEmpty, StEmpty, StEmpty;
  2. Exemplo usando esta instrución  TPReadFK; Se quere realizar o exemplo pode tomar como base o exercicio 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 Numero := 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;
            TPReadFK Numero,"Seleccione la secuencia a Realizar  ", "Secuencia 1", "Secuencia 2",stEmpty,stEmpty,stEmpty;
            IF Numero = 1 THEN
    			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;
            ELSEIF Numero = 2 THEN
    			TPWrite "Soldando Izquierda";
    			MoveJ Target_30_2,v1000,fine,MyTool\WObj:=wobj0;
    			MoveJ Target_30,v1000,fine,MyTool\WObj:=wobj0;
    		ENDIF
            MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0;
            !Añada aquí su código
        ENDPROC
    ENDMODULE


     


     Links de Interese:


    Data Publicación: 29/01/2021

Programación 1 ABB.

Aprender Linguaxe RAPID, poderemos programar desde RobotStudio, ou desde a FlexPendant.

  1. Control de Fluxo Compact IF; Executará unha instrución só se a condición cúmprese:
    IF "Condición"  "Instrución";
  2. Exemplo Compact IF:
    IF IN1 = 0 MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0;
  3. Control de Fluxo IF; Executará diferentes instrucions, se a condición cúmprese ejecutará as instrucions situadas entre "THEN" e "ELSE", se non se cumpre executará as situadas entre "ELSE" e "ENDIF":
    IF "Condición" THEN
    
    "Instruciones que dexesamos realizar se a  Condición cúmprese"
    
    ELSE
    
    "Instruciones que dexesamos realizar se a  Condición NON cúmprese"
    
    ENDIF
  4. Ejemplo IF:
    IF IN1 = 0 THEN
    !Esto es un comentario en RAPID
    
    !Si la Condición "IN1 = 0" se Cumple se ejecutará la siguiente Instrucción:
    
    MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0;
    
    ELSE
    !Si la Condición "IN1 = 0" NO se Cumple se ejecutará la siguiente Instrucción:
    
    MoveJ Target_20,v1000,fine,MyTool\WObj:=wobj0;
    
    ENDIF
  5. Instrución para escribir unha mensaxe na pantalla do operador TPWrite; Esta instrución mostrará unha mensaxe na pantalla do operador, desta maneira podemos informar do proceso que está a realizar o Robot, ou número de pezas realizadas..., formato da instrución:
    TPWrite "Texto a Mostrar na Pantalla do Operador";
  6. Ejemplo TPWrite:
    TPWrite "Realizando Proceso de soldadura";
  7. Instrución para borrar la pantalla do operador TPErase; Esta instrución borrará a pantalla do operador:
    TPErase;
  8. Exemplo usando tres das instrucións anteriores IF, TPWrite & TPErase; Se quiere realizar o exemplo pode tomar como base o exercicio Simulación 2 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]];
        !***********************************************************
        !
        ! 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;
    		IF IN1 = 0 THEN
    			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;
    		ELSE
    			TPWrite "Soldando Izquierda";
    			MoveJ Target_30_2,v1000,fine,MyTool\WObj:=wobj0;
    			MoveJ Target_30,v1000,fine,MyTool\WObj:=wobj0;
    		ENDIF
            MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0;
            !AñadWa aquí W""digo
        ENDPROC
    ENDMODULE



     Links de Interese:


    Data Publicación: 29/01/2021