Main Content

La traduzione di questa pagina non è aggiornata. Fai clic qui per vedere l'ultima versione in inglese.

Identificazione delle funzioni di trasferimento di ordine basso (modelli di processo) utilizzando l’app System Identification

Introduzione

Obiettivi

Stimare e convalidare funzioni semplici di trasferimento a tempo continuo da dati a ingresso singolo/uscita singola (SISO) per trovare quello che descrive meglio la dinamica del sistema.

Dopo aver completato questo tutorial, si sarà in grado di eseguire le seguenti attività utilizzando l’app System Identification:

  • Importare oggetti dati dall’area di lavoro MATLAB® nell’app.

  • Tracciare ed elaborare i dati.

  • Stimare e convalidare modelli a tempo continuo di basso ordine dai dati.

  • Esportare i modelli nell’area di lavoro MATLAB.

  • Simulare il modello utilizzando il software Simulink®.

Nota

Questo tutorial utilizza i dati nel dominio del tempo per dimostrare come sia possibile stimare i modelli lineari. Lo stesso workflow si applica all’adattamento dei dati nel dominio della frequenza.

Descrizione dei dati

Questo tutorial utilizza i file di dati proc_data.mat, che contengono 200 campioni di dati simulati nel dominio del tempo a ingresso singolo/uscita singola (SISO). L’ingresso è un segnale binario casuale che oscilla tra -1 e 1. Il rumore bianco (corrispondente a un disturbo del carico) è aggiunto all’ingresso con una deviazione standard di 0,2, che si traduce in un rapporto segnale-rumore di circa 20 dB. Questi dati sono simulati utilizzando un sistema del secondo ordine con modalità sottosmorzate (poli complessi) e un picco della risposta a 1 rad/s:

G(s)=11+0.2s+s2e2s

Il tempo di campionamento della simulazione è di 1 secondo.

Che cos’è un modello di processo a tempo continuo?

I modelli di processo a tempo continuo sono funzioni di trasferimento di ordine basso che descrivono la dinamica del sistema utilizzando il guadagno statico, un ritardo di tempo prima che l’uscita del sistema risponda all’ingresso e costanti di tempo caratteristiche associate a poli e zeri. Tali modelli sono ampiamente utilizzati nel settore e sono spesso usati, ad esempio, per la messa a punto di controller PID. I parametri del modello di processo hanno un valore fisico.

È possibile specificare diverse strutture del modello di processo variando il numero di poli, aggiungendo un integratore o includendo un ritardo o uno zero. L'ordine del modello di processo più alto che si può specificare in questa toolbox è tre e i poli possono essere reali o complessi (modalità sottosmorzate).

In generale, un sistema lineare è caratterizzato da una funzione di trasferimento G, che consiste in un operatore che porta l’ingresso u sull’uscita y:

y=Gu

Per un sistema a tempo continuo, G mette in relazione le trasformate di Laplace dell’ingresso U(s) e dell’uscita Y(s), come segue:

Y(s)=G(s)U(s)

In questo tutorial, G è stimato utilizzando diverse strutture del modello di processo.

Ad esempio, la seguente struttura del modello è un modello a tempo continuo del primo ordine, dove K è il guadagno statico, Tp1 è una costante temporale e Td è il ritardo da ingresso-a uscita:

G(s)=K1+sTp1esTd

Preparazione dei dati per System Identification

Caricamento dei dati nell’area di lavoro MATLAB

Caricare i dati in proc_data.mat digitando il seguente comando nella finestra di comando MATLAB:

load proc_data

Questo comando carica i dati nell’area di lavoro MATLAB come oggetto dati z. Per ulteriori informazioni sugli oggetti iddata, vedere la pagina di riferimento corrispondente.

Apertura dell’app System Identification

Per aprire l’app System Identification, digitare il seguente comando nella finestra di comando MATLAB:

systemIdentification

Il nome predefinito della sessione Untitled viene visualizzato nella barra del titolo.

Importazione degli oggetti dati nell’app System Identification

È possibile importare oggetti dati nell’app dall’area di lavoro MATLAB.

È necessario che i dati di campionamento siano già stati caricati in MATLAB, come descritto in Caricamento dei dati nell’area di lavoro MATLAB, e che l’app sia già stata aperta, come descritto in Apertura dell’app System Identification.

