Проектирование системы

В этой части учебника мы рассмотрим типичный случай проектирования системы в рамках Requirements & Systems Portal. Этот процесс включает в себя создание цифровой модели и разбивку системы, расчет параметров производительности, исследование компромиссов и принятие проектных решений.

Настройка валидаторов

Благодаря валидам каждый новый создаваемый вами блок уже содержит валиды определенного типа с формулой и единицами измерения по умолчанию (например, масса, потребляемая мощность и т. д.). Нам нужно убедиться, что существуют правильные валиды.

  1. Щелкните значок в левом нижнем углу и выберите Settings в появившемся меню. На открывшейся странице выберите Valitypes запись в левой боковой панели, чтобы увидеть все существующие валитипы.

  2. Убедитесь, что валитипы Mass и PowerConsumption существуют. Если они не существуют, добавьте их, нажав на кнопку в правом нижнем углу страницы, и добавьте валитипы с этими именами.

  3. Единицы измерения для PowerConsumption могут быть кВт или Вт. Если единица измерения в кВт, дважды щелкните в ячейке и измените значение kW на W. Кроме того, в этом учебнике мы будем использовать свойство массы блоков в граммах; вы можете выбрать, какие единицы оставить - кг или г.

  4. Включите add by default свойство для valitypes Mass и PowerConsumption. Дважды щелкните в ячейке для одного из этих валитипов и выберите True из появившегося меню, затем сделайте то же самое для другого валитипа. Эти валитипы будут автоматически добавляться в каждый новый блок, который вы создадите позже в этом учебнике.

    Обратите внимание, что это свойство является пользовательской настройкой, т. е. оно не влияет на то, какие валитипы другие пользователи установили по умолчанию.

soc() в значениях валитипа означает "сумма дочерних" и гарантирует, что по умолчанию этот валитип суммирует валиты того же типа в разбивке системы.

Добавление систем в проект

Давайте начнем создавать ваш веер! Каждый продукт можно разбить на подсистемы, как дерево. Иерархическое дерево систем - одна из основных функций Requirements & Systems Portal.

В модуле проектирования системы вы можете создать и получить доступ к дереву системы, которое включает все системы и подсистемы, в том числе технические параметры (valis).

  1. Перейдите в модуль проектирования системы, щелкнув значок на панели навигации модуля слева.

  2. Чтобы создать новый блок, нажмите кнопку в правом верхнем углу. Введите Fan в Name поле Create new block в появившемся окне и нажмите .

  3. Пришло время разбить систему на подсистемы или части. Щелкните правой кнопкой мыши новый Fan блок в левой навигационной панели и выберите команду Add Block команду. Назовите новый блок Propeller и затем разверните Fan блок, чтобы увидеть новый подблок в дереве навигации.

  4. Аналогичным образом создайте следующие подблоки для Fan блока: Motor, Speed_Controller, и Structure.

    В Create new block можно нажать кнопку , чтобы создать несколько блоков, не выходя из окна.

    Вы можете перетаскивать блоки в дереве, чтобы изменить уровень их иерархии.

Изменение технических параметров (Valis)

На портале "Требования и системы Valis это технические параметры, которые содержат ваши инженерные значения. Валисы имеют такие свойства, как формулы, значения, история и многое другое. Итак, давайте добавим значения в ваши вали!

  1. Выберите Fan блок в панели навигации. Откроется страница Properties откроется вид блока, где вы увидите, что блок уже содержит два значения, Mass и PowerConsumption (потому что эти валиды были настроены на добавление по умолчанию в настройках valitype).

    Если вы хотите увидеть больше информации и атрибутов для ваших вали, вы можете щелкнуть на имени вали. Откроется страница с подробной информацией о вали, где вы также сможете отредактировать его формулу. В этом руководстве мы просто изменим значения в представлении списка.

  2. Теперь измените Mass и PowerConsumption в каждом подблоке блока Fan блока. Для этого выделите субблок, дважды щелкните соответствующую ячейку в Value столбце. Введите следующие значения:

    • Motor: Mass = 110g, PowerConsumption = 1W

    • Propeller: Mass = 30g, PowerConsumption = 0W (обязательно введите 0W вместо soc())

    • Speed_Controller: Mass = 15g, PowerConsumption = 0.1W

    • Structure: Mass = 80g, PowerConsumption = 0W (обязательно введите 0W вместо soc())

    • При вводе Value свойства необходимо указывать как числовое значение, так и его единицу, например, 110g.

    • В столбце Display Unit можно указать единицу, в которой будет представлено значение. Таким образом, если изначально ввести значение как 110g и установив Display Unit как kg, механизм вычислений преобразует и отобразит его как 0.11kg.

    • Для вычислений механизм вычислений использует единицы измерения, указанные в поле Value поле. Если требуется отобразить единицу в другом формате, например фунты (lbs), механизм вычислений преобразует отображаемую единицу соответствующим образом. Узнайте больше о списке единиц, используемых механизмом вычислений.

    • Обязательно используйте точки (.) в качестве десятичных разделителей для значений.

    Пример значений, добавляемых в Motor субблока показан ниже.

  3. Перейдите к блоку Fan и обратите внимание, что его общая сумма Mass была автоматически рассчитана до 235 г (или 0,235 кг), а общая сумма PowerConsumption была рассчитана до 1,1 Вт.

