Open Source Robotics

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

Bicycle model

  • Detto anche: single-track model
  • Categoria: Foundations & spatial maths › Kinematics
  • Tag: vehicle-dynamics, kinematics, autonomous-driving, mobile-robots, car-like-robots

Un modello piano di veicolo che fonde le due ruote di ciascun asse in un'unica ruota sulla linea mediana, fornendo un modello semplice del moto di un robot di tipo automobilistico con sterzo e, nella forma dinamica, con le forze degli pneumatici.

Definizione

Il modello a bicicletta (bicycle model), detto anche modello monotraccia (single-track model), descrive un veicolo a quattro ruote che si muove nel piano fondendo le ruote sinistra e destra di ciascun asse in un'unica ruota posta sulla linea mediana del veicolo. Il risultato somiglia a una bicicletta con una ruota anteriore sterzante e una ruota posteriore fissa, separate dal passo. Il modello ignora rollio, beccheggio, sospensioni e le differenze tra gli pneumatici sinistri e destri, ma conserva la geometria che conta di più per l'inseguimento del percorso: un veicolo di tipo automobilistico deve curvare sterzando, il suo raggio di sterzata dipende dall'angolo di sterzo e dal passo, e non può spostarsi lateralmente a piacere.

Il modello ha due forme comuni. Il modello a bicicletta cinematico assume che ogni ruota rotoli senza slittamento laterale, per cui la velocità di ciascuna ruota è diretta lungo la sua direzione. Il suo stato è posizione, orientamento e velocità, i suoi ingressi sono l'angolo di sterzo e l'accelerazione, e con l'asse posteriore come punto di riferimento la velocità di imbardata è la velocità moltiplicata per la tangente dell'angolo di sterzo e divisa per il passo. Funziona bene a basse velocità e con accelerazione laterale moderata. Il modello a bicicletta dinamico aggiunge la massa del veicolo, l'inerzia di imbardata e le distanze dal centro di massa a ciascun asse, e calcola le forze laterali degli pneumatici dall'angolo di slittamento dello pneumatico (tire slip angle) di ciascun asse, tramite un modello lineare di rigidezza in curva o un modello di pneumatico non lineare come la Magic Formula di Pacejka. È necessario quando gli pneumatici si avvicinano ai loro limiti di aderenza, come nelle manovre di emergenza, nelle corse o nel drift.

Il modello a bicicletta si colloca tra modelli di veicolo più semplici e più ricchi. Il modello a monociclo (unicycle model) comanda direttamente la velocità di avanzamento e la velocità di imbardata, senza geometria di sterzo né raggio di sterzata minimo. L'auto di Dubins (Dubins car) è un'astrazione per la pianificazione: moto in avanti a velocità costante con curvatura limitata, che è ciò che diventa un modello a bicicletta cinematico a velocità costante con un limite di sterzo. I modelli a quattro ruote con trasferimento di carico, sospensioni e forze dei singoli pneumatici si usano quando l'accorpamento degli pneumatici sinistri e destri del modello a bicicletta è troppo grossolano.

Perché è importante

Quasi ogni auto autonoma, robot mobile con sterzo Ackermann e piattaforma da corsa in scala ridotta usa una qualche forma del modello a bicicletta nel proprio pianificatore, controllore o stimatore di stato. È abbastanza semplice da girare all'interno del controllo predittivo basato su modello ad alte frequenze pur cogliendo i limiti di sterzo e, nella forma dinamica, la saturazione degli pneumatici.

Applicazioni principali

  • Controllo predittivo basato su modello per auto autonome e veicoli da corsa
  • Controllori di inseguimento del percorso come Pure Pursuit e leggi di sterzo di tipo Stanley
  • Pianificazione della traiettoria per robot mobili con sterzo Ackermann
  • Stima dello stato del veicolo, compresa la stima dell'angolo di deriva
  • Controllo del drift e della guida al limite

In pratica

Un gruppo costruisce un controllore predittivo basato su modello per un'auto da corsa autonoma in scala ridotta. A bassa velocità usa il modello a bicicletta cinematico, con il passo misurato sull'auto e un limite di sterzo ricavato dalla corsa del servo, per prevedere il percorso su un orizzonte breve. Man mano che le velocità sul giro aumentano, l'auto comincia a sottosterzare in curva e le previsioni cinematiche si discostano, quindi il gruppo passa a un modello a bicicletta dinamico. Identifica massa, inerzia di imbardata, distanze dagli assi e rigidezza in curva degli pneumatici dai dati di guida registrati, poi verifica che la velocità di imbardata e l'accelerazione laterale previste corrispondano alle misure dell'IMU prima di tarare il controllore.

Idee sbagliate comuni

  • Il modello a bicicletta è solo per le biciclette — è un modello di veicoli a quattro ruote di tipo automobilistico in cui ogni asse è accorpato in un'unica ruota
  • Il modello a bicicletta cinematico vale a qualsiasi velocità — assume l'assenza di slittamento degli pneumatici e diventa impreciso al crescere dell'accelerazione laterale; vicino al limite di aderenza serve la versione dinamica con le forze degli pneumatici
  • Il modello a bicicletta è la stessa cosa del modello a monociclo — il monociclo comanda direttamente la velocità di imbardata, mentre il modello a bicicletta curva tramite la geometria dello sterzo, con un raggio di sterzata minimo

Chi dovrebbe saperlo

  • Ingegneri di guida autonoma e di controllo del veicolo
  • Sviluppatori di robot mobili che lavorano con lo sterzo Ackermann
  • Ricercatori di pianificazione del movimento che lavorano su robot di tipo automobilistico
  • Studenti e maker che costruiscono auto da corsa autonome in scala ridotta

Tecnologie correlate

  • Sterzo Ackermann (Ackermann Steering)
  • Magic Formula di Pacejka
  • Pure Pursuit
  • Controllo predittivo basato su modello (Model Predictive Control)
  • Curve di Reeds-Shepp (Reeds-Shepp Curves)

Termini correlati

  • Unicycle Model
  • Dubins Car
  • Nonholonomic Constraint
  • Tire slip angle
  • Model Predictive Control

Progetti correlati

  • MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking
  • PyRoki: Modular Python toolkit for kinematic optimization across CPU, GPU, and TPU via JAX
  • DART: C++ physics engine for articulated rigid body dynamics and robotics simulation
  • MOLA: Modular C++/ROS 2 framework for LiDAR odometry, SLAM, and localization
  • IKPy: Pure-Python inverse kinematics library that builds chains straight from URDF
  • Vision Pilot: Autoware Foundation's open-source L2 ADAS stack from a single camera

Video

  • Self-Driving Cars - Lecture 5.2 (Vehicle Dynamics: Kinematic Bicycle Model): Tübingen Machine Learning
  • Self-Driving Cars - Lecture 5.4 (Vehicle Dynamics: Dynamic Bicycle Model): Tübingen Machine Learning

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