Componenti personalizzati
Il linguaggio Simscape consente di definire i componenti personalizzati come file testuali, completi di parametrizzazione, collegamenti fisici ed equazioni sottostanti. Gli argomenti presenti in questa pagina forniscono informazioni dettagliate sulla dichiarazione dei parametri, delle variabili e dei collegamenti dei componenti. Per altri aspetti relativi alla definizione dei componenti personalizzati, consultare Equazioni, Eventi discreti e grafici di modalità e Componenti compositi.
Per iniziare a scrivere componenti personalizzati, consultare Creating Custom Components che illustra una panoramica del workflow generale. In fondo a questa pagina, gli argomenti elencati nella sezione Componenti applicativi di riferimento forniscono esempi completi di componenti con spiegazioni dettagliate che illustrano le tecniche utilizzate in ciascun caso.
Sintassi del linguaggio
annotations | Control appearance of Simscape block based on the component |
branches | Establish relationship between component Through variables and nodes |
component | Component model keywords |
Faults | Faults interface annotation for custom component (Da R2024b) |
inputs | Define component inputs, that is, physical signal input ports of block |
nodes | Define component nodes, that is, conserving ports of block |
outputs | Define component outputs, that is, physical signal output ports of block |
parameters | Declare domain or component parameters |
variables | Declare domain or component variables |
Argomenti
Tecniche di base
- Creating Custom Components
Component types, file structure, high-level workflow. - Attribute Lists
Model attributes and member attributes used in Simscape language.
Dichiarazioni e rami
- Declaring Domains and Components
Declaration section of domain and component files: purpose, definitions, rules, member summaries. - Declare a Spring Component
The following diagram shows a network representation of a mass-spring-damper system, consisting of four components (mass, spring, damper, and reference) in a mechanical rotational domain. - Declare Component Parameters
Component parameters let you specify adjustable parameters for the Simscape block generated from the component file. - Declare Component Nodes
Component nodes define the conserving ports of a Simscape block generated from the component file. - Declare Component Inputs and Outputs
In addition to conserving ports, Simscape blocks can contain physical signal input and output ports, directional ports that carry signals with associated units. - Declare Component Variables
When you declare Through and Across variables in a component, you are essentially creating instances of domain Through and Across variables. - Define Relationship Between Component Variables and Nodes
How to connect Through and Across variables declared in a component file to the domain Through and Across variables. - Declaration Functions
Use MATLAB® functions to compute derived parameter values or initialize variables.
Varianti dei componenti
- Defining Component Variants
Use conditional sections to define variants within component file. - Defining Conditional Visibility of Component Members
Use annotation section to define conditional visibility of ports and parameters for component variants.
Tecniche avanzate
- Enumerations
Specify a discrete set of acceptable values for parameters and event variables. - Subclassing and Inheritance
Subclassing allows you to build component models based on other component models by extension. - Fault Annotations
Use theannotations
section of a component file to model faults in a custom component.
Componenti applicativi di riferimento
- Model Linear Resistor in Simscape Language
Overview of how modeling in Simscape language works, using a linear resistor as an example. - Mechanical Component — Spring
The following file,spring.ssc
, implements a component calledspring
. - Electrical Component — Ideal Capacitor
The following file,ideal_capacitor.ssc
, implements a component calledideal_capacitor
. - No-Flow Component — Voltage Sensor
The following file,voltage_sensor.ssc
, implements a component calledvoltage_sensor
. - Grounding Component — Electrical Reference
The easiest way to implement a grounding component is to use a connection to an implicit reference node. - Composite Component — DC Motor
This example shows how to implement a DC motor model by means of a composite component. - Composite Component with Equations — RMS Voltage Sensor
TheVoltageSensorRMS
component implements a voltage sensor that measures the root mean square (RMS) value of AC voltage between two electrical nodes. - Triggered Delay Component
This example shows how to implement a triggered delay component. - Enabled Component
This example shows how to implement a component similar to a Simulink® enabled subsystem. - Switch with Hysteresis
This example shows how to model a component by using mode charts and enumerations. - Component Variants — Series RLC Branch
This example shows how to implement variants within a component file by using conditional sections. - Component Variants — Thermal Resistor
This example shows how to implement conditional visibility of component ports, parameters, variables, and a conditional custom block icon.