В Simulink® модели, вы задаете модули от модульной базы данных. Модульная база данных включает модули от следующих модульных систем:
SI
— Международная система единиц
SI (extended)
— Международная система единиц (расширена)
English
— Английская система модулей
CGS
— Система измерений СГС
По умолчанию Simulink поддерживает только модули и модульные системы, перечисленные в Позволенных Модулях. Чтобы ввести дополнительные модули от других модульных систем на уровне в масштабе всей системы и использовать те новые модули, когда вы были бы перечисленные в Позволенных Модулях, создайте и загрузите новую модульную базу данных с этими функциями:
createCustomDBFromExcel
— Создает пользовательский модульный файл базы данных из Excel® электронная таблица, которая содержит определения для пользовательской модульной базы данных. На всех поддерживаемых платформах, createCustomDBFromExcel
функциональные поддержки: .xls
и .xlsx
файлы.
rehashUnitDBs
— Загружает пользовательские модульные базы данных путем перефразирования модульных файлов базы данных на MATLAB® path.
Электронные таблицы должны иметь эти столбцы в любом порядке:
имя Модульное имя, с помощью любых графических символов Unicode кроме @
, *
, /
, ^
, (,)
, +
, \
, "
, '
, {
, }
, [
, ]
, <
, >
, &
, -
, ::
, и пробел.
symbol — Символ модуля, с помощью любых графических символов Unicode кроме @
, *
, /
, ^
, (,)
, +
, \
, "
, '
, {
, }
, [
, ]
, <
, >
, &
, -
, ::
, и пробел.
asciiSymbol — Символ модуля, в ASCII.
displayName Имя модуля, отображенного в модели в формате LaTeX.
definitionExpression — Определение модуля в терминах предопределенных модулей, таких как семь основных единиц СИ.
conversionFactor — Коэффициент преобразования между модулем и его определением.
conversionOffset — Перемещение преобразования между модулем и его определением.
physicalQuantity — Допустимые физические количества. См. таблицу 'Physical Quantities' в showunitslist
.
provenance — Дополнительный столбец. Список модульных происхождений, разделенных запятыми.
Следуйте этим инструкциям при разработке электронных таблиц:
Если входная электронная таблица содержит более затем один рабочий лист, необходимо назвать рабочие листы с префиксами unit
, physicalQuantity
, или provenance
.
Если существует несколько экземпляров префикса в рабочем листе, функция использует все рабочие листы, чтобы создать базу данных:
unit
— Создает модули
physicalQuantity
— Создает физические количества
provenance
— Создает происхождения
Опционально, можно задать физические количества в другом рабочем листе входной электронной таблицы. Рабочий лист, задающий физические количества, содержит эти столбцы в любом порядке:
имя Физическое имя количества, с помощью любых графических символов Unicode кроме @
, *
, /
, ^
, (,)
, +
, \
, "
, '
, {
, }
, [
, ]
, <
, >
, &
, -
, ::
, и пробел.
definitionExpression — Определение физического количества в терминах предопределенных физических количеств.
provenance — Дополнительный. Список физических происхождений количества, разделенных запятыми.
Опционально, можно также задать происхождения в другом рабочем листе входной электронной таблицы. Рабочий лист, задающий происхождения, содержит эти столбцы в любом порядке:
identifier — Идентификатор происхождения
заголовок Заголовок происхождения
subTitle — Подзаголовок происхождения
organization — Организация происхождения
fullName — Полное имя происхождения
urlList — Список ссылок URL происхождения
edition — Выпуск происхождения
год Год происхождения
Во-первых, создайте электронную таблицу Excel после инструкций в Пользовательском Модульном Формате электронной таблицы. Используйте модульные определения, один на строку, такие как:
Сохраните эту электронную таблицу в файле, таком как unitsDB.xlsx
. Можно затем создать базу данных и загрузить ее.
В этом примере показано, как создать пользовательскую модульную базу данных и затем загрузить ее.
Создайте базу данных с помощью электронной таблицы, включенной в этот пример.
createCustomDBFromExcel('unitsDB.xlsx')
Функция создает unitsDB.slunitdb.mldatx
в текущей папке.
Загрузите новую модульную базу данных в память.
rehashUnitDBs
Чтобы проверить, что новая база данных загрузилась, откройте slex_customunits
модель и применяет пользовательские модули на любой из выходных портов:
slex_customunits