Aller au contenu principal

Configuration de l'appareil

La configuration de l'appareil est envoyée sous le dictionnaire configure de chaque appareil (WebSocket) ou via les routes /{device_type}/{id}/config/{key} HTTP. Toutes les entrées sont persistantes — définies une fois, elles restent en vigueur jusqu'à modification.

Matrice de disponibilité des configurations​

import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';

CléWS configureHTTP config/Portée de sessionRemarques
preset✓✓✓Mutuellement exclusif avec mount
basis✓✓✓Au niveau de la session et par appareil
mount✓✓✓Mutuellement exclusif avec preset
damping✓✓✓Scalaire et/ou directionnel
force_gate✓✓✓Protection contre les oscillations
handedness—✓—Global à l'appareil (droite/gauche)
torque_scaling—✓—Global à l'appareil
gravity_compensation—✓—Global à l'appareil
home_return—✓—Micrologiciel non encore actif
navigation✓✓✓Module → voir la page dédiée

preset​

Sélectionne une configuration d'usine nommée qui définit en une seule fois le montage, la base et l'origine de l'espace de travail. Voir Montage et espace de travail (préréglages) pour la liste complète.

{ "inverse3": [{ "device_id": "049D", "configure": { "preset": { "preset": "arm_front_centered" } } }] }
curl -X POST "http://localhost:10001/inverse3/049D/config/preset?session=:0" \
-d '{"preset":"arm_front_centered"}'

basis​

Définit le remappage des axes de coordonnées. Voir Permutation de base pour les conventions et les notes de migration.

{ "session": { "configure": { "basis": { "permutation": "XZY" } } } }

La base par appareil est également prise en charge :

{ "inverse3": [{ "device_id": "049D", "configure": { "basis": { "permutation": "XZY" } } }] }
curl -X POST "http://localhost:10001/inverse3/049D/config/basis?session=:0" \
-d '{"permutation":"XZY"}'

mount​

Remplace la transformation de montage physique. Voir Montage et espace de travail pour la chaîne de traitement des coordonnées.

{
"inverse3": [{
"device_id": "049D",
"configure": {
"mount": {
"transform": {
"position": { "x": 0.0, "y": 0.0, "z": 0.0 },
"rotation": { "w": 1.0, "x": 0.0, "y": 0.0, "z": 0.0 },
"scale": { "x": 1.0, "y": 1.0, "z": 1.0 }
}
}
}
}]
}
curl -X POST "http://localhost:10001/inverse3/049D/config/mount?session=:0" \
-H "Content-Type: application/json" \
-d '{"transform":{"position":{"x":0,"y":0,"z":0},"rotation":{"w":1,"x":0,"y":0,"z":0},"scale":{"x":1,"y":1,"z":1}}}'
attention
mount et preset sont mutuellement exclusifs

N'envoyez pas les deux dans le même message — le service le rejette comme ambigu.


damping​

Permet de contrôler l'amortissement uniforme et directionnel. Au moins un champ doit être présent.

{ "inverse3": [{ "device_id": "049D", "configure": { "damping": { "scalar": 0.5 } } }] }

Directionnel :

{ "inverse3": [{ "device_id": "049D", "configure": { "damping": { "vector": { "x": 0.0, "y": 1.0, "z": 0.0 } } } }] }
curl -X POST "http://localhost:10001/inverse3/049D/config/filters/damping?session=:0" \
-d '{"scalar": 0.5}'

force_gate​

Garde anti-oscillation — atténue la sortie de force lorsqu'une oscillation est détectée.

ValeurEffet
gain = 0.0Désactivé — la force est transmise sans atténuation
gain = 1.0Atténuation maximale pendant une oscillation
{ "inverse3": [{ "device_id": "049D", "configure": { "force_gate": { "gain": 0.5 } } }] }
curl -X POST "http://localhost:10001/inverse3/049D/config/filters/force_gate?session=:0" \
-d '{"gain": 0.5}'

Configuration de l'appareil propre à HTTP​

Les paramètres suivants sont globaux à l'appareil (et non propres à une session) et ne peuvent être définis que via HTTP :

Point de terminaisonCorpsDescription
POST /{type}/{id}/config/handedness"left" ou "right"Latéralité Inverse3
POST /{type}/{id}/config/torque_scaling{ "enabled": bool }Activer/désactiver la mise à l'échelle du couple
POST /{type}/{id}/config/gravity_compensation{ "enabled": bool, "scaling_factor": float }Compensation de la gravité
POST /{type}/{id}/config/home_return{ "enabled": bool }Retour au point d'origine (micrologiciel non encore actif)

Tous ces points de terminaison prennent en charge GET (lecture de la valeur actuelle), POST (définition) et DELETE (rétablissement de la valeur par défaut).