L. Taponecco - Appunti di Meccatronica Cap. XI – Azionamenti elettrici con controllo digitale. XI-1. Introduzione. A partire dagli anni ottanta, grazie allo sviluppo dei microprocessori (µP) e dei componenti necessari per il loro funzionamento (memorie, convertitori di tipo analogico-digitale e digitale-analogico, ecc.), la tecnologia digitale ha gradualmente sostituito negli azionamenti elettrici quella analogica permettendo la realizzazione di funzioni di controllo molto sofisticate, impossibili da realizzare altrimenti, con conseguente incremento delle prestazioni degli azionamenti elettrici. Si é così passati a filosofie di comando in cui un elemento intelligente quale il µP, opportunamente programmato e interfacciato con tutti gli altri blocchi funzionali, oltre a svolgere il compito primario del controllo del moto, acquisisce ed elabora i segnali in ingresso, genera le temporizzazioni ed effettua tutta una serie di funzioni ausiliarie (identificazione dei parametri di macchina, protezioni, diagnostica, coordinamento di tutte le funzioni del sistema, ecc.), che costituiscono uno degli aspetti più interessanti della transizione dal controllo analogico a quello digitale. I principali vantaggi connessi all'uso del controllo digitale sono: - grande flessibilità (è possibile realizzare strutture hardware quasi universali e adattare, in funzione della specifica applicazione, il sistema di controllo più opportuno agendo a livello di software, cioè semplicemente cambiando il programma esecutivo); - notevoli potenzialità di calcolo (si possono facilmente eseguire operazioni matematiche anche complesse e quindi non costituisce più un problema implementare funzioni di controllo non lineari e controllori adattativi, stimare i parametri di macchina e le variabili di stato non misurabili, ecc.); - assenza di problemi di memorizzazione dati; - riduzione di costi, pesi, ingombri ed aumento dell'affidabilità, grazie alla semplificazione dell'hardware ed alla grande affidabilità intrinseca dei processori; - estrema stabilità nel tempo delle prestazioni ottenibili (il guadagno e la larghezza di banda del filtro, generato dal µP, rimangono invariati nel tempo ed al variare della temperatura, ciò evita l'introduzione di elementi compensatori); - maggiore insensibilità ai disturbi elettromagnetici, grazie all'elevato grado di integrazione ottenibile; - capacità di diagnostica e intrinseca facilità di comunicazione con il supervisore centrale. Però negli azionamenti con controllo digitale sono presenti sia variabili a tempo continuo sia variabili a tempo discreto, in quanto i sistemi da controllare sono analogici mentre il µP é in grado di elaborare numeri. E' necessario pertanto che i segnali analogici tempo-continuo in ingresso al µP siano campionati ad istanti discreti di tempo kT da un campionatore (con T periodo di campionamento) e quindi convertiti, mediante un convertitore analogico/digitale (ADC) in una sequenza di 333 L. Taponecco - Appunti di Meccatronica valori numerici espressi in forma digitale, cioè in segnali quantizzati, oltre che in tempo, anche in ampiezza, rappresentati da numeri binari con lunghezza di parola e risoluzione definite (fig. XI-1). Fig. XI-1 Ad ogni istante di campionamento il µP legge tali segnali digitali (cioè il valore discretizzato del segnale errore) e genera un segnale di controllo sotto forma di numeri binari, che viene riconvertito, mediante un circuito di mantenimento ed un convertitore digitale-analogico (DAC) (fig. XI-2), in un segnale analogico tempocontinuo (costituito in genere da una sequenza di livelli costanti aggiornati ogni T secondi) adatti al pilotaggio del sistema da controllare. Il segnale di clock che determina le cadenze delle operazioni di ingresso e uscita è generato dal µP. Fig. XI-2 Il controllo digitale, per consentire al µP di colloquiare con il sistema controllato, comporta quindi, oltre alla necessità di inserire un campionatore, un circuito di mantenimento, un convertitore A/D ed un convertitore D/A, errori di quantizzazione (fig. XI-3) nella conversione analogico-digitale (la cui entità dipende dal numero di bit della parola digitale, che costituisce un parametro fondamentale che influenza le prestazioni del sistema). Inoltre poichè nei sistemi di controllo tempo-discreto le variabili che entrano ed escono dal µP cambiano solamente ad istanti discreti di tempo kT, che corrispondono agli istanti in cui viene effettuata la misura o in cui viene letta la memoria del µP, 334 L. Taponecco - Appunti di Meccatronica nell'effettuare l'analisi e la sintesi di questi sistemi occorre tenere conto che l'azione di campionamento può portare alla perdita di qualche informazione. Fig. XI-3 Spesso per il controllo del moto si utilizza una tecnologia mista: analogica per l'anello più interno di corrente e digitale per gli anelli sovrapposti. In figura XI-4 è riportato uno schema a blocchi funzionale di un azionamento in corrente alternata per il controllo della velocità di tipo analogico-digitale. Fig. XI-4 335 L. Taponecco - Appunti di Meccatronica XI-10/2. Componenti e relativi modelli matematici. Prendiamo in esame un controllo digitale di posizione realizzato con un azionamento in corrente continua, che per ragioni di semplicità presenta (fig. XI-5) il solo anello di posizione (la trattazione svolta è poi facilmente estendibile a qualsiasi tipo di motore e al caso di più anelli), ed analizziamo i vari componenti del sistema, determinando per ognuno di essi la relativa funzione di trasferimento. Fig. XI-5 1- Blocco costituito da motore in corrente continua, organi di trasmissione del moto e macchina azionata. Ricordiamo che: -la macchina azionata é caratterizzata dai valori della coppia resistente Cc [Nm] e dell'inerzia Jc [Kg m2]; -gli organi di trasmissione del moto possono essere costituiti da organi di riduzione del moto (quali ad esempio cinghia e puleggia o coppie di ingranaggi) che consentono di ottenere elevate coppie a basso numero di giri e sono caratterizzati dal rapporto di riduzione r tra la velocità del motore e quella del carico [il cui valore teorico ottimale per minimizzare lo stress termico del motore è r=√(Jr/Jm)], oppure da organi di conversione del moto da rotante a lineare, oppure da collegamenti diretti (per evitare di introdurre giochi che portano ad errori di posizione o oscillazioni); -il motore in corrente continua é caratterizzato dalla costante di coppia Kt [Nm/A], dalla resistenza di armatura Ra [Ω], dall'inerzia Jm [Kg m2] e dai valori continuo Cm/n=Cc [Nm] (che deve sviluppare per superare la coppia costante di attrito o gravitazionale e azionare il carico senza sovrariscaldamenti) e di picco Cm/p=(Jm+Jc/r2)a+Cc [Nm] della coppia (che deve sviluppare nei periodi di accelerazione senza subire danni meccanici o smagnetizzazioni permanenti). 336 L. Taponecco - Appunti di Meccatronica Ciò premesso il modello semplificato dell’insieme di motore in corrente continua, organi di trasmissione del moto e macchina azionata, espresso in valori assoluti e sotto le ipotesi semplificative normalmente assunte, nel caso di Ω≤ Ωn è costituito dal seguente sistema lineare di equazioni: Vciα = Rt Ia + Lt dIa/dt + Ke Ω J dΩ/dt = Kt Ia − Cr dΘ/dt = Ω con: Ω = Ωm Cr = Cc/r J=Jm+Jc/r2 . Pertanto utilizzando la trasformata di Laplace e avendo posto: Ke=Kt=K τt=Lt/Rt e τem= JRt/K2, sistema lineare di equazioni diventa: Vciα(s) = Rt (1+sτt)Ia(s) + K Ω(s) sJ Ω(s) = K Ia(s) − Cr(s) sΘ(s) = Ω(s) e quindi nel caso più comune in cui il convertitore statico che alimenta il motore in corrente continua imponga la tensione (fig. XI-6) la funzione di trasferimento è: Θ(s)/Vciαα(s) = (1/s) [K/(Rt+sLt)Js] / [1+K2/(Rt+sLt)Js] = = K / s [s2JLt+sJRt+K2] = (1/K) / s (s2τemτt+sτem+1) ≅ ≅ (1/K) / [s (1+sττt) (1+sττem)] . Nel caso invece in cui il convertitore imponga la corrente è: Θ(s)/Ia(s) = K/Js2. Fig. XI-6 337 L. Taponecco - Appunti di Meccatronica 2- Organo di comando. Trascurando in prima approssimazione il ritardo medio Tcm , la f.d.t. è: Vciαα(s)/Vcm(s) = Kcm ; 3- Sensore di posizione (encoder con relativo decodificatore di posizione). Trascurando gli effetti di non linearità derivanti dal suo funzionamento discretizzato, può essere modellato come un guadagno puro, pari al rapporto tra il segnale di retroazione Θ(kT) (fornito agli istanti discreti di tempo kT ed espresso in counts o unità di risoluzione corrispondenti al minimo angolo rilevabile) e la corrispondente posizione angolare effettiva θ(t) (espressa in radianti): Θ(kT)/Θ Θ(s) = Kp = 4N/2π π [counts/rad] n Θ(kT)/Θ Θ(s) = Kp = 2 /2π π [counts/rad] (encoder increm. con 2 canali e N tacche) (encoder assoluto con n bit in parallelo) Per quanto riguarda la risoluzione del sensore, un suo aumento migliora il sistema in quanto riduce l'effetto di quantizzazione di posizione e consente il funzionamento alle basse velocità, ma comporta la necessità di impiegare componenti più veloci in caso di impiego anche ad elevate velocità. Esempio. Scegliamo la risoluzione del sensore di posizione di un azionamento il cui motore ha una velocità massima di 6000 g/min, deve fermarsi con una precisione di 0.4° e il cui controllore consente all'encoder frequenze massime di 500.000 counts/s. La massima risoluzione é Rmax= fmax/ωmax = 5.000 counts/g. D'altra parte la risoluzione del sensore deve essere più piccola (da 2 a 4 volte) dell'errore di posizione permesso, per cui si ottiene: Rmin = 360°/ (0.4°/2) = 1.800 counts/g. La risoluzione dell'encoder deve quindi assumere un valore compreso tra 1.800 e 5.000 counts/g; una buona scelta é 4.000 counts/g, che corrisponde ad un encoder incrementale con 1.000 fori uniformemente distribuiti sulla periferia del disco. In alcune applicazioni é necessario aggiungere un anello di regolazione della velocità analogico in cui il segnale di retroazione, generato da un tachimetro o derivato dal segnale dell'encoder, aiuta a stabilizzare il sistema alle basse velocità. Poichè l'impiego del tachimetro richiede un elemento addizionale con aumento del costo e delle dimensioni, é altamente desiderabile usare un circuito integrato decodificatore della velocità, che deriva il segnale di velocità dalla forma d'onda dell'encoder tramite processo di derivazione. 4- Controllore digitale. Il controllore digitale, che è il cervello del controllo del moto e le cui funzioni vengono espletate dal µP, nel caso di controllo di posizione, effettua, ad intervalli di tempo regolari di durata pari a T , le seguenti operazioni: a) genera, in relazione al desiderato profilo di velocità (che dipende dai valori massimi ammissibili di velocità, di accelerazione e di jerk), la traiettoria di riferimento dell'albero del motore Θr(kT) per passare dalla posizione iniziale a quella finale in un assegnato tempo tc ; b) decodifica la posizione reale Θ(kT), fornita dal sensore di posizione; c) determina il segnale errore di posizione X(kT) = Θr(kT)−Θ(kT); d) filtra digitalmente X(kT) in modo tale da far seguire al motore una traiettoria più vicina possibile a quella desiderata, mantenendo cioè minimo in ogni istante X(kT); e) applica il segnale errore filtrato Y(kT) all'ingresso di un convertitore D/A, la cui uscita è applicata ad un dispositivo di mantenimento, che effettua l'interpolazione 338 L. Taponecco - Appunti di Meccatronica temporale tra i valori analogici tempo-discreti in ingresso generando così un segnale tempo-continuo (spesso la fase di mantenimento precede quella di conversione). I filtri digitali sono algoritmi di calcolo che convertono una sequenza di numeri in ingresso in una sequenza di numeri in uscita in modo da assicurare al sistema controllato, oltre alla stabilità, la dinamica e la precisione richieste; processano cioè il segnale digitale di ingresso facendo passare le componenti di frequenza desiderabili e rigettando quelle indesiderabili. Tali algoritmi sono rappresentati da equazioni alle differenze, in cui il segnale di uscita Y(kT) all'istante di campionamento kT dipende da una combinazione lineare del segnale di ingresso X(kT) allo stesso istante e di un numero finito di campioni precedenti di X e di Y: Y(kT) = bnX(kT) + bn-1X[(k−1)T] +..+ b0X[(k−n)T] − an-1Y[(k−1)T] −..− a0Y[(k−n)T] dove i coefficienti bn bn-1...b0 e an-1...a0 caratterizzano il comportamento del sistema. La f.d.t. del controllore digitale, che tiene conto della determinazione del segnale errore di posizione X(kT) e del relativo filtraggio, si ottiene effettuando la trasformata in z dell'algoritmo di controllo e deducendo quindi D(z) = Y(z)/X(z). La trasformata in z è uno strumento matematico utile per l'analisi e la sintesi dei sistemi di controllo digitali tempo-discreti, la cui dinamica é caratterizzata da una equazione alle differenze. In analogia alla trasformata di Laplace, che nei sistemi analogici tempo-continui trasforma equazioni integro-differenziali lineari tempoinvarianti in equazioni algebriche in s , la trasformata in z trasforma equazioni alle differenze lineari tempo-invarianti in equazioni algebriche in z (fig. XI-7). Fig. XI-7 Esempio. L'algoritmo del filtro digitale sia: Y(kT) = 3X(kT) − 2X[(k−1)T] , che sinteticamente, dato che si ripete ad istanti multipli di T, possiamo scrivere : Y(k) = 3X(k) − 2X(k−1) ; se si applica la trasformata in z [a questo proposito ricordiamo che se F(z) é la trasformata in z di f(k), la trasformata in z della funzione f(k−m) è z-mF(z)] si ottiene: Y(z) = 3X(z) − 2X(z)/z , da cui si deduce: D(z) = Y(z)/X(z) = (3z −2) / z. 339 L. Taponecco - Appunti di Meccatronica 5- Convertitore digitale-analogico (DAC) e dispositivo di mantenimento (ZOH). Per convertire l'informazione contenuta nei numeri binari in uscita dal filtro digitale, cioè la sequenza numerica dei campioni Y(kT) forniti dal µP ad intervalli discreti di tempo T, in un segnale analogico continuo é necessario un convertitore digitaleanalogico e un dispositivo di mantenimento che operi un qualche tipo di raccordo. La f.d.t. del convertitore digitale-analogico DAC é data dal rapporto tra il massimo campo di variazione della sua tensione analogica di uscita e il numero binario in ingresso fornito dal µP: Vcm(s)/Vcm(z) = Kd = 2Vcm/max / 2n [V/counts] , dove n è il numero di bit del numero binario in uscita dal µP e Vcm/max è il valore assoluto massimo della tensione in uscita dal DAC. Se il segnale di uscita tra due istanti successivi di campionamento è mantenuto, come comunemente avviene in virtù della sua semplicità, ad un valore costante corrispondente a quello dell'ultimo campionamento il dispositivo di mantenimento viene indicato come Zero-Order-Hold (ZOH) o Sample-and-Hold e ad esso si assegna per comodità, anche se in modo improprio, la f.d.t.: ZOH(s) = [1− −(e–sT)]/s . Tale espressione deriva dal fatto che l'uscita dello ZOH, avendo un andamento a gradini (fig. XI-8a), può essere scomposta (fig. XI-8b) in una serie di rettangoli ognuno dei quali é dato dalla combinazione di due funzioni a gradino: una positiva a partire dall'istante kT e una negativa a partire dall'istante (k+1)T. Fig. XI-8a Fig. XI-8b Esistono anche dispositivi di mantenimento più sofisticati dello ZOH in cui il segnale di uscita tra due istanti successivi di campionamento é approssimato da un polinomio di grado n (higher order hold); questi però, pur consentendo una ricostruzione del segnale più accurata, non vengono normalmente utilizzati in quanto comportano maggiore complicazione. 340 L. Taponecco - Appunti di Meccatronica XI-10/3. Analisi dei sistemi di controllo digitali. Scopo dell'analisi é valutare: la stabilità (il sistema é stabile se il margine di fase ϕm é positivo), lo smorzamento (per 30°≤ ϕm ≤45° la risposta é ben smorzata) e la rapidità di risposta del sistema (la costante di tempo della risposta é approssimativamente pari all'inverso della frequenza di crossover). In base alla modellizzazione effettuata gli elementi di un sistema di controllo digitale (fig. XI-9a) possono essere divisi in tre tipi fondamentali (fig. XI-9b): -controllore digitale con f.d.t. D(z), -circuito di mantenimento con f.d.t. ZOH(s) = [1− −(e–sT)]/s , -tutti gli altri elementi modellati con f.d.t. continue e rappresentabili globalmente con la seguente f.d.t.: H(s) = KdKpM(s) = KdKp(Kcm/K)/[s(1+sττem) (1+sττt)]. Fig. XI-9a Fig. XI-9b Per effettuare l'analisi di un sistema di controllo digitale é necessario quindi sviluppare preliminarmente modelli dello stesso tipo per tutti gli elementi che lo compongono; ciò può essere fatto seguendo due differenti procedure: -analisi digitale; -analisi con il metodo dell'approssimazione nel continuo. 341 L. Taponecco - Appunti di Meccatronica XI-10/3a. Analisi digitale. Per effettuare tale analisi è necessario, utilizzando la trasformata in z , sviluppare un modello digitale per lo ZOH e per la f.d.t. complessiva H(s) di tutti gli elementi tempo-continui presenti. In tabella XI-1 sono riportate le trasformate in s e in z per alcune più comuni funzioni temporali. Essendo z = e sT , la z-trasformata invariante all'impulso del prodotto ZOH(s) H(s) è: E(z) = Z [ZOH(s) H(s)] = Z [(1−e–sT)H(s)/s] = (1− −z–1) Z [H(s)/s] Il sistema risulta quindi costituito da due blocchi in cascata: D(z) e E(z), connessi in controreazione unitaria (fig. XI-10), pertanto la f.d.t. complessiva è : Θ(z)/Θr(z) = D(z)E(z)/[1+D(z)E(z)] . Fig. XI-10 F(s) trasformata in s 1 e−kTs 1/s 1/s2 2/s3 1/(s+a) 1/(s+a)2 a/s(s+a) a/s2(s+a) ω/(s2+ω2) s/(s2+ω2) f(t) funzione temporale δ(t) δ(t−kT) us(t) t t2 e−at te−at T−e−at t−(1−e−at)/a sen ωt cos ωt F(z) trasformata in z 1 z−k z /(z−1) Tz/(z−1)2 T2z (z+1)/(z−1)3 z /(z−e−aT) Tze−aT/(z−e−aT)2 z(1−e−aT)/(z−1)(z−e−aT) z(Az−aTe−aT+1−e−aT)/a2(z−1)2(z−e−aT) z sen ωT/(z2−2z cos ωT+1) z (z−cos ωT) (z2−2z cos ωT+1) con A = aT − 1 + e−aT Tab. XI-1 342 L. Taponecco - Appunti di Meccatronica Perché il sistema sia stabile tutte le radici dell'equazione caratteristica 1+D(z)E(z)=0 (cioè i poli del sistema ad anello chiuso) devono essere in modulo minori di 1. Ciò deriva dalla corrispondenza tra piano s (dominio della trasformata di Laplace) e piano z (dominio della trasformata in z) per ciò che concerne i domini di stabilità per la posizione dei poli; infatti la condizione di stabilità, che per i sistemi tempocontinui é data da s<0 , per i sistemi tempo-discreti, essendo z = e sT , diventa z<1 (fig. XI-11). Fig. XI-11 Da notare che il comportamento dinamico di un sistema di controllo tempo-discreto dipende dal periodo di campionamento T; una variazione di T modifica infatti la posizione dei poli nel piano z e determina quindi un cambiamento nella risposta del sistema. Un periodo di campionamento T troppo grande può rendere instabile il sistema, uno troppo piccolo comporta una eccessiva lunghezza della parola. Esempio. Analizziamo la stabilità di un sistema di controllo digitale con le seguenti caratteristiche: - guadagno convertitore-motore in corrente continua Kcm/K = 10 (rad/s)/V, - costanti di tempo τem = 0.1s, τt ≅ 0 , - DAC a 8 bit con 10V di uscita, - encoder incrementale con N=500 cave e due canali, - tempo campionamento del controllore T = 1 ms, - algoritmo del filtro digitale Y(k) = 25X(k) −16X(k −1) + 0.5Y(k −1); Si ha: M(s) = (Kcm/K)/[s(1+sτt) (1+sτem)] = 10 / [s(1+ 0.1s)] [rad/V] Kd = 2 Vcm/max / 28 = 20 / 256 = 0.078 [V/counts] Kp = 4N / 2π = 4 500 / 2 π = 318 [counts/rad] H(s) = Kd Kp M(s) = 248 / [s(1+0.1s)] ZOH(s) = (1−e-sT) / s = (1−e-0,001s) /s D(z) = (25z−16) / (z−0.5) E(z) = Z [ZOH(s)H(s)] = (1−z-1)248Z [10/s2 (s+10)] = = (1−z-1)248{z(4,98z+4,97)10-5/10(z−1) 2 (z−0.99)} ≅ 1,24⋅10-3 (z+1)/(z−1)(z−0.99). L'equazione caratteristica è quindi: 1+[(25z−16)/(z−0,5)] [1,24 ⋅10-3 (z+1)/(z−1)(z−0,99)] = 0 e la stabilità del sistema dipende dalle radici di tale equazione ottenibili mediante procedimento numerico. 343 L. Taponecco - Appunti di Meccatronica XI-10/3b. Analisi con il metodo dell'approssimazione nel continuo. Si sviluppa preliminarmente, mediante la antitrasformata in z, un modello continuo per il filtro digitale e quindi si utilizza la metodologia di analisi dei controlli analogici. Il modello nel continuo del filtro digitale D(z) con periodo di campionamento T si ottiene nel seguente modo: G(s) = D(z) z=e sT ; poiché però tale f.d.t., a causa dei termini esponenziali, é difficile da trattare, si ricorre normalmente a trasformazioni approssimate più semplici (fig. XI-12); tra le quali la più diffusa é la trasformazione bilineare: G(s) = D(z) z=(1+sT/2)/(1-sT/2) Per la trasformazione inversa basta sostituire in G(s ) s con (2/T) [(z−1)/(z+1)]. Fig. XI-12 344 L. Taponecco - Appunti di Meccatronica La figura XI-11 riporta sette differenti forme di filtro tempo-discreto equivalente per lo stesso filtro tempo-continuo G(s)=a/(s+a). Il grado di distorsione nella risposta transitoria e nelle caratteristiche della risposta in frequenza dipendono dalla frequenza di campionamento, dalla frequenza di taglio, ecc., pertanto é opportuno che il progettista provi alcune forme alternative di filtro tempo-discreto equivalente e solo dopo che una simulazione digitale ha dato buoni risultati effettui la scelta e il progetto finale. Una proprietà comune ai vari metodi di discretizzazione é che la fedeltà e la precisione del filtro discretizzato diminuiscono al diminuire della rapidità di campionamento. Il circuito di campionamento e tenuta, la cui f.d.t. approssimata è: ZOH(s) = (1−e–sT)/s = 1/s−[1−sT/2+(sT)2/8−..]/s[1+sT/2+(sT)2/8+..] ≅ ≅ 1/s−[(1−sT/2)/s(1+sT/2)] = T/(1+sT/2) ≅ Te–sT/2 , tenuto conto del campionatore a monte, si comporta come un puro ritardo di T/2: ZOH(s)≈e–sT/2. Si deriva la f.d.t. ad anello aperto tra ingresso e uscita A(s) [che nel caso di un solo anello con retroazione unitaria é data dal prodotto di tutte le f.d.t. dell'anello G(s)ZOH(s)H(s), mentre nei casi più complessi si determina la f.d.t. tra ingresso e uscita e si riarrangiano i termini al denominatore in modo da ottenere la forma 1+A(s)] e si rimpiazza s con jω. La procedura di analisi della stabilità si sviluppa quindi determinando la risposta armonica A(jω), in base alla quale si ricava: - la frequenza di crossover ωc, che (essendo quasi coincidente con la larghezza di banda ad anello chiuso) fornisce un'indicazione sulla velocità di risposta; - il margine di fase ϕm = 180°+ϕ = 180°+arg[A(jωc)], che ci dice se il sistema è stabile (ϕm > 0) e se la risposta è ben smorzata (30°≤ ϕm ≤ 45°). Esempio. Analizziamo la stabilità di un sistema di controllo digitale con le seguenti caratteristiche: D(z) = 130(z−0.8)/(z−0.2), T = 0.001s, H(s) = 248/[s(1+0.1s)]. Poiché: ZOH(s) = e−0.0005s, A(s) = G(s)ZOH(s)H(s) = [4,84 105 e−0.0005s (s+222)]/[s(s+10)(s+1333)] G(s) = D(z)z=[(2000+s) / (2000-s)] = 195 (s+222)/(s+1333) la f.d.t. ad anello aperto risulta: e Pertanto: dalla condizioneA(jωc) = [484 105 (jωc+222)]/[jωc(jωc+10)(jωc+1333)] = 1 si deduce ωc ≅ 400 rad/s ed essendo ϕ = arg [A(jωc)] = arctg(ωc/222) − 0,0005 ωc 360°/2π − 90° − arctg(ωc/10) − arctg(ωc/1333) = = 61°−11,5°−90°−88,5°−17° = −146° si deduce ϕm = 180° + ϕ = 34° Il sistema é quindi stabile e ben smorzato con costante di tempo ≅ 1/ωc = 2.5 ms. 345 L. Taponecco - Appunti di Meccatronica XI-10/4. Progetto di un controllore digitale mediante controllore analogico equivalente. La sintesi dei controllori digitali tempo-discreti può essere effettuata in due differenti modalità: considerare il controllore discreto come approssimazione di uno continuo (metodo per approssimazione) o studiare tutto il sistema con le tecniche proprie dei sistemi a segnali campionati (metodo diretto). Generalmente l'approccio più semplice e pratico è il primo, che può essere impiegato quando la frequenza di campionamento è sufficientemente alta rispetto a quelle in gioco. Tale tecnica di progettazione si articola in tre fasi: - nella prima fase si effettua un progetto convenzionale, secondo tecniche ben consolidate, di un controllore analogico G(s) in grado di soddisfare le specifiche richieste (fig. XI-13); - nella seconda fase, scelta una idonea tecnica di discretizzazione ed un periodo di campionamento T sufficientemente piccolo (tale da soddisfare al teorema di campionamento, secondo cui, per conservare tutta l'informazione originaria, la frequenza di campionamento deve essere superiore al doppio della frequenza massima di tutte le componenti armoniche del segnale analogico), si discretizza il controllore analogico progettato e si usa tale versione discretizzata come controllore digitale D(z); - nella terza fase si verifica la correttezza della risposta temporale del controllore tempo-discreto così ottenuto (cioè se il sistema così progettato si comporta come atteso), in quanto il processo di campionamento e quantizzazione può modificare sensibilmente le caratteristiche della risposta transitoria del sistema; pertanto si testa la risposta a vari segnali di ingresso del sistema e solo se le risposte in frequenza e indiciali del sistema di controllo tempo-discreto sono in buon accordo con quelle del sistema di controllo tempo-continuo di partenza possiamo considerare i due sistemi equivalenti. A tale fine si converte il controllore digitale, che è specificato sotto forma di un rapporto di polinomi in z, in un algoritmo numerico e lo si risolve in tempo reale mediante calcolatore. Fig. XI-13 346 L. Taponecco - Appunti di Meccatronica Il teorema del campionamento. Dato un segnale continuo e(t), con quale criterio scegliamo la frequenza di campionamento in modo che il segnale campionato contenga tutte le informazioni contenute in e(t)? Si intuisce che il periodo di campionamento sarà in qualche modo legato alla rapidità di evoluzione del fenomeno rappresentato dal segnale e(t). Una risposta al quesito è data dal teorema del campionamento che afferma che la minima frequenza necessaria (frequenza di Nyquist) per campionare un segnale, con larghezza di banda finita e nota, senza perdere informazioni deve essere pari al doppio della frequenza della componente armonica a frequenza più alta fc=2fmax. Nella pratica si utilizza un valore della frequenza di campionamento superiore al valore fissato dal teorema, in quanto la banda massima non è esattamente determinabile, quindi è preferibile mantenersi ad un valore solitamente quadruplo di quello desiderato. In pratica il teorema del campionamento pone un vincolo per la progettazione di apparati di conversione analogicodigitale: se si ha a disposizione un campionatore che lavora a frequenza fS, è necessario mandargli in ingresso un segnale a banda limitata da fS/2. In generale un segnale analogico non è limitato in frequenza, ma dovrà essere filtrato per eliminare le componenti di frequenza maggiore di fS/2. La tecnica di progettare un controllore digitale mediante il controllore analogico equivalente é molto diffusa in quanto, consentendo di sfruttare l'esperienza accumulata nella progettazione dei controllori analogici classici, in pratica non richiede alcuna conoscenza di controllo digitale. Richiede però una certa familiarità con le tecniche di discretizzazione (utili anche per simulare sistemi di controllo tempo continuo su calcolatore digitale), poiché le caratteristiche dinamiche del controllore digitale equivalente così ottenuto dipendono, oltre che dalla frequenza di campionamento scelta, dal metodo di discretizzazione adottato (cioè dal modo con cui viene approssimata la risposta tra gli istanti di campionamento). Infatti, poichè l'operazione di campionamento modifica le caratteristiche della risposta influenzando sfavorevolmente la stabilità del sistema in quanto nel discretizzare un filtro tempo-continuo non è possibile preservarne tutte le proprietà (numero di poli e di zeri, risposte indiciali, guadagno, frequenza di attraversamento, margini di fase e di guadagno) essendo la risposta del sistema ottenuta solo agli istanti di campionamento, il progettista deve accettare una forma di compromesso e decidere caso per caso quali sono le caratteristiche dinamiche più importanti e scegliere di conseguenza il metodo di discretizzazione più adatto. In relazione al modo in cui si approssima la risposta tra i punti di campionamento, si possono quindi ottenere molti differenti controllori digitali equivalenti ad un dato controllore analogico. Nelle figure XI-14a e XI-14b sono mostrate le forme d'onda ingresso-uscita di un sistema continuo e di una sua versione discretizzata e in figura XI-14c viene effettuato un confronto fra le uscite dei due sistemi. 347 L. Taponecco - Appunti di Meccatronica Fig. XI-14a Fig. XI-14b Fig. XI-14c 348 L. Taponecco - Appunti di Meccatronica Nel rimpiazzare il controllore analogico G(s) col controllore digitale equivalente D(z), ottenuto discretizzando G(s), oltre ai convertitori A/D e D/A, si deve inserire a monte un campionatore e a valle un dispositivo di mantenimento (fig. XI-15). Fig. XI-15 Poiché il ritardo temporale introdotto dal dispositivo di mantenimento riduce il margine di stabilità del sistema, bisogna già tenerne conto nella progettazione del controllore analogico (fig. XI-16) affinché il controllore digitale (ottenuto per discretizzazione) si comporti nel modo più simile possibile a quello continuo di partenza. Pertanto lo ZOH, la cui f.d.t. in prima approssimazione è Te–sT/2 , tenuto conto del fatto che il guadagno globale del sistema viene determinato nella fase finale del progetto, può essere modellato nel continuo come un dispositivo di ritardo del primo ordine con costante di tempo uguale alla metà del periodo di campionamento: ZOHeq(s) ≅ e–sT/2 Fig. XI-16 Il controllore analogico G(s) così progettato viene quindi discretizzato e si ottiene il controllore digitale equivalente D(z). Per controllare che il sistema così progettato si comporti come atteso si determina quindi la f.d.t. G(z) del sistema tempo-continuo Gp(s) e si testa la risposta a vari segnali di ingresso del sistema (fig. XI-17). Fig. XI-17 349 L. Taponecco - Appunti di Meccatronica Ciò premesso, il progetto di un controllore digitale D(z), tale che il sistema risultante abbia una certa frequenza di crossover ωc ed un certo margine di fase ϕm , può svilupparsi nel seguente modo: 1a) in base alla frequenza di crossover desiderata e al periodo di campionamento T assunto (≅ 0.5÷1 ms) si determinano: - la fase di H(s) ϕ1 = arg [H(jωc)] - il ritardo di fase introdotto dallo ZOH ϕ2 = arg [ZOH(jωc)] = −(ωcT/2) (360°/2π); 1b) in base ai valori di ϕ1 e ϕ2 calcolati e al margine di fase ϕm desiderato, si determina l'anticipo di fase del controllore analogico del sistema di controllo tempocontinuo modificato ϕ3 = ϕm −180° − ϕ1 − ϕ2 ; 1c) si progetta un controllore analogico del tipo: G(s) = K(s+ω1)/(s+ω2) con ω1< ω2 [la funzione primaria di anticipo, producendo una fase positiva, aumenta il margine di fase e migliora la stabilità, la funzione secondaria di ritardo, aumentando il guadagno del filtro alle basse frequenze, determina una migliore precisione del sistema]; il progetto consiste nel determinare i parametri K, ω1 e ω2 utilizzando ad esempio la seguente metodologia: prima prevale lo zero poi il polo e la fase vale: ϕ3 = arctg(ω/ω1) − arctg(ω/ω2); si ha pertanto dϕ3/dω = {1/[1+(ω/ω1)2]}(1/ω1)−{1/[1+(ω/ω2)2]}(1/ω2) = 0 da cui si deduce: ω1/(ωM2+ω12)=ω2/(ωM2+ω22) ⇒ ωM = √{[ω1ω2(ω2−ω1)]/(ω2−ω1)} = √(ω1ω2); utilizzando il grafico ϕ3max=arctg(ωM/ω1)−arctg(ωM/ω2)=arctg√(ω2/ω1)−arctg√(ω1/ω2) = f(ω2/ω1), in relazione al valore del desiderato anticipo di fase ϕ3 si determina il rapporto ω2/ω1; quindi, poiché il massimo anticipo di fase del filtro si ha quando ω1 e ω2 sono tali da verificare la condizione ωc=√(ω1ω2), si determinano i valori di ω1 e ω2 infine, imponendo che l'ampiezza della f.d.t. ad anello aperto A(s) sia uguale a 1 alla frequenza di crossover: G(jωc)ZOH(jωc)H(jωc)=1 (il guadagno globale del sistema verrà preso in esame nella fase finale del progetto) si determina il guadagno K]. 2a) si discretizza il controllore analogico G(s) progettato utilizzando il metodo di trasformazione più idoneo; ad es. il metodo di trasformazione bilineare: D(z) = G(s)s = (2/T) [(z-1)/(z+1)] ; 2b) si determina la f.d.t. E(z) = Z[ZOH(s)H(s)] , quindi la f.d.t. ad anello chiuso D(z)E(z)/[1+D(z)E(z)] ed infine le radici dell'equazione caratteristica 1+D(z)E(z) = 0, verificando che il loro modulo risulti inferiore a 1; più in generale, mediante alcuni test, si verifica se il sistema così progettato si comporta come desiderato; 2c) se tale verifica ha dato esito positivo, si converte il controllore digitale D(z), che é specificato nella forma di un rapporto di polinomiali in z, in un algoritmo numerico (equazione alle differenze finite) che si presta ad essere elaborato ricorsivamente dal controllore digitale, permettendo l'immediata stesura nel linguaggio del processore impiegato e consentendo anche la simulazione numerica. 350 L. Taponecco - Appunti di Meccatronica Concludendo tale metodo é semplice e piace ai progettisti perchè basandosi sulla teoria dei controlli continui non richiede nessuna conoscenza di controllo digitale, presenta però lo svantaggio di limitare la scelta di D(z) a quelle funzioni che abbiano una corrispondente G(s) nel campo continuo e ciò non sempre é possibile. Questa limitazione diventa importante nei sistemi di controllo con alta larghezza di banda. Per superare questa limitazione si può fare ricorso ad un diverso metodo di progettazione del filtro, noto come il metodo combinato poichè incorpora metodi di progetto sia continui che digitali. Esempio. Progetto di un controllore digitale D(z), tale da ottenere una frequenza di crossover di 125 rad/s e un margine di fase di 45°, nel caso di un azionamento in corrente continua costituito da: - motore cc con: Kt=0.0706[Nm/A], Ra =1.4[Ω], La =0[H], J=0.000706[kgm2] ⇒ τem=RaJ/Kt2=0.2[s] e τa≅0; - raddrizzatore controllato con Kv = 5 ⇒ M(s) = (Kv/Kt)/[s(1+sτa)(1+sτem)] = 70/[s(0.2s+1)]; - DAC a 8 bit e uscita di ±10V ⇒ Kd= 2Vm/2n =20/256=0.078 [V/counts], - encoder incrementale con 500 cave ⇒ Kp=4⋅500/2π=318 [counts/rad] ⇒ H(s)=KdM(s)Kp=1740/[s(0.2s+1)] - tempo campionamento del controllore T = 1 ms, ⇒ ZOH(s) = e−0.0005s 1) Si progetta un controllore continuo G(s) = K(s+ω1)/(s+ω2) tale da ottenere: ωc=125 rad/s e ϕm=45°. Gli angoli di fase di H(s) e ZOH(s) sono: ϕ1 = arg [H(jωc)] = arg [1740 / j125 (j 0,2⋅125 +1)] = − 90° − arctg 25 = −178° ϕ2 = arg [ZOH(jωc)] = − ωc (360°/2π) T/2 = −125 (360°/2π)⋅0.0005 ≅ − 3° Per ottenere ϕm = 45° l'anticipo di fase del controllore analogico deve essere: ϕ3= ϕm−180°−ϕ1−ϕ2 =46°, cui corrisponde, in base al grafico di ϕ3max=arctg√(ω2/ω1)−arctg√(ω1/ω2), ω2/ω1=6.25 (fig. XI-18). Fig. XI-18 Quindi poichè il massimo anticipo di fase del controllore analogico si ha quando ω1 e ω2 verificano la condizione √(ω1ω2) = ωc = 125 rad/s si ricava: ω1= 50 rad/s e ω2= 312 rad/s. Per trovare il guadagno K si impone che il modulo della f.d.t. ad anello aperto A(s)=G(s)ZOH(s)H(s) sia uguale a 1 in corrispondenza della frequenza di crossover: G(jωc)ZOH(jωc)H(jωc)= 1, cioè: [K(j125+50)/(j125+312)] [1] [1740/j125(j25+1)] = 1 da cui si ricava: K = 4.5. Pertanto il filtro analogico è G(s) = 4.5(s+50)/(s+312) 2) Si discretizza G(s) utilizzando la trasformazione bilineare: D(Z) = G(S) s=(2/T) [(Z-1) / (Z+1)] e si ottiene il filtro digitale equivalente D(z) = 4 (z− −0.95)/(z− −0.73) che viene poi convertito in un algoritmo numerico. 3) Per verificare la risposta del sistema di controllo progettato si determina: E(z) = Z[ZOH(s)H(s)] = (1−z−1) Z[1740/[s2(0.2s+1)] = (1−z−1) 1740 Z[5/[s2(s+5)] = = (1−z−1) 1740 [z(z(0,005−1+e−0,005)−0,005e−0,005+1−e−0,005)/25(z−1)2(z−e−0,005)] e quindi in relazione alla f.d.t. ad anello chiuso D(z)E(z)/[1+D(z)E(z)], si determinano le radici dell'equazione caratteristica 1+D(z)E(z) = 0, che forniscono informazioni sul comportamento del sistema campionato. Se la verifica dà risultato positivo si converte il controllore digitale D(z), che é specificato nella forma di un rapporto di polinomiali in z, in un algoritmo numerico (equazione alle differenze) che sarà risolto dal controllore digitale. 351