Подготовка 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 for Siemens NX
Чтобы успешно войти в ваш Altium Workspace из Siemens NX, в ваш Altium Workspace должна быть добавлена подходящая лицензия. Обратите внимание, что Siemens NX доступен только проектировщикам с Altium Enterprise Solution.
Если вы попытаетесь войти без доступной действующей лицензии, сообщение The usage of Altium CoDesigner for Siemens NX is not allowed by your license, будет отображено на панели Altium CoDesigner.
Способ добавления лицензии зависит от типа используемого Workspace:
| Тип Workspace | Название лицензии | Как лицензировать CoDesigner for 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 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.
Настройка параметров совместной работы Siemens NX
После входа параметры CoDesigner можно настроить в диалоговом окне Altium CoDesigner Settings, которое открывается через пункт меню Settings в меню CoDesigner
Используйте диалоговое окно Altium CoDesigner Settings для настройки параметров 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>
Связываемые Category и Property Teamcenter сопоставляются в настройках Workspace с использованием синтаксиса <CategoryName>::<PropertyName>.
ECAD в MCAD — поиск модели MCAD в Teamcenter
Связь посадочного места компонента ECAD с моделью MCAD определяется указанием параметра компонента ECAD, содержащего модель MCAD. Это настраивается в параметрах MCAD CoDesigner в вашем Altium Workspace. Во время pull в MCAD CoDesigner будет искать в системе управления данными MCAD модель MCAD с таким именем.
Если в Siemens NX используется собственная связь компонентов ECAD-MCAD, ссылка на компонент MCAD должна быть определена в параметре компонента ECAD таким образом, чтобы она включала путь Teamcenter, при этом значение параметра должно иметь вид:
:root_TC_folder:subfolder1:subfolder12:model_name
Игнорирование моделей, недоступных в Teamcenter
Для более эффективной обработки ситуации, когда на плате есть компоненты, недоступные в виде моделей в Teamcenter, обновление 3.9 для CoDesigner добавляет параметр конфигурации, позволяющий игнорировать компоненты, которые не могут быть получены во время операции 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
).
).
).

