Programación 6 ABB.
Aprender Lenguaje RAPID, podremos programar desde RobotStudio, o desde la FlexPendant.
- Control de Flujo WHILE; Bucle While, este repetirá las instrucciones de su interior mientras el valor de la variable cumpla la condición programada.
- Control de Flujo WHILE; Formato de la misma:
WHILE IN1 = 1 DO !El Bucle se ejecutara siempre que se cumpla esta condición !Instrucciones a realizar mientras se cumple la condición ENDWHILE
- Ejemplo usando estas instrucions TPWrite, TPErase, IF & WHILE; Si quiere realizar el ejemplo puede tomar como base el ejercicio Programación 4 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_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_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_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_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]]; VAR num Contador := 1; PROC main() MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0; TPErase; WHILE IN1 = 1 DO TPErase; TPWrite "Numero: " \ NUM:= Contador; TPWrite "Soldando Derecha"; Secuencia_1; TPWrite "Soldando Izquierda"; Secuencia_2; MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0; Contador := Contador + 1; IF IN2 = 1 THEN !Resetar Contador Contador := 1; ENDIF ENDWHILE MoveJ Target_10,v1000,fine,MyTool\WObj:=wobj0; IF IN2 = 1 THEN !Resetar Contador Contador := 1; ENDIF ENDPROC PROC Secuencia_1() MoveJ Target_20_2,v1000,fine,MyTool\WObj:=wobj0; MoveJ Target_20,v1000,fine,MyTool\WObj:=wobj0; WaitTime 2; MoveJ Target_20_2,v1000,fine,MyTool\WObj:=wobj0; ENDPROC PROC Secuencia_2() MoveJ Target_30_2,v1000,fine,MyTool\WObj:=wobj0; MoveJ Target_30,v1000,fine,MyTool\WObj:=wobj0; WaitTime 2; MoveJ Target_30_2,v1000,fine,MyTool\WObj:=wobj0; ENDPROC ENDMODULE