ABB Roboterschulung von praxiserfahrenen Trainern
in unserem Schulungszentrum in Mainburg oder vor Ort bei Ihnen
Bediener und Expertenschulungen anfragen

Autor Thema:  Literatur gesucht! Bahnplanung 6-gelenkiger Roboterarm zur Kollisionsvermeidung  (Gelesen 2637 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline Veit

  • vierter Post
  • *
  • Beiträge: 4
  • Bewertet: 0
So, jetzt habe ich mein Anliegen ja schon direkt in einen aussagekräftigen Titel gepackt  :beerchug: Ich denke, das Problem mit der Kollisionsvermeidung ist eigentlich allgemein bekannt, und nun stehe ich auch davor. Es gibt sicherlich gute Literatur dazu, hat einer von euch Fachleuten da ein paar Tipps für mich?

Um mein Problem nochmal ein wenig zu beschreiben: Ein sechsgelenkiger Roboter setzt ESD-Impulse an mehreren Stellen ab. Als Schnittstelle zwischen (grafischer) Punkte-Koordinaten-Eingabe und Robotersteuerung dienen die Koordinaten, die der Roboter dann abfährt.
Anhand der Koordinaten möchte ich vor der eigentlichen Bewegung berechnen, ob sich der Roboter in einem (von mir eventuell vorher festgelegten) verbotenen Bereich aufhalten würde.
Die GUI für den Roboter ist (leider) in Visual Basic geschrieben, dass dann einfach die Bewegungsbefehle über die serielle Schnittstelle an das Steuergerät schickt.

Später komme ich wahrscheinlich noch zu dem Problem, dass ich die Stellung bzw. Bewegung des Roboters gerne grafisch in VB darstellen würde, so als 3D-Grafik, vielleicht OpenGL oder so. Wenn ich die Stellungen aller sechs Gelenke auslese, habe ich doch die eindeutige Position oder sehe ich das falsch? Hat vielleicht schonmal jemand versucht, ohne großartige Simulationssoftware eine Roboterstellung- bzw Bewegung selbst darzustellen?

Viele Grüße und danke für etwaige Antworten,
Veit
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert

Offline Urmel

  • Global Moderator
  • Forum Legende LV 1
  • *
  • Beiträge: 1127
  • Bewertet: +16
Hallo,

zunächst eine Bitte: In die "Info"-Rubrik bitte nur Themen posten, die mit dem Forum an sich zu tun haben.


Dein Problem ist nicht ganz einfach. Das geht schon mehr in Richtung CAD als in Richtung Roboterprogrammierung. In VB ist das sicher eine mathematische Herausforderung.

Im Prinzip mußt du 3D Modelle des Roboters und seiner Umgebung erstellen und alle diese Komponenten auf Kollisionen testen.

Grüße

  Urmel

[Nachtrag]

Fürs erste folge mal den unteren Links in diesem Beitrag:
http://www.roboterforum.de/roboter-forum/allgemeines_diskussionsforum/angewandte_mathematik_in_der_robotik-t3652.0.html;msg15304#msg15304

Ansonsten kenne ich zur Kollisionserkennung nur Sachen aus dem Bereich Spieleprogrammierung:

http://www.elsevier.com/wps/find/bookdescription.cws_home/680635/description#description
http://www.elsevier.com/wps/find/bookdescription.cws_home/680632/description#description
http://www.elsevier.com/wps/find/bookdescription.cws_home/703657/description#description
http://www.elsevier.com/wps/find/bookdescription.cws_home/677976/description#description

Zu OpenGL oder DirectX gibt es jede Menge, auch online.

Für VB.net wäre noch interessant

http://msdn2.microsoft.com/de-de/robotics/default(en-us).aspx
« Letzte Änderung: 05. Februar 2008, 19:00:28 von Urmel »
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert

Offline Dos6.22

  • Forum Mitglied LV 8
  • *
  • Beiträge: 78
  • Bewertet: 0
nun die sache hat ein problem. Selbst wenn du dir ein programm schreibst was eine bewegung eines 6achsen roboters berechnen kann, muss das nicht heissen, dass du damit die bahn von zb einen kuka genau berechnen kannst.
und ich glaube nich, dass du von dem hersteller seine rechnenformeln bekommst.
besonders schwierig wird es dann bei komplizierten bewegungen oder wenn du in der nähe einer singularitäten kommst. oder wahrscheinlich schon beim verfahren joint oder linear.
da merkt man schon, dass es kleine unterschiede bei den verschiedenen roboterherstellern gibt.
es sei denn, du übergibst den roboter die punkte die er anfahren muss, dann kannst du sowas absichern.
dein vorhaben würde daher nur eine hilfe für die eingabe sein, aber keine richtige absicherung.
ich habe in meinem studium mit http://www.easy-rob.com/ gearbeitet. damit konnte man das machen was du vorhast. nur weiss ich da auch nicht, wie genau die berechneten bewegungen waren.
man konnte dort auch eigene roboter erstellen, dafür braucht man nur die länge aller achsen und deren arbeitsraum. und danach hat man noch die koordinaten systeme reingelegt. und schon hatte man einen roboter, der verfahren werden konnte.
die rechenformeln gibt es auch bei wikipedia http://de.wikipedia.org/wiki/Denavit-Hartenberg-Transformation

edit:
ich seh gerad, dass du ja schreibst, dass der roboter seine fahrbefehle über eine seriele schnittstelle steht. dann müsste doch in diesem visuabl basic programm die brechnenung drinnen stehen und du kannst die dort einfach herausnehmen.
« Letzte Änderung: 11. Februar 2008, 09:30:48 von Dos6.22 »
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert

Offline Urmel

  • Global Moderator
  • Forum Legende LV 1
  • *
  • Beiträge: 1127
  • Bewertet: +16

Das ist in der Tat so, daran sollte man dabei denken.


Wenn es sich um den Roboter aus diesem Thread
http://www.roboterforum.de/roboter-forum/mitsubishi_roboter/steuerbefehle_fuer_cr2b574_mit_roboter_rv3sb-t3878.0.html
handelt, wahrscheinlich nicht.

Man kann einem Mitsubishi einfach Koordinaten schicken und er berechnet den Weg dahin selbst.

Allerdings kann man, wenn man mit Ethernet arbeitet, auch das Problem mit der Wegberechnung umgehen, weil man den Roboter in Interpolationstakt aus einem externen C++-Programm ansteuern kann. Dann kann man seine eigene Bahninterpolation verwenden.
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert

Offline Veit

  • vierter Post
  • *
  • Beiträge: 4
  • Bewertet: 0
Hallo,

  ich weiß nicht warum, aber ich habe nur eine Mail-Benachrichtigung bekommen, obwohl ich nach dem ersten Antwort-Beitrag direkt schon in diesen Thread geschaut habe. Habe die anderen zwei Antworten somit erstmal verpasst.
Also danke nochmal für's Thread-verschieben, ich wusste in der Tat nicht genau wohin mit meiner Anfrage.

Zum Thema:
Ja, die Sache hat nun den wirklich den Haken, auf den ich nach ein wenig Recherche jetzt auch gekommen bin. Also der PC liefert an das Steuergerät jetzt nur die Koordinaten und die Bewegungsform und das Steuergerät rechnet den Rest um. Jetzt könnte ich mittels Inverser Kinematik ja die Bewegung der Gelenke vielleicht ausrechnen (Stichwort Denavit und Hartenberg und Rückwärtstransformation zur Berechnung wenn ich das richtig verstanden habe), aber das heißt ja nicht, dass sich der Roboter auch in genau dieser Form bewegen wird, was?
Dann habe ich also keine Möglichkeit, die Bewegungen des Roboters voraus zu berechnen oder? Anfragen beim Hersteller kann ich ja mal, ob der mir die Algorithmen rausrückt, aber ob der das tatsächlich macht... (es handelt sich beim Roboter wie gesagt um einen RV-3SB von Mitsubishi).

Zitat
Allerdings kann man, wenn man mit Ethernet arbeitet, auch das Problem mit der Wegberechnung umgehen, weil man den Roboter in Interpolationstakt aus einem externen C++-Programm ansteuern kann. Dann kann man seine eigene Bahninterpolation verwenden.

Mittlerweile kann der Roboter auch über Ethernet gesteuert werden. "Seine eigene Bahninterpolation verwenden" heißt dann, dass ich quasi selber den Weg von Koordinatenpunkt zu Koordinatenpunkt vorher berechne und die Gelenke sozusagen einzeln (gleichzeitig) ansteuere? Dann übernehme ich doch die Aufgabe des Steuergeräts oder nicht? Also anstatt dass das Steuergerät die Bewegung von Punkt A nach B berechnet, mache ich das selber. Doppelt gemoppelt sozusagen.

Puh, ganz schön komplex das alles. Danke schonmal für eure Antworten, und wenn jemand noch Hinweise für mich hat, nur her damit, wie man sieht bin ich recht neu in dieser Thematik.

Gruß,
Veit
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert

Offline Urmel

  • Global Moderator
  • Forum Legende LV 1
  • *
  • Beiträge: 1127
  • Bewertet: +16
Hallo !


Es ist ein wenig anders.

Das Steuergerät arbeitet mit einem festen Interpolationstakt, bei deinem Roboter sind das 140 Hz.
Du kannst Dir das genauso vorstellen, wie auf dem Computermonitor die Linien in einzelne Pixel zerlegt werden. Wenn der Roboter z.B. eine Kreisbewegung plant, zerlegt er den Kreis in ganz viele einzelne Schritte, die er jeweils im Interpolationstakt anfährt.

Bei Mitsubishi gibt es dazu eine Besonderheit in Form des Befehls MXT. Das steht für "Move External". Dieser plant die Bewegung nicht selber, sondern holt sich in jedem Interpolationstakt über eine Netzwerkverbindung das Ziel für den nächsten Schritt.

Es gibt ein paar Situationen wo man das gut gebrauchen kann:

Man hat z.B. sehr komplexe Kurven z.B. aus dem CAD oder man will Interpolationsarten wie Bezier- oder Spline-Interpolation verwenden, die der Roboter gar nicht kennt.

Oder die Bewegung steht noch gar nicht fest, z.B. wenn der Roboter sich über eine Kamera oder einen Sensor seinen Weg suchen muss.

Den Roboter kann man in diesem Modus sowohl in XYZ- als auch in Gelenkwinkeln bewegen, das Steuergerät tut also schon noch einiges ...

Im Ethernethandbuch ist übrigens ein Beispiel für VC++, das den Roboter über die PC-Tastatur bewegt. Ist aber ziemlich grottiger Spagethicode, die erste Übung für jeden Anfänger ist es, das ordenlich neu zu schreiben.  :icon_rofl:
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert


xx
Bahnplanung Knickarmroboter

Begonnen von Acid69

4 Antworten
1825 Aufrufe
Letzter Beitrag 01. Mai 2010, 09:44:53
von Hermann
question
Roboterarm € 10 - 15k Anforderungen: ca. 5 kg, XYZ (Z 360°)

Begonnen von TeCcCa

4 Antworten
1692 Aufrufe
Letzter Beitrag 11. April 2011, 19:42:45
von Martl
xx
Präparation Roboter gesucht

Begonnen von DoBot

4 Antworten
1650 Aufrufe
Letzter Beitrag 16. September 2010, 06:37:04
von Buschmann
exclamation
Roboter und Steuerung gesucht

Begonnen von Roger

5 Antworten
2540 Aufrufe
Letzter Beitrag 17. Oktober 2005, 22:11:48
von rmac
xx
PLC Open / IEC1131 Robot Transformation gesucht

Begonnen von Gijs_van_Eck

2 Antworten
1341 Aufrufe
Letzter Beitrag 23. Oktober 2015, 11:20:19
von APT
 

über das Roboterforum

Nutzungsbedingungen Impressum
Sitemap