Qual è il modo migliore per fondere le misurazioni dalle informazioni IMU, LIDAR ed Encoder in alcuni filtri bayesiani ricorsivi?


8

Sto facendo SLAM con un robot a quattro ruote motrici a trazione differenziale (2 ruote motrici) che guida attraverso un corridoio. Il corridoio non è piatto dappertutto. E il robot gira ruotando in posizione, quindi viaggiando nella direzione risultante. L'algoritmo SLAM non deve essere eseguito online.

Il robot prende le misure da una cinghia IMU / giroscopio misurando (ax,ay,az,wx,wy,wz), dove si axriferisce all'accelerazione della direzione xe wxmisura l'accelerazione angolare attorno all'asse x. Il LIDAR analizza il corridoio con un arco di 270 gradi e misura distanze e angoli. Tuttavia, per quanto ne so il modo in cui la sala non ha caratteristiche riconoscibili, tranne quando si curva

Devo trovare il modo migliore per fondere l'azione proposta misurata dall'encoder con i dati IMU e LIDAR. Per me ha senso che potrei fondere imbardata dall'IMU con i dati dell'encoder per avere un migliore senso di rotta, ma come dovrei incorporare i dati LIDAR?

In sostanza, qual è il modello di misurazione appropriato e come devo incorporare il rumore nel modello di movimento ? Oltre ad aggiungere un po 'di rumore gaussiano ad alcuni (0,σ)?

appendice

Questo in qualche modo ortogonale alla domanda, ma altrettanto confuso per me. Attualmente sto usando un filtro antiparticolato per fare SLAM, e sono un po 'confuso sul fatto che rappresenti l'incertezza nell'accelerazione angolare nelle particelle stesse. Vedo due opzioni:

  1. Un filtro di navigazione separato che utilizza EKF (o qualsiasi altra cosa in realtà) per trovare prima un vettore della matrice di accelerazione angolare "migliore stima", quindi utilizzare questa matrice come verità assoluta per il filtro antiparticolato. In modo che qualsiasi deriva nelle particelle non provenga dall'incertezza nell'accelerazione angolare.

  2. Incorporare l'incertezza nella deriva delle particelle stesse. Questa opzione sembra più sensata ma non sono sicuro di quale sia un modo di principio per farlo.


Se posso apportare una correzione tecnica, il giroscopio in una IMU sta misurando la frequenza angolare . L'accelerometro misura l' accelerazione lineare .
Sean,

Risposte:


2
  • Dato che hai un sensore 2D che non puoi ruotare in modo controllato, puoi solo aspettarti di eseguire SLAM su un piano 2D.

  • La soluzione migliore è utilizzare l'IMU per la stima dell'atteggiamento (solo rollio e beccheggio, poiché non si dispone di una bussola) e correggere di conseguenza ogni scansione laser 2D leggermente ruotata. Se la tua IMU non ti fornisce già una stima dell'atteggiamento, calcolerei le stime dell'atteggiamento utilizzando un filtro complementare non lineare poiché hanno solo bisogno di ottimizzare una singola costante.

  • Anche se è teoricamente possibile utilizzare i filtri antiparticolato per SLAM con scansioni laser (vedere gmapping), lo stato dell'arte attuale è SLAM basato su grafici, ovvero l'ottimizzazione dei minimi quadrati del grafico SLAM o, nel tuo caso, l'ottimizzazione del grafico di posa. Dai un'occhiata a Karto in ROS come un'implementazione open source esemplare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.