Programación 11 V3 ABB.

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

  1. Ejemplo usando estas instrucciones  MoveL Offs, WaitTime & FOR; Si quiere realizar este ejemplo puede tomar como base la estación: Estación PROG_11 V3 Vacía:
        MODULE Module1
    	VAR robtarget Primera_Pos:=[[-0.222935967,0.000098037,49.999436079],[0,0,1,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
        VAR num NSec := 0;
        VAR num NUMERO := 0;
        CONST jointtarget Home_Abs:=[[0,0,0,0,30,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    
        
    	PROC main()
            
            Primera_Pos.trans.x := -0.222935967;
            Primera_Pos.trans.y := 0.000098037;
            Primera_Pos.trans.z := 49.999436079;
            
            TPErase;
            TPReadnum NUMERO, "Introduzaca un número entre 1 y 4";
            MoveAbsJ Home_Abs,v1000,fine,MyTool\WObj:=W_Soldar;
            
            TEST NUMERO
            
            CASE 1: 
                TPWrite "Soldando Derecha";
                FOR NSec FROM 0 to 2 DO
                
                Soldar;
                
                Primera_Pos.trans.x := Primera_Pos.trans.x  + 100;
                MoveL Primera_Pos,v200,fine,MyTool\WObj:=W_Soldar;
                
                ENDFOR
                
            CASE 2: 
                TPWrite "Soldando Centro";
                
                Primera_Pos.trans.x := Primera_Pos.trans.x  + 300;
                
                FOR NSec FROM 0 to 2 DO
                
                Soldar;
                
                Primera_Pos.trans.y :=  Primera_Pos.trans.y + 100;
                MoveL Primera_Pos,v200,fine,MyTool\WObj:=W_Soldar;
                
                ENDFOR
                
            CASE 3: 
                TPWrite "Soldando Izquierda";
                
                Primera_Pos.trans.x := Primera_Pos.trans.x  + 300;
                Primera_Pos.trans.y :=  Primera_Pos.trans.y + 300;
                
                FOR NSec FROM 0 to 2 DO
                
                Soldar;
                
                Primera_Pos.trans.x :=  Primera_Pos.trans.x - 100;
                MoveL Primera_Pos,v200,fine,MyTool\WObj:=W_Soldar;
                
                ENDFOR
                
            CASE 4: 
                TPWrite "Soldando Derecha";
                
                
                FOR NSec FROM 0 to 2 DO
                
                Soldar;
                
                Primera_Pos.trans.x := Primera_Pos.trans.x  + 100;
                MoveL Primera_Pos,v200,fine,MyTool\WObj:=W_Soldar;
                
                ENDFOR
                
                TPWrite "Soldando Centro";
                
                FOR NSec FROM 0 to 2 DO
                
                Soldar;
                
                Primera_Pos.trans.y :=  Primera_Pos.trans.y + 100;
                MoveL Primera_Pos,v200,fine,MyTool\WObj:=W_Soldar;
                
                ENDFOR
                
                TPWrite "Soldando Izquierda";
                
                FOR NSec FROM 0 to 2 DO
                
                Soldar;
                
                Primera_Pos.trans.x :=  Primera_Pos.trans.x - 100;
                MoveL Primera_Pos,v200,fine,MyTool\WObj:=W_Soldar;
                
                ENDFOR
            
            
            ENDTEST
            
            
            
    	    Soldar;
            
            MoveAbsJ Home_Abs,v1000,fine,MyTool\WObj:=W_Soldar;
            
    	ENDPROC
        
        PROC Soldar()
        
            MoveL RelTool(Primera_Pos,0,0,0),v200,fine,MyTool\WObj:=W_Soldar;
            MoveL RelTool(Primera_Pos,0,0,50),v200,fine,MyTool\WObj:=W_Soldar;
            WaitTime 2;
            MoveL RelTool(Primera_Pos,0,0,0),v200,fine,MyTool\WObj:=W_Soldar;
            
        ENDPROC
    ENDMODULE

    Loading...


     Links de Interés:


    Fecha de Publicación: 05/03/2021