Capitolo 4 – Controllo dei robot
4.3 Controllo dei robot a più gradi di libertà
Nei robot reali sono presenti fenomeni non ideali che complicano il modello da studiare, quali ad esempio i momenti d‟inerzia costanti e/o variabili, la forza peso, gli attriti radente e statico, l‟elasticità. Questi non vengono trattati nella tesi; nel seguito sono affrontati invece altri fenomeni che interessano i robot industriali a più gradi di libertà.
4.3.1 Controllo centralizzato e decentralizzato
Nei sistemi e nelle macchine dotate di più assi controllati sono possibili due strategie: 1. controllo centralizzato (Fig.4.6);
2. controllo decentralizzato (Fig.4.7).
Figura 4.6 – Controllore centralizzato
27
In entrambi i casi un sistema di elaborazione di tipo digitale confronta il movimento richiesto ai motori ed elaborato dal blocco “interpolatore”, misura il movimento effettivo tramite sensori di posizione e/o velocità e fornisce i riferimenti di velocità e/o coppia ai convertitori dei motori. L‟elaborazione è svolta da una routine di calcolo richiamata ciclicamente con tempo prefissato (ad es. 0,001 s). Nel primo caso un unico regolatore, lineare o non lineare, controlla contemporaneamente i due motori; nel secondo i due assi vengono controllati separatamente come fossero completamente indipendenti l‟uno dall‟altro. La seconda soluzione è spesso sufficiente a ottenere buoni risultati. Tuttavia, quando una macchina è dotata di più assi, è buona norma trattarli insieme in modo da avere, approssimativamente, la stessa funzione di trasferimento. Come esempio si consideri un robot cartesiano in cui siano controllati i movimenti X ed Y con due assi indipendenti. Se i due assi hanno la stessa funzione di trasferimento, e si comanda un movimento lineare a velocità costante, la posizione reale si trova in ritardo di una distanza
(4.1)
dove τ è l‟inverso della banda passante e v è la velocità, ma verrà percorsa esattamente la traiettoria lineare richiesta (vedi Fig.4.8). Se invece un asse è “più pronto” di un altro, cioè ha banda passante più elevata, può succedere la situazione di Fig.4.9 ove con τx < τy l‟utensile deborda dalla traiettoria prevista. Conviene pertanto tarare i vari assi in modo che abbiano le stesse prestazioni. Se gli assi sono identici, sarà sufficiente porre i guadagni dei regolatori agli stessi valori.
Figura 4.8 – Errore su traiettoria lineare di un robot cartesiano quando gli assi hanno la stessa funzione di
trasferimento
Figura 3.9 – Errore su traiettoria lineare di un robot cartesiano con l'asse X più pronto dell'asse Y (eX < eY)
4.3.2 Effetti dinamici mutui tra links
Ogni movimento, anche di un solo motore, richiede in generale azioni motrici non nulle anche sugli altri assi. Pertanto le movimentazioni dei vari assi di un robot non sono tra loro indipendenti. Si considera l‟esempio del robot SCARA (Fig.4.10), e le azioni d‟inerzia che nascono durante il movimento; nelle Fig.4.11 e 4.12 sono indicate quelle generate nel caso in cui si movimenti soltanto il primo o il secondo motore. Da un semplice equilibrio alla rotazione si può dedurre che, in entrambi i casi, anche il motore che non si muove deve produrre una coppia per mantenere la sua posizione angolare. Se si considera il movimento contemporaneo di α e di β, compaiono ulteriori termini; in generale per un robot si ha , che nel caso dello SCARA, per m = 0 e J = 0, diventa
(4.2)
28
Quindi, anche se un membro del robot deve restare fermo mentre gli altri si muovono, il suo motore deve generare comunque una coppia, e in ogni caso quella che deve fornire ciascun motore non è semplicemente del tipo . In generale i movimenti dei vari gradi di libertà si influenzano reciprocamente. Ciò può essere rappresentato attraverso il diagramma di Fig.4.13, ove la parte di controllo di ogni link è lineare e assume per ognuno di operare su di un elemento di momento d‟inerzia costante Jii (elemento diagonale della matrice J). Tutti gli altri termini sono considerati disturbi. È importante osservare che le coppie di disturbo si verificano solo durante il moto del robot e non durante le soste, perciò non provocano errori di posizionamento finale. Opportune scelte dei regolatori R ed R‟ riducono l‟effetto di generiche coppie resistenti e quindi anche di queste. Il modo più semplice, anche se teoricamente imperfetto, per ridurre il loro effetto è quello di progettare un regolatore con basso guadagno delle funzioni di trasferimento che legano posizioni e velocità alle coppie. Altri metodi più raffinati, ma anche più onerosi, vengono presentati nel prossimo paragrafo.
Figura 4.10 – Definizione dei parametri per un Figura 4.11 – Azioni dinamiche dovute al movimento del solo primo modello dinamico di robot SCARA motore
29
Figura 4.13 – Effetto mutuo tra diversi gradi di libertà: il movimento di un motore provoca effetti dinamici anche sugli altri.
4.3.3 Compensazione degli effetti mutui: controlli a dinamica inversa e a coppia
precalcolata
Qualora si disponga di un buon modello dinamico del robot è possibile eliminare l‟effetto delle “coppie mutue di disturbo” tra motori riducendo così l‟errore di inseguimento, cioè la differenza tra movimento richiesto e ottenuto. Se il modello consente di prevedere la coppia richiesta dal motore si può adottare uno schema di controllo centralizzato analogo a quello di Fig.4.14 (controllo a dinamica inversa) ove M è la massa equivalente del sistema, V è una stima delle coppie dovute alle accelerazioni centrifughe e di Coriolis,
G è una stima delle forze esterne (compresa la forza peso), Q = [ ]T è il vettore delle variabili da controllare (posizioni). Un sistema simile, detto a coppia precalcolata, che spesso consente di ottenere prestazioni migliori, è riportato in Fig.4.15. In base alle conoscenze del sistema si costruisce un blocco non lineare (indicato con NL) in grado di prevedere, almeno approssimativamente, la coppia necessaria ad azionare il robot affinché esegua il compito desiderato (ovvero NL riproduce il modello dinamico inverso del robot).
Figura 4.14 – Schema di controllo a dinamica inversa
30
Un regolatore lineare R (tipicamente di tipo PID), ovvero una retroazione di posizione e velocità (tramite le costanti kp e kv) nello schema a dinamica inversa compensa le inevitabili imprecisioni del modello e i disturbi esterni. In genere lo schema a coppia precalcolata funziona meglio di quello a dinamica inversa perché, applicando il modello a posizioni, velocità e accelerazioni teoriche e non a quelle misurate, è meno soggetto al rumore. Entrambe le metodologie possono comunque essere utilizzate solo se si ha a disposizione un controllore sufficientemente potente dal punto di vista computazionale, problema sempre meno sentito con il passare degli anni ed il miglioramento delle tecnologie per la costruzione dei microprocessori. Inoltre, quando non si disponga di un modello sufficientemente preciso, il miglioramento delle prestazioni è scarso e non giustifica l‟onere di implementazione. Per ottenere valori attendibili dei parametri del sistema è spesso necessario effettuare esperimenti: ad esempio, il robot viene fatto muovere su traiettorie predefinite e si stima la coppia esercitata tramite una misura della corrente assorbita. Si riescono quindi a stimare i parametri dinamici (masse, inerzie, attriti) da utilizzarsi per movimentazioni successive. Per semplificare il calcolo è talvolta utile evidenziare gli effetti più rilevanti ed accontentarsi di compensare questi.