Il controller più semplice è un controller di feedback dello stato lineare. Esistono essenzialmente 4 stati diversi per i quali è necessario un guadagno. Questi sono angolo di inclinazione, velocità di inclinazione, velocità e posizione.
LQR (regolatore quadratico lineare) è un metodo per progettare questi guadagni (dopo aver ottenuto una rappresentazione dello spazio degli stati linearizzata del sistema). Se non si dispone di una rappresentazione dello spazio degli stati (probabilmente no), è possibile ottenere equazioni di movimento e misurare i parametri. Se non si dispone di una rappresentazione dello spazio degli stati, è necessario ottimizzare manualmente i guadagni (senza LQR o altri metodi come il posizionamento dei poli ).
Ottimizzazione dei guadagni manualmente:
Supponendo che l'angolo di inclinazione, la posizione / velocità e le coppie delle ruote siano tutti rivolti in avanti (se positivi), si desidera un guadagno positivo sull'angolo di inclinazione e sulla velocità di inclinazione, nonché un guadagno positivo su posizione e velocità.
Inizia con un guadagno su angolo di inclinazione e velocità di inclinazione. Ciò consentirà di bilanciare inizialmente. Una volta che è bilanciato, puoi controllare la posizione e la velocità aggiungendo un guadagno ad essi. Se è instabile, aumentare il guadagno sulla velocità di inclinazione (che aiuta a smorzare il sistema).
Il controllo di posizione / velocità controllerà entrambi gli stati a zero. Per controllare un altro valore, è sufficiente un controller di tracciamento di riferimento, sostituendo gli stati con i loro errori prima di inserirlo nel controller (ad es. Velocità attuale - riferimento di velocità).
Il controllo dell'imbardata può essere eseguito in modo indipendente (con le differenze nelle coppie delle ruote aggiunte al controller principale di bilanciamento / velocità / posizione).