Добавление нового вали

В предыдущих шагах мы показали, как добавлять вали. Однако вали (свойства) не ограничиваются только массой и энергопотреблением. К блокам можно добавлять различные свойства. В Requirements & Systems Portal вы можете создать новый вали, который может быть числом с единицей измерения или без нее. Также это может быть матрица, текстовые вали (например, материал), датавали (например, дата покупки) и наборы данных (два измерения). Вы можете использовать вали в формулах с помощью символа $ в любом поле.

В следующих шагах мы добавим КПД гребного винта и передаваемую мощность.

  1. Перейдите к блоку Propeller блок.

  2. Нажмите кнопку в правом верхнем углу, чтобы открыть Create Property окно. В этом окне убедитесь, что открыта вкладка Vali открыта вкладка и введите Efficiency в Name поле и 0.85 в Formula and unit поле. Оставьте Display Unit поле пустым и нажмите .

  3. Аналогичным образом добавьте еще одно поле с именем power_delivered и добавьте формулу в виде $Motor.PowerConsumption*$Propeller.efficiency. При вводе $ символ в Formula and unit появится выпадающий список, из которого можно выбрать нужный. Оставьте поле Display Unit поле пустым (правильные единицы измерения, W, будут назначены автоматически на основе расчета) и нажмите .

    Вы также можете получить доступ к значению из другого проекта в формуле или анализе, набрав $ и выбрав show other projects из выпадающего списка.

    Значения Propeller блока должны выглядеть так, как показано ниже.

  4. Щелкните по названию power_delivered откроется подробная страница с дополнительной информацией и свойствами. Здесь вы можете увидеть формулу, свойства, информацию, подключенные копии, действия и получить доступ к дополнительным функциям, таким как история, анализ чувствительности и график связей.

Детализация дизайна и повторное использование блоков

После того как вы разработали базовый дизайн, можно создать более подробную модель вашего продукта. Если есть блоки, которые необходимо продублировать, можно воспользоваться функцией "связанные копии". Это обеспечит их синхронизацию - если вы внесете изменения в один связанный блок, все остальные также будут автоматически обновлены.

В нашем примере у нас есть три лопасти ротора, и все они одинаковые.

  1. Щелкните правой кнопкой мыши на Propeller Блок на панели навигации и выберите команду Add Block команду. Назовите новый блок Blade1.

  2. Щелкните правой кнопкой мыши на новом Blade1 блоке и выберите Copy & connect. Новый подключенный блок Blade2 появится на том же уровне.

  3. Аналогичным образом создайте связанный блок Blade3.

  4. Перейдите к любому из трех блоков и измените его Mass значение на 10g и PowerConsumption значение на 0W. Вы можете убедиться, что все подключенные блоки лезвий теперь имеют одинаковые значения Mass и PowerConsumption.

Можно отсоединять валики или целые блоки. Дополнительные сведения см. на странице Копии системных блоков.

Все вали с формулой soc() (Сумма детей), имеют соответствующие таблицу и график бюджета, которые можно просмотреть в информации о вали.

  1. Перейдите к Fan блок и щелкните Mass чтобы открыть подробную информацию о вали.

  2. Нажмите на Budget в верхней части, чтобы просмотреть разбивку общей массы вентилятора. Вы можете развернуть структуру, нажав на стрелки слева от названий блоков.

  3. Нажмите кнопку Breakdown Chart чтобы просмотреть разбивку общей массы вентилятора. Круговая диаграмма показывает распределение массы по подсистемам нижнего уровня.

Использование маржи

На ранней стадии разработки вы обычно не уверены в точном значении какого-либо свойства. Поэтому добавление маржи к значению может быть полезным. Requirements & Systems Portal распространяет эту неопределенность на все ваши расчеты (линейное распространение неопределенности).

