Deinem Post, Geistesblitz, entnehme ich, dass ich die gewünschten Beschleunigungen einfach additiv dazurechnen darf.
Das ganze ergibt für mich auch anschaulich Sinn, da ich wenn ich die Apparatur zu einem festen Zeitpunkt t* betrachte, wieder "Kräftegleichgewicht" ansetzen kann. Das Ganze ist zwar kein echtes statisches Gleichgewicht, allerdings ergibt sich der resultierende Vektor (mit dessen Betrag und Richtung die Plattform beschleunigt) ja als Summe der wirkenden Kräfte und deren Richtungen.
Und ja, hbquax, die Berechnung der Seilkräfte für eine bekannte Position ist einfach das Lösen eines einfachen LGS, sobald man die Positionen der Aufhängungspunkte an der Plattform und am Rahmen kennt. Allerdings musst du beides zuerst berechnen. Durch geeignete Wahl der Koordinatensysteme ist das allerdings keine schwere Aufgabe.
Was einen so hohen Zeitaufwand hat, ist die schiere Anzahl der Positionen deiner Plattform, die zum Erstellen des Plots benötigt wird. Wenn N deinen Feinheitsgrad der Diskretisierung in jede Richtung (x, y, z, 3 Rotationsachsen) darstellt, so musst du N^6 Gleichungssysteme lösen.
Wenn man die drei Rotationsachsen konstant hält, so benötigt man "nur" noch N^3 Gleichungssysteme um einen Plot über den Arbeitsraum zu generieren. Die Bilder stellen einen solchen Plot dar. Hierbei wurde jede Achse in N=100 gleiche Teile zerteilt. Zur Berechnung muss man also 100^3 = 10^6 Gleichungssysteme lösen. Das Lösen dieser 1 Millionen LGS dauert bei mir eine Minute.
Möchte man nun das Ganze auf Rotationen erweitern, so explodiert der Aufwand. Wenn man für Rotationen um jede Achse wieder 100 "Schritte" haben möchte sind das weitere 100^3 Elemente. Leider verrechnen sich diese nicht additiv, sondern multiplikativ. Man muss also für JEDE der 1 Millionen Koordinaten (x,y,z) 1 Millionen Rotationen berechnen. Also insgesamt 10^12 LGS lösen.
Wenn man für ein LGS vorher 60/10^6 Sekunden (ungefähr 60 µs) benötigt hat, dann braucht man für die neue Aufgabe 10^8 Sekunden, also 3.169 Jahre.
Diese 60 µs beinhalten auch das Bestimmen der Koordinaten der Aufhängungspunkte, das Erstellen des LGS und natürlich das Lösen desselben.
Da die einzelnen Koordinaten (x,y,z, 3 Rotationen) allerdings voneinander unabhängig berechnet werden können, kann man die Rechenzeit verkleinern, indem man parallel rechnen lässt. Wie viel man gleichzeitig rechnen kann hängt von der CPU ab. Ich habe hier 4 echte und 4 virtuelle Kerne könnte also (theoretisch) 8 Koordinaten gleichzeitig bestimmen. Diese Aufgabe würde meinen PC noch knappe 8 Monate beschäftigen.
Ich habe mir gestern Abend allerdings ein anderes Verfahren überlegt, um die Maximale Seilkraft zu bestimmen, welches nicht so rechenintensiv ist. Allerdings muss ich es noch implementieren und es werden keine solch schönen Plots dabei herauskommen.
Wieso sollen die Seile der gegenüberliegenden Seite nicht ziehen dürfen? Sie dürfen ziehen, soviel nötig ist um die Plattform gerade zu halten. Grade das ist ja die Kunst. Für alle Möglichen Positionen die Seile so einzustellen, dass die Plattform gerade gehalten wird (von auftretenden Schwingungen / Pendelbewegungen um die Ruhelage mal abgesehen).
Weiterhin soll die Plattform ja auch 10 cm unter Ihren Aufhängepunkten bleiben, damit die benötigten Kräfte nicht zu groß werden.
Zu den Motoren: Ich habe bisher noch keine kleinen Servomotoren / Servos gefunden von denen ich die Sensordaten auslesen kann. Für große Motoren ja, allerdings benötige ich keine Motoren mit mehreren Nm Drehmoment.
Die kleineren aus dem RC-Bereich scheinen alle die Regelung integriert zu haben und über die Vorgabe eines PWM Signals einen korrespondierenden Winkel anzusteuern.
Edit: Ich habe meinen Algorithmus für die Rechung mit Rotationen implementiert. Jede im Berech von +- 45° um jede Achse. Die maximale Belastung auf ein Seil ist dann 57.6962 N also bin ich (wie erwartet) mit meinen 60 N gut dabei.
Edit numero 2: 8 Seile![]()
Lesezeichen