В примере двигателя постоянного тока с постоянными магнитами блок двигателя постоянного тока реализован как маскированная подсистема.

Следующий код реализует ту же модель с помощью составного компонента, называемого DC Motor. Составной компонент использует компоненты из библиотеки Simscape™ Foundation в качестве базовых блоков и соединяет их, как показано на предыдущей блок-схеме.
component DC_Motor
% DC Motor
% This block models a DC motor with an equivalent circuit comprising a
% series connection of a resistor, inductor, and electromechanical converter.
% Default values are as for the DC Motor Simscape example, ssc_dcmotor.
nodes
p = foundation.electrical.electrical; % +:left
n = foundation.electrical.electrical; % -:left
R = foundation.mechanical.rotational.rotational; % R:right
C = foundation.mechanical.rotational.rotational; % C:right
end
parameters
rotor_resistance = { 3.9, 'Ohm' }; % Rotor Resistance
rotor_inductance = { 12e-6, 'H' }; % Rotor Inductance
motor_inertia = { 0.01, 'g*cm^2' }; % Inertia
breakaway_torque = { 0.02e-3, 'N*m' }; % Breakaway friction torque
coulomb_torque = { 0.02e-3, 'N*m' }; % Coulomb friction torque
viscous_coeff = { 0, 'N*m*s/rad' }; % Viscous friction coefficient
breakaway_velocity = { 0.1, 'rad/s' }; % Breakaway friction velocity
back_emf_constant = { 0.072e-3, 'V/rpm' }; % Back EMF constant
end
components(ExternalAccess=observe)
rotorResistor = foundation.electrical.elements.resistor(R = rotor_resistance);
rotorInductor = foundation.electrical.elements.inductor(l = rotor_inductance);
rotationalElectroMechConverter = foundation.electrical.elements.rotational_converter(K = ...
back_emf_constant);
friction = foundation.mechanical.rotational.friction(brkwy_trq = ...
breakaway_torque, Col_trq = coulomb_torque, ...
visc_coef = viscous_coeff, brkwy_vel = breakaway_velocity);
motorInertia = foundation.mechanical.rotational.inertia(inertia = motor_inertia);
end
connections
connect(p, rotorResistor.p);
connect(rotorResistor.n, rotorInductor.p);
connect(rotorInductor.n, rotationalElectroMechConverter.p);
connect(rotationalElectroMechConverter.n, n);
connect(rotationalElectroMechConverter.R, friction.R, motorInertia.I, R);
connect(rotationalElectroMechConverter.C, friction.C, C);
end
end
Раздел объявления составного компонента начинается со nodes раздел, который задает порты соединения верхнего уровня получившегося составного блока:
Два электрических порта, + и -, с левой стороны блока
Два механических вращательных порта, R и C, с правой стороны блока
![]()
The parameters В блоке объявления перечислены все параметры, которые будут доступны в диалоговом окне составного блока.

The components блок объявляет все представителя (составляющие) компоненты, задавая их полные имена начиная с директории пакета верхнего уровня. В этом примере используются компоненты из библиотеки Simscape Foundation:
Резистор
Катушка индуктивности
Вращательный Электромеханический Преобразователь
Вращательное трение
Инерция
The components блок также связывает параметры верхнего уровня, объявленные в parameters объявление блока, к параметрам базовых представителей компонентов. Для примера, параметр Rotor Resistance составного блока (rotor_resistance) соответствует параметру Resistance (R) блока Резистор в библиотеке Фундамента.
Вы не должны связывать все параметры представителя блоков с параметрами верхнего уровня. Для примера блок Вращательное Трение в библиотеке Foundation имеет параметр Transition approximation coefficient, который не сопоставлен ни с одним параметром на верхнем уровне. Поэтому составная модель всегда использует значение по умолчанию этого параметра, заданное в компоненте Вращательного трения, 10 рад/с.
The connections блок определяет соединения между узлами (портами) представителя компонентов и их соединения с портами верхнего уровня полученного составного блока, объявленные в nodes объявление блока составного компонента:
Положительный электрический порт p составной компонент соединяется с положительным электрическим портом p резистора
Отрицательный электрический порт n резистора соединяется с положительным электрическим портом p индуктивности
Отрицательный электрический порт n индуктивности соединяется с положительным электрическим портом p Вращающегося Электромеханического Конвертера
Отрицательный электрический порт n Вращательного Электромеханического Конвертера соединяется с отрицательным электрическим портом n составного компонента
Механический вращательный порт R составного компонента соединяется со следующими портами механического вращений: R Вращающегося Электромеханического Конвертера, R Вращательного трения и I Инерции
Механический вращательный порт C составного компонента соединяется со следующими портами механического вращений: C Вращающегося Электромеханического Конвертера и C Вращательного трения
Эти соединения являются текстовым эквивалентом графических соединений в предыдущем блоке.