Например, вы можете не знать конечного значения массы. В большинстве случаев в итоге получается масса, превышающая ожидаемую. Для таких случаев вы можете добавить запас прочности к вашему значению. Используя этот запас, портал Requirements & Systems Portal автоматически рассчитывает наихудший случай для вашего значения. Давайте сделаем это на примере массы пропеллера.

  1. Перейдите к блоку Propeller и включите видимость блоков Margin + и Margin - столбцов в таблице с помощью Columns справа.

  2. В Margin + столбец для Mass вали, введите 10 (что означает 10% наценки+).

  3. Щелкните по названию Mass вали, чтобы открыть его подробный вид. На сайте Worst Case значение будет показано как 33g | 30g из-за 10-процентной маржи+.

  4. На основе маржи, определенной на Propeller Block, Requirements & Systems Portal автоматически обновляет маржу и наихудшие случаи на более высоком уровне. Перейдите к Fan блок и откройте подробное представление его Mass вали. Как вы можете видеть, масса вентилятора теперь имеет общий запас +1.28% и наихудший случай 238g | 235g.

Добавление тегов для ваших индивидуальных нужд

Метки - это многоцелевой инструмент для ваших специфических потребностей команды. С их помощью вы можете отмечать валиды и блоки. Используйте их для обозначения:

  • Надежность значения (например, assumption/calculated/measured).

  • Действия для членов команды (например, review: Tom/approval: Christine).

  • Любая другая маркировка или группировка.

  1. Перейдите к Motor блок.

  2. Дважды щелкните ячейку в Tags столбца для Mass vali, введите measurement и нажмите Enter чтобы добавить тег.

  • Таблицу можно отфильтровать по определенным тегам. Наведите курсор на Tags на заголовок столбца, щелкните значок , а затем щелкните значок в появившемся всплывающем окне, чтобы получить доступ к параметрам фильтрации.

  • Цвет тега можно изменить в настройках ( » Settings » Tags).

Связывание блоков с требованиями

Теперь, когда у вас есть базовая структура системы, давайте установим связь между Fan системой и требованиями из нашей Fan_Specs спецификации. Это создает прямую связь между дизайном системы и требованиями.

  1. Перейдите в модуль требований, щелкнув значок на панели навигации модуля слева, и откройте Fan_Specs спецификацию.

  2. Установите флажок слева от Identifier чтобы выбрать все требования в спецификации.

  3. Дважды щелкните в ячейке Applicable Block столбца, выберите Fan из выпадающего списка и подтвердите массовое обновление.

    Javascript ID: RSP_FanTutorial_Requirements_AddApplicableBlock
  • Вы можете быстро перейти к связанной системе в модуле проектирования системы, наведя курсор на запись в столбце Applicable Block и нажав кнопку ().

  • Проверить требования, связанные с системой в Модуле проектирования системы, можно, нажав на элемент управления Requirements элемент управления над таблицей vali ().

  • При создании требования оно будет автоматически привязано к выбранной системе.

Дополнительные сведения о функции "Применимые блоки" см. на странице " Применимые блоки".

Создание бюджетных таблиц и круговых диаграмм

Теперь у нас есть предварительная проектная разбивка нашей системы, и мы хотели бы увидеть массовые бюджеты в нашем аналитическом документе (Project_Summary), созданном ранее. Давайте добавим новые блоки в нашу документацию.

  1. Перейдите в модуль Analyses, щелкнув значок на панели навигации модуля, и выберите Project_Summary.

  2. Нажмите кнопку Click to add new block в нижней части документа.

  3. В Add Block открывшемся окне разверните Table запись и выберите Budget.

  4. В документ будет добавлен новый блок. Нажмите кнопку Add data to this table чтобы открыть Table Block окно, в котором можно выбрать вали, для которых вы хотите увидеть разбивку. В поле vali выберите Fan.Mass.

  5. Нажмите в Table Block окне. В документ будет добавлена новая таблица. В этой таблице вы получите доступ к бюджету массы Valifan с полной разбивкой, маржой и наихудшими сценариями.

  6. Вы также можете создать графическое представление массового бюджета с помощью диаграммы. Нажмите кнопку Click to add new block в нижней части документа.

  7. В Add Block окне разверните Charts запись и выберите Budget.

  8. В документ будет добавлен новый блок. Нажмите кнопку Add data to this table элемент управления, чтобы открыть Table Block окно. В vali выберите Fan.Mass а затем нажмите . В документ будет добавлена новая диаграмма.

Определение режимов

