Roboterforum Willkommen Gast. Bitte einloggen oder registrieren.
Haben Sie Ihre Aktivierungs E-Mail übersehen?
08. Februar 2012, 16:13:42
Übersicht Hilfe Suche Kalender Einloggen Registrieren
News: >> Roboterprogrammierer gesucht !? <<

Roboterforum für Industrieroboter Anwender  |  Industrieroboter Helpcenter  |  ABB Roboter (Moderatoren: burlibua, Sven Weyer, rmac)  |  Thema: Achse blocken / exklusiv Bewegen 0 Mitglieder und 1 Gast betrachten dieses Thema. « vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: Achse blocken / exklusiv Bewegen  (Gelesen 1303 mal)
EM Robo
Neuling
*
Offline Offline

Beiträge: 4


« am: 09. Februar 2010, 10:14:03 »

Hallo!
Gibt es eine Möglichkeit, die Bewegung einer Achse zu blockieren? Verwende einen IRB2400 und möchte verhindern, dass sich Achse 4 selbsständig dreht. Für das Erreichen der Position ist die Drehung nicht nötig und sorgt lediglich zu Aussetzern.

Zweite Frage:
Kann nur eine Achse angesteuert werden? Möchte den Roboter in Grundstellung lassen, Achse 5 um 90° nach oben drehen. Auf dem Werkzeugflansch wird eine Platte montiert, welche sich um +/-45° um Achse 4 Drehen soll.
Wollte gerne den Befehl "IndAMove" verwenden, die Option Independent Movement ist jedoch leider nicht vorhanden.

Danke für eure Hilfe!
Gespeichert
Thilbi
Special Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 213



« Antworten #1 am: 09. Februar 2010, 11:37:21 »

Hallo,

schau dir mal den Befehl MoveAbsJ. Damit kannst du direkt Achswerte eingeben und verfahren.
Auf die schnelle ein Programm in dieser Richtung:

!Einlesen der akt. Robpos.
Pers jointtarget jpIst;

jpIst:=CJointT();
jpIst.robax.rax_5:=jpIst.robax.rax_5+90;
MoveAbsJ jpIst,v200,fine,tool0;

Mit der vierten Achse kannst natürlich ähnlich arbeiten.


Viel Erfolg
Thilbi
Gespeichert
stromer
Special Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 268


Denken hilft


« Antworten #2 am: 09. Februar 2010, 15:15:57 »

Hallo EM Robo,

independent Axis wäre die richtige Option dafür gewesen aber ohne würd ichs auch so versuchen, wie Thilbi vorgeschlagen hat. Das wird natürlich bei komplexeren Bewegungen nicht funktionieren.
Was meinst Du damit, dass Achse 4 selbstständig dreht? Machst Du da eine Lin Bewegung? Wenn ja, gehts vielleicht auch mit dem normalen MoveJ. Kommt halt auf die Bewegung an.

Gruß
Stromer
Gespeichert
EM Robo
Neuling
*
Offline Offline

Beiträge: 4


« Antworten #3 am: 09. Februar 2010, 17:47:03 »

Hallo,

vielen Dank! Klappt so wie gedacht, super!

Die Achse zu blockieren muss ich noch ausprobieren. Thema selbstständig drehen:
Das Werkzeug soll um TCP Y & Z Achse gedreht werden. Drehung um Z-Achse erfolgt über Achse 6, Drehung um Y-Achse erfolgt über Achse 5. TCP soll stationär im Raum konstant bleiben.
Normalerweise müsste die Achse 4 also gar nicht gedreht werden, um die geforderte Position zu erreichen. Er bewegt sie jedoch und steht teileise um 180° verdreht.

Gruß
Gespeichert
Itchy82
Neuling
*
Offline Offline

Beiträge: 6



« Antworten #4 am: 09. Februar 2010, 18:47:41 »

Hallo. Wenn Du das Werkzeug um den TCP drehen möchtest, würde es mal mit RelTool versuchen
Gespeichert
stromer
Special Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 268


Denken hilft


« Antworten #5 am: 09. Februar 2010, 22:08:30 »

Aus Deiner Beschreibung entnehme ich, das Du dein Tool nur in Z+ verlängert hast und die Quarternions noch auf 1,0,0,0 stehen.Weiterhin interpretiere ich, dass das Problem beim durchfahren der Singularität (oder nahe dran) auftritt.
Ist das so?
Gespeichert
EM Robo
Neuling
*
Offline Offline

