Задайте связи для членских портов компонента в составном компоненте
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
.
Этот пример реализует простую схему 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.