Discrete Derivative
Zeitdiskrete Ableitung berechnen
Bibliotheken:
Simulink /
Discrete
Beschreibung
Der Block Discrete Derivative berechnet eine optional skalierte zeitdiskrete Ableitung auf folgende Weise
wobei
und der Blockeingang bzw. -ausgang zum aktuellen Zeitschritt sind.
ist der Blockeingang zum vorherigen Zeitschritt.
ist ein optionaler Skalierungsfaktor, angegeben mithilfe des Parameters Gain value.
ist die diskrete Schrittgröße der Simulation, die fest sein muss.
Hinweis
Verwenden Sie diesen Block nicht in Subsystemen mit nicht-periodischen Auslösern, wie beispielweise nicht-periodische Function-Call Subsysteme. Diese Konfiguration erzeugt ungenaue Ergebnisse.
Beispiele
In diesem Beispiel wird dargestellt, wie mit dem Block „Discrete Derivative“ die zeitdiskrete Ableitung eines Gleitkomma-Eingangssignals berechnet werden kann. Die ungefilterte zeitdiskrete Ableitung wird mit einer gefilterten zeitdiskreten Ableitung verglichen, die vom Block „Discrete Filter“ berechnet wird.


Ports
Eingabe
Das Eingangssignal, angegeben als Skalar, Vektor oder Matrix.
Datentypen: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Ausgabe
Optional skalierte zeitdiskrete Ableitung, angegeben als Skalar, Vektor oder Matrix. Weitere Informationen darüber, wie der Block die zeitdiskrete Ableitung berechnet, finden Sie unter Beschreibung. Sie geben den Datentyp des Ausgangssignals mit dem Parameter Output data type an.
Datentypen: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Parameter
Haupt
Auf die berechnete Ableitung angewendeter Skalierungsfaktor, angegeben als realer Skalarwert.
Programmatische Verwendung
Blockparameter: gainval
|
| Typ: Zeichenvektor |
| Werte: Skalar |
Standardwert: '1.0'
|
Anfangsbedingung für die zuvor skalierte Eingabe, angegeben als Skalar.
Programmatische Verwendung
Blockparameter: ICPrevScaledInput
|
| Typ: Zeichenvektor |
| Werte: Skalar |
Standardwert: '0.0'
|
Geben Sie an, ob der Block eine abtast- oder blockbasierte Verarbeitung durchführt:
Columns as channels (frame based)– Behandelt jede Spalte der Eingabe als separaten Kanal (blockbasierte Verarbeitung).Hinweis
Für die blockbasierte Verarbeitung ist eine DSP System Toolbox™-Lizenz erforderlich.
Weitere Informationen finden Sie unter Sample- and Frame-Based Concepts (DSP System Toolbox).
Elements as channels (sample based)– Behandelt jedes Element der Eingabe als separaten Kanal (abtastbasierte Verarbeitung).
Verwenden Sie Input processing, um anzugeben, ob der Block eine abtast- oder blockbasierte Verarbeitung durchführt. Weitere Informationen zu diesen beiden Verarbeitungsmodi finden Sie unter Sample- and Frame-Based Concepts (DSP System Toolbox).
Programmatische Verwendung
Blockparameter: InputProcessing |
| Typ: Zeichenvektor |
Werte: 'Columns as channels (frame based)' | 'Elements as channels (sample based)' |
Standardwert: 'Elements as channels (sample based)' |
Signalattribute
Unterer Wert des Ausgabebereichs, den die Software überprüft.
Die Software verwendet das Minimum, um Folgendes auszuführen:
Überprüfung des Parameterbereichs (siehe Specify Minimum and Maximum Values for Block Parameters) für einige Blöcke.
Überprüfung des Simulationsbereichs (siehe Specify Signal Ranges und Enable Simulation Range Checking).
Automatische Skalierung von Festkomma-Datentypen.
Optimierung des Codes, den Sie aus dem Modell generieren. Durch diese Optimierung kann algorithmischer Code entfernt werden, was sich auf die Ergebnisse einiger Simulationsmodi wie SIL oder den externen Modus auswirken kann. Weitere Informationen finden Sie unter Optimize using the specified minimum and maximum values (Embedded Coder).
Tipps
Output minimum sättigt oder beschneidet das tatsächliche Ausgabesignal nicht. Verwenden Sie stattdessen den Saturation-Block.
Programmatische Verwendung
Um den Wert des Blockparameters programmatisch festzulegen, verwenden Sie die Funktion set_param.
| Parameter: | OutMin |
| Werte: | '[]' (Standardeinstellung) | scalar in quotes |
Oberer Wert des Ausgabebereichs, den die Software überprüft.
Die Software verwendet den Maximalwert, um Folgendes auszuführen:
Überprüfung des Parameterbereichs (siehe Specify Minimum and Maximum Values for Block Parameters) für einige Blöcke.
Überprüfung des Simulationsbereichs (siehe Specify Signal Ranges und Enable Simulation Range Checking).
Automatische Skalierung von Festkomma-Datentypen.
Optimierung des Codes, den Sie aus dem Modell generieren. Durch diese Optimierung kann algorithmischer Code entfernt werden, was sich auf die Ergebnisse einiger Simulationsmodi wie SIL oder den externen Modus auswirken kann. Weitere Informationen finden Sie unter Optimize using the specified minimum and maximum values (Embedded Coder).
Tipps
Output maximum sättigt oder beschneidet das tatsächliche Ausgabesignal nicht. Verwenden Sie stattdessen den Saturation-Block.
Programmatische Verwendung
Um den Wert des Blockparameters programmatisch festzulegen, verwenden Sie die Funktion set_param.
| Parameter: | OutMax |
| Werte: | '[]' (Standardeinstellung) | scalar in quotes |
Legen Sie den Ausgangs-Datentyp fest. Folgende Optionen sind möglich:
Eine Regel, die einen Datentyp erbt, beispielsweise
Inherit: Inherit via back propagationDer Name eines eingebauten Datentyps, beispielsweise
singleDer Name eines Datentyp-Objekts, beispielsweise ein
Simulink.NumericType-ObjektEin Ausdruck, der einen Datentyp ergibt, beispielsweise
fixdt(1,16,0)
Der Data Type Assistant hilft Ihnen bei der Einstellung von Datenattributen. Um den Data Type Assistant zu verwenden, klicken Sie auf
. Weitere Informationen finden Sie unter Specify Data Types Using Data Type Assistant.
Programmatische Verwendung
Blockparameter: OutDataTypeStr
|
| Typ: Zeichenvektor |
Werte: 'Inherit: Inherit via internal rule' | 'Inherit: Inherit via back propagation' | 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' |
Standardwert: 'Inherit: Inherit via internal rule'
|
Wählen Sie diesen Parameter aus, um zu verhindern, dass die Festkomma-Tools den Datentyp Output überschreiben, den Sie im Block angeben. Weitere Informationen finden Sie unter Use Lock Output Data Type Setting (Fixed-Point Designer).
Programmatische Verwendung
Um den Wert des Blockparameters programmatisch festzulegen, verwenden Sie die Funktion set_param.
| Parameter: | LockScale |
| Werte: | 'off' (Standardeinstellung) | 'on' |
Gibt den Rundungsmodus für Festkommaoperationen an. Weitere Informationen finden Sie unter Rounding Modes (Fixed-Point Designer).
Blockparameter runden stets auf den nächsten darstellbaren Wert. Um das Runden eines Blockparameters zu steuern, geben Sie einen Ausdruck mithilfe einer MATLAB®-Rundungsfunktion in das Maskenfeld ein.
Programmatische Verwendung
Um den Wert des Blockparameters programmatisch festzulegen, verwenden Sie die Funktion set_param.
| Parameter: | RndMeth |
| Werte: | 'Floor' (Standardeinstellung) | 'Ceiling' | 'Convergent' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
Wenn Sie dieses Kontrollkästchen aktivieren, sättigen Überläufe bis zum Mindest- oder Höchstwert, den der Datentyp darstellen kann. Andernfalls werden Überläufe gewrappt.
Wenn Sie dieses Kontrollkästchen aktivieren, wird die Sättigung auf jede interne Operation des Blocks angewendet, nicht nur die Ausgabe oder das Ergebnis. Im Allgemeinen kann der Codegenerierungsprozess erkennen, wenn ein Überlauf nicht möglich ist. In diesem Fall erzeugt der Codegenerator keinen Sättigungscode.
Programmatische Verwendung
Blockparameter: DoSatur |
| Typ: Zeichenvektor |
Werte: 'off' | 'on' |
Standardwert: 'off' |
Blockeigenschaften
Datentypen |
|
Direct Feedthrough |
|
Mehrdimensionale Signale |
|
Signale mit variabler Größe |
|
Erkennung von Nulldurchgängen |
|
Erweiterte Fähigkeiten
Hängt bei der Verwendung in einer Hierarchie von getriggerten Subsystemen von der absoluten Zeit ab.
Der generierte Code basiert unter bestimmten Bedingungen auf
memcpy- odermemset-Funktionen (string.h).
PLC-Codegenerierung
Generieren strukturierten Textcodes mit Simulink® PLC Coder™.
Festkommakonvertierung
Entwerfen und Simulieren von Festkommasystemen mit Fixed-Point Designer™.
Versionsverlauf
Eingeführt vor R2006a
Siehe auch
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Website auswählen
Wählen Sie eine Website aus, um übersetzte Inhalte (sofern verfügbar) sowie lokale Veranstaltungen und Angebote anzuzeigen. Auf der Grundlage Ihres Standorts empfehlen wir Ihnen die folgende Auswahl: .
Sie können auch eine Website aus der folgenden Liste auswählen:
So erhalten Sie die bestmögliche Leistung auf der Website
Wählen Sie für die bestmögliche Website-Leistung die Website für China (auf Chinesisch oder Englisch). Andere landesspezifische Websites von MathWorks sind für Besuche von Ihrem Standort aus nicht optimiert.
Amerika
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)