Contact mode
- Detto anche: contact state
- Categoria: Planning & manipulation › Manipulation
- Tag: contact, manipulation, hybrid-dynamics, friction, planning
Un'etichetta discreta che indica quali contatti di un sistema robot-oggetto sono attivi e se ciascuno è aderente o strisciante; ogni etichetta corrisponde a un diverso insieme di dinamiche regolari.
Definizione
In un sistema con contatto con attrito, ogni contatto potenziale può trovarsi in uno di diversi stati: separato, senza forza; aderente, in contatto senza moto tangenziale relativo; oppure strisciante, in contatto e in moto tangenziale, con la forza di attrito sul bordo del cono di attrito e opposta al moto. Un modo di contatto (contact mode) assegna uno di questi stati a ogni contatto del sistema. All'interno di un modo fissato le equazioni del moto sono regolari, perché i vincoli attivi e la forma delle forze di attrito sono noti. Ai confini tra i modi la dinamica cambia bruscamente. La dinamica di contatto è quindi ibrida: modi regolari separati da superfici di guardia, come la distanza di un contatto che arriva a zero o la forza tangenziale di un contatto aderente che raggiunge il limite di attrito.
Il numero di modi cresce esponenzialmente con il numero di contatti. Con n contatti e tre stati ciascuno ci sono fino a 3ⁿ combinazioni, e di più in tre dimensioni, dove lo strisciamento può avvenire in direzioni diverse, anche se molte non sono ammissibili per una data geometria. Questa struttura combinatoria è l'ostacolo principale nella pianificazione di manipolazione e locomozione ricche di contatti. I metodi differiscono nel modo di affrontarla: enumerando i modi ammissibili e pianificando una sequenza attraverso di essi; codificando le scelte di modo con variabili intere in programmi interi misti; con l'ottimizzazione delle traiettorie a contatto implicito, che rappresenta il contatto con vincoli di complementarità in modo che l'ottimizzatore scelga i modi implicitamente; e con lo smoothing, che sostituisce la dinamica di contatto non regolare con un'approssimazione regolare perché i metodi basati sul gradiente possano vedere oltre il modo corrente, come nell'articolo sulla pianificazione globale presente sul nostro sito.
Nella manipolazione quasi-statica e quasi-dinamica, in cui gli effetti inerziali sono piccoli rispetto alle forze di contatto e di attrito, l'enumerazione dei modi è spesso trattabile per pochi contatti e dà un piano interpretabile, per esempio: spingere l'oggetto mentre il dito aderisce, lasciare che il dito strisci verso una nuova posizione, poi far ruotare l'oggetto attorno a uno spigolo. Le sequenze di modi sono centrali anche nella locomozione con gambe, dove l'andatura definisce quali piedi sono in contatto nel tempo, anche se lì la sequenza è spesso fissata in anticipo da un calendario di andatura invece di essere cercata.
Perché è importante
Scegliere quali contatti stabilire e interrompere, e se aderiscono o strisciano, è la decisione centrale nella manipolazione e nella locomozione. I modi di contatto spiegano perché questi problemi sono difficili per gli ottimizzatori regolari e come i pianificatori moderni aggirano la difficoltà.
Applicazioni principali
- Pianificazione di manipolazione non prensile come spingere, far ruotare e ribaltare
- Manipolazione in mano con contatti striscianti e di rotolamento
- Ottimizzazione delle traiettorie a contatto implicito per robot con gambe
- Pianificazione di andature e sequenze di contatto
- Stima dello stato di contatto da sensori di forza e tattili
In pratica
Un team pianifica che un robot spinga una scatola su un tavolo e poi la ruoti fino a metterla in piedi contro una parete. Modella il contatto dito-scatola, il contatto scatola-tavolo come punti agli spigoli e il contatto scatola-parete. Per la fase di spinta sceglie un modo con il dito aderente alla scatola e la scatola strisciante sul tavolo; per la rotazione sceglie la scatola aderente con lo spigolo contro la parete, strisciante sul tavolo, con il dito strisciante sulla faccia della scatola. All'interno di ogni modo risolve i movimenti del dito che mantengono tutte le forze dentro i rispettivi coni di attrito. Durante l'esecuzione controlla le letture di forza e la posa tracciata della scatola per rilevare cambi di modo non pianificati, come lo slittamento del dito, e ripianifica quando se ne verifica uno.
Idee sbagliate comuni
- Un modo di contatto dice solo quali contatti si toccano — dice anche se ciascuno aderisce o striscia, il che cambia la dinamica quanto stabilire o interrompere un contatto
- I pianificatori devono enumerare tutti i modi di contatto — l'ottimizzazione a contatto implicito e lo smoothing evitano l'enumerazione esplicita, al prezzo di garanzie più deboli e di minimi locali
- I modi di contatto sono un artefatto della modellazione — riflettono cambiamenti fisici reali; una pinza che slitta ha cambiato modo, e un controllore che lo ignora può fallire
Chi dovrebbe saperlo
- Ricercatori di pianificazione della manipolazione
- Ingegneri del controllo della locomozione con gambe
- Sviluppatori di simulazione fisica
- Ingegneri dei sensori tattili e di forza
Tecnologie correlate
- Problemi di complementarità lineare (Linear Complementarity Problems)
- Ottimizzazione delle traiettorie a contatto implicito (Contact-Implicit Trajectory Optimization)
- Modelli di contatto quasi-statici (Quasi-Static Contact Models)
- Drake
- MuJoCo
Termini correlati
Progetti correlati
- LeRobot: HuggingFace ML library for real-world robotics in PyTorch
- Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
- NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills
- OpenVLA: 7B-parameter Vision-Language-Action model for robotic manipulation
- Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
- OpenArm: 7DOF humanoid arm for physical AI research in contact-rich environments