Haply Inverser Dienst
Inverse Service läuft als Hintergrundprozess auf Ihrem Computer und verbindet die haptischen Geräte von Haply in Echtzeit mit Ihrer Anwendung. Es übernimmt alle Aufgaben, die in Ihrem Code darunter liegen: Geräteerkennung, serielle Kommunikation, Sicherheitsüberwachung sowie die Übertragung von Statusdaten, sodass Sie sich ganz auf die Gestaltung des Nutzererlebnisses konzentrieren können.
Systemanforderungen und Kompatibilität
Dieser Dienst läuft auf den gängigen Desktop-Plattformen und kann mitjeder Spracheaufgerufen werden, dieüber einen WebSocket-Client und einen JSON-Parser verfügt:
- Plattform: Windows 10+ (MSVC), Linux (
.deb(Paket), macOS - Sprachen: Python, JavaScript/TypeScript, C++, C#, Rust, Go, Java … sowie alle Sprachen, die über WebSocket und JSON kommunizieren können
Offiziell unterstützte Integration
Haply Für die folgenden Produkte werden offizielle Integrationen gepflegt:Haply Inverse Unity Package,Toia,Geomagic Freeform und NVIDIA Isaac Lab.
Darüber hinaus kann dieser Dienst genutzt werden, sofern die Plattform oder die Laufzeitumgebung einen WebSocket-Client und einen JSON-Parser bereitstellt – wir haben ihn bereits in der Unreal Engine, inTouchDesigner sowie in anderen Echtzeit- oder Simulations-Technologie-Stacks zum Einsatz gebracht. Solange Ihre Umgebung WebSockets unterstützt, können Sie Inverse-Geräte ansteuern.
Beispiele für bestimmte Programmiersprachen finden Sie in den öffentlich zugänglichen Beispiel-Repositories:C++ und Python.
Kommunikationsschnittstellen
Dieser Dienst bietet zwei Kommunikationskanäle:
| Durchgang | Anschluss | Übertragungsart | Verwendungszweck |
|---|---|---|---|
| Simulation | 10001 | WebSocket | Echtzeit-Befehls-/Statuszyklus (1 eingehende Nachricht, 1 ausgegebener Status) |
| Vorfall | 10020 | WebSocket (nur lesbar) | Systemereignisse: Warnungen zu Sicherheit, Akkustand, Verbindung und Datenübertragungsrate |
| HTTP | 10001 | REST | Zustandslose Konfigurationsabfragen, Einstellungen, Sitzungsverwaltung und Geräteüberprüfung |
Alle Daten sind im JSON-Format. Informationen zu den Regeln für Standard-Envelopes, Ports und Content-Types finden Sie in den JSON-Konventionen.
Anwendungsszenarien
| Ziel | Startposition |
|---|---|
| Kraft- oder Positionsziele an haptische Geräte senden | Echtzeitsteuerung |
| Konfiguration: Koordinatensystem, Einbindungsart, Voreinstellungen oder Filter | Sitzungskonfiguration |
| Navigationsszenario (geschwindigkeitsgesteuerte Bewegung) | Navigationsmodul |
| Systemereignisse überwachen(Sicherheit, Akkustand, Verbindung) | Vorfälle und Überwachung |
| Lernen anhand von Beispielen | Anleitung |
Koordinatensystem
Haply Das interne Koordinatensystem istein rechtshändiges System, wobei die Z-Achse nach oben zeigt(+X nach rechts, +Y nach vorne, +Z nach oben). Du kannst es durcheine einmalige Koordinatenbasisverschiebungauf das Koordinatensystem der Anwendung abbilden – nach der Einstellung werden alle Ein- und Ausgänge automatisch umgerechnet.
Es gibt zwei Transformationen, mit denen Geräte in einer Szene positioniert werden können:
- Einbau– Physikalischer Versatz des Geräts (überVoreinstellungenoder explizite Einstellung)
- Arbeitsbereich– Laufzeit-Drift für die Kamera-/Szenennavigation (kann manuell oder überdas Navigationsmoduleingestellt werden)
Den vollständigen Ablauf der Koordinatenverarbeitung finden Sie unter„Einbinden und Arbeitsbereich“.
Dienste ausführen
Inverse Service kann in zwei Modi betrieben werden:
- In den „ Haply “-Hub integriert(empfohlen) –Der „Haply “-Hub enthält die neueste Version des Dienstes und startet automatisch, sobald der Hub geöffnet wird. Es sind keine manuellen Einstellungen erforderlich, und Sie erhalten stets die neuesten Korrekturen.
- Standalone-Betrieb–Verwenden Sie den Inverse Installer, um eine bestimmte Version des Dienstesals Windows-Dienst oder Unix-Daemonzu installieren. Geeignet für CI, die Bereitstellung ohne Benutzeroberfläche oder Rechner, auf denen Hub nicht ausgeführt wird.
Verwaltung unabhängiger Dienste
Windows——Dienst-App öffnen: Drücken Sie Win+R, Eingabe services.msc, suchen Sie „Haply -Inverse-Service“, klicken Sie mit der rechten Maustaste darauf → Starten/Stoppen/Neustart.
Linux (systemd):
systemctl start haply-inverse-service.service
systemctl stop haply-inverse-service.service
systemctl restart haply-inverse-service.service
systemctl enable haply-inverse-service.service # auto-start on boot
Vollständige API-Referenz
Vollständige, maschinenlesbare Spezifikationen zu jedem Endpunkt und jeder Nachricht:
- HTTP-API-Referenz (OpenAPI) – Interaktive Swagger-Benutzeroberfläche
- Referenz zur Simulations-API (AsyncAPI) – Interaktiver AsyncAPI-Viewer