Caso studio: applicazione Routh-hurwitz per stabilizzare un sistema di controllo del droni del quadrotore
Nei moderni sistemi di controllo, la stabilità è la base di un'operazione sicura e prevedibile. Da nessuna parte è questo più evidente di quello dei droni quadrotori, dove l'instabilità può portare a un fallimento catastrofico entro pochi secondi. Questo caso di studio dimostra l'applicazione pratica del criterio di risoluzione dei parametri Routh-Hurwitz[]]]] per analizzare e stabilizzare il sistema di controllo di un drone caratteristico.
Quadrotor Dynamics and Control Architecture
Il sistema di controllo è controllato variando le velocità di quattro rotori, che generano spinta e coppia. Per l'analisi della stabilità, il sistema è tipicamente linearizzato intorno a una condizione di ovatta, producendo un insieme di equazioni differenziali di secondo ordine decouped per rotolo, passo, yaw e altitudine.
Modello lineare per asse rotolo
Considerare le dinamiche del rullo. L'equazione lineare del movimento è:
dove è l'angolo di rotolamento, [] è il momento dell'inerzia, [] è il derivato di smorzamento aerodinamico, e è il derivato di controllo che rappresenta la coppia prodotta dalla spinta differenziale.
Sostituire e formare la funzione di trasferimento a ciclo chiuso produce un caratteristico polinomio di ordine tre (o superiore se sono incluse le dinamiche dei sensori).
Il criterio Routh-Hurwitz ci permette di analizzare il segno delle parti reali delle radici senza un esplicito ritrovamento delle radici.
Il criterio Routh-Hurwitz: un test di stabilità sistemica
Sviluppato indipendentemente da Edward John Routh e Adolf Hurwitz, il criterio Routh-Hurwitz fornisce una condizione necessaria e sufficiente per la stabilità dei sistemi lineari time-invariant. Utilizza i coefficienti del polinomio caratteristico per costruire un array (il array Routh). Il numero di modifiche di segno nella prima colonna di questo array equivale al numero di radici con parti reali positive.
Costruendo il Routh Array
Dato un polinomio [], il array Routh è costruito riga per riga:
- riga 1: – coefficienti di termini anche indicizzati.
- riga 2: – coefficienti di termini indicizzati.
- Le righe successive sono calcolate utilizzando la formula: (dove a1 è il primo elemento della seconda riga).
Se un elemento nella prima colonna diventa zero, è necessario un trattamento speciale (sostituire con un piccolo epsilon o utilizzare il metodo polinomiale ausiliario). Se un'intera riga diventa zero, il polinomio ha radici simmetriche, e l'array è continuato utilizzando un polinomio ausiliario.
Condizioni di stabilità per sistemi di terze parti
Per un polinomio cubico , le condizioni di Routh-Hurwitz semplificano:
- Tutti i coefficienti devono essere positivi (condizione necessaria).
- La disuguaglianza [ deve contenere (condizione sufficiente per il terzo ordine).
Questa regola semplice è spesso utilizzata come controllo rapido prima di costruire l'array completo.
Applicazione al sistema di controllo del rotolo del quadrotore
Per il nostro studio caso quadrotore, il caratteristico polinomio per l'asse rotante, tra cui il controllore PID acquisisce e dinamica del rotore (modellato come un ritardo di primo ordine con il tempo costante τ), è stato derivato come:
Quando i valori numerici del sistema fisico sono: τ = 0,05 s (variante tempo di rotazione), I xxx = 0,01 kg·m2, L 2 = 0,5 N·m per controllo unità. I guadagni iniziali PID sono stati scelti in base alla regolazione euristica: K p = 10, K i = 2, K d = 5.
→
Costruire il Routh Array
Costruiamo la matrice per questo polinomio di quarto ordine:
- 1 (s4): 0.05, 15.1, 10
- 2 (s3): 1.5, 52, 0
- Righe 3 (s2): compute b1 = (1,5*15.1 - 0.05*52)/1.5 = (22.65 - 2.6)/1.5 = 13.367; b2 = (1,5*10 - 0.05*0)/1,5 = 10; b3 = 0
- Voce 4 (s1): c1 = (13.367*52 - 1.5*10)/13.367 = (694.064 - 15)/13.367 = 50.84; c2 = 0
- 5 (s0): d1 = (50.84*10 - 13.367*0)/50.84 = 10
I valori della prima colonna sono: 0,05, 1.5, 13.367, 50.84, 10 – tutti positivi, nessun cambiamento di segno. Il sistema con questi guadagni è stabile. Tuttavia, se aumentiamo il guadagno integrale a K i = 20, i coefficienti polinomiali cambiano e il array Routh rivela un cambiamento di segno, indicando l'instabilità.
Parametro Tuning utilizzando Routh-Hurwitz Constraints
Invece di simulare la prova e la retata, il criterio Routh-Hurwitz fornisce diseguaglianze algebriche che devono essere soddisfatte per la stabilità.
- Tutti i coefficienti positivi: automaticamente soddisfatti se i guadagni sono positivi e τ > 0.
- La prima colonna dell'array Routh non deve avere modifiche di segno.
Esprimendo le prime voci di colonna simbolicamente in termini di K p, K i e K d, abbiamo derivato tre equazioni di costrizione. Risolvendo queste disuguaglianze definisce una regione stabile nello spazio di guadagno.
- (ca. da Routh condizione)
Questi vincoli hanno guidato la selezione dei guadagni finali: K p = 8, K i = 1, K d = 4, che si trovano bene all'interno della regione stabile e forniscono anche un buon margine di fase quando valutato tramite risposta di frequenza.
Risultati e convalida della simulazione
Una simulazione non lineare del quadrotore nel Gazebo] ambiente è stato utilizzato per convalidare i margini di stabilità. Con i guadagni ottimizzati Routh-Hurwitz, la risposta del rotolo ad un ingresso di gradini di 10 ha mostrato un tempo di impostazione di 0,8 secondi, superando meno del 5% e senza errori di stato costante.
Inoltre, i test di robustezza hanno incluso raffiche di vento fino a 5 m/s e rumore del sensore tipico delle MEMS IMU a basso costo. Il controller ha mantenuto la stabilità in tutti i casi, con la deviazione massima dell'angolo del rullo che rimane sotto i 1,5 gradi. Il criterio Routh-Hurwitz ha così fornito non solo stabilità ma anche una linea di base per prestazioni robuste.
Considerazioni pratiche di attuazione
Mentre il criterio Routh-Hurwitz è un potente strumento analitico, ha dei limiti. Si applica solo ai sistemi lineari invarianti, quindi il modello linearizzato deve essere valido intorno al punto di funzionamento. Per manovre aggressive, effetti non lineari (ad esempio, saturazione attuatore, coppia gyroscopica) può causare il degrado della stabilità.
Inoltre, l'implementazione digitale introduce ritardi di campionamento e errori di quantizzazione, che possono essere modellati come un ritardo di fase extra, che riduce il margine di fase efficace. Il criterio può essere applicato includendo il ritardo di controllo digitale come polo aggiuntivo nel polinomio caratteristico. Per il nostro quadrotore, l'esecuzione del loop di controllo a 500 Hz ha mantenuto il ritardo sotto i 2 ms, che non ha alterato significativamente i risultati dell'array Routh.
Conclusioni
Il criterio Routh-Hurwitz rimane un indispensabile primo passo nella progettazione del sistema di controllo per i droni quadrotori. Questo caso studio ha dimostrato come derivare il caratteristico polinomio dell’asse rotante di un quadrotore, costruire l’array di Routh, e estrarre vincoli algebrici che definiscono le regioni di guadagno stabili. Il metodo ha permesso il rapido rifiuto dei parametri instabili senza una simulazione estesa o una prototipazione.
Per ulteriori informazioni sul criterio Routh-Hurwitz, vedere ] ]]. Un eccellente riferimento sulla dinamica del quadrotore è la carta di B. Corke in []]Simulazione robotica e sistemi autonomi]. Per una teoria del controllo più profondo, consultare il sito dell’Università degli Università di Michigan