Entwicklung mit Inverse3
Dieser Artikel baut auf der Schnellstart-Anleitung auf und dient als Einführung in Inverse3 als haptisches Entwicklungswerkzeug. Zu diesem Zweck werden verschiedene Hardwarekonfigurationen, Steuerungsmethoden und wichtige Funktionen behandelt, die das Verhalten des Geräts verändern.
Händigkeit des Geräts und Koordinatensystem
Das Inverse3 verfügt über zwei Hardwarekonfigurationen, die für unterschiedliche Szenarien optimiert sind.

Jedes Gerät kann von Links- oder Rechtshändern verwendet werden. Rechtshänder finden rechtshändig konfigurierte Geräte in manchen Situationen jedoch möglicherweise einfacher zu bedienen.
Bei der gemeinsamen Verwendung zweier Geräte in einem bimanuellen Szenario sollte das linkshändig konfigurierte Gerät auf der linken Seite und das rechtshändig konfigurierte Gerät auf der rechten Seite platziert werden, um Kollisionen und Störungen zu minimieren.

Beide Geräte folgen einem rechtshändigen Koordinatensystem, das auf den Typenschildern auf der Armseite von Inverse3 dargestellt ist. Der Ursprung des Koordinatensystems befindet sich auf der flachen Seite der Montageplatte des Geräts, nahe der Mitte.
Prüfen Sie die InverseSDK-Dokumentation für die Sprache oder das Plugin, das Sie verwenden möchten, da das in den SDKs bereitgestellte Koordinatensystem möglicherweise bereits dem Koordinatensystem der jeweiligen Game-Engine folgt.
Steuerung von Inverse3
Die Steuerung von Inverse3 beschränkt sich nicht auf die Kraftsteuerung; es ist auch möglich, seine Gelenkdrehmomente und Gelenkwinkel zu steuern. Dieser Abschnitt beschreibt die verschiedenen Steuerungsmodi sowie die jeweils relevanten Ein- und Ausgaben mit ihren Einheiten.
Die Verwendung eines dieser beiden Modi birgt inhärente Risiken für Benutzer und Gerät. Sicherheitsinformationen finden Sie unter Inverse3 – Sichere Verwendung.
Kartesische Steuerung
Die Kraftsteuerung ist die bevorzugte Methode für die Verwendung von Inverse3, da sie die Kraft in Newton (N), entgegennimmt und die Position in Metern (m) sowie die Geschwindigkeit in Metern pro Sekunde (m/s) zurückgibt. Im Positionssteuerungsmodus fährt Inverse3 eine festgelegte Position an und hält sie. Der Wechsel zwischen den beiden Modi erfolgt nahtlos, sodass sie gemeinsam eingesetzt werden können, um ein besseres Nutzungserlebnis zu bieten. Beispielsweise kann das Gerät zu Beginn einer Simulation von interaktiven Objekten wegbewegt werden oder, bei Verwendung eines getrackten VerseGrip, kann der Positionssteuerungsmodus die Cursorposition beim Wechsel des Werkzeugs halten.

Gelenksteuerung
Analog dazu lassen sich die Gelenkdrehmomente und Gelenkwinkel von Inverse3 direkt steuern. Im Drehmomentsteuerungsmodus erzeugt das Gerät ein Drehmoment in Newton pro Millimeter (N·mm), und bei der Gelenkwinkelsteuerung fährt es zu einem in Grad angegebenen Winkel (°). In beiden Fällen gibt das Gerät seine Position in ° und seine Geschwindigkeit in Grad pro Sekunde (°/s) zurück.
Farbcodes
Die Statusleuchte am Logo von Haply ändert ihre Farbe je nach Betriebsmodus des Geräts. Die Tabelle zeigt die Statusleuchtenfarben für die neueste Firmware (Farben früherer Firmware-Versionen finden Sie im Abschnitt Legacy-Statusleuchtenfarben weiter unten)
| Farbe | Leuchtsequenz | Zustand | Beschreibung |
|---|---|---|---|
| Aus | Aus | Nicht angeschlossen | Das Kabel von USB-C ist getrennt |
| Rot | Blinken | Kein Handshake | Keine Verbindung zum Dienst hergestellt |
| SOS-Blinken | Zeitüberschreitung | Kommunikations-Timeout erkannt, keine Befehle vom Dienst empfangen | |
| Gelb | Blinken | Nicht kalibriert und ohne Stromversorgung | Netzteil getrennt und Kalibrierung erforderlich |
| Ein-/Ausblenden | Nicht kalibriert | Gerätekalibrierung erforderlich | |
| Weiß | Dauerleuchten | Leerlauf | Kein Steuerungsmodus aktiv |
| Blinken | Leerlauf und ohne Stromversorgung | Netzteil getrennt und kein Steuerungsmodus aktiv | |
| Grün | Dauerleuchten | Kraftsteuerung | Gerät im Kraftsteuerungsmodus aktiv |
| Blinken | Kraftsteuerung und ohne Stromversorgung | Netzteil getrennt und Gerät im Kraftsteuerungsmodus | |
| Cyan | Dauerleuchten | Positionssteuerung | Gerät im Positionssteuerungsmodus aktiv |
| Blinken | Positionssteuerung und ohne Stromversorgung | Netzteil getrennt und Gerät im Positionssteuerungsmodus | |
| Orange | Dauerleuchten | Sicherheitsauslösung | Instabilität erkannt, der Sicherheitsauslöser wurde aktiviert |
Hinweis: Wenn die Statusleuchte rot bleibt, überträgt Ihr USB-Kabel möglicherweise keine Daten. Stellen Sie sicher, dass die Verbindungen fest sitzen, oder tauschen Sie Ihr Kabel aus. Falls die Statusleuchte keinem der erwarteten Muster entspricht, reichen Sie bitte eine Support-Anfrage ein.
Optionale Funktionen zur Leistungsverbesserung
Inverse3 verfügt über mehrere Funktionen, mit denen Leistung und Bedienempfinden gesteuert werden können. Dieser Abschnitt bietet einen kurzen Überblick über diese Funktionen und ihre Verwendung.
Geschwindigkeitsschätzung
Die Geschwindigkeit wird nicht direkt gemessen, sondern aus Positionsdaten abgeleitet. Dies kann zu verrauschten und ungenauen Signalen führen, die gefiltert werden müssen. Inverse3 verfügt über einen integrierten Algorithmus zur Geschwindigkeitsschätzung, der die eingebaute Hardware nutzt, um ein Geschwindigkeitssignal zu erzeugen, das keine zusätzliche Filterung erfordert.
Bitte beachten Sie, dass die Geschwindigkeitsschätzung nur näherungsweise ist und möglicherweise nicht vollständig genau. Leistung und Genauigkeit können mit fortlaufenden Verbesserungen weiter verfeinert werden.
Schwerkraftkompensation
Die Schwerkraftkompensation eliminiert die Kräfte, die sich aus der Masse der Komponenten von Inverse3 ergeben, und sorgt so dafür, dass sich das Gerät unabhängig von der Montageausrichtung schwerelos anfühlt. Zu Beginn einer Simulation kalibriert das Gerät den Algorithmus mithilfe eines integrierten Sensors; eine Änderung der Geräteausrichtung während des Betriebs führt zu unregelmäßigem Verhalten.
Die Schwerkraftkompensation funktioniert nur im Kraftsteuerungsmodus.

