CoDesign를 위한 Siemens NX 준비
Altium CoDesigner는 ECAD와 MCAD 설계 도메인 간에 인쇄 회로 기판 설계를 전송하기 위한 인터페이스입니다. CoDesigner 추가 기능이 MCAD 소프트웨어에 추가되면 CoDesigner를 통해 설계 변경 사항을 양방향으로 주고받을 수 있습니다. 설계 변경 사항은 ECAD와 MCAD 도메인 사이의 브리지 역할을 하는 Altium Workspace를 통해 전달됩니다.
► 사용 중인 MCAD software and CoDesigner
Siemens NX에서 CoDesigner 설치 및 구성
Siemens® NX™와 인터페이스하려면 Altium CoDesigner for Siemens NX Add-In을 설치해야 합니다.
MCAD 소프트웨어에서 CoDesigner에 액세스하려면 Add-In을 설치하고 활성화하세요.
Add-In 설치 방법:
-
설치 전에 Siemens NX를 종료합니다.
-
MCAD CoDesigner Siemens NX Add-In을 다운로드합니다(아래의 다운로드 세부 정보 참조).
-
MCAD CoDesigner 설치 프로그램을 실행합니다.
-
Siemens NX를 실행하고 아래와 같이 Altium CoDesigner 리본에서 Add-In이 설치되어 사용 가능한지 확인합니다.
-
CoDesigner Add-In은 Siemens NX에 CoDesigner 패널을 추가합니다. 모든 협업 작업은 이 패널을 통해 수행됩니다.
-
CoDesigner Add-In을 다른 위치에 설치하려면:
-
CoDesigner가 이미 설치되어 있다면
AltiumCoDesignerNX<BuildNumber>을 제거하세요. 이 작업이 완료되면C:\Program Files\Siemens\NX<BuildNumber>\ALTIUM_CODESIGNER폴더가 제거됩니다. -
명령줄 옵션
/DIR="x:\dirname"과 함께 CoDesigner 설치 프로그램을 실행합니다. Add-In의 위치는 Siemens 파일C:\Program Files\Siemens\NX<BuildNumber>\UGII\menus\ug_custom_dirs.dat에 등록됩니다.
-
CoDesigner 패널 표시
CoDesigner는 Siemens NX 패널을 통해 액세스합니다.
Siemens NX에서 위와 같이 CoDesigner 버튼을 클릭하여 Altium CoDesigner 패널을 활성화할 수 있습니다.
Siemens NX에서 Workspace에 연결
Siemens NX는 Workspace를 통해 Altium 설계 소프트웨어와 협업하며, 이를 위해서는 로그인해야 합니다. 로그인하지 않은 경우 Altium CoDesigner 탭에 아래와 같이 로그인 필드가 표시됩니다.
로그인 모드는 두 가지입니다. 하나는 Altium 365 Workspace에 로그인하는 방식이고, 다른 하나는 온프레미스 Enterprise Server의 Workspace에 로그인하는 방식입니다. 자세한 내용은 아래를 참조하세요.
Siemens NX용 Altium MCAD CoDesigner 라이선스
Siemens NX에서 Altium Workspace에 성공적으로 로그인하려면, 적절한 라이선스가 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 유형 | 라이선스 이름 | Siemens NX용 CoDesigner 라이선스 부여 방법 |
|---|---|---|
| Enterprise Altium 365(클라우드 Workspace) | Altium 365 MCAD Siemens NX Addon | Altium Enterprise Account Manager에 문의하세요. |
| 온프레미스 Enterprise Server Workspace | Enterprise Server MCAD Siemens NX Addon | 웹 브라우저에서 Enterprise Server Workspace에 로그인한 상태에서 Admin - Licenses을 선택하세요. 온프레미스 Enterprise License 설치에 대해 자세히 알아보세요. |
Siemens NX 라이선스가 Workspace에 추가되면, 아래 설명된 대로 Siemens NX의 Altium CoDesigner 패널을 통해 Altium MCAD CoDesigner에 Sign In할 수 있습니다.
Altium 365 Workspace에 연결
Altium 365 Workspace에 로그인합니다.
-
Altium CoDesigner 패널에서 Altium Account 옵션을 선택합니다.
-
Email에는 Altium Live에 로그인할 때 사용하는 이메일 주소를 입력하고, Altium Live Password를 입력합니다.
-
Remember Me 옵션을 활성화하면 세부 정보(비밀번호 포함)가 유지되며, Siemens NX가 시작될 때마다 Workspace(Altium 365 플랫폼을 통해)에 자동으로 연결됩니다.
-
Sign In 버튼을 클릭하여 연결합니다.
Altium Enterprise Server Workspace에 연결
온프레미스 Enterprise Server Workspace에 로그인합니다.
-
Altium CoDesigner 패널에서 Custom Server 옵션을 선택합니다.
-
처음 로그인할 때는 온프레미스 Enterprise Server Workspace에 연결할 Server address(URL)를 지정해야 합니다. 이 주소는 시스템 관리자에게서 제공받습니다.
-
User Name 및 Password를 입력하세요. 이 정보 역시 시스템 관리자가 제공합니다.
-
Remember Me 옵션을 활성화하면 세부 정보(비밀번호 포함)가 유지되며, Siemens NX가 시작될 때마다 Workspace에 자동으로 연결됩니다.
로그인하면 Altium CoDesigner를 통해 협업을 시작할 준비가 완료됩니다.
CoDesigner가 설치되었으며 사용할 준비가 되었습니다.
Siemens NX 협업 설정 구성
로그인한 후에는 CoDesigner 메뉴의 Settings 메뉴 항목(
)을 통해 열리는 Altium CoDesigner Settings 대화상자에서 CoDesigner 설정을 구성할 수 있습니다.
Altium CoDesigner Settings 대화상자를 사용하여 CoDesigner 옵션을 구성합니다.
-
Common folder for storing models that are coming from ECAD - 이 필드를 통해 기계 엔지니어는 ECAD에서 가져온 모델을 저장할 위치를 제어할 수 있습니다. 이 필드의 구성 방법은 Teamcenter 사용 여부에 따라 달라지며, 다양한 옵션에 대한 자세한 내용은 아래의 Model Storage section을 참조하세요.
-
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 - 더 작은 부품은 동기화 프로세스에서 제외할 수 있습니다. Pull 수행 시<Value><Units>보다 작은 부품을 제외하도록 이 옵션을 설정하십시오. 부품 높이는 ECAD에서 부품(footprint)의 속성으로 정의되며, footprint 위에 배치된 3D 모델의 높이가 아니라는 점에 유의하십시오. Siemens NX에서 작은 부품을 무시하도록 구성하는 방법에 대해 자세히 알아보세요. -
Units System - ECAD에서 Pull되는 보드에 사용할 단위입니다. 이 설정은 보드가 Push되었을 때 ECAD에서 사용된 단위를 재정의합니다.
-
Participate in the product improvement program - 이 옵션을 활성화하면 CoDesigner 사용에 관한 기술 정보를 Altium과 자동으로 공유합니다. 제품 개선 프로그램에 대해 자세히 알아보세요.
Teamcenter PLM 사용
Siemens Teamcenter PLM은 기계 엔지니어들을 하나로 연결하여, 전 세계적으로 부품과 설계를 공유할 수 있게 해줍니다. CoDesigner는 Siemens NX에서 PCB Assembly, PCB Part 및 Components와 관련된 작업을 수행할 때 Teamcenter PLM을 지원합니다. 아래와 같이 PCB 어셈블리는 Siemens NX에서 직접 Teamcenter 인터페이스를 통해 저장하고 열 수 있습니다.
모델 저장 위치
ECAD에서 Pull된 3D PCB 부품 모델을 CoDesigner가 저장하는 위치는 Teamcenter 사용 여부와 CoDesigner의 Common folder for storing models that are coming from ECAD 옵션이 어떻게 설정되어 있는지에 따라 달라집니다.
| Common Folder for Storing Models | Not using Teamcenter | Using Teamcenter |
|---|---|---|
| 값이 입력되지 않음 | 모델이 프로젝트 폴더에 저장됨 | 모델이 CoDesigner가 생성한 기본 Teamcenter 폴더( |
| 로컬 경로 및 폴더 입력됨 | 모델이 지정된 로컬 폴더에 저장됨 | 모델은 지정된 로컬 폴더에 저장되며 Teamcenter에는 등록되지 않습니다. 단, PCB Assembly와 PCB Part는 여전히 Teamcenter에 저장됩니다. # |
Teamcenter 경로 입력됨(:root_TC_folder:subfolder1:subfolder12:) |
해당 없음 | 모델은 지정된 Teamcenter 폴더에 저장됩니다. |
CoDesigner는 Siemens Teamcenter PLM을 지원합니다.
► Linking Native ECAD and MCAD Design Components에 대해 자세히 알아보세요.
Teamcenter 템플릿 사용
Siemens Teamcenter의 템플릿 지원은 새 part 또는 assembly item에 사용할 매개변수를 정의하는 유연한 방법을 제공하며, 다음 매개변수를 지원합니다:
-
Item Type -
Units -
TemplateName -
TemplatePresentationName -
TemplateFileName -
Additional template parameters
CoDesigner 3.7에서는 XML 구성 파일을 사용하여 part 또는 assembly 생성 중에 이러한 매개변수를 정의하는 기능이 도입되었습니다.
구성 XML 위치
구성 XML 파일은 NX 설치 폴더에서 배포되고 사용됩니다:
C:\Program Files\Siemens\<NxVersionNumber>\ALTIUM_CODESIGNER\template_parameters_mapping.xml
이 XML 파일은 지원되는 part 및 assembly에 대해 사용할 템플릿과 설정할 매개변수를 설명합니다.
구성 XML 파일
아래는 구성 XML의 예입니다. 파일에는 7개의 섹션이 있습니다:
<?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… (PAX파일 레코드의ObjectData에 지정된 클래스와 일치해야 함) -
TemplatePresentationName -
TemplateFileName- Teamcenter에 로드된 템플릿 아이템 리비전에 관련됩니다. 이것이 정의되지 않으면 다른 속성(Units포함)을 기준으로 찾은 첫 번째 일치 항목이 사용됩니다.
속성 값은 Teamcenter에서 템플릿을 식별할 수 있도록 PAX 파일에서 찾을 수 있는 유사한 속성 값에 매핑되어야 합니다. 또한 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- copper part subtype 이름으로 대체되며, CopperPart에만 사용해야 합니다. -
ComponentParam_Param2- Param2 컴포넌트 파라미터 값으로 대체되며, ComponentPart에서만 사용할 수 있습니다.
예를 들어, ProjectName 가 MyProject 이고 Area 프로젝트 파라미터가 PSU 이면 요소는 다음과 같습니다:
<Param Name="Description" Category="MyItem" Type="String" Value="{ProjectName}-{ProjectParam_Area}"/>
이 예에서는 문자열 값 MyProject-PSU 를 MyItem 카테고리의 Description 속성에 설정합니다.
MCAD에서 ECAD로 - Teamcenter에서 ECAD 풋프린트 참조하기
MCAD 모델과 ECAD 풋프린트의 연결은 Altium Workspace에서 MCAD 모델 속성을 ECAD 컴포넌트 파라미터에 매핑하여 정의됩니다. Teamcenter 모델에서 ECAD 컴포넌트 풋프린트로의 링크를 정의하는 메커니즘은 CoDesigner 3.7에서 개선되었습니다. 이제 Workspace의 MCAD model property used for mapping and recognition 필드에서 다음 구문을 사용하여 Teamcenter의 Category 와 Property 를 모두 정의할 수 있습니다:
<CategoryName>::<PropertyName>
연결할 Teamcenter 카테고리와 속성은 Workspace 설정에서 <CategoryName>::<PropertyName> 구문을 사용해 매핑됩니다.
ECAD에서 MCAD로 - Teamcenter에서 MCAD 모델 찾기
ECAD 컴포넌트 풋프린트와 MCAD 모델의 연결은 MCAD 모델을 포함하는 ECAD 컴포넌트 파라미터를 지정하여 정의됩니다. 이는 Altium Workspace의 MCAD CoDesigner 설정에서 구성합니다. MCAD로 가져오기(Pull) 중에 CoDesigner는 MCAD 데이터 관리 시스템에서 해당 이름의 MCAD 모델을 검색합니다.
Siemens NX에서 기본 ECAD-MCAD 컴포넌트 연결을 사용하는 경우, MCAD 컴포넌트 참조는 Teamcenter 경로를 포함하도록 ECAD 컴포넌트 파라미터에 정의되어야 하며, 파라미터 값 형식은 다음과 같습니다:
:root_TC_folder:subfolder1:subfolder12:model_name
Teamcenter에서 사용할 수 없는 모델 무시하기
보드에 있는 컴포넌트 중 Teamcenter에서 모델로 제공되지 않는 항목이 있는 상황을 더 잘 처리하기 위해, CoDesigner 3.9 업데이트에서는 MCAD로 Pull하는 동안 가져올 수 없는 컴포넌트를 무시하는 구성 설정이 추가되었습니다.
이 설정을 활성화하려면 다음 파일을 편집합니다:
\Program Files\Siemens\NXXXX\ALTIUM_CODESIGNER\template_parameters_mapping.xml.
ComponentPart 섹션에서 다음을 설정합니다:
IgnoreComponentsMissingInDMS 를 1(또는 yes 또는 true)로 설정합니다. 아래와 같습니다.
Teamcenter에서 사용할 수 없는 컴포넌트를 무시하도록 NX 파라미터 매핑 파일을 편집합니다.
다음 단계는?
이제 CoDesigner가 MCAD 소프트웨어에 설치되고 Workspace에 연결되었으므로, 다음 단계는 관련 Workspace 설정을 구성하는 것입니다.
► Workspace 설정 구성에 대해 자세히 알아보기
)
)
).