Se questi passaggi non sono ancora stati eseguiti, fare clic qui per completarli.

Per importare un oggetto dati nell’app System Identification:

  1. Selezionare Import data > Data object.

    Questa azione apre la finestra di dialogo Importa dati.

  2. Nella finestra di dialogo Importa dati, specificare le seguenti opzioni:

    • Object: immettere z come nome della variabile MATLAB che è l’oggetto dati nel dominio del tempo. Premere Invio.

    • Data name: utilizzare il nome predefinito z, che è lo stesso del nome dell’oggetto dati che si sta importando. Questo nome etichetta i dati nell’app System Identification dopo il completamento dell’operazione di importazione.

    • Starting time: immettere 0 come tempo di inizio. Questo valore designa il valore iniziale dell’asse del tempo nei grafici temporali.

    • Sample time: immettere 1 come tempo in secondi tra campioni successivi. Questo valore rappresenta il tempo di campionamento effettivo dell’esperimento.

    La finestra di dialogo Importa dati assomiglia adesso alla figura seguente.

  3. Fare clic su Import per aggiungere i dati all’app System Identification. L’app aggiunge un’icona per rappresentare i dati.

  4. Fare clic su Close per chiudere la finestra di dialogo Importa dati.

Plottaggio ed elaborazione dei dati

In questa sezione del tutorial, si valutano ed elaborano i dati per l’identificazione del sistema. Si vedrà come:

  • Tracciare i dati.

  • Rimuovere gli offset sottraendo i valori medi dell’ingresso e dell’uscita.

  • Dividere i dati in due parti. Utilizzare una parte dei dati per la stima del modello e l’altra parte di dati per la convalida del modello.

Il motivo per cui si sottraggono i valori medi da ciascun segnale è dovuto al fatto che, usualmente, si costruiscono modelli lineari che descrivono le risposte per le deviazioni da un equilibrio fisico. Con dati allo stato stazionario, è ragionevole presumere che i livelli medi dei segnali corrispondano a tale equilibrio. Pertanto, è possibile cercare modelli intorno allo zero senza modellare i livelli di equilibrio assoluto in unità fisiche.

È necessario che i dati siano già stati importati nell’app System Identification, come descritto in Importazione degli oggetti dati nell’app System Identification.

Se questo passaggio non è ancora stato eseguito, fare clic qui per completarlo.

Per tracciare ed elaborare i dati:

  1. Selezionare la casella di spunta Time plot per aprire la finestra del Grafico temporale.

    Gli assi inferiori mostrano i dati in ingresso, una sequenza binaria casuale, e gli assi superiori mostrano i dati in uscita.

    I prossimi due passaggi dimostrano come modificare i limiti dell’asse nel grafico.

  2. Per modificare i limiti dell’asse verticale per i dati in ingresso, selezionare Options > Set axes limits nella figura a finestra del grafico temporale.

  3. Nella finestra di dialogo Limiti del grafico temporale, impostare il nuovo limite dell’asse verticale del canale dati u1 su [-1,5 1,5]. Fare clic su Apply e Close.

    Nota

    Gli altri due campi nella finestra di dialogo Limiti del grafico temporale, Time e y1, consentono di impostare i limiti dell’asse, rispettivamente per l’asse temporale e per l’asse del canale di uscita. È inoltre possibile specificare che ciascun asse sia logaritmico o lineare, selezionando l'opzione corrispondente.

    La figura seguente mostra il grafico temporale aggiornato.

  4. Nell’app System Identification, selezionare <--Preprocess > Quick start per eseguire le seguenti quattro azioni:

    • Sottrarre il valore medio da ciascun canale.

    • Dividere i dati in due parti.

    • Specificare la prima parte dei dati come dati di stima (o Working Data).

    • Specificare la seconda parte dei dati come Validation Data.

Per saperne di più.  Per informazioni sulle operazioni di elaborazione dei dati supportate, come il ricampionamento e il filtraggio dei dati, vedere Preprocess Data.

Stima di una funzione di trasferimento del secondo ordine (modello di processo) con poli complessi

Stima di una funzione di trasferimento del secondo ordine utilizzando le impostazioni predefinite

