sensor.calibrate() avec la pince ouverte et déchargée. Cela élimine le contact avec les doigts et la tension du câble. Recalibrez si le bras est repositionné de manière significative.
Enregistrement de démonstrations tactiles
Les données tactiles sont la modalité manquante dans la plupart des ensembles de données d’apprentissage robotique. Cette page explique pourquoi c'est important, comment enregistrer des flux tactiles + bras + caméra synchronisés, le format d'ensemble de données étendu et comment former des politiques qui utilisent des entrées tactiles.
Pourquoi les données tactiles améliorent l'apprentissage des robots
La vision dicte une politique où la pince est. La proprioception le dit jusqu'à quel point les doigts sont fermés. Ni l'un ni l'autre ne le dit si la prise est stable. Une politique formée uniquement sur les données de vision et d’articulations doit apprendre à déduire indirectement la qualité de préhension – à partir du mouvement de l’objet, des limites de force des bras ou des essais et erreurs lors du déploiement. L'ajout d'une détection tactile permet une supervision directe de l'état par contact : la politique reçoit un signal de vérité sur le terrain distinguant une prise sécurisée d'une prise sujette au glissement à chaque étape de chaque démonstration. Ceci est particulièrement important pour les objets déformables, transparents ou de taille variable pour lesquels l'estimation visuelle de la qualité de préhension n'est pas fiable.
Configuration matérielle pour l'enregistrement synchronisé
Une plate-forme d'enregistrement multimodale complète nécessite trois couches matérielles, toutes synchronisées sur une horloge commune :
- Bras robotique — fournit les positions des articulations, les vitesses et la pose des effecteurs terminaux à 100–500 Hz via USB ou Ethernet. Utilisez l'API d'horodatage du SDK arm, et non l'heure système, pour obtenir l'état commun estampillé par le matériel.
- Capteur(s) Paxini Gen3 — branché sur un hub USB alimenté monté au poignet du robot. Chaque image est horodatée par le PC hôte au moment de l'interruption USB (résolution nanoseconde, gigue <0,5 ms).
- Caméra — une caméra au poignet (en option : une caméra aérienne). Utilisez une caméra USB ou GigE avec synchronisation de déclenchement matériel, ou une caméra déclenchée par logiciel avec une latence connue. Enregistrez à 30–60 ips.
Les trois sources écrivent des horodatages en utilisant la même horloge hôte monotone. Les SDK de la plateforme Enregistreur MultiSource aligne les images au moment du post-traitement à l'aide de l'interpolation d'horodatage.
Format de l'ensemble de données - Schéma LeRobot étendu
Le pipeline de collecte de données Paxini Gen3 étend le format d'ensemble de données standard LeRobot HDF5 avec des canaux tactiles supplémentaires. Les outils LeRobot existants (chargement de données, visualisation, formation aux politiques) restent entièrement compatibles : les nouvelles clés sont simplement ignorées par les pipelines qui ne les utilisent pas.
| Clé HDF5 | Forme | Source |
|---|---|---|
| observation.état | (V, 7) | Positions des articulations des bras + largeur de la pince |
| observation.images.poignet | (L, H, L, 3) | Caméra de poignet (uint8 RVB) |
| action | (V, 7) | Positions articulaires cibles + commande de préhension |
| observation.tactile.pression_map | (V, 8, 8) | Tableau de pression Paxini Gen3 (kPa, float32) |
| observation.tactile.total_force_n | (T,) | Force normale totale par image (Newtons) |
| observation.tactile.in_contact | (T,) | Drapeau de contact booléen par image |
| observation.tactile.contact_centroid | (T, 2) | Centre de gravité du contact (ligne, colonne) par image |
| méta/timestamps_ns | (T,) | Horodatages en nanosecondes pour tous les canaux |
De nouvelles touches tactiles sont mises en avant. Toutes les autres clés suivent le schéma standard de LeRobot.
Liste de contrôle de qualité pour les données tactiles
in_contact Le front montant doit coïncider avec le moment visible du contact du bout du doigt avec l'objet dans le flux de la caméra. Un décalage > 20 ms indique un problème d’alignement de l’horodatage.
paxini.annotate.flag_slip_events(episode) pour les marquer automatiquement pour examen.
pressure_map.max() atteint 600 kPa dans n'importe quel épisode, le capteur sature. Réduisez la force de préhension ou utilisez la variante avec paume (pression maximale par taxel plus faible) pour des prises plus lourdes.
Formation politique avec des apports tactiles
Pour ajouter le tactile comme modalité d'observation dans ACT ou Diffusion Policy, étendez la configuration d'observation pour inclure la carte de pression ou le scalaire agrégé (total_force_n). La carte de pression fournit des informations spatiales complètes mais ajoute 64 flotteurs par image et par capteur ; le scalaire est plus facile à intégrer et suffisant pour les tâches de qualité de compréhension binaire.
Pour la procédure complète de formation, y compris comment calculer les statistiques de normalisation à partir de votre ensemble de données enregistrées et les évaluer par rapport à une référence de vision uniquement, consultez le parcours d'apprentissage Unité 5.
Pour un contexte plus large sur les stratégies de collecte de données sur les mains adroites, voir le Guide des mains adroites.