Подготовка Siemens NX к CoDesign
Altium CoDesigner — это интерфейс для передачи проектов печатных плат между областями проектирования ECAD и MCAD. После добавления модуля CoDesigner в ваше ПО MCAD, CoDesigner может передавать изменения проекта в обоих направлениях. Изменения проекта передаются через Altium Workspace, который выступает мостом между областями ECAD и MCAD.
► Проверьте совместимость версий между вашим ПО MCAD и CoDesigner
Установка и настройка CoDesigner в Siemens NX
Для взаимодействия с Siemens® NX™ и из него необходимо установить Altium CoDesigner for Siemens NX Add-In.
Установите и включите Add-In, чтобы получить доступ к CoDesigner в вашем ПО MCAD.
Чтобы установить Add-In:
-
Перед установкой закройте Siemens NX.
-
Скачайте Add-In MCAD CoDesigner Siemens NX (см. подробности загрузки ниже).
-
Запустите установщик MCAD CoDesigner.
-
Запустите Siemens NX и убедитесь, что Add-In установлен и доступен на ленте Altium CoDesigner, как показано ниже.
-
Add-In CoDesigner добавляет панель CoDesigner в Siemens NX. Все действия по совместной работе выполняются через эту панель.
-
Чтобы установить Add-In CoDesigner в другое расположение:
-
Если CoDesigner уже установлен, удалите его через
AltiumCoDesignerNX<BuildNumber>. После этого папкаC:\Program Files\Siemens\NX<BuildNumber>\ALTIUM_CODESIGNERбудет удалена. -
Запустите установщик CoDesigner с параметром командной строки
/DIR="x:\dirname"Расположение Add-In регистрируется в файле SiemensC:\Program Files\Siemens\NX<BuildNumber>\UGII\menus\ug_custom_dirs.dat
-
Отображение панели CoDesigner
Доступ к CoDesigner осуществляется через панель Siemens NX.
В Siemens NX панель Altium CoDesigner можно включить, нажав кнопку CoDesigner, как показано выше.
Подключение к вашему Workspace из Siemens NX
Siemens NX взаимодействует с вашим ПО Altium для проектирования через Workspace, в который необходимо войти. Если вход не выполнен, вкладка Altium CoDesigner будет содержать поля для входа, как показано ниже.
Доступны два режима входа: один для входа в Altium 365 Workspace, другой — для входа в Workspace на локальном сервере On-Prem Enterprise Server. Подробнее об этом ниже.
Лицензирование Altium MCAD CoDesigner для Siemens NX
Чтобы успешно войти в ваш Altium Workspace из Siemens NX, в ваш Altium Workspace должна быть добавлена подходящая лицензия. Обратите внимание, что Siemens NX доступен только разработчикам с Altium Enterprise Solution.
Если вы попытаетесь войти без доступной действующей лицензии, на панели Altium CoDesigner будет отображено сообщение The usage of Altium CoDesigner for Siemens NX is not allowed by your license, .
Способ добавления лицензии зависит от типа используемого Workspace:
| Тип Workspace | Название лицензии | Как лицензировать CoDesigner для Siemens NX |
|---|---|---|
| Enterprise Altium 365 (облачный Workspace) | Altium 365 MCAD Siemens NX Addon | Свяжитесь с вашим менеджером корпоративной учётной записи Altium. |
| Workspace локального Enterprise Server | Enterprise Server MCAD Siemens NX Addon | Выберите Admin - Licenses, когда вы вошли в свой Workspace Enterprise Server в веб-браузере. Подробнее об установке локальной корпоративной лицензии. |
После добавления лицензии Siemens NX в ваш Workspace вы сможете Sign In в Altium MCAD CoDesigner через панель Altium CoDesigner в Siemens NX, как описано ниже.
Подключение к Altium 365 Workspace
Вход в Altium 365 Workspace.
-
Выберите параметр Altium Account на панели Altium CoDesigner.
-
Введите адрес электронной почты, который вы используете для входа в Altium Live, в качестве Email, а также ваш Password Altium Live.
-
Включите параметр Remember Me, чтобы сохранить данные (включая пароль) и автоматически подключаться к вашему Workspace (через платформу Altium 365) при каждом запуске Siemens NX.
-
Нажмите кнопку Sign In, чтобы подключиться.
Подключение к Workspace Altium Enterprise Server
Вход в Workspace локального On-Prem Enterprise Server.
-
Выберите параметр Custom Server на панели Altium CoDesigner.
-
При первом входе необходимо указать Server address (URL) для подключения к вашему Workspace локального On-Prem Enterprise Server. Этот адрес предоставляет системный администратор.
-
Введите ваши User Name и Password; их также предоставляет системный администратор.
-
Включите параметр Remember Me, чтобы сохранить данные (включая пароль) и автоматически подключаться к вашему Workspace при каждом запуске Siemens NX.
После входа вы готовы начать совместную работу через Altium CoDesigner.
CoDesigner установлен и готов к использованию.
Настройка параметров совместной работы Siemens NX
После входа настройки CoDesigner можно задать в диалоговом окне Altium CoDesigner Settings, которое открывается через пункт меню Settings в меню CoDesigner (
).
Используйте диалоговое окно настроек Altium CoDesigner для настройки параметров CoDesigner.
-
Common folder for storing models that are coming from ECAD — это поле позволяет инженеру-механику управлять тем, где будут храниться модели, полученные из ECAD. Способ настройки этого поля зависит от того, используется Teamcenter или нет; подробную информацию о различных вариантах см. в разделе Хранение моделей ниже.
-
Build 3D geometry for Copper — верхний и нижний медные слои всегда отображаются как декали на поверхностях детали платы. Если этот параметр включён, CoDesigner также создаст выдавленные элементы для представления всех медных слоёв, а также металлизированных сквозных контактных площадок. Обратите внимание, что включение этого параметра может создать большой объём данных, что существенно влияет на производительность.
-
Build Vias — включите этот параметр, чтобы также включать цилиндры переходных отверстий. Обратите внимание, что включение этого параметра может создать большой объём данных, что существенно влияет на производительность.
-
Smart Sketch Update — если параметр включён, во время Pull MCAD CoDesigner перерисовывает только те элементы эскиза, которые были изменены в ECAD, сохраняя размеры и ограничения, связанные с неизменёнными элементами, без изменений. Отключите этот параметр, если он приводит к нежелательным результатам. Подробнее о поддержке Smart Sketch Change.
-
Build Route Tool Path – Маршрут фрезеровки (Route Tool Path) — это контур, определенный для вырезания платы из панели, на которой она изготавливается. Отключите этот параметр, если маршрут не требуется в MCAD. Подробнее о ECAD Route Tool Path.
-
Ignore components smaller than
<Value><Units>in height - более мелкие компоненты можно исключить из процесса синхронизации. Настройте этот параметр, чтобы исключать компоненты меньше<Value><Units>при выполнении Pull. Обратите внимание, что высота компонента определяется в ECAD как свойство компонента (посадочного места), а не как высота 3D-модели, размещенной на посадочном месте. Подробнее о настройке Siemens NX для игнорирования мелких компонентов. -
Units System - единицы измерения, которые будут использоваться для платы, получаемой из ECAD через Pull. Этот параметр переопределяет единицы измерения, использовавшиеся в ECAD при выполнении Push платы.
-
Participate in the product improvement program - включите этот параметр, чтобы автоматически делиться с Altium технической информацией об использовании вами CoDesigner. Подробнее о программе улучшения продукта.
Работа с Teamcenter PLM
Siemens Teamcenter PLM объединяет инженеров-механиков, позволяя им обмениваться своими деталями и проектами по всему миру. CoDesigner поддерживает Teamcenter PLM при выполнении операций с PCB Assembly, PCB Part и компонентами в Siemens NX. PCB-сборки можно сохранять и открывать из интерфейса Teamcenter напрямую в Siemens NX, как показано ниже.
Хранение моделей
Место, где CoDesigner хранит 3D-модели компонентов PCB, полученные из ECAD, зависит от того, используется ли Teamcenter, и от того, как настроен параметр CoDesigner Common folder for storing models that are coming from ECAD.
| Common Folder for Storing Models | Not using Teamcenter | Using Teamcenter |
|---|---|---|
| Значение не введено | Модели хранятся в папке проекта | Модели хранятся в папке Teamcenter по умолчанию, созданной CoDesigner ( |
| Указаны локальный путь и папка | Модели хранятся в указанной локальной папке | Модели хранятся в указанной локальной папке, они не регистрируются в Teamcenter. Обратите внимание, что PCB Assembly и PCB Part по-прежнему сохраняются в Teamcenter. # |
Указан путь Teamcenter(:root_TC_folder:subfolder1:subfolder12:) |
Неприменимо | Модели хранятся в указанной папке Teamcenter. |
CoDesigner поддерживает Siemens Teamcenter PLM.
► Подробнее о связывании собственных компонентов проектирования ECAD и MCAD.
Работа с шаблонами Teamcenter
Поддержка шаблонов в Siemens Teamcenter предоставляет гибкий способ определения параметров, которые будут использоваться в новом элементе детали или сборки, с поддержкой следующих параметров:
-
Item Type -
Units -
TemplateName -
TemplatePresentationName -
TemplateFileName -
Additional template parameters
В CoDesigner 3.7 была добавлена поддержка определения этих параметров при создании детали или сборки с использованием XML-файла конфигурации.
Расположение конфигурационного XML
Конфигурационный XML-файл развертывается и используется из папки установки NX:
C:\Program Files\Siemens\<NxVersionNumber>\ALTIUM_CODESIGNER\template_parameters_mapping.xml
XML-файл описывает шаблоны, которые должны использоваться, и параметры, которые должны задаваться для поддерживаемых деталей и сборок.
Конфигурационный XML-файл
Ниже приведен пример конфигурационного XML. Обратите внимание, что файл содержит семь разделов:
<?xml version="1.0" encoding="UTF-8"?>
<Mapping>
<BoardAssembly ItemType="Item" TemplateName="AssemblyTemplate" TemplatePresentationName="Assembly">
<!--<TemplateFileName>@DB/assembly-mm-template/A</TemplateFileName>-->
<AttributesTemplate>
<!--
<Param Name="DB_PART_NAME" Category="Item" Type="String" Value="{ProjectName}"/>
<Param Name="Param2" Category="Item" Type="String" Value="{ProjectParam_Param1}"/>
<Param Name="Param3" Category="Item" Type="String" Value="{VariantParam_Param1}"/>
<Param Name="Param4" Category="Item" Type="String" Value="{VariantName}"/>
<Param Name="Param5" Category="Item" Type="Number" Value="0.23"/>
<Param Name="Param6" Category="Item" Type="Integer" Value="12"/>
<Param Name="Param7" Category="Item" Type="Boolean" Value="False"/>
<Param Name="Param8" Category="Item" Type="Date" Value="08/18/2018 07:22:16 PM"/>
<Param Name="Param9" Category="Item" Type="Date" Value="08/18/2018 07:22:16"/>
<Param Name="Param10" Category="Item" Type="Date" Value="2019-01-23 07:22:00"/>
-->
</AttributesTemplate>
</BoardAssembly>
<BoardPart ItemType="Item" TemplateName="ModelTemplate" TemplatePresentationName="Model">
<!--<TemplateFileName>@DB/model-plain-1-mm-template/A</TemplateFileName>-->
<AttributesTemplate>
<!--
<Param Name="DB_PART_NAME" Category="Item" Type="String" Value="{ProjectName}"/>
<Param Name="Param2" Category="Item" Type="String" Value="{ProjectParam_Param1}"/>
<Param Name="Param3" Category="Item" Type="String" Value="{VariantParam_Param1}"/>
<Param Name="Param4" Category="Item" Type="Number" Value="0.2"/>
<Param Name="Param5" Category="Item" Type="Integer" Value="123"/>
<Param Name="Param6" Category="Item" Type="Boolean" Value="True"/>
<Param Name="Param7" Category="Item" Type="Date" Value="2019-01-23 07:22:00"/>
-->
</AttributesTemplate>
</BoardPart>
<CopperPart ItemType="Item" TemplateName="ModelTemplate" TemplatePresentationName="Model">
<!--<TemplateFileName>@DB/model-plain-1-mm-template/A</TemplateFileName>-->
<AttributesTemplate>
<!--
<Param Name="DB_PART_NAME" Category="Item" Type="String" Value="{ProjectName}"/>
<Param Name="Param2" Category="Item" Type="String" Value="{ProjectParam_Param1}"/>
<Param Name="Param3" Category="Item" Type="String" Value="{VariantParam_Param1}"/>
<Param Name="Param4" Category="Item" Type="String" Value="{SubType}"/>
-->
</AttributesTemplate>
</CopperPart>
<ComponentPart ItemType="Item" TemplateName="ModelTemplate" TemplatePresentationName="Model">
<!--<TemplateFileName>@DB/model-plain-1-mm-template/A</TemplateFileName>-->
<AttributesTemplate>
<!--
<Param Name="Param1" Category="Item" Value="{ComponentParam_Param1}"/>
<Param Name="Param2" Category="Item" Value="{ComponentParam_Param2}"/>
-->
</AttributesTemplate>
</ComponentPart>
<FlexPart ItemType="Item" TemplateName="NXSheetMetalTemplate" TemplatePresentationName="Sheet Metal">
<!--<TemplateFileName>@DB/sheet-metal-mm-template/A</TemplateFileName>-->
<AttributesTemplate>
<!--
<Param Name="DB_PART_NAME" Category="Item" Type="String" Value="{ProjectName}"/>
<Param Name="Param2" Category="Item" Type="String" Value="{ProjectParam_Param1}"/>
<Param Name="Param3" Category="Item" Type="String" Value="{VariantParam_Param1}"/>
<Param Name="Param4" Category="Item" Type="Number" Value="0.2"/>
<Param Name="Param5" Category="Item" Type="Integer" Value="123"/>
<Param Name="Param6" Category="Item" Type="Boolean" Value="True"/>
<Param Name="Param7" Category="Item" Type="Date" Value="2019-01-23 07:22:00"/>
-->
</AttributesTemplate>
</FlexPart>
<RigidAssembly ItemType="Item" TemplateName="AssemblyTemplate" TemplatePresentationName="Assembly">
<!--<TemplateFileName>@DB/assembly-mm-template/A</TemplateFileName>-->
<AttributesTemplate>
<!--
<Param Name="DB_PART_NAME" Category="Item" Type="String" Value="{ProjectName}"/>
<Param Name="Param2" Category="Item" Type="String" Value="{ProjectParam_Param1}"/>
<Param Name="Param3" Category="Item" Type="String" Value="{VariantParam_Param1}"/>
<Param Name="Param4" Category="Item" Type="Number" Value="0.2"/>
<Param Name="Param5" Category="Item" Type="Integer" Value="123"/>
<Param Name="Param6" Category="Item" Type="Boolean" Value="True"/>
<Param Name="Param7" Category="Item" Type="Date" Value="2019-01-23 07:22:00"/>
-->
</AttributesTemplate>
</RigidAssembly>
<RigidPart ItemType="Item" TemplateName="ModelTemplate" TemplatePresentationName="Model">
<!--<TemplateFileName>@DB/model-plain-1-mm-template/A</TemplateFileName>-->
<AttributesTemplate>
<!--
<Param Name="DB_PART_NAME" Category="Item" Type="String" Value="{ProjectName}"/>
<Param Name="Param2" Category="Item" Type="String" Value="{ProjectParam_Param1}"/>
<Param Name="Param3" Category="Item" Type="String" Value="{VariantParam_Param1}"/>
<Param Name="Param4" Category="Item" Type="Number" Value="0.2"/>
<Param Name="Param5" Category="Item" Type="Integer" Value="123"/>
<Param Name="Param6" Category="Item" Type="Boolean" Value="True"/>
<Param Name="Param7" Category="Item" Type="Date" Value="2019-01-23 07:22:00"/>
-->
</AttributesTemplate>
</RigidPart>
</Mapping>
XML содержит 7 разделов: BoardAssembly, BoardPart, CopperPart , ComponentPart, FlexPart, RigidAssembly и RigidPart.
Каждый раздел определяет параметры создания для соответствующих типов моделей проекта.
Необходимо определить следующие атрибуты:
-
ItemType- Teamcenter Item Type -
TemplateName- Model, Assembly, Other… (должны соответствовать классу, указанному вObjectDataзаписи файлаPAX) -
TemplatePresentationName -
TemplateFileName- относится к редакции элемента шаблона, загруженной в Teamcenter. Если этот параметр не определен, будет использовано первое найденное совпадение на основе других атрибутов (включаяUnits).
Значения атрибутов должны сопоставляться со значениями аналогичных атрибутов, найденных в вашем файле PAX, чтобы шаблон можно было идентифицировать в Teamcenter. Кроме того, вы можете указать атрибуты, которые нужно задать при создании детали, с помощью раздела AttributesTemplate.
Используйте следующий пример синтаксиса в качестве руководства:
<AttributesTemplate>
<Param Name="DB_PART_NAME" Category="Item" Type="String" Value="{ProjectName}"/>
<Param Name="Param2" Category="Item" Type="String" Value="{ProjectParam_Param1}"/>
<Param Name="Param3" Category="Item" Type="String" Value="{VariantParam_Param1}"/>
……
……
</AttributesTemplate>
Каждый элемент Param соответствует набору атрибутов. Свойства каждого элемента, которые необходимо определить, включают:
-
Name- имя параметра, которое нужно задать -
Category- категория атрибута (часто это имя ItemType для атрибута) -
Type- тип данных атрибута, допустимые значения: String, Number, Integer, Boolean, Date -
Value- шаблон значения, используемый для генерации значения атрибута. Это может быть константа или выражение со ссылкой на метаданные контекста.
ШаблонValueсостоит из выражений, заключенных в{}.
Например, выражение{ProjectName}будет заменено фактическим именем проекта. Если шаблон содержит это выражение, оно будет применяться в контексте разных проектов, а итоговое значение будет сформировано назначенной ему заменой.
В шаблоне значения можно комбинировать несколько выражений и константных значений. Возможные выражения:
-
ProjectName- заменяется именем проекта -
ProjectParam_Param1- заменяется значением Param1 проекта (Param1 — это имя параметра проекта из ECAD) -
VariantParam_Param1- заменяется значением Param1 текущего варианта проекта (Param1 — это имя параметра проекта из ECAD) -
SubType- заменяется именем подтипа медной части, следует использовать только для CopperPart. -
ComponentParam_Param2- заменяется значением параметров компонента Param2, которые можно использовать только для ComponentPart.
Например, если ProjectName равно MyProject, а параметр проекта Area равен PSU, тогда элемент будет следующим:
<Param Name="Description" Category="MyItem" Type="String" Value="{ProjectName}-{ProjectParam_Area}"/>
В этом примере строковое значение MyProject-PSU будет установлено для атрибута Description категории MyItem.
MCAD в ECAD — ссылка на посадочное место ECAD из Teamcenter
Связывание модели MCAD с посадочным местом ECAD определяется сопоставлением свойства модели MCAD с параметром компонента ECAD в вашем Altium Workspace. Механизм, используемый для определения связи от модели Teamcenter к посадочному месту компонента ECAD, был улучшен в CoDesigner 3.7. Теперь он также поддерживает определение как Teamcenter Category , так и Property в поле MCAD model property used for mapping and recognition в Workspace с использованием следующего синтаксиса:
<CategoryName>::<PropertyName>
Связываемые категория и свойство Teamcenter сопоставляются в настройках Workspace с использованием синтаксиса <CategoryName>::<PropertyName>.
ECAD в MCAD — поиск модели MCAD в Teamcenter
Связывание посадочного места компонента ECAD с моделью MCAD определяется указанием параметра компонента ECAD, который содержит модель MCAD. Это настраивается в параметрах MCAD CoDesigner в вашем Altium Workspace. Во время операции Pull into MCAD CoDesigner будет искать в системе управления данными MCAD модель MCAD с таким именем.
Если в Siemens NX используется собственная связь компонентов ECAD-to-MCAD, ссылка на компонент MCAD должна быть определена в параметре компонента ECAD так, чтобы она включала путь Teamcenter, при этом значение параметра должно иметь вид:
:root_TC_folder:subfolder1:subfolder12:model_name
Игнорирование моделей, недоступных в Teamcenter
Чтобы лучше обрабатывать ситуацию, когда на плате есть компоненты, модели которых недоступны в Teamcenter, в обновлении CoDesigner 3.9 добавлен параметр конфигурации для игнорирования компонентов, которые не могут быть получены во время Pull into MCAD.
Чтобы включить этот параметр, отредактируйте файл:
\Program Files\Siemens\NXXXX\ALTIUM_CODESIGNER\template_parameters_mapping.xml.
В разделе ComponentPart установите:
IgnoreComponentsMissingInDMS в 1 (или yes, или true), как показано ниже.
Отредактируйте файл сопоставления параметров NX, чтобы игнорировать компоненты, недоступные в Teamcenter.
Что дальше?
Теперь, когда CoDesigner установлен в вашем MCAD-приложении и подключен к вашему Workspace, следующим шагом будет настройка соответствующих параметров Workspace.
► Подробнее о настройке параметров Workspace
).
).
).