Contenu principal

Discrete State-Space

Implémenter un système de représentation d’état discret

  • Discrete State-Space block

Bibliothèques :
Simulink / Discrete
Simulink / Quick Insert / Discrete
HDL Coder / RCP and HIL

Description

Le bloc Discrete State-Space implémente le système décrit par

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

u est l’entrée, x est l’état et y est la sortie. Les coefficients de la matrice doivent présenter les caractéristiques suivantes illustrées sur le diagramme ci-dessous :

  • A doit être une matrice n x n, où n est le nombre d’états.

  • B doit être une matrice n x m, où m est le nombre d’entrées.

  • C doit être une matrice r x n, où r est le nombre de sorties.

  • D doit être une matrice r x m.

Le bloc accepte une seule entrée et génère une seule sortie. La largeur du vecteur d’entrée est égale au nombre de colonnes des matrices B et D. La largeur du vecteur de sortie est égale au nombre de lignes des matrices C et D. Pour définir le vecteur d’état initial, utilisez le paramètre Initial conditions.

Pour spécifier un vecteur ou une matrice de zéros pour A, B, C, D ou Initial conditions, utilisez la fonction zeros.

Comportement du bloc pour les matrices vides

Lorsque les matrices A, B et C sont vides (par exemple, []), le fonctionnement du bloc est donné par y(n) = Du(n). Si le vecteur Initial conditions est vide lui aussi, le bloc utilise un vecteur d’état initial composé de zéros.

Exemples

Ports

Entrée(s)

développer tout

Vecteur d’entrée dont la largeur est égale au nombre de colonnes des matrices B et D. Pour plus d’informations, consultez Description.

Conseil

Pour les signaux d’entrée entiers et en virgule fixe, utilisez le bloc Fixed-Point State-Space.

Types de données : single | double

Sortie(s)

développer tout

Vecteur de sortie dont la largeur est égale au nombre de lignes des matrices C et D. Pour plus d’informations, consultez Description.

Types de données : single | double

Paramètres

développer tout

Paramètres principaux

Spécifiez le coefficient de la matrice A comme une matrice n x n à valeur réelle, où n est le nombre d’états. Pour plus d’informations sur les coefficients de matrice, consultez Description.

Utilisation programmatique

Paramètre de bloc : A
Type : vecteur de caractères
Valeurs : scalaire | vecteur | matrice
Par défaut : '1'

Spécifiez le coefficient de la matrice B comme une matrice n x m à valeur réelle, où n est le nombre d’états et m le nombre d’entrées. Pour plus d’informations sur les coefficients de matrice, consultez Description.

Utilisation programmatique

Paramètre de bloc : B
Type : vecteur de caractères
Valeurs : scalaire | vecteur | matrice
Par défaut : '1'

Spécifiez le coefficient de la matrice C comme une matrice r x n à valeur réelle, où r est le nombre de sorties et n le nombre d’états. Pour plus d’informations sur les coefficients de matrice, consultez Description.

Utilisation programmatique

Paramètre de bloc : C
Type : vecteur de caractères
Valeurs : scalaire | vecteur | matrice
Par défaut : '1'

Spécifiez le coefficient de la matrice D comme une matrice r x m à valeur réelle, où r est le nombre de sorties et m le nombre d’entrées. Pour plus d’informations sur les coefficients de matrice, consultez Description.

Utilisation programmatique

Paramètre de bloc : D
Type : vecteur de caractères
Valeurs : scalaire | vecteur | matrice
Par défaut : '1'

Spécifiez le vecteur d’état initial en tant que scalaire ou vecteur. Il ne peut pas contenir les valeurs inf ni NaN.

Utilisation programmatique

Paramètre de bloc : InitialCondition
Type : vecteur de caractères
Valeurs : scalaire | vecteur
Par défaut : '0'

Spécifiez l’intervalle de temps entre échantillons. Consultez la rubrique Spécifier les pas d'échantillonnage.

Utilisation programmatique

Paramètre de bloc : SampleTime
Type : vecteur de caractères
Valeurs : scalaire | vecteur
Par défaut : '-1'

Attributs d’état

Utilisez ce paramètre pour attribuer un nom unique à l’état du bloc. La valeur par défaut est ' '. Lorsque ce champ est vide, aucun nom n’est attribué. N’oubliez pas de tenir compte des points suivants lorsque vous utilisez ce paramètre :

  • Un identifiant valide commence par un caractère alphabétique ou underscore suivi de caractères alphanumériques ou underscore.

  • Le nom de l’état s’applique uniquement au bloc sélectionné.

Ce paramètre active l’option State name must resolve to Simulink signal object lorsque vous cliquez sur Apply.

Pour plus d’informations, consultez C Data Code Interface Configuration for Model Interface Elements (Simulink Coder).

Utilisation programmatique

Paramètre de bloc : StateName
Type : vecteur de caractères
Valeurs : nom unique
Par défaut : ''

Cochez cette case pour exiger que le nom d’état soit résolu par rapport à un objet de signal Simulink®.

Dépendances

Pour activer ce paramètre, spécifiez une valeur pour State name. Ce paramètre n’apparaît que si vous définissez le paramètre de configuration de modèle Signal resolution sur une valeur autre que None.

Utilisation programmatique

Paramètre de bloc : StateMustResolveToSignalObject
Type : vecteur de caractères
Valeurs : 'off' | 'on'
Par défaut : 'off'

Caractéristiques des blocs

Types de données

double | single

Traversée directe

oui

Signaux multidimensionnels

non

Signaux de taille variable

non

Détection des passages à zéro

non

Capacités étendues

développer tout

Génération de code PLC
Générez du texte structuré avec Simulink® PLC Coder™.

Historique des versions

Introduit avant R2006a