Contenuto principale

Discrete State-Space

Implementare un sistema stato-spazio discreto

  • Discrete State-Space block

Librerie:
Simulink / Discrete
Simulink / Quick Insert / Discrete
HDL Coder / RCP and HIL

Descrizione

Il blocco Discrete State-Space implementa il sistema descritto da

x(n+1)=Ax(n)+Bu(n)y(n)=Cx(n)+Du(n),

dove u è l'input, x è lo stato e y è l'output. I coefficienti della matrice devono presentare le seguenti caratteristiche, come illustrato nel diagramma seguente:

  • A deve essere una matrice n x n, dove n è il numero di stati.

  • B deve essere una matrice n x m, dove m è il numero di input.

  • C deve essere una matrice r x n, dove r è il numero di output.

  • D deve essere una matrice r x m.

Il blocco accetta un input e genera un output. La larghezza del vettore di input corrisponde al numero di colonne delle matrici B e D. La larghezza del vettore di output corrisponde al numero di righe delle matrici C e D. Per definire il vettore di stato iniziale, utilizzare il parametro Initial conditions.

Per specificare un vettore o una matrice di zeri per A, B, C, D o Initial conditions, utilizzare la funzione zeros.

Comportamento del blocco per matrici vuote

Quando le matrici A, B e C sono vuote (ad esempio, []), la funzionalità del blocco diventa y(n) = Du(n). Se anche il vettore Initial conditions è vuoto, il blocco utilizza un vettore di stato iniziale composto da zeri.

Esempi

Porte

Input

espandi tutto

Vettore di input, la cui larghezza è pari al numero di colonne delle matrici B e D. Per ulteriori informazioni, vedere Descrizione.

Suggerimento

Per i segnali di input a numero intero e in virgola fissa, utilizzare il blocco Fixed-Point State-Space.

Tipi di dati: single | double

Output

espandi tutto

Vettore di output, la cui larghezza è pari al numero di righe delle matrici C e D. Per ulteriori informazioni, vedere Descrizione.

Tipi di dati: single | double

Parametri

espandi tutto

Principale

Specificare il coefficiente della matrice A, come matrice n x n a valore reale, dove n è il numero di stati. Per ulteriori informazioni sui coefficienti della matrice, vedere Descrizione.

Utilizzo programmatico

Parametro dei blocchi: A
Tipo: vettore di caratteri
Valori: scalare | vettore | matrice
Impostazione predefinita: '1'

Specificare il coefficiente della matrice B, come matrice n x m a valore reale, dove n è il numero di stati e m è il numero di input. Per ulteriori informazioni sui coefficienti della matrice, vedere Descrizione.

Utilizzo programmatico

Parametro dei blocchi: B
Tipo: vettore di caratteri
Valori: scalare | vettore | matrice
Impostazione predefinita: '1'

Specificare il coefficiente della matrice C, come matrice r x n a valore reale, dove r è il numero di output e n è il numero di stati. Per ulteriori informazioni sui coefficienti della matrice, vedere Descrizione.

Utilizzo programmatico

Parametro dei blocchi: C
Tipo: vettore di caratteri
Valori: scalare | vettore | matrice
Impostazione predefinita: '1'

Specificare il coefficiente della matrice D, come matrice r x m a valore reale, dove r è il numero di output e m è il numero di input. Per ulteriori informazioni sui coefficienti della matrice, vedere Descrizione.

Utilizzo programmatico

Parametro dei blocchi: D
Tipo: vettore di caratteri
Valori: scalare | vettore | matrice
Impostazione predefinita: '1'

Specificare il vettore di stato iniziale come scalare o vettore. Il vettore di stato iniziale non può includere valori inf o NaN.

Utilizzo programmatico

Parametro dei blocchi: InitialCondition
Tipo: vettore di caratteri
Valori: scalare | vettore
Impostazione predefinita: '0'

Specificare l'intervallo di tempo tra i campionamenti. Vedere Specifica del tempo di campionamento.

Utilizzo programmatico

Parametro dei blocchi: SampleTime
Tipo: vettore di caratteri
Valori: scalare | vettore
Impostazione predefinita: '-1'

Attributi dello stato

Utilizzare questo parametro per assegnare un nome univoco allo stato del blocco. L'impostazione predefinita è ' '. Quando questo campo è vuoto, non è assegnato alcun nome. Quando si utilizza questo parametro, tenere presente le seguenti considerazioni:

  • Un identificatore valido inizia con un carattere alfabetico o di sottolineatura, seguito da caratteri alfanumerici o di sottolineatura.

  • Il nome dello stato si applica solo al blocco selezionato.

Questo parametro abilita State name must resolve to Simulink signal object quando si fa clic su Apply.

Per ulteriori informazioni, vedere C Data Code Interface Configuration for Model Interface Elements (Simulink Coder).

Utilizzo programmatico

Parametro dei blocchi: StateName
Tipo: vettore di caratteri
Valore: nome univoco
Impostazione predefinita: ''

Selezionare questa casella di spunta per richiedere che il nome dello stato venga associato a un oggetto segnale di Simulink®.

Dipendenze

Per abilitare questo parametro, specificare un valore per State name. Questo parametro appare solo se il parametro di configurazione del modello Signal resolution viene impostato su un valore diverso da None.

Utilizzo programmatico

Parametro dei blocchi: StateMustResolveToSignalObject
Tipo: vettore di caratteri
Valori: 'off' | 'on'
Impostazione predefinita: 'off'

Caratteristiche del blocco

Tipi di dati:

double | single

Passaggio diretto

Segnali multidimensionali

no

Segnali di dimensioni variabili

no

Rilevamento zero-crossing

no

Funzionalità estese

espandi tutto

Generazione di codice PLC
Genera codice di testo strutturato con Simulink® PLC Coder™.

Cronologia versioni

Introduzione prima di R2006a