In questa sezione del tutorial, si stimano modelli con questa struttura:

G(s)=K(1+2ξTws+Tw2s2)eTds

È necessario che i dati per la stima siano già stati elaborati, come descritto in Plottaggio ed elaborazione dei dati.

Se questo passaggio non è ancora stato eseguito, fare clic qui per completarlo.

Per identificare una funzione di trasferimento del secondo ordine:

  1. Nell’app System Identification, selezionare Estimate > Process models per aprire la finestra di dialogo dei Modelli di processo.

  2. Nell’area Model Transfer Function della finestra di dialogo dei Modelli di processo, specificare le seguenti opzioni:

    • In Poles, selezionare 2 e Underdamped.

      Questa selezione aggiorna la funzione di trasferimento del modello in una struttura del modello di secondo ordine che può contenere poli complessi.

    • Assicurarsi che le caselle di spunta Zero e Integrator siano deselezionate per escludere uno zero e un integratore dal modello (auto-regolazione).

  3. L’area Parameter della finestra di dialogo dei Modelli di processo adesso mostra quattro parametri attivi: K, Tw, Zeta e Td. Nell’area Initial Guess, mantenere l’opzione predefinita Auto-selected per calcolare i valori dei parametri iniziali durante la stima. La colonna Initial Guess nella tabella Parametro mostra Auto.

  4. Mantenere i valori Bounds predefiniti, che specificano i valori minimo e massimo di ciascun parametro.

    Suggerimento

    Se l’intervallo dei possibili valori di un parametro è noto, è possibile digitare questi valori nei campi Bounds corrispondenti per aiutare l’algoritmo di stima. Premere il tasto Invio dopo aver specificato i valori.

  5. Mantenere le impostazioni predefinite per l’algoritmo di stima:

    • Disturbance Model: None significa che l’algoritmo non stima il modello di rumore. Questa opzione imposta inoltre il Focus su Simulation.

    • Focus: Simulation significa che l’algoritmo di stima non utilizza il modello di rumore per ponderare l’importanza relativa di quanto vicino debbano essere adattati i dati nei vari intervalli di frequenza. Invece, l’algoritmo utilizza uno spettro in ingresso in un intervallo di frequenza particolare per ponderare l’importanza relativa dell’adattamento in quell’intervallo di frequenza.

      Suggerimento

      L’impostazione Simulation è ottimizzata per identificare i modelli che si prevede di utilizzare per la simulazione in uscita. Se si prevede di utilizzare il modello per la previsione dell’uscita o per il controllo delle applicazioni, o per migliorare le stime dei parametri utilizzando un modello di rumore, selezionare Prediction.

    • Initial condition: Auto significa che l’algoritmo analizza i dati e sceglie il metodo ottimale per gestire lo stato iniziale del sistema. Se non si ottengono risultati soddisfacenti, si potrebbe provare a impostare un metodo specifico per gestire gli stati iniziali del sistema, piuttosto che sceglierlo in automatico.

    • Covariance: Estimate significa che l’algoritmo calcola le incertezze dei parametri che vengono visualizzate come intervalli di confidenza nei grafici.

    L’app assegna un nome al modello, che viene mostrato nel campo Name (situato nella parte inferiore della finestra di dialogo). Per impostazione predefinita, il nome è l’acronimo P2DU, che indica due poli (P2), un ritardo (D) e modalità sottosmorzate (U).

  6. Fare clic su Estimate per aggiungere il modello P2DU all’app System Identification.

Suggerimenti per la specifica di parametri noti

Se si conosce esattamente il valore di un parametro, è possibile digitare questo valore nella colonna Value della finestra di dialogo Modelli di processo. Selezionare la corrispondente casella di spunta Known dopo aver specificato il valore.

Se si conosce il valore approssimativo di un parametro, è possibile aiutare l’algoritmo di stima immettendo un valore iniziale nella colonna Initial Guess. In questo caso, mantenere la casella di spunta Known deselezionata per consentire alla stima di perfezionare questa ipotesi iniziale.

Ad esempio, per fissare il valore del ritardo di tempo Td su 2 s, digitare questo valore nel campo Value della tabella Parametro nella finestra di dialogo Modelli di processo. Quindi selezionare la corrispondente casella di spunta Known.

