Вы можете задать физические единицы измерения на Simulink® сигналы. Для получения дополнительной информации смотрите Модули измерения в Simulink.
Интерфейсные блоки, такие как Simulink-PS Converter и PS-Simulink Converter, обрабатывают контур между Simscape™ физической сетью и соединенными с ней блоками Simulink. Эти блоки конвертера также обрабатывают модули физического сигнала:
На блоке Simulink-PS Converter вы задаете модуль, используя параметр Input signal unit. Этот параметр определяет модуль измерения физического сигнала в выходном порте PS блока, который служит входным сигналом для физической сети Simscape.
На блоке PS-Simulink Converter вы задаете модуль, используя параметр Output signal unit. Этот модуль должен быть соизмерим с модулем входного физического сигнала, поступающего в блок. Блок применяет коэффициент усиления, равный коэффициенту преобразования, перед выводом сигнала Simulink.
Если вы задаете физическую единицу измерения на сигнал Simulink, соединенный с блоком Simulink-PS Converter или PS-Simulink Converter, программа сравнивает этот модуль с модулем, заданной внутри блока. Если значение параметров не соответствует физической единице измерения сигнала Simulink, подключенного к блоку, вы получаете предупреждение.
База данных модулей Simulink исправлена: вы не можете добавить модулей измерения или изменить определения модулей. Когда вы добавляете новый модуль в свой реестр модулей Simscape, с помощью pm_addunit
и используйте этот модуль внутри блока Simulink-PS Converter или PS-Simulink Converter:
Если определение модуля конфликтует с определением в базе данных Simulink, появляется предупреждение о несовместимом модуле.
Если вы добавляете модуль, которая не существует в базе данных Simulink, вы получаете предупреждение о неопределенном модуле.
Обратите внимание, что эти предупреждения применяются только к базе данных Simulink; физическая сеть Simscape работает должным образом.
Например, вы хотите просмотреть скорость двигателя в оборотах в секунду, а не в оборотах в минуту (rpm
):
Добавьте новый модуль измерения rps
, определяемый терминами или rpm
:
pm_addunit('rps', 1/60, 'rpm');
Чтобы открыть модель примера двигателя постоянного тока с постоянными магнитами, в MATLAB® Командное окно, введите:
ssc_dcmotor
Симулируйте модель. Исследуйте результаты симуляции в окне Motor RPM scope.
Откройте Подсистему Измерения (обозначается как w
в блок-схеме), дважды кликните блок PS-Simulink Converter и введите rps
как Output signal unit значение параметров.
Перезапустите симуляцию.
Модель работает правильно, при этом возможности отображают результаты в оборотах в секунду.
Однако сигнал выхода Simulink блока PS-Simulink Converter теперь отображает предупреждающий значок с сообщением The units 'rps' are undefined
. Подробное сообщение объясняет, что модули не определены в базе данных модулей Simulink.
Если вы выдаете pm_getunits
команду, можно увидеть rps
в списке модулей измерения возврата, что означает, что модуль измерения успешно определена в реестре модулей измерения Simscape. Другими словами, предупреждение применяется только к проверке модуля Simulink.
Чтобы выключить предупреждения о несоответствии модулей измерения, в Командном окне MATLAB введите:
set_param('ssc_dcmotor','UnitsInconsistencyMsg','none');