Forum: Offtopic Robotersoftware für privat?


von Roboterwerk (Gast)


Lesenswert?

Hallo Leute.

Ich habe einen Roboterarm mit 6 DOF / Servos.
Die Steuerung übernimmt ein Arduino. Das Ganze funktioniert auch 
hervorragend, wenn da nicht die nervige Programmierung der Servowege 
"offline" wäre.
Bisher lief es bei mir so ab:
1) Ermitteln, in welche Richtung das jeweilige Robotergelenk bei 
Über/Unterschreiten des Servomittelpunkts geht
2) Schätzen, bis das jeweilige Gelenk in etwa da hingeschwenkt ist wo es 
sein soll
3) Nächsten Servo wie 1) und 2) programmieren...bis Servo No.6.

Gibt es da keine Software, mit der man Pseudocodes generieren kann, die 
dann als Befehlsfolge für die Firmware (Arduino) dienen?
Interessant wäre auch, dass sich die Servowege relativ zu den Winkeln 
des davoranliegenden Gelenks verhalten. ..wisst ihr was ich meine?

Achso noch was:
Es werden Servos verwendet, die ich üblicherweise per PWM ansteuere.

Danke Euch!

: Verschoben durch User
von Flips (Gast)


Lesenswert?

könntest du das nicht in einen mathematischen Algor. packen und dann 
einfach eine Sollposition vorgeben? Das ist ja "nur" etwas Geometrie.

von pegel (Gast)


Lesenswert?


von Roboterwerk (Gast)


Lesenswert?

LinuxCNC ist ja nur eine Steuerung, die den GCode an der Maschine 
ausführt. Ich bräuchte jedoch den entsprechenden "GCode".

Das mit der Geometrie ist eine gute Idee. Nur: nach was suche ich da am 
besten? Ich habe einen Sollpunkt gegeben, der idealerweise möglichst mit 
einer Geraden erreicht werden soll. Die Hebellängen und somit deren 
Verhältnisse wären ja gegeben. Dazwischen liegen Gelenke mit 
eingeschränkter Beweglichkeit (+/- 90 Grad je Gelenk/Servo).
Geometrie ist bei mir schon eine gefühlte Ewigkeit her und demnach 
entsprechend eingerostet...

Habt ihr Ideen?
Mir schwirrt etwas im Kopf, dass die Summe aller Winkel null ergeben 
müsste, bei einer möglichen Summe aller Winkel von 0.

Gruss

von Melody8801 (Gast)


Lesenswert?

Ich will nicht viel sagen, habe mich nicht in die Materie eingearbeitet.

Wir haben im Unterricht momentan ROS im Einsatz, vielleicht ist das 
etwas für dicht?
http://wiki.ros.org/

von Erwin D. (Gast)


Lesenswert?

Roboterwerk schrieb:
> der idealerweise möglichst mit
> einer Geraden erreicht werden soll.

Nicht unbedingt. Achte auch darauf, ob Hindernisse im Weg sind, die den 
"direkten" Weg unmöglich machen...

von Roboterwerk (Gast)


Lesenswert?

Ok, die Software werde ich mir mal genauer ansehen.

Kurz nochmal zur Mathematik:
Wie könnte man dies berechnen mit dem gegebenen Sollpunkt und den 
Winkeln der Gelenke zwischen Ursprung und Endpunkt?

von aSma>> (Gast)


Lesenswert?

Servus,
wenn du selber etwas schaffen willst, dann guck dir die 
Denavit-Hartenberg Transformation an.

https://de.wikipedia.org/wiki/Denavit-Hartenberg-Transformation

Mittels geeigneten koordinaten Transformation kann man eine Bewegung des 
toolpoints 3D angeben. Das Problem wird nur sein, dass es beim Greiffarm 
unendlich viele Möglichkeiten gibt...

von Pandur S. (jetztnicht)


Lesenswert?

> Das Problem wird nur sein, dass es beim Greiffarm unendlich viele Möglichkeiten 
gibt...

Dann sollte man entweder irgendeine, oder die Optimalste nehmen. 
Optimalste im Hinblick auf :
- Energieverbrauch
- Geschwindigkeit
- Beschleunigungen

von Oliver S. (phetty)


Lesenswert?

Wie wärs mit blockly (https://developers.google.com/blockly/), einmal 
eine Schnittstelle bauen, dann gehts los.

von Christian R. (supachris)


Lesenswert?

aSma>> schrieb:
> Servus,
> wenn du selber etwas schaffen willst, dann guck dir die
> Denavit-Hartenberg Transformation an.
>
> https://de.wikipedia.org/wiki/Denavit-Hartenberg-T...
>
> Mittels geeigneten koordinaten Transformation kann man eine Bewegung des
> toolpoints 3D angeben. Das Problem wird nur sein, dass es beim Greiffarm
> unendlich viele Möglichkeiten gibt...

Dazu muss man die Bewegungsmöglichkeiten halt einschränken.
Wir haben hier ein paar Fanuc Roboter im Einsatz, da muss man für jeden 
Punkt ein Config-Word angeben, sonst hat man eben diese unendlich vielen 
Möglichkeiten. Damit das Gleichungssystem lösbar wird, braucht der Robot 
Vorgaben. Bei Fanuc läauft das so: 
http://www.onerobotics.com/posts/2013/the-perils-of-six-axis-robots/
Gibt auch ein schönes Video, wo man die Auswirkungen direkt sieht: 
https://www.youtube.com/watch?v=QVRqgc2ak4k
Wenn dann immer noch unendlich viele Lösungen möglich sind, bist du in 
einer Singularität.

von juhu (Gast)


Lesenswert?

Such mal nach Inverskinematik ...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.