DIY Motion Simulator für Rennspiele – Baudoku

Nachdem im letzten Artikel meinen Umbau meines Renncockpits zu einem Cockpit mit Vibrationsfeedback vorgestellt habe, geht es in diesem Artikel um den nächsten Schritt: G-Kräfte durch Bewegung des Sitzes zu simulieren. Das Projekt sollte dabei in ein Hobby-Budget passen.

Das Cockpit mit dem Vibrationsfeedback war schon ein riesiger Schritt in die richtige Richtung für die Immersion. Doch schon nach wenigen Runden reichte es mir nicht mehr und ich brauchte mehr. Ich brauchte Bewegung!

Der Entschluss war gefasst und so baute ich mir einen eigenen Seat-Mover, den du in dem Video unten sehen kannst. Wie bei Virtual Reality häufig, kommt durch das Video jedoch leider nicht gut herüber, wie es sich für den Fahrer anfühlt. Obwohl die Bewegungen (bewusst) eher klein sind, ist die Immersion unfassbar hoch:

Bei meiner Umsetzung handelt es sich um einen sogenannten Seat-Mover, bei dem sich nur der Sitz und nicht das gesamte Cockpit bewegt. In der Sim-Racing Community, wird dies häufig als die natürlichere Variante bezeichnet und ein Full-Motion Rig eher als eine Kirmes-Attraktion. Bei beiden Varianten ist das Ziel aber nicht realistischen G-Kräfte zu simulieren, sondern lediglich ein immersives Fahrgefühl zu vermitteln. Grundsätzlich kann das von mir verwendete Konzept, mit etwas stärkeren Motoren auch für ein Full-Motion Rig verwendet werden

Aber beginnen wir am Anfang: Eigentlich wolle ich nämlich einfach eine fertige Plattform kaufen: Eine Recherche ergab, dass es verschiedene kommerzielle Produkte gibt, mit denen man sein Cockpit zu einem Seat-Mover umbauen kann.

Diese und weitere Alternativen waren mir jedoch zu teuer und teilweise auch mit Import und Zoll-Abhandlung verbunden. Auf meiner weiteren Recherche bin ich jedoch auf Sim-Racing „DIY“ Communitys gestoßen, die sich ihre Motion-Sims selber bauen, wie du im rechten Bild sehen kannst.

Eines von zahllosen selbstgebauten 2-DOF Seat-Mover Projekten von xsimulator.net (Quelle)

Mein Entschluss war dann schnell gefasst: Ich baue es selbst. Dies hatte auch den Vorteil, dass ich die Bewegungsplattform perfekt in mein bereits existierendes Cockpit einbauen kann – dies stellte mich jedoch noch vor einige Herausforderungen.

Ich lernte schnell, die Funktionsweise eines Seat-Movers mit zwei Freiheitsgraden relativ simpel ist: Der Sitz wird auf ein Kreuzgelenk platziert, dass sich (ähnlich wie ein Kugelgelenk beim Mensch) auf mehreren Achsen frei Bewegen kann. Daran befestigt werden zwei Motoren, die jeweils eine Kurbel Bewegen, welche mit einer Stange an dem Stuhl befestigt ist.

Nach einigem an Recherche bezüglich der richtigen Teile, Maßen und Position sowie einigem Trail-And-Error beim Zusammenbau hatte ich einen ersten Prototyp fertig, den du im Video unten sehen kannst.


Den weg dorthin habe ich in den folgenden beiden Galerien dokumentiert. Die erste zeigt wie die Motoren und ihre Ansteuerung umgesetzt wurde, die zweite zeigt den Zusammenbau der Unterkonstruktion.

Motorsteuerung

Die Motoren sollen über einen Arduino gesteuert werden. Dazu wird neben dem Motor, ein Motortreiber und ein passendes Netzteil benötigt. Als Motoren werden sogenannte „Wormdrives“ verwendet. Das sind Motoren mit einem Schneckengetriebe, welche die hohe Drehzahl der Motoren in eine deutlich langsame Bewegung mit viel Kraft (Drehmoment) übersetzen.

Um die aktuelle Drehung der Motoren (und so die aktuelle Position des Stuhls) zu ermitteln, wurde an die Motoren ein Potentiometer angeschlossen. Den Aufbau und die Modifikation der Motoren zum Auslesen der aktuellen Stellung, siehst du in der Galerie:

Hier noch ein Video der Motoren in Aktion hier ist auch die Funktion des Getriebes für das Potentiometer sichtbar:

Unterkonstruktion

Mein Seat-Mover sollte platzsparend werden, deswegen kommen bei mir die Motoren, ähnlich wie bei der DOF-Reality-Lösung unter den Sitz. Deshalb musste das so hoch angebracht werden, dass selbst bei vollem Einschlag darunter noch ausreichend Platz für die Motoren ist. Außerdem sollte das Kreuzgelenk nicht mittig auf die Platte, sondern möglichst dort hin wo der Schwerpunkt des Sitzes (mit Fahrer) ist, damit das Gewicht möglichst gleichmäßig verteilt ist.

