Mechanisch möchte ich nun fast ausschließen, ich habe mir nochmal alles angeschaut. Bodenbefestigung, Motorbefestigungen, alles ok.
Wir glauben auch mittlerweile auch, dass es ein Softwareproblem sein muss. Blöd ist nur, dass wir es nicht 100% reproduzieren können.
Ich würde hier mal eine Rotuine einstellen, bei der wir das Problem immer wieder haben. Vielleicht fällt da jemand direkt was dabei auf.
Was ich auch nicht ganz verstehe, es gibt Definitiionen für die Robtargets, vielleicht ist da ein Fehler drin? Ich hänge es hier mal mit an .
%%%
VERSION:1
LANGUAGE:ENGLISH
%%%
MODULE R4TEIL_42
PROC R4_42()
AccSet 100,100;
!40-04b Middle Hood Support lang
!Wenn nur das Vorhandensein dieses Programms
!geprueft wird direkt wieder zurueckspringen
IF bCheckProg RETURN;
!Ist der Werkzeugwechselflansch geschlossen ?
TPErase;
!Signale zuruecksetzen
GripLoad load0;
Reset doGrWechsPos;
Reset doGrSoFu1_Aus;
Reset doGrSoFu2_Aus;
Reset doGrSoFu1_Ein;
Reset doGrSoFu2_Ein;
!Vorposition Entladepresse
MoveJ [[1232.76,-742.72,1326.42],[0.002671,-0.512527,-0.858652,0.005158],[-1,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v1000,z40,tool_42;
Set doIRBausPrLi;
Set doIRBausIRBLi;
Set doIRBausPrRe;
Set doIRBausIRBRe;
Set doWartestellung;
!Warten auf Entnahmefreigabe
WaitBreakDi diFgPrLiEntl,high,tmFreig1_Pr2,10;
!Irb fährt in die linke Presse
WaitDI diFgRobLi,1;
Reset doIRBausPrLi;
!Irb fährt in den Arbeitsbereich des linken Nachbarroboters
Reset doIRBausIRBLi;
!Presse wurde noch nicht entladen
Reset doPrLiEnt;
Reset doWartestellung;
AccSet 70,50;
MoveL [[1931.09,-2106.18,1274.13],[0.001645,0.720675,0.693272,-0.000662],[-1,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v2000,z20,tool_42;
AccSet 30,30;
MoveL [[1911.85,-2104.92,1130.88],[0.001222,0.720594,0.693356,-0.000697],[-1,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v500,fine,tool_42;
!Saugen aktivieren
AnsaugenK123;
GripLoad loTool_42;
WaitUntil\InPos,diVakuum1_OK=1;
WaitUntil\InPos,diVakuum2_OK=1;
WaitUntil\InPos,diVakuum3_OK=1;
GripLoad loTool_42;
!Teil hängt am Greifer
AccSet 30,30;
MoveL [[1912.14,-2104.67,1354.54],[0.00118,0.720506,0.693449,-0.000433],[-1,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v200,fine,tool_42;
WaitUntil\InPos,diVakuum1_OK=1;
WaitUntil\InPos,diVakuum2_OK=1;
WaitUntil\InPos,diVakuum3_OK=1;
AccSet 30,30;
MoveL [[2052.85,-1379.25,1354.14],[0.00138,0.721043,0.692889,-0.000861],[-1,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v1500,z30,tool_42;
WaitUntil diVakuum1_OK=1;
WaitUntil diVakuum2_OK=1;
WaitUntil diVakuum3_OK=1;
!Vorbereiten der Freigabe- Trigger der Störbereiche
TriggEquip trIRBausPrLi,0,0\DOp:=doIRBausPrLi,1;
TriggEquip trIRBausIRBLi,0,0\DOp:=doIRBausIRBLi,1;
!Anfahren der Triggerpos ausserhalb der Entladepresse
TriggJ [[1248.34,-721.81,1385.95],[0.001079,0.539798,0.841794,-0.001116],[-1,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v1500,trIRBausPrLi\T2:=trIRBausIRBLi,z150,tool_42;
WaitUntil diVakuum1_OK=1;
WaitUntil diVakuum2_OK=1;
WaitUntil diVakuum3_OK=1;
!Presse wurde entladen
Set doPrLiEnt;
AccSet 30,30;
MoveJ [[1324.24,249.52,1510.2],[0.00425,-0.504073,0.863651,-0.000389],[0,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v1000,z30,tool_42;
Set doWartestellung;
!Warten auf Beladefreigabe
WaitBreakDi diFgPrReBel,high,tmFreig1_Pr2,10;
!Irb fährt in die rechte Presse
WaitDI diFgRobRe,1;
Reset doIRBausPrRe;
!Presse wurde noch nicht beladen
Reset doPrReBel;
!Irb fährt in den Arbeitsbereich des rechten Nachbarroboters
Reset doIRBausIRBRe;
Reset doWartestellung;
AccSet 50,50;
MoveL [[2247.5,1763.35,1422.86],[0.00504,-0.688696,0.725033,-0.000378],[0,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v3000,z10,tool_42;
WaitUntil\InPos,diVakuum1_OK=1;
WaitUntil\InPos,diVakuum2_OK=1;
WaitUntil\InPos,diVakuum3_OK=1;
MoveL [[2276.66,1762.81,1252.01],[0.005123,-0.688759,0.724972,-0.00062],[0,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v500,fine,tool_42;
!Teil abblasen
AbblasenK123;
WaitUntil\InPos,diVakuum1_OK=0;
WaitUntil\InPos,diVakuum2_OK=0;
WaitUntil\InPos,diVakuum3_OK=0;
MoveL [[2270.39,1745.24,1402.11],[0.004686,-0.690682,0.723143,-0.001192],[0,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v2000,z20,tool_42;
MoveL [[2270.38,1095.77,1402.1],[0.004814,-0.690682,0.723142,-0.001095],[0,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v2500,z100,tool_42;
TriggEquip trIRBAusPrRe,0,0\DOp:=doIRBausPrRe,1;
TriggEquip trIRBAusIRBRe,0,0\DOp:=doIRBausIRBRe,1;
!Anfahren der Triggerpos ausserhalb der Beladepresse
TriggJ [[1340.17,-14.6,1402.17],[0.005034,-0.485455,0.874247,-4.1E-05],[-1,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v1500,trIRBAusPrRe\T2:=trIRBAusIRBRe,z100,tool_42;
!Presse wurde beladen
Set doPrReBel;
AccSet 40,40;
MoveJ [[1232.77,-742.72,1326.47],[0.002701,-0.512534,-0.858647,0.005156],[-1,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v1500,z100,tool_42;
ENDPROC
ENDMODULE
Alles anzeigen