Convalida del modello

Si possono analizzare i seguenti grafici per valutare la qualità del modello:

  • Paragone dell’uscita del modello con l’uscita misurata su un grafico temporale

  • Autocorrelazione dei residui in uscita e della correlazione trasversale tra i residui in ingresso e in uscita

È necessario che il modello sia già stato stimato, come descritto in Stima di una funzione di trasferimento del secondo ordine utilizzando le impostazioni predefinite.

Se questo passaggio non è ancora stato eseguito, fare clic qui per completarlo.

Esame dell’uscita del modello.  È possibile utilizzare il grafico di uscita del modello per controllare in che misura l’uscita del modello corrisponde all’uscita misurata nell’insieme dei dati di convalida. Un buon modello è il modello più semplice che descrive meglio la dinamica e simula o predice correttamente l’uscita per diversi ingressi.

Per creare un grafico di uscita del modello, selezionare la casella di spunta Model output nell’app System Identification. Se il grafico è vuoto, fare clic sull’icona del modello nella finestra dell’app System Identification per visualizzare il modello nel grafico.

Il software System Identification Toolbox™ utilizza dati di convalida in ingresso come ingresso per il modello e traccia l’uscita simulata sopra ai dati di convalida in uscita. Il grafico precedente mostra che l’uscita del modello ha un buon accordo con l’uscita dei dati di convalida.

L’area Best Fits del grafico di uscita del modello mostra la concordanza (in percentuale) tra l’uscita del modello e l’uscita dei dati di convalida.

Si ricordi che questi dati sono simulati utilizzando il seguente sistema del secondo ordine con modalità sottosmorzate (poli complessi), come descritto in Descrizione dei dati e un picco della risposta a 1 rad/s:

G(s)=11+0.2s+s2e2s

Poiché i dati includono rumore in ingresso durante la simulazione, il modello stimato non può riprodurre esattamente il modello utilizzato per simulare i dati.

Esame dei residui del modello.  È possibile convalidare un modello controllando il comportamento dei suoi residui.

Per creare un grafico di analisi residua, selezionare la casella di spunta Model resids nell’app System Identification.

Gli assi superiori mostrano l’autocorrelazione dei residui per l’uscita (test di bianchezza). La scala orizzontale è il numero di ritardi, che è la differenza temporale (in campioni) tra i segnali a cui viene stimata la correlazione. Qualsiasi fluttuazione all’interno dell’intervallo di confidenza è considerata insignificante. Un buon modello dovrebbe avere una funzione di autocorrelazione residua all’interno dell’intervallo di confidenza, ad indicare che i residui non sono correlati. Tuttavia, in questo esempio, i residui sembrano essere correlati, ovvero un risultato naturale, poiché il modello di rumore è utilizzato per rendere bianchi i residui.

Gli assi inferiori mostrano la correlazione trasversale dei residui con l’ingresso. Un buon modello dovrebbe avere residui non correlati con ingressi passati (test di indipendenza). L’evidenza della correlazione indica che il modello non descrive come una parte dell’uscita sia correlata all’ingresso corrispondente. Ad esempio, quando è presente un picco all’esterno dell’intervallo di confidenza per il ritardo k, indica che il contributo all’uscita y(t), che ha origine dall’ingresso u(t-k), non è descritto in modo appropriato dal modello. In questo esempio non sono presenti correlazioni tra i residui e gli ingressi.

Pertanto, l'analisi residua indica che questo è un buon modello ma che potrebbe essere necessario un modello di rumore.

Stima di un modello di processo con una componente di rumore

Stima di un modello di processo del secondo ordine con poli complessi

In questa sezione del tutorial, si stima una funzione di trasferimento del secondo ordine, includendo un modello di rumore. Includendo un modello di rumore, si ottimizzano i risultati di stima per l’applicazione di previsione.

È necessario che il modello sia già stato stimato, come descritto in Stima di una funzione di trasferimento del secondo ordine utilizzando le impostazioni predefinite.

Se questo passaggio non è ancora stato eseguito, fare clic qui per completarlo.