Beiträge: 4


« Antworten #6 am: 10. Februar 2010, 09:20:04 »

Hallo!
Zur Verdeutlichung hier mal paar Zeilen aus dem Programm:

!*** Definitionen ***
  CONST robtarget StartPos:=[[1235.45,-0.56,1181.61],[0.711009,-0.000586924,0.703181,0.00144939],   [-1,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
  PERS tooldata tool1:=[TRUE,[[0,0,144.9],[1,0,0,0]],[3.5,[34.1,0,144.9],[1,0,0,0],0,0.04,0.259]];
   
!*** Bewegungseinstellungen ***
  ConfL\Off;
  SingArea\Wrist;

!*** Programmabarbeitung ***
  MoveL RelTool(StartPos,0,0,0\Ry:=U1Angle\Rz:=U2Angle),vmax,z50,tool1;

Die Winkel U1/U2 werden über zwei Eingangssignale kontinuierlich geändert.

@stromer: Aufgrund der Startposition dürfte ich weit genug von Singularitäten entfernt sein.

Weitere Frage:
Zusätzlich zur Winkelbewegung möchte ich noch eine lineare Bewegung in der momentanen Werkzeughoch- und Werkzeugquerachse ausführen. Meine erste Idee, den Verfahrweg in dem RelTool Befehl anzugeben scheiterte jedoch, da das Werkzeugkoordinatensystem ja nicht mit den Winkeln Ry / Rz gedreht wird. Ich müsste also den Verfahrweg in einem Werkzeugfestem Koordinatensystem angeben, welches die aktuelle Orientierung des Werkzeugs beinhaltet.
Könnt ihr mir zu diesem Problem auch einen Tipp geben?

Vielen Dank!
Gespeichert
högi
Special Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 284



« Antworten #7 am: 20. Februar 2010, 16:50:19 »

Hallo EM Robo,
ich würde das in zwei RelTool Befehle aufdröseln.
Erst einmal das Werkzeug ausrichten und dann in X,Y,Z Richtung verfahren.

Z.B:

MoveL RelTool(StartPos,0,0,0\Ry:=U1Angle\Rz:=U2Angle),vmax,z50,tool1;
MoveL RelTool(StartPos,X,Y,Z),vmax,z50,tool1;

Gruß
Högi
Gespeichert

Zwei Dinge sind unendlich,das Universum und die menschliche Dummheit. Aber bei dem Universum bin ich mir noch nicht ganz sicher, !!!!
Albert Einstein
stromer
Special Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 268


Denken hilft


« Antworten #8 am: 20. Februar 2010, 17:33:53 »

@högi

Wenn Du es so machst bekommst Du was ganz anderes. Erst dreht sich der Robert um die Winkel (TCP bleibt stehen) und dann dreht er wieder zurück und fährt mit dem TCP auf die Verschiebewerte.
Gemeint war wahrscheinlich folgendes:
MoveL RelTool(StartPos,0,0,0\Ry:=U1Angle\Rz:=U2Angle),v200,fine,tool1;
NeuePos:=CRobT(\Tool:=tool1 \WObj:=wobj0);
MoveL RelTool(NeuePos,X,Y,Z),v200,fine,tool1;
Damit dreht er und fährt dann entlang der neuen Drehung auf die Verschiebewerte.
Evtl. gehts sogar ohne Zwischenbewegung:
NeuePos:= RelTool(StartPos,0,0,0\Ry:=U1Angle\Rz:=U2Angle);
MoveL RelTool(NeuePos,X,Y,Z),v200,fine,tool1;


Gruß
Stromer
Gespeichert
högi
Special Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 284



« Antworten #9 am: 20. Februar 2010, 17:43:42 »

Stromer , du hast recht!
Sorry.
Gespeichert

Zwei Dinge sind unendlich,das Universum und die menschliche Dummheit. Aber bei dem Universum bin ich mir noch nicht ganz sicher, !!!!
Albert Einstein
Seiten: [1] Nach oben Drucken 
Roboterforum für Industrieroboter Anwender  |  Industrieroboter Helpcenter  |  ABB Roboter (Moderatoren: burlibua, Sven Weyer, rmac)  |  Thema: Achse blocken / exklusiv Bewegen « vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS