Hallo liebe Community,
Ich habe ein Problem zum Roboter “MELFA Mitsubishi RV-3SB„ und zwar möchte ich in einem Koordinatensystem bestimmte Winkel um den TCP fahren. Das seltsame ist, dass es mit einer Achse funktioniert und auf anderen überhaupt nicht.
Wie gesagt habe ich einen festen Punkt (TCP) in meinem Koordinatensystem um diesem möchte ich horizontal und vertikal (falls möglich auch diagonal) bestimmte Winkel abfahren.
Bislang habe ich es so gemacht:
10 TOOL(+550,+10.00,+72.00,+0.00,+0.00,+0.00) ‘festlegung des TCP
20 OVRD 10 ‘ geschwindikeit limitiert
30 PREC ON ‘ präzision ein
40 M2 = 0 ‘ variable 2 null gesetzt
50 MOV P1 ‘ startposition anfahren
60 DLY 2 ‘ warten
70 OPEN "COM3:" AS #1 ‘ tcp/ip schnittstelle init
80 INPUT #1,M1 ‘ einlesen in variable 1
90 SELECT M1 ‘ fälle abgleichen
100 CASE 2
110 IF P_CURR.A >= -90 THEN ‘ abgleich für vorzeichen
120 M2 = M2 - 0.5
130 PRINT #1,"Eingegeben: -0.5[°]";" ---> "
140 PRINT #1,"Aktueller Wert:";M2;"[°]";CR$
150 P5 = (,,,,+0.50) ‘ positionsvariable
160 P6 = P_CURR ‘ aktuelle pos
170 P7 = P6 / P5 ‘ paktuell – p5
180 MOV P7
190 ELSE
200 M2 = M2 - 0.5
210 PRINT #1,"Eingegeben: -0.5[°]";" ---> "
220 PRINT #1,"Aktueller Wert:";M2;"[°]"
230 P5 = (,,,,+0.50)
240 P6 = P_CURR
250 P7 = P6 * P5
260 MOV P7
270 ENDIF
280 BREAK
Dies funktioniert auch sehr gut für das abfahren auf einem Kreisbogen auf einer Achse. Allerdings möchte ich nun wie bereits erwähnt nicht nur horizontal sondern vertikal den Arm bewegen können.
Theoretisch müsste ich dazu doch „nur“ die Positionsvariable P5 wie folgt definieren
P5 = (0,0,0,0,0,0.5) da ja (x,y,z,a,b,c) gilt oder?
Wenn ich dies ändere, passiert leider herzlich wenig aber warum?
Wenn ich manuell also im teach-modus „TOOL“ die verschiedenen Achsen abfahre ist für die horizontale B und für die vertikale C zu verändern.
Auch würde ich gern eine diagonal die Winkel abfahren dazu sollte ich doch einfach beide Werte für B und C erhöhen bzw. verringern z.B.
P5 = (0,0,0,0,0.5,0.5)
Vielen Dank im voraus
Grüße
dreadek