Per stimare una funzione di trasferimento del secondo ordine con rumore:

  1. Se la finestra di dialogo Modelli di processo non è aperta, selezionare Estimate > Process Models nell’app System Identification. Questa azione apre la finestra di dialogo dei Modelli di processo.

  2. Nell’area Model Transfer Function, specificare le seguenti opzioni:

    • In Poles, selezionare 2 e Underdamped. Questa selezione aggiorna la funzione di trasferimento del modello in una struttura del modello di secondo ordine che può contenere poli complessi. Assicurarsi che le caselle di spunta Zero e Integrator siano deselezionate per escludere uno zero e un integratore dal modello (auto-regolazione).

    • Disturbance Model: impostare su Order 1 per stimare un modello di rumore H come un modello ARMA a tempo continuo del primo ordine:

      H=CDe

      dove e D sono polinomi del primo ordine ed e è il rumore bianco.

      Questa azione specifica il Focus come Prediction, che migliora la precisione nell’intervallo di frequenza in cui il livello di rumore è basso. Ad esempio, se è presente più rumore alle alte frequenze, l’algoritmo assegna meno importanza all’adattamento preciso delle parti di dati ad alta frequenza.

    • Name: modificare il nome del modello in P2DUe1 per creare un modello con un nome univoco nell’app System Identification.

  3. Fare clic su Estimate.

  4. Nella finestra di dialogo Modelli di processo, impostare Disturbance Model su Order 2 per stimare un modello di rumore del secondo ordine.

  5. Modificare il campo Name in P2DUe2 per creare un modello con un nome univoco nell’app System Identification.

  6. Fare clic su Estimate.

Convalida dei modelli

In questa sezione del tutorial, si valuta la prestazione del modello utilizzando i grafici di uscita del modello e di analisi residua.

È necessario che i modelli siano già stati stimati, come descritto in Stima di una funzione di trasferimento del secondo ordine utilizzando le impostazioni predefinite e in Stima di un modello di processo del secondo ordine con poli complessi.

Se questi passaggi non sono ancora stati eseguiti, fare clic qui per completarli.

Paragone dei grafici di uscita del modello.  Per creare il grafico di uscita del modello, selezionare la casella di spunta Model output nell’app System Identification. Se il grafico è vuoto o se non appare un’uscita del modello nel grafico, fare clic sulle icone del modello nella finestra dell’app System Identification per visualizzare questi modelli nel grafico.

Il seguente grafico di uscita del modello mostra l’uscita del modello simulata per impostazione predefinita. La risposta simulata dei modelli è approssimativamente la stessa per i modelli con rumore e i modelli senza rumore. Quindi, l’inclusione di un modello di rumore non influisce sull’uscita simulata.

Per visualizzare l’uscita del modello prevista, selezionare Options > 5 step ahead predicted output nella finestra del grafico di uscita del modello.

Il grafico seguente di uscita del modello mostra che l’uscita del modello prevista di P2DUe2 (con un modello di rumore del secondo ordine) è migliore rispetto all’uscita prevista degli altri due modelli (rispettivamente senza rumore e con un modello di rumore del primo ordine).

Paragone dei grafici di analisi residua.  Per creare il grafico di analisi residua, selezionare la casella di spunta Model resids nell’app System Identification. Se il grafico è vuoto, fare clic sulle icone del modello nella finestra dell’app System Identification per visualizzare questi modelli nel grafico.

P2DUe2 rientra ampiamente nei limiti di confidenza sul grafico di analisi residua.

Per visualizzare i residui relativi esclusivamente a P2DUe2, rimuovere i modelli P2DU e P2DUe1 dal grafico di analisi residua facendo clic sulle icone corrispondenti nell’app System Identification.

Il grafico di analisi residua si aggiorna, come mostrato nella figura seguente.

Il test di bianchezza per P2DUe2 mostra che i residui non sono correlati e il test di indipendenza mostra che non è presente alcuna correlazione tra i residui e gli ingressi. Questi test indicano che P2DUe2 è un buon modello.

Visualizzazione dei parametri del modello

Visualizzazione dei valori dei parametri del modello

È possibile visualizzare i valori dei parametri numerici e altre informazioni sul modello P2DUe2 facendo clic con il tasto destro del mouse sull’icona del modello nell’app System Identification. Si apre la finestra di dialogo Informazioni sui dati/modello.

