Steuerbefehle
Dies sind tickweise ausgeführte, nicht persistente Befehle, die über jedes Gerät commands
Zuordnung senden. Sie werden nurEinmal anwenden, und wird anschließend verworfen – wird die Übertragung beendet, kehrt das Gerät in den Ruhezustand zurück.
Sofern nicht anders angegeben,geltenalle Steuerbefehleausschließlich für WebSocket(es gibt keine entsprechenden Befehle für HTTP).
set_cursor_force
Auf den Cursor (Endeffektor) wird eine kartesische Kraft ausgeübt.
{
"inverse3": [{
"device_id": "049D",
"commands": {
"set_cursor_force": {
"vector": { "x": 0.0, "y": 0.0, "z": 1.5 }
}
}
}]
}
| Feld | Typ | Erläuterung |
|---|---|---|
vector | vec3 | Kraft, Einheit: Newton, im Anwendungsraum |
Innerhalb eines Ticks sind die Kräfteaddierbar– mehrere Quellen (Ihre App, SDF HFX, Navigation) werden addiert, bevor sie an das Gerät gesendet werden.
set_cursor_position
Bewegen Sie den Cursor an die gewünschte Position (Steuerung im Positionsmodus).
{
"inverse3": [{
"device_id": "049D",
"commands": {
"set_cursor_position": {
"position": { "x": 0.0, "y": -0.12, "z": 0.15 }
}
}
}]
}
| Feld | Typ | Erläuterung |
|---|---|---|
position | vec3 | Zielposition, in Metern, im Anwendungsraum |
Der Dienst berechnet die Kraft, die erforderlich ist, um den Cursor zum Ziel zu bewegen. Wenn „safe-trajectory“ (sichere Bewegungsbahn) aktiviert ist, wird die Geschwindigkeit des Cursors begrenzt.
set_angular_torques
Auf drei Gelenke wird ein Drehmoment ausgeübt (Steuerung im Winkelkraftmodus).
{
"inverse3": [{
"device_id": "049D",
"commands": {
"set_angular_torques": {
"torques": { "a0": 0.0, "a1": 0.0, "a2": 0.0 }
}
}
}]
}
| Feld | Typ | Erläuterung |
|---|---|---|
torques | Winkel3 | Gelenkdrehmoment |
set_angular_position
Dem Gelenk einen Sollwinkelwert vorgeben (Winkelpositionsregelung).
{
"inverse3": [{
"device_id": "049D",
"commands": {
"set_angular_position": {
"angles": { "a0": 30.0, "a1": 45.0, "a2": 60.0 }
}
}
}]
}
| Feld | Typ | Erläuterung |
|---|---|---|
angles | Winkel3 | Zielwinkel des Gelenks, Einheit: Grad |
set_transform
Arbeitsbereichstransformation festlegen (Geräteräum → Anwendungsraum). Im Gegensatz zu anderen Befehlen,set_transform JaDauerhaftigkeit——Der Dienst speichert den zuletzt von Ihnen gesendeten Wert. Sie können während der Kamerabewegung kontinuierlich Daten übertragen oder den Wert einmalig senden und beibehalten.
- WebSocket
- HTTP
{
"inverse3": [{
"device_id": "049D",
"commands": {
"set_transform": {
"transform": {
"position": { "x": 1.0, "y": 0.0, "z": 0.0 },
"rotation": { "x": 0.0, "y": 0.0, "z": 0.0, "w": 1.0 },
"scale": { "x": 1.0, "y": 1.0, "z": 1.0 }
}
}
}
}]
}
curl -X POST "http://localhost:10001/inverse3/049D/state/transform?session=:0" \
-H "Content-Type: application/json" \
-d '{"transform":{"position":{"x":1,"y":0,"z":0},"rotation":{"w":1,"x":0,"y":0,"z":0},"scale":{"x":1,"y":1,"z":1}}}'
Bei Greifvorrichtungen (Verse Grip / kabelloser Verse Grip) gilt lediglich, dass rotation Gültig.position und scale Dies wurde aus Gründen der architektonischen Konsistenz mit Inverse3 akzeptiert, hat jedoch keinerlei Auswirkungen auf die Greifvorrichtungen.
Wenn Sie sich kontinuierlich bewegen müssen, verwenden Sie bitteNavigationsmodul, anstatt manuell im Streaming-Verfahren zu senden set_transform。Dieses Modul übernimmt für Sie die physikalischen Berechnungen, das haptische Feedback sowie die Begrenzung des Arbeitsbereichs.
probe_position / probe_orientation
Ein Befehl zur Aufrechterhaltung der Verbindung, der ausschließlich zu Überwachungszwecken dient und für Sitzungenohne Übermittlung von Steuerbefehlengeeignet ist (z. B. zur Beobachtung von Sitzungen mit dem „ Haply -Hub“).
{
"inverse3": [{ "device_id": "049D", "commands": { "probe_position": {} } }]
}
{
"verse_grip": [{ "device_id": "DEF456", "commands": { "probe_orientation": {} } }]
}
Wenn Ihre Sitzung bereits einen beliebigen Steuerbefehl gesendet hat (set_cursor_force、
set_cursor_position usw.), wird der Gerätestatus bei jeder Antwort automatisch aktualisiert. Abfragebefehle sind nur für schreibgeschützte Überwachungssitzungen von Nutzen.