Die Stärke der Schwerkraftkompensation lässt sich über einen Schwerkraft-Skalierungsfaktor anpassen (standardmäßig auf 0.75 eingestellt). Sie kann außerdem mit SDK-spezifischen Befehlen vollständig deaktiviert werden (Einzelheiten finden Sie in der SDK-Referenz) .
Kraftskalierung
Inverse3 erzeugt in verschiedenen Richtungen unterschiedlich starke Kräfte. Daher kann der Versuch, eine Kraft zu erzeugen, die die Leistungsgrenzen von Inverse3 übersteigt, zu einer Kraft mit einer anderen Richtung als der gewünschten führen. Die Aktivierung der Kraftskalierung bewahrt die Richtung der Kraft, verringert jedoch ihre Stärke. Diese Funktion ist standardmäßig aktiviert, kann aber über die SDK-spezifischen Befehle deaktiviert werden.
Orientierungsverfolgung für VerseGrip
Die Verfolgung der Werkzeugorientierung mit Inverse3 erfordert einen VerseGrip.
Weitere Informationen zu den VerseGrips finden Sie im Artikel Erste Schritte: VerseGrip.
Legacy-Statusleuchten
Firmware 7.4.x und älter
| Farbe | Lichtsequenz | Zustand | Beschreibung |
|---|---|---|---|
| Aus | Aus | Getrennt | Das Kabel von USB-C ist abgezogen |
| Rot | Blinken | Kein Handshake | Es besteht keine Verbindung zum Dienst |
| Lila | Dauerhaft an | Nicht kalibriert | Gerätekalibrierung erforderlich |
| Blinken | Nicht kalibriert & ohne Stromversorgung | Netzteil getrennt und Kalibrierung erforderlich | |
| Weiß | Dauerhaft an | Leerlauf | Kein Steuerungsmodus aktiv |
| Blinken | Leerlauf & ohne Stromversorgung | Netzteil getrennt und kein Steuerungsmodus aktiv | |
| Grün | Dauerhaft an | Kraftregelung | Gerät im Kraftregelungsmodus aktiv |
| Blinken | Kraftregelung & ohne Stromversorgung | Netzteil getrennt und Gerät im Kraftregelungsmodus | |
| Königsblau | Dauerhaft an | Positionsregelung | Gerät im Positionsregelungsmodus aktiv |
| Blinken | Positionsregelung & ohne Stromversorgung | Netzteil getrennt und Gerät im Positionsregelungsmodus | |
| Cyan | Dauerhaft an | Dämpfungssicherheit | Geschwindigkeits-/Kraftdämpfung: Sicherheitsfunktion ausgelöst |
| Pink | Dauerhaft an | Stabilitätsobergrenze | Wiederholte Instabilitäten, die Kraftgrenze wurde reduziert |
| Violett | Dauerhaft an | Stabilitätsunterstützung ausgelöst | Instabilität erkannt, Kraft wird automatisch reduziert |
| Orange | Dauerhaft an | Notbremse | Sofortiger Stopp, Notbremse ist aktiv |
| Gelb | Schnell blinkend | Zeitüberschreitung | Kommunikations-Zeitüberschreitung erkannt |