L’area non modificabile della finestra di dialogo elenca i coefficienti del modello che corrispondono alla seguente struttura del modello:

G(s)=K(1+2ξTws+Tw2s2)eTds

I coefficienti concordano con il modello utilizzato per simulare i dati:

G(s)=11+0.2s+s2e2s

Visualizzazione delle incertezze dei parametri

Per visualizzare le incertezze dei parametri per la funzione di trasferimento del sistema, fare clic su Present nella finestra di dialogo Informazioni sui dati/modello e vedere le informazioni nella finestra di comando MATLAB.

Kp = 0.99821 +/- 0.019982
Tw = 0.99987 +/- 0.0037697
Zeta = 0.10828 +/- 0.0042304
Td = 2.004 +/- 0.0029717   

L’incertezza con deviazione standard di 1 per ciascun parametro del modello segue il simbolo +/-.

P2DUe2 include inoltre un termine di rumore additivo, dove H è un modello ARMA del secondo ordine ed e è il rumore bianco:

H=CDe

Il software visualizza il modello di rumore H come un rapporto di due polinomi C(s)/D(s), dove:

 C(s) = s^2 + 2.186 (+/- 0.08467) s + 1.089 (+/- 0.07951)
 D(s) = s^2 + 0.2561 (+/- 0.09044) s + 0.5969 (+/- 0.3046)

L’incertezza alla deviazione standard di 1 per i parametri del modello è racchiusa tra parentesi, accanto a ciascun valore del parametro.

Esportazione del modello nell’area di lavoro MATLAB

È possibile eseguire ulteriori analisi sui modelli stimati dall’area di lavoro MATLAB. Ad esempio, se il modello è un impianto che richiede un controller, è possibile importare il modello dall’area di lavoro MATLAB nel prodotto Control System Toolbox™. Inoltre, per simulare il modello nel software Simulink (magari come parte di un sistema dinamico più ampio), è possibile importare questo modello come un blocco Simulink.

I modelli creati nell’app System Identification non sono disponibili automaticamente nell’area di lavoro MATLAB. Affinché un modello sia disponibile per i comandi di altre toolbox, di Simulink e di System Identification Toolbox, è necessario esportarlo dall’app System Identification nell’area di lavoro MATLAB.

Per esportare il modello P2DUe2, trascinare l’icona del modello sul rettangolo To Workspace nell’app System Identification. In alternativa, fare clic su Export nella finestra di dialogo Informazioni sui dati/modello. Il modello è ora visualizzato nel browser dell’area di lavoro MATLAB.

Nota

Questo modello è un oggetto del modello idproc.

Simulazione di un modello System Identification Toolbox nel software Simulink

Prerequisiti per questo tutorial

In questo tutorial, si crea un modello Simulink semplice che utilizza blocchi dalla libreria System Identification Toolbox per portare i dati z e il modello P2DUe2 in Simulink.

Per eseguire i passaggi di questo tutorial, è necessario che Simulink sia installato sul computer.

È inoltre necessario che i seguenti passaggi siano già stati eseguiti:

Se questi passaggi non sono ancora stati eseguiti, fare clic qui per completarli. Quindi, trascinare le icone z e P2DUe2 sul rettangolo To Workspace nell’app System Identification. In alternativa, fare clic su Export nella finestra di dialogo Informazioni sui dati/modello. I dati e il modello sono ora visualizzati nel browser dell’area di lavoro MATLAB.

Preparazione dei dati in ingresso

Utilizzare il canale in ingresso dell’insieme dei dati z come ingresso per la simulazione dell’uscita del modello, digitando quanto segue nella finestra di comando MATLAB:

z_input = z;    % Creates a new iddata object.
z_input.y = []; % Sets the output channel
               % to empty.

In alternativa, è possibile specificare qualsiasi segnale in ingresso.

Per saperne di più.  Per ulteriori informazioni sulla rappresentazione dei segnali dei dati per l’identificazione del sistema, vedere Representing Data in MATLAB Workspace.

Costruzione del modello Simulink

