Simulación 7 con RobotStudio ABB, Paletizado bloques.

Programación de robots industriales Off- Line.

  1. Aprender a crear Subrutinas.
  2. Crear Bases.
  3. Usar Entradas y Salidas Digitales.

Posición, y Rotación de los objetos:
-Tomando como referencia Mundo.
 
Objeto X Y  Z  Descargar Componentes  A   B  C 
Robot 0 0 0 Robot componente 0 0 0
Euro Pallet -580 -1880 0 Componente Euro Pallet 0 0 0
Cinta 1220 2750 0 Componente Cinta 0 0 -90
Pieza piedra - - - Componente Pieza piedra 0 0 0
SC_Ventosa - - - Componente SC_Ventosa - - -
Estación Completa (Vacía) - - - Estación Completa - - -


Loading...


 RAPID:

MODULE Module1
	CONST jointtarget Home:=[[0,0,0,0,90,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	CONST robtarget Target_10:=[[250.000246191,243.999999646,399.999789098],[0.006327508,0.000000015,-0.999979981,0],[0,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	CONST robtarget Target_20:=[[256.327627522,243.99999974,899.959751741],[0.006327508,0.000000015,-0.999979981,0],[0,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	CONST robtarget Target_30:=[[623.512596326,229.204785272,1245.960036282],[0.004483287,-0.705657789,-0.708524556,-0.004465148],[-2,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	CONST robtarget Target_40:=[[385.202826132,-594.895337591,900.405447727],[0.0044833,-0.705657806,-0.70852454,-0.004465163],[-2,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	CONST robtarget Target_50:=[[385.163075225,-588.692570194,401.064983399],[0.004483281,-0.705657776,-0.708524569,-0.004465139],[-2,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	
    CONST robtarget Target_70:=[[385.177,-192.977,400.183],[0.004482755,-0.705659614,-0.708522746,-0.00446464],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	CONST robtarget Target_60:=[[385.177,92.977,900.143],[0.004482755,-0.705659614,-0.708522746,-0.00446464],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    CONST robtarget Target_60_2:=[[385.177,92.977,650.163],[0.004482755,-0.705659614,-0.708522746,-0.00446464],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    
    CONST robtarget Target_90:=[[788.329685601,-590.20796472,400.182663496],[0.00448328,-0.705657774,-0.708524572,-0.004465138],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	CONST robtarget Target_80:=[[988.354,-596.13,900.143],[0.004482755,-0.705659614,-0.708522746,-0.00446464],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    CONST robtarget Target_80_2:=[[988.342,-592.966,650.163],[0.004482755,-0.705659614,-0.708522746,-0.00446464],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    
   
    
    CONST robtarget Target_110:=[[788.33,-192.977,400.183],[0.004482755,-0.705659614,-0.708522746,-0.00446464],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	CONST robtarget Target_100:=[[988.33,92.977,900.143],[0.004482755,-0.705659614,-0.708522746,-0.00446464],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
    CONST robtarget Target_100_2:=[[988.33,92.977,650.163],[0.004482755,-0.705659614,-0.708522746,-0.00446464],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
	CONST robtarget Target_30_2:=[[1130.065271244,229.204763256,1245.960026454],[0.004483274,-0.705657796,-0.70852455,-0.004465143],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];


    PROC main()
		INICIO;
		MoveAbsJ Home,v1000,fine,tool0\WObj:=wobj0;
        CINTA;
        CAJA_1;
        CINTA;
        CAJA_2;
        CINTA;
        CAJA_3;
        CINTA;
        CAJA_4;
        MoveAbsJ Home,v1000,fine,tool0\WObj:=wobj0;
        !Añada aquí su código
    ENDPROC
	PROC INICIO()
		SetDO Out_1,0;
		SetDO Out_2,0;
		SetDO Out_3,0;

	ENDPROC
	PROC COGER()
	    SetDO Out_2,0;
	    SetDO Out_1,1;
	    WaitDI IN_1,1;
		WaitTime 0.5;
	ENDPROC
	PROC SOLTAR()
	    SetDO Out_1,0;
	    SetDO Out_2,1;
	    WaitDI IN_1,1;
		WaitTime 0.5;
	ENDPROC
	PROC CINTA()
	    MoveJ Target_20,v1000,fine,tVacuum\WObj:=W_Cinta;
	    Arrancar_Cinta;
	    Esperar_Caja;
	    Parar_Cinta;
	    MoveL Target_10,v1000,fine,tVacuum\WObj:=W_Cinta;
		COGER;
		MoveL Target_20,v1000,fine,tVacuum\WObj:=W_Cinta;
	ENDPROC
	PROC CAJA_1()
		MoveJ Target_30,v1000,z100,tVacuum\WObj:=W_Pallet;
		MoveL Target_40,v1000,fine,tVacuum\WObj:=W_Pallet;
		MoveL Target_50,v1000,fine,tVacuum\WObj:=W_Pallet;
        SOLTAR;
        MoveL Target_40,v1000,fine,tVacuum\WObj:=W_Pallet;

	ENDPROC
	PROC CAJA_2()
		MoveJ Target_30,v1000,z100,tVacuum\WObj:=W_Pallet;
		MoveL Target_60,v1000,fine,tVacuum\WObj:=W_Pallet;
		MoveL Target_60_2,v1000,fine,tVacuum\WObj:=W_Pallet;
		MoveL Target_70,v1000,fine,tVacuum\WObj:=W_Pallet;
        SOLTAR;
        MoveL Target_60,v1000,fine,tVacuum\WObj:=W_Pallet;

	ENDPROC
	PROC CAJA_3()
        MoveJ Target_30_2,v1000,z100,tVacuum\WObj:=W_Pallet;
        MoveL Target_80,v1000,fine,tVacuum\WObj:=W_Pallet;
        MoveL Target_80_2,v1000,fine,tVacuum\WObj:=W_Pallet;
        MoveL Target_90,v1000,fine,tVacuum\WObj:=W_Pallet;
        SOLTAR;
        MoveL Target_80,v1000,fine,tVacuum\WObj:=W_Pallet;

	ENDPROC
	PROC CAJA_4()
        MoveL Target_30_2,v1000,fine,tVacuum\WObj:=W_Pallet;
        MoveL Target_100,v1000,fine,tVacuum\WObj:=W_Pallet;
        MoveL Target_100_2,v1000,fine,tVacuum\WObj:=W_Pallet;
        MoveL Target_110,v1000,fine,tVacuum\WObj:=W_Pallet;
        SOLTAR;
        MoveL Target_100,v1000,fine,tVacuum\WObj:=W_Pallet;

	ENDPROC
	PROC Arrancar_Cinta()
	    SetDO Out_3,1;
	ENDPROC
	PROC Esperar_Caja()
	    WaitDI IN_2,1;
	ENDPROC
	PROC Parar_Cinta()
	    SetDO Out_3,0;
	ENDPROC
ENDMODULE

Enlaces de Interés:


Fecha de Publicación: 22/02/2020