Задайте связи для портов компонента члена в составном компоненте
connections connect(a, b); end
connections
начинает раздел структуры в составном файле компонента; этот раздел отключен end
ключевое слово. Это выполняется однажды во время компиляции. Раздел структуры содержит информацию о том, как порты составляющих компонентов соединяются друг с другом и с внешними входными параметрами, выходными параметрами и узлами компонента верхнего уровня. Все компоненты члена объявили в components
блок объявлений доступен их именами в разделе структуры.
connections
блок содержит набор connect
построения, которые описывают обоих связи сохранения (между nodes
) и связи физического сигнала (между inputs
и outputs
). Чтобы относиться к узлу, введите, или выход компонента члена, используйте синтаксис comp_name.port_name
, где comp_name
идентификатор, присвоенный компоненту члена в components
блок объявлений и port_name
имя узла, входа, или выведенный в файле компонента члена.
Следующий синтаксис соединяет узел a
из составного компонента к узлу a
из компонента члена c1
, узел b
из компонента члена c1
к узлу a
из компонента члена c2
, и узел b
из компонента члена c2
к узлу b
из составного компонента.
connections connect(a, c1.a); connect(c1.b, c2.a); connect(c2.b, b); end
Смотрите connect
страница с описанием для получения дополнительной информации о connect
создайте синтаксис.
Можно также использовать for
циклы, чтобы объявить массив компонентов члена и задать связи компонента. Для получения дополнительной информации смотрите Массивы Компонента.
Этот пример реализует простую схему RC, которая моделирует разряд первоначально заряженного конденсатора. Составной компонент использует компоненты от библиотеки Simscape™ Foundation как базовые блоки и соединяет их как показано в следующей блок-схеме.
component CircuitRC outputs Out = { 0.0, 'V' }; % I:right end parameters p1 = {1e-6, 'F'}; % Capacitance p2 = {10, 'Ohm'}; % Resistance end components(ExternalAccess=observe) c1 = foundation.electrical.elements.capacitor(c=p1); VoltSensor = foundation.electrical.sensors.voltage; r1 = foundation.electrical.elements.resistor(R=p2); Grnd = foundation.electrical.elements.reference; end connections connect(Grnd.V, c1.n, r1.n, VoltSensor.n); connect(VoltSensor.p, r1.p, c1.p); connect(VoltSensor.V, Out); end end
connections
блок содержит три connect
построения:
Первый соединяет отрицательные порты конденсатора, резистора и датчика напряжения друг другу и основываться
Второй соединяет положительные порты конденсатора, резистора и датчика напряжения друг другу
Третий соединяет выходной порт физического сигнала датчика напряжения к внешнему выходу Out
из составного компонента
Получившийся составной блок имеет один выходной порт физического сигнала, Out
, и три внешне корректируемых параметра в диалоговом окне блока: Capacitance, Initial voltage и Resistance.