Attualmente ho un robot in stile triciclo che utilizza un filtro kalman esteso per tracciare 6 variabili di stato. Gli ingressi al sistema sono un codificatore di direzione, un codificatore di distanza e un laser rotante che restituisce le informazioni che portano solo a punti di riferimento noti. Attualmente entrambi gli encoder si trovano sulla ruota principale (quella che sterza ed è anche alimentata).
Le 6 variabili rilevate dal filtro Kalman sono X, Y, direzione, scala di distanza (calibrazione dell'encoder di distanza), calibrazione dello sterzo (offset dell'encoder di direzione) e infine una calibrazione del rilevamento di un laser rotante.
Con questo tipo di sistema mettiamo insieme un veicolo che gli conferisce una buona posizione nota con molti punti di riferimento, lo guidiamo un po 'in giro e finiamo con un veicolo ben calibrato che può percorrere lunghe distanze in modo affidabile con pochi punti di riferimento. È semplice e funziona alla grande. Nel tempo, se un encoder si sposta, seguirà automaticamente la deriva e si regolerà.
Ora stiamo provando ad applicare gli stessi principi a un robot con più sterzo e ruote motrici. In questo caso il veicolo sarà in grado di muoversi in qualsiasi direzione, girare sul posto, ecc. Ogni sterzo / ruota motrice avrà il proprio codificatore di sterzo e distanza che ciascuno dovrà essere calibrato.
Posso aspettarmi di ottenere lo stesso tipo di affidabilità e prestazioni dal sistema più complesso? Ci sono insidie comuni a cui prestare attenzione quando si espande un filtro kalman per includere più variabili? Esiste il rischio che si assesti su valori non ottimali?