Zusammenbau

Nachdem der Prototyp funktioniert, musste nun alles in das finale Gehäuse eingebaut werden, der plan war es alles auf der Bodenplatte unter der Sitzfläche zu positionieren:

  • 2x Motoren mit Halterung
  • Kreuzgelenk und Unterbau
  • Sabertooth 32a (Motortreiber)
  • Arduino
  • Steuerschaltkreis
  • 2x Netzteile (500W / 360W)
  • 2x Audio Verstärker (Für Vibrationen)
  • Lüfter
  • Außerdem muss beim Aufbau der Luftfluss beachtet werden

Die nachfolgenden Bilder zeigen wie ich es gelöst habe:

Nachdem das Kreuzgelenk, der neue Sitz, die Gurte und die neue Bass-Shaker-Halterungen installiert wurden, ging es an einen ersten Bewegungstest:

G27 Lenkrad Modding

Nachdem der das Cockpit und der Sitz nun Funktionsbereit war, habe ich noch ein kleines Nebenprojekt begonnen, da das original G27 zu sehr wie ein Spielzeug wirkte, neben der ganzen anderen Hardware.

Die Pedale hatte ich ja schon im letzten Post gegen welche von Fanatec getauscht. Den H-Ganghebel habe ich kurz darauf mit einem einfachem Mod zu einem Sequentiellen-Ganghebel umgebaut, wie er in Rally-Fahrzeugen in der Regel zu finden ist.

Die größte Änderung bekam jedoch das Lenkrad selbst: Das im Durchmesser 28 cm kleine Lenkrad habe ich durch ein echtes 32 cm großes Sportlenkrad der Marke raid ersetzt. Dafür musste ich jedoch zunächst einen Adapter-Designen, um das Lenkrad an die Wheelbase anbringen zu können. In diesem Zuge, hab ich zu dem Adapter auch eine Buttonbox entworfen, da ich sonst auf Lenkradtasten hätte verzichten müssen.

Das Ergebnis

Nachdem nun wieder alles Zusammengebaut wurde, war das Projekt endlich fertig:

Im Video sieht man Dirt Rally mit der Oculus Rift (mittlerweile nutze ich natürlich die Valve Index!). Um den Stuhl anzusteuern, verwende ich die Software „SimTools“ die extra für solche selbst gebauten Motion-Platformen entwickelt wurde und für (fast) jedes Spiel, ein i.d.R. von der Community geschriebenes Plugin hat.

Der Stuhl hat pro Seite ca. 12 cm Hub, davon verwende ich in der Regel jedoch höchstens 6 cm, um eine schnelle Reaktionszeit des Stuhls zu erreichen. Außerdem werden die Bewegungen sonst auch schnell sehr zu extrem – Ziel war es ja ein Immersives Fahrgefühl zu erleben und kein Kirmes-Fahrgschäfft.

Die Gesamtkosten aller in diesem Artikel beschriebenen Maßnahmen, belaufen sich, inklusive dem neuen Sitz, Gurten etc. auf ca. 900 Euro. Wobei die Motoren und der Motortreiber den größten Teil davon ausmachen.

Falls du Fragen hast, kann du sie gerne im Kommentar Bereich unten stellen.

Linksammlung

Falls dich das Thema noch weiter interessiert habe ich hier einige Quellen für gesammelt, die ich für meinen Bau verwendet habe:

  • XSimulator.net – Online Community für DIY Motion Sims
  • Simukit.com – Belgischer Online Shop, der verschiedene Kits verkauft, sodass man sich Motoren, Kurbel und Motortreiber nicht gesondert zusammensuchen muss
  • Russian4x4.de – Meine Quelle für das Kreuzgelenk mit zwei Flansch-Seiten. Kardangelenke bei aktuellen Autos, haben häufig eine Flansch-Seite und eine Stange auf der anderen Seite
  • pcshm-simulateurs-homemade.clicforum.com – Ähnlich wie XSimulator.net, aber kleiner (viel) kleiner und auf Französisch. Hier werden jedoch gute Arduino Codes für DIY-Projekte Motion Sims geteilt
  • Simtools.us – Die, meiner Recherche nach, derzeit beste und einfachste Software um eine Motion-Platform mit einer Vielzahl von Spielen zu betreiben. Mit der Lizenz erhält man allerdings nur Zugriff zur Software, die zahlreichen Spiele Plugins werden von der Community erstellt und müssen mit einem Premium Foren Account nochmal bezahlt werden (Es ist jedoch möglich sich Foren-Punkte durch Aktivität zu im Forum zu verdienen, sodass der Premium Account optional sein kann).
  • SimRacingStudio.com – Für die Bass-Shaker benutze ich immer noch SimRacingStudio, da es besser und leichter ist als das „SimVibe“-Addon für SimTools.


Antworten

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.