Per aggiungere un blocco a un modello Simulink:

  1. Nella scheda MATLABHome, fare clic su Simulink.

  2. Nella pagina di avvio Simulink, fare clic su Blank Model. Quindi fare clic su Create Model per aprire una nuova finestra di modello.

  3. Nella finestra di modello Simulink, fare clic su per aprire il browser della libreria. Nel browser della libreria, selezionare la libreria System Identification Toolbox. Il lato destro della finestra mostra i blocchi specifici per il prodotto System Identification Toolbox.

    Suggerimento

    In alternativa, è possibile accedere alla libreria dei blocchi di System Identification digitando slident nella finestra di comando MATLAB.

  4. Trascinare i seguenti blocchi System Identification Toolbox nella nuova finestra di modello:

    • Blocco IDDATA Sink

    • Blocco IDDATA Source

    • Blocco IDMODEL model

  5. Nel browser della libreria Simulink, selezionare la Simulink > Sinks e trascinare il blocco Scope sulla nuova finestra di modello.

  6. Nella finestra di modello Simulink collegare i blocchi affinché assomiglino alla figura seguente.

Quindi, configurare questi blocchi per il ricevimento dei dati dall’area di lavoro MATLAB e impostare l’intervallo di tempo e la durata della simulazione.

Configurazione dei blocchi e simulazione dei parametri

Questa procedura consiste in una guida attraverso le attività necessarie per la configurazione dei blocchi del modello:

  • Ottenimento dei dati dall’area di lavoro MATLAB.

  • Impostazione dell’intervallo di tempo e della durata della simulazione.

  1. Nell’Editor Simulink, selezionare Modeling > Model Settings > Model Settings Ctrl+E.

  2. Nella finestra di dialogo Parametri di configurazione, nel sottopannello Solver, nel campo Stop time, digitare 200. Fare clic su OK.

    Questo valore imposta la durata della simulazione a 200 secondi.

  3. Fare doppio clic sul blocco Iddata Source per aprire i parametri del blocco Source: Finestra di dialogo di Iddata Source. Quindi, digitare il seguente nome della variabile nel campo IDDATA object:

    z_input

    Questa variabile è l’oggetto dei dati nell’area di lavoro MATLAB che contiene i dati in ingresso.

    Suggerimento

    Come scorciatoia, è possibile trascinare e rilasciare il nome della variabile dal browser dell’area di lavoro MATLAB sul campo IDDATA object.

    Fare clic su OK.

  4. Fare doppio clic sul blocco Idmodel per aprire i parametri del blocco Function: Finestra di dialogo di Idmodel.

    1. Digitare il seguente nome della variabile nel campo Model variable:

      P2DUe2

      Questa variabile rappresenta il nome del modello nell’area di lavoro MATLAB.

    2. Deselezionare la casella di spunta Add noise per escludere il rumore dalla simulazione. Fare clic su OK.

      Quando Add noise è selezionato, Simulink deriva l’ampiezza del rumore dalla proprietà NoiseVariance del modello e aggiunge rumore al modello di conseguenza. La simulazione propaga questo rumore secondo il modello di rumore H che è stato stimato con la dinamica del sistema:

      H=CDe

    Fare clic su OK.

  5. Fare doppio clic sul blocco Iddata Sink per aprire i parametri del blocco Sink: Finestra di dialogo Iddata Sink. Digitare il seguente nome della variabile nel campo IDDATA Name:

    z_sim_out

  6. Digitare 1 nel campo Sample Time (sec.) per impostare il tempo di campionamento dei dati in uscita in modo che corrisponda al tempo dei dati di campionamento in ingresso.

    Fare clic su OK.

La modifica risultante sul modello Simulink è mostrata nella figura seguente.

Esecuzione della simulazione

  1. Nell’Editor Simulink, selezionare Simulation > Run.

  2. Fare doppio clic sul blocco Scope per visualizzare il grafico temporale dell’uscita del modello.

  3. Nel browser dell’area di lavoro MATLAB, notare la variabile z_sim_out che memorizza l’uscita del modello come un oggetto iddata. Il nome di questa variabile è stato specificato nella configurazione del blocco Iddata Sink.

    Questa variabile memorizza l’uscita simulata del modello ed è ora disponibile per ulteriori elaborazioni e scoperte.

Argomenti complementari