Open Source Robotics

Una raccolta curata di progetti, strumenti e software di robotica open source di alta qualità per la comunità della robotica.

Kinesthetic Teaching

  • Detto anche: lead-through programming, hand guiding, physical demonstration
  • Categoria: Learning & autonomy › Learning from demonstration
  • Tag: imitation-learning, demonstrations, human-robot-interaction, cobots, data-collection

Insegnare a un robot guidandone fisicamente il braccio lungo un compito mentre registra il proprio movimento dei giunti o dell'end effector, ottenendo dimostrazioni direttamente nel corpo stesso del robot.

Definizione

Insegnamento cinestetico (kinesthetic teaching) è un modo di fornire dimostrazioni in cui una persona afferra il robot e lo muove lungo il compito. Il controllore del robot rende il braccio facile da muovere, e il robot registra come dimostrazione le proprie posizioni dei giunti, le pose dell'end effector e talvolta le forze. I dati registrati possono essere riprodotti come programma fisso o usati come dati di addestramento per l'apprendimento per imitazione. L'insegnamento cinestetico è quindi un modo di raccogliere dimostrazioni, mentre l'apprendimento per imitazione è la famiglia di metodi che apprendono una policy a partire da esse, comunque siano state raccolte. Nella robotica industriale la stessa idea è chiamata programmazione per autoapprendimento (lead-through programming) o guida manuale (hand guiding).

Il vantaggio principale è che le dimostrazioni escono direttamente nello spazio dei giunti del robot stesso. La teleoperazione e le dimostrazioni video richiedono di mappare il movimento umano su un corpo diverso, il problema della corrispondenza, e le interfacce di teleoperazione possono essere difficili da usare per movimenti fini o ricchi di contatto. Con l'insegnamento cinestetico, ogni movimento registrato è già cinematicamente fattibile per il robot, e la persona sente il contatto con l'ambiente attraverso il braccio. Perché questo sia possibile, il braccio deve essere facile da muovere a mano: o è reversibile (backdrivable) ed esegue un controllore a compensazione di gravità o a bassa impedenza, oppure usa la misura della coppia ai giunti o della forza al polso con un controllo di ammettenza per seguire le forze che la persona applica.

Anche l'insegnamento cinestetico ha dei limiti. Le mani e il corpo della persona sono nella scena, quindi le immagini registrate durante la dimostrazione contengono la persona e le forze registrate includono la spinta della persona, non solo le forze del compito. Una soluzione comune è registrare la traiettoria in modo cinestetico e poi riprodurla in modo autonomo per acquisire dati puliti di telecamera e di forza. Guidare un braccio pesante o con molti giunti è faticoso, i compiti a due braccia richiedono due persone o configurazioni accurate, e i movimenti rapidi o dinamici sono difficili da dimostrare a mano. Le dimostrazioni catturano anche le esitazioni dell'istruttore, quindi le traiettorie vengono di solito levigate o segmentate prima dell'uso.

Perché è importante

L'insegnamento cinestetico è uno dei modi più semplici per ottenere su un robot reale dimostrazioni fattibili e pertinenti al compito, senza retargeting e con poco hardware aggiuntivo. È molto usato sia per programmare i cobot in reparto produttivo sia per raccogliere dati per la ricerca sull'apprendimento per imitazione.

Applicazioni principali

  • Programmazione dei cobot tramite guida manuale
  • Raccolta di dimostrazioni per l'apprendimento per imitazione e il behavior cloning
  • Insegnamento di compiti ricchi di contatto come pulire, inserire e raccogliere con un cucchiaio
  • Apprendimento di primitive di movimento da poche dimostrazioni
  • Insegnamento di waypoint per percorsi di saldatura, verniciatura e assemblaggio

In pratica

Un gruppo di ricerca raccoglie dimostrazioni di come prendere cibo da una ciotola con un cucchiaio fissato a un braccio collaborativo. In modalità di compensazione di gravità, una persona afferra il braccio vicino al polso ed esegue ogni cucchiaiata mentre il robot registra le pose dell'end effector a frequenza fissa. Poiché la mano della persona copre la telecamera sul polso e aggiunge forza, ogni traiettoria registrata viene poi riprodotta dal robot da solo, e le immagini della telecamera e le letture di forza di questa riproduzione vengono associate alla traiettoria come dati di addestramento. Le dimostrazioni che urtano il bordo della ciotola o rovesciano il cibo vengono scartate, e le restanti sono usate per addestrare una policy visuomotoria.

Idee sbagliate comuni

  • L'insegnamento cinestetico è un tipo di teleoperazione — nella teleoperazione la persona muove un'interfaccia separata e il robot la segue a distanza, mentre nell'insegnamento cinestetico la persona muove fisicamente il robot stesso
  • Qualsiasi braccio robotico può essere istruito in modo cinestetico — il braccio deve avere giunti reversibili oppure sensori di coppia o di forza con un controllore adatto; un braccio industriale rigido controllato in posizione non si può semplicemente spingere a mano
  • I dati registrati durante la dimostrazione si possono usare così come sono — la persona compare nelle immagini della telecamera e la forza che applica si mescola alle forze del compito, quindi molte pipeline riproducono la traiettoria per registrare dati dei sensori puliti

Chi dovrebbe saperlo

  • Ricercatori di apprendimento robotico che raccolgono dimostrazioni
  • Integratori che programmano cobot
  • Ingegneri di controllo che implementano la compensazione di gravità e il controllo di ammettenza
  • Sviluppatori di robotica assistiva e di servizio

Tecnologie correlate

  • Compensazione di gravità (Gravity Compensation)
  • Controllo di ammettenza (Admittance Control)
  • Dynamic Movement Primitives
  • Sensori di coppia ai giunti (Joint Torque Sensors)
  • Bracci robotici collaborativi (Collaborative Robot Arms)

Termini correlati

  • Imitation Learning
  • Teleoperation
  • Behavior Cloning
  • Backdrivability
  • Impedance Control
  • Cobot

Progetti correlati

  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • OpenPI: Physical Intelligence VLA foundation models for general robot control
  • Mobile ALOHA: Bimanual mobile manipulation with 4 robot arms on a wheeled base for teleoperation
  • OpenArm: 7DOF humanoid arm for physical AI research in contact-rich environments
  • Koch v1.1 Low-Cost Robot Arm: Open-source 6-DOF robot arm for affordable teleoperation and imitation learning research.
  • AgiBot World: Million-trajectory real-robot manipulation dataset from a fleet of 100+ humanoid robots

Questo sito richiede JavaScript. Attiva JavaScript per esplorare i nostri progetti di robotica open source.