discretizzare una funzione

Strumenti informatici per la matematica applicata, le simulazioni, il disegno: Mathcad, Matlab, Scilab, Microcap, PSpice, AutoCad ...

Moderatori: Foto Utenteg.schgor, Foto Utentedimaios

Avatar utente
Foto Utentedjansa
0 2
Messaggi: 7
Iscritto il: 16 nov 2006, 13:49
0
voti

[1] discretizzare una funzione

Messaggioda Foto Utentedjansa » 4 feb 2007, 11:27

buon giorno a tutti ragazzi !
Cerco di esporre il mio problma piu chiaramente possibile.

Ho da fare un progetto di controlli digitali all'università.

Mi è stata assegnata una funzione istabile e devo creare un controllore con il metodo del luogo delle radici.

La prima cosa che ho fatto è quella di calcolare la funzione di padè,per poi fare il luogo delle radici proprio della funzione di padè!!!!
Dopo aver stabilizzato la funzione,spostando correttamente le radici e rispettando le specifiche di progetto,si deve seguire con la Discretizzazione del controllore ottenuto dal luogo delle radici.
prima discretizzo la funzione di padè o sbaglio?

La mia domanda è:quale comando si usa?io ho usato il comando:
c2d( G(s), Tc, ’zoh’ )
Ma la G(s) è la funzione ottenutà con padè?

poi si deve discretizzare tramite i tre metodi(tustin,matched e zoh) il controllore ottenuto dal luogo delle radici !o sbaglio?

i grafici ottenuti dalla discretizzazione,dovrebbero seguire,mgari non fedelmente la risposta del controllore,rispettando le specifiche.
come mai non lo fanno????

Aiutatemi gentilmente!!!!

Roberto

Avatar utente
Foto Utentefabiounibo
0 4
Frequentatore
Frequentatore
Messaggi: 127
Iscritto il: 20 giu 2006, 14:47
Località: Reggio Emilia
Contatta:
0
voti

[2]

Messaggioda Foto Utentefabiounibo » 5 feb 2007, 12:04

consulta questa pagina ti sarà molto di aiuto:

it.wikipedia.org/wiki/metodi_di_soluzione_numerica_per_equazioni_differenziali_ordinarie

Avatar utente
Foto Utentedjansa
0 2
Messaggi: 7
Iscritto il: 16 nov 2006, 13:49
0
voti

[3]

Messaggioda Foto Utentedjansa » 6 feb 2007, 23:12

ciao fabio!ho dato uno sguardo ma non ho trovato cio che cercavo!
hai capito peròil mio problema?
ho un sistema rappresentato da una funzione e devo progettare un controllore per controllarlo!

mi è salito un problema ....come calcolereste il tempo di campionamento?dalle specifiche o dal sistema stesso?o dai diagrammi di bode?perché mi sa proprio che il problema è il tempo di campionamento scelto male

ringrazio anticipatamente

Avatar utente
Foto Utentedario
430 4 12
Expert EY
Expert EY
Messaggi: 394
Iscritto il: 11 mag 2006, 16:03
Località: Napoli
Contatta:
0
voti

[4] Re: discretizzare una funzione

Messaggioda Foto Utentedario » 5 ago 2007, 10:35

Devi progettare il contollore tempo continuo secondo il metodo imposto, ovviamente sul processo da controllare e non sull'approssimante di Padè (che serve per dare un'espressione polinomiale di un'esponenziale).
A questo punto, devi discretizzare la legge di controllo in modo da ottenerne una implementazione digitale. Per farlo puoi utilizzare i metodi di Eulero o Tustin.
Nel seguire questo approccio devi considerare che il tuo sistema è tempo continuo, per interfacciarlo con un controllore tempo discreto sono necessari un filtro ZOH (convertitore D/A) ed un campionantore (convertitore A/D), si dimostra (e se segui l'esame di Controllo Digitale probabilmente l'avranno dimostrato a lezione) che la loro presenza complessivamente equivale ad un ritardo di T/2, con T tempo di campionamento.

Sicuramente avrai studiato anche i metodi di Eulero e Tustin, quindi fai attenzione alla stabilità del controllore con il primo, mentre per il secondo devi considerare che la legge di controllo risultante non è strettamente causale, quindi devi disporre di un hardware molto più veloce del T complessivo per implementare complessivamente l'algortimo.

Per quanto riguarda il tempo di campionamento, deve essere scelto in modo da non produrre aliasing e garantendo che la ricostruzione con il filtro ZOH sia fedele e non distorca troppo le componenti armoniche in alta frequenza. Le velocità di variazione della risposta di un sistema dipende dalle sue costanti di tempo, quindi T dovrà essere relazionato a queste.
In linea generale devi considerare la più veloce ed scegliere T 5-10 volte di piccolo della stessa (soluzione empirica), ma per evitare di sovradimensionare T puoi tenere conto dei residui associati alle dinamiche che consideri (e riferiti alle dinamiche veloci con residuo associato grande) e la velocità a ciclo chiuso (se il sistema risultante sarà molto più lento dell'originario non ti servirà una T molto piccola).

Per altri problemi chiedi pure.
Considera che non funziona la segnalazione via email e quindi potrei metterci tempo per rispondere.

Saluti.
Souliss Piattaforma di sviluppo open-source per IoT.

"Un esperto è un uomo che ha fatto tutti gli errori che è possibile compiere in un campo molto ristretto." N. Bohr

Saluti,
Dario.

Avatar utente
Foto Utentetj.diego
0 2
Messaggi: 25
Iscritto il: 11 mar 2007, 11:15
Località: Cosenza
0
voti

[5] Re: discretizzare una funzione

Messaggioda Foto Utentetj.diego » 20 dic 2008, 19:49

ciao,
chiedo scusa se espongo il mio problema in questa discussione,ma credo sia simile a quello di djansa.
anch'io come lui mi trovo a dover progettare un controllore per stabilizzare una fdt;
una volta progettato nel dominio nel tempo e verificato che la risposta del sistema al gradino rispetta le specifiche vado a discretizzare il tutto con i metodi zoh,tustin e matched dopo tali conversioni la risposta al gradino è completamente sballata!!!
dove sbaglio???
devo riprogettare il controllore???
grazie mille

Avatar utente
Foto Utentedario
430 4 12
Expert EY
Expert EY
Messaggi: 394
Iscritto il: 11 mag 2006, 16:03
Località: Napoli
Contatta:
0
voti

[6] Re: discretizzare una funzione

Messaggioda Foto Utentedario » 21 dic 2008, 2:03

Devi considerare che l'implementazione in digitale introduce implicitamente un ritardo di T/2 con T tempo di campionamento, questo può influire sulle prestazioni se non considerato durante la progettazione.
Inoltre, la scelta di un buon T è fondamentale, tipicamente conviene sceglierlo un decimo della costante di tempo più veloce.
Souliss Piattaforma di sviluppo open-source per IoT.

"Un esperto è un uomo che ha fatto tutti gli errori che è possibile compiere in un campo molto ristretto." N. Bohr

Saluti,
Dario.


Torna a “Programmi applicativi: simulatori, CAD ed altro”