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 configure | HTTP config/ | Portée de session | Remarques |
|---|---|---|---|---|
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}}}'
mount et preset sont mutuellement exclusifsN'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.
| Valeur | Effet |
|---|---|
gain = 0.0 | Désactivé — la force est transmise sans atténuation |
gain = 1.0 | Atté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 terminaison | Corps | Description |
|---|---|---|
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).