HTTP
Par défaut, le service HTTP démarre sur : http://localhost:10000
. Note : le port peut être modifié dans la configuration du service.
Version
Méthode : GET
URL : http://localhost:10000/version
Exemple de réponse :
{
"build_time": "2024-08-07T16:01:53Z",
"git_branch": "main",
"git_describe": "3.0.0-2-gce34c39e",
"git_hash": "ce34c39e",
"git_tag": "3.0.0",
"project_name": "haply-inverse-service",
"project_version": "3.0.0.0"
}
Dispositifs
Méthode : GET
URL : http://localhost:10000/devices
Exemple de réponse :
{
"inverse3": [
{
"device_id": "04BA",
"config": {
"type": "inverse3",
"device_info": {
"minor_version": 1,
"major_version": 7,
"id": "04BA",
"device_type": 4,
"uuid": "2D35F80DD9005F599B68F49944CB04BA"
},
"port": "COM13",
"extended_device_id": "2D35F80DD9005F599B68F49944CB04BA",
"extended_firmware_version": "8C20FDC8010AA1E15AA133CDA2534874",
"gravity_compensation": {
"enabled": true,
"scaling_factor": 1
},
"handedness": "right",
"torque_scaling": {
"enabled": true
}
},
"state": {
"angular_position": {
"a0": -69.31704,
"a1": 137.62952,
"a2": 19.832787
},
"angular_velocity": {
"a0": 0,
"a1": 0,
"a2": 0
},
"body_orientation": {
"x": -0.01940918,
"y": 0.7026367,
"z": 0.00048828125,
"w": 0.7113037
},
"cursor_position": {
"x": 0.07842738,
"y": -0.14836666,
"z": 0.14297646
},
"cursor_velocity": {
"x": -0.011969013,
"y": 0.0012009288,
"z": -0.043197
},
"mode": "idle"
},
"status": {
"calibrated": false,
"in_use": false,
"power_supply": true,
"ready": true,
"started": true
}
}
],
"verse_grip": [
{
"device_id": "61548",
"config": {
"port": "COM3",
"type": "verse_grip"
},
"state": {
"button": false,
"hall": 0,
"orientation": {
"x": -0.5019531,
"y": 0.8632202,
"z": -0.048095703,
"w": -0.022338867
}
},
"status": {
"error": 0,
"ready": true
}
}
],
"wireless_verse_grip": [
{
"device_id": "0",
"config": {
"port": "COM6",
"type": "wireless_verse_grip",
"major_version": 1,
"minor_version": 4,
"hardware_version": 1
},
"state": {
"battery_level": 0.816,
"battery_voltage": 3.77,
"buttons": {
"a": false,
"b": false,
"c": false
},
"hall": 16,
"orientation": {
"x": -0.019866943,
"y": -0.017486572,
"z": 0.05508423,
"w": -0.9963989
}
},
"status": {
"connected": true,
"awake": true,
"ready": true
}
}
]
}
Échelle des forces
Méthode : POST
URL : http://localhost:10000/force_scale
Exemple de corps :
{
"force_scale": 0.5
}
Exemple de réponse :
{
"ok": true
}
Compensation de la gravité
Méthode : POST
URL : http://localhost:10000/gravity_compensation
Exemple de corps :
{
"device_id": "049D",
"enable": true,
"gravity_scaling_factor": 0.8
}
Exemple de réponse :
{
"ok": true
}
Mise à l'échelle du couple
Méthode : POST
URL : http://localhost:10000/torque_scaling
Exemple de corps :
{
"device_id": "049D",
"enable": true
}
Exemple de réponse :
{
"ok": true
}
Manipulation de l'appareil
Méthode : POST
URL : http://localhost:10000/device_handedness
Exemple de corps :
{
"device_id": "049D",
"handedness": "right"
}
Exemple de réponse :
{
"ok": true
}
Sauvegarder la configuration
Ne fonctionne qu'avec les appareils Inverse3 . Attention : Évitez de sauvegarder la configuration trop souvent, car il y a un nombre limité de sauvegardes qui peuvent être appliquées à un appareil donné. de sauvegardes qui peuvent être appliquées à un appareil donné.
Méthode : POST
URL : http://localhost:10000/save_configuration
Exemple de corps :
{
"device_id": "049D"
}
Exemple de réponse :
{
"ok": true
}
Activation série
Active ou désactive toute la communication série. Lorsque la communication série est désactivée, il est impossible d'envoyer des commandes aux appareils.
Méthode : POST
URL : http://localhost:10000/serial_enable
Exemple de corps :
{
"enable": true
}
Exemple de réponse :
{
"ok": true
}
Grip Vertical Stopper
Activer ou désactiver la fonction expérimentale d'arrêt vertical de la poignée. Cette fonction vérifiera l'orientation du VerseGrip sans fil pour détecter lorsque le VerseGrip est lâché. Lorsqu'elle se déclenche, elle place l'Inverse3 en contrôle de position dans sa position actuelle afin que l'effecteur ne tombe pas. ne tombe pas. Elle est désactivée automatiquement lorsque le VerseGrip est ramassé à nouveau.
En tant que fonction expérimentale, elle est désactivée par défaut et doit être explicitement activée pour être activée.
Méthode : POST
URL : http://localhost:10000/experimental/features/grip_dropped_simulation_stopper
Exemple de corps :
{
"enable": true,
"hall_effect_threshold": 17
}
Exemple de réponse :
{
"ok": true
}