Некоторые значения не являются статичными, а зависят от состояния продукта, который вы создаете. Именно для этого и созданы режимы: они отслеживают различные конфигурации и их взаимосвязь с вашим продуктом.

В этой части урока мы определим режимы работы вентилятора: различные скорости, режимы питания и состояния ON/OFF.

Добавление режимов

Двигатель может работать на трех разных скоростях, которые можно моделировать с помощью режимов.

  1. В модуле требований () откройте блок Motor блок.

  2. Перейдите на вкладку Modelists вкладку в верхней части. Моделисты служат для моделирования свойств, зависящих от режима, таких как потребляемая мощность, скорость вращения, тяга и т. д.

  3. Нажмите кнопку в правом верхнем углу. В Create Modelist открывшемся окне введите speed_settings в поле New Modelist name и 3 в # (Number of modes) поле.

  4. После нажатия кнопки в Create Modelist окне будет создан новый моделист. Щелкните стрелку слева от имени нового моделиста, чтобы развернуть его.

  5. Измените названия режимов по умолчанию a, b, и c на ZERO, LOW, и HIGH, соответственно.

  6. Щелкните на Properties в верхней части страницы, чтобы вернуться к валидам блока.

  7. Нажмите кнопку в правом верхнем углу, чтобы открыть Create Property окно. В этом окне:

    1. Выберите Matrix вкладку.

    2. Введите rotational_speeds в Name поле.

    3. Выберите speed_settings из Mode reference выпадающего поля.

    4. Введите rpm в Display Unit поле.

    Поскольку вы добавляете ссылку на режим, количество строк и столбцов будет автоматически взято и внесено из моделиста. Поэтому вам не нужно определять строки и столбцы в Create Property окне.

  8. Нажмите кнопку в Create Property и нажмите стрелку слева от имени нового свойства, чтобы развернуть его. Измените значения (которые в настоящее время 0) следующим образом:

    • ZERO = 0rpm

    • LOW = 2000rpm

    • HIGH = 5000rpm

  9. Создайте моделиста для Speed_Controller Блок с именем power_modes и с двумя режимами. Измените названия режимов со стандартных a и b на ON и OFF, соответственно.

  10. Создайте моделиста для Fan Блока с именем state и с тремя режимами. Измените имена режимов со стандартных a, b и, c на OFF, MIN, и MAX, соответственно.

Зависимость валис от режимов

Теперь, когда режимы системы определены, вы можете сделать вали зависимыми от них. Значение вали может быть не всегда одинаковым, а зависеть от определенного режима.

  1. Перейдите к свойствам Fan блока и нажмите на PowerConsumption имя vali, чтобы открыть его детальный вид.

  2. Нажмите кнопку , чтобы открыть Select Modelist окно. Выберите состояние из выпадающего списка и нажмите кнопку .

  3. Аналогичным образом сделайте PowerConsumption значение Motor блока зависимым от speed_settings режима и PowerConsumption вали Speed_Controller блока зависят от power_modes режима.

  4. Измените значения Motor энергопотребления блока следующим образом:

    • ZERO = 0W

    • LOW = 1W

    • HIGH = 4W

  5. Измените значения Speed_Controller потребляемая мощность блока следующим образом:

    • ON = 0.1W

    • OFF = 0W

Связь между режимами

Состояния системы могут зависеть друг от друга. Поэтому в Requirements & Systems Portal вы можете связать режимы, которые принадлежат друг другу.

В этой части руководства мы создадим связь между состояниями вентилятора и режимами двигателя и регулятора скорости.

  1. Перейдите в раздел моделирования Fan Блока и щелкните state имя моделиста, чтобы открыть панель подробностей.

  2. Щелкните значок в верхней части панели. В Select Modelist в раскрывающемся списке в нижней части панели выберите Speed_Controller.power_modes и нажмите кнопку , а затем выберите Motor.speed_settings и нажмите кнопку . Режимы будут добавлены, как показано ниже.

  3. Отредактируйте связи между режимами, как показано ниже, а затем нажмите кнопку , чтобы сохранить изменения.

  4. В Properties вид Fan блока можно увидеть, что Power Consumption значения изменились, как показано ниже.

Теперь, когда требования к продукту и сам продукт определены, давайте проверим систему.

AI-LocalizedAI-localized
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Доступность функциональных возможностей

Набор доступных функциональных возможностей зависит от вашего решения Altium – Altium Develop, редакция Altium Agile (Agile Teams или Agile Enterprise) или Altium Designer (на активной подписке).

Если вы не видите в своем ПО функцию, описанную здесь, свяжитесь с отделом продаж Altium, чтобы узнать больше.

Content