배치 규칙 유형
Placement 카테고리의 설계 규칙은 아래에 설명되어 있습니다.

설계 규칙의 Placement 카테고리입니다.
Room Definition
기본 규칙: 필요하지 않음
이 규칙은 다음과 같은 방식으로 사용할 수 있습니다:
- 보드의 상단 또는 하단 면에 직사각형 또는 다각형 영역을 지정하여, 해당 영역에 부품을 배치할 수 있게 하거나(허용) 배치하지 못하게(금지) 할 수 있습니다.
- 보드에 이름이 지정된 영역(Area)을 정의하고, 그 이름이 지정된 영역을 다른 설계 규칙의 스코프(적용 범위)를 지정하는 데 사용할 수 있습니다. 이 방식으로 사용할 때 room은 단지 보드의 한 영역을 정의할 뿐입니다. 특정 레이어로 제한하는 등 다른 방식으로 제한하려면, 해당 내용을 규칙의 Query에 포함시키십시오. 아래에 표시된 note의 이미지에는 이 접근 방식을 사용하는 Routing Width 규칙 예가 있습니다.
Constraints

Room Definition 규칙의 기본 제약
-
Room Locked - 설계 내에서 room을 현재 위치에 고정하여, 수동 또는 Autoplacers에 의해 실수로 이동되는 것을 방지할 수 있습니다. room이 잠긴 상태에서 이동을 시도하면, 이동을 계속할지 묻는 경고 대화상자가 표시됩니다. 이러한 수동-오버라이드 이동 이후에도 room의 잠금 상태는 유지됩니다.
-
Components Locked - room 내부에 배치되어 room에 연관(associated)된 부품들의 위치를 고정할 수 있습니다. 이 옵션이 활성화된 상태에서 room 안의 부품을 이동하려고 하면, 부품을 이동하는 동안 room 전체와 그 안의 모든 부품도 함께 이동합니다.
-
Define button - room의 면적과 위치를 정의할 수 있습니다. 클릭 후 메인 설계 창으로 돌아가며, 커서는 십자선으로 바뀌고 사실상 room 배치 모드로 들어갑니다. 필요한 형태와 위치로 다각형 room을 정의하십시오. room의 부품 멤버십은 이후에 정의해야 하며, 설계에서 이미 배치된 부품을 둘러싸도록 room 영역을 정의하더라도 자동으로 생성되지 않습니다.
-
x1 and y1 - room 경계 사각형(bounding rectangle)의 좌하단 모서리 위치 좌표를 표시합니다. 이 필드는 편집할 수 없습니다. PCB Rules and Constraints Editor dialog에서 room을 배치하는 경우 Define 버튼을 사용해야 합니다.
-
x2 and y2 - room 경계 사각형의 우상단 모서리 위치 좌표를 표시합니다. 이 필드는 편집할 수 없습니다. PCB Rules and Constraints Editor dialog에서 room을 배치하는 경우 Define 버튼을 사용해야 합니다.
-
Layer - room이 보드의 어느 면에 그려지는지 정의합니다. room이 포함하는 객체는 동일한 레이어에 있을 필요가 없으며, room에 속하는지/속하지 않는지의 조건은 규칙 Query로 설정됩니다.
-
Confinement Mode - 규칙의 스코프(Full Query)가 대상으로 하는 부품을 room Inside 안에 유지할지, room Outside 밖에 유지할지를 지정합니다.
Rule Application
Online DRC 및 Batch DRC.
Notes
- 하나의 부품은 여러 Room Definition 규칙의 스코프에 포함될 수 있습니다. 이 경우 모든 규칙이 준수됩니다. 규칙 간 충돌은 발생할 수 없습니다.
- room은 그래픽 방식으로만 배치할 수 있습니다. room을 특정 위치에 배치하려면 적절한 Vertical, Horizontal 또는 Point(Snap) Guide를 배치하고, Properties panel( Board mode)에서 Guides에 대한 스냅을 활성화하십시오. Guides 및 Cursor-Snap System 구성에 대해 더 알아보십시오.
- room의 형상은 그래픽으로 편집하거나, room을 선택했을 때 Properties panel에서 편집할 수 있습니다. room을 클릭해 선택한 다음, 모서리 또는 변의 정점을 클릭하여 드래그하면 그래픽으로 크기를 조정할 수 있습니다. 다각형 room을 편집하거나 직사각형 room에 다각형 유형의 편집을 수행하려면 Design » Rooms » Edit Polygonal Room Vertices command를 사용하십시오(또는 room을 우클릭하고 Room Actions sub-menu에서 해당 명령을 실행). Standard polygonal object editing techniques가 사용되며, 여기에는 정점 편집 모드(Miter, Incurvate, Move)를 순환하는 Shift+Spacebar도 포함됩니다. 현재 모드를 확인하려면 Status bar 또는 Heads up display를 확인하십시오.
-
정확한 위치를 기반으로 한 복잡한 room 형상이 필요하다면, 일련의 선(및 호)을 배치하여 외곽선을 만든 다음, 이 외곽선을 선택하고 Tools » Convert » Create Room from Selected Primitives command를 실행하여 room으로 변환할 수 있습니다. 이 명령이 형상을 올바르게 감지하려면 인접한 track/arc 세그먼트의 끝점이 일치해야 합니다. 아래 이미지 위에 커서를 올리면 room을 확인할 수 있습니다.
-
설계 규칙에서 Define button을 클릭하여 room을 정의하는 것 외에도, Design » Rooms sub-menu에서 제공되는 다양한 명령을 사용해 room을 생성/편집할 수 있습니다. Design » Rooms sub-menu의 명령으로 설계에 room을 배치할 때, room을 비어 있는 상태로 배치한 뒤 나중에 부품을 연관시킬 수도 있고, 설계의 부품을 둘러싸도록 배치하여 자동으로 room에 연관시킬 수도 있습니다:
-
비어 있는 room을 설계에 배치한 경우, room에 배치되어야 하는 부품들은 특정 component class(Design » Classes)를 생성하여 함께 그룹화해야 합니다. Room Definition rule이 자동으로 생성되어 room에 할당되며, 초기 스코프(Full Query)는
All로 설정됩니다. 이 Query를 편집하여 앞서 정의한 특정 component class를 대상으로 지정하십시오. 그런 다음 Tools » Component Placement » Arrange Within Room command를 실행하여 부품을 room으로 이동할 수 있습니다. - 하나 이상의 부품을 room으로 둘러싸서 해당 부품들이 경계 안에 완전히 들어오도록 배치하면, 그 부품들은 자동으로 room에 연관됩니다. room 정의 규칙의 스코프(또는 query)는 모든 부품이 기존 component class에 속해 있는지 여부에 따라 달라집니다. 속해 있다면 해당 component class가 사용됩니다. 그렇지 않다면, 이 부품들을 멤버로 하는 새 component class가 생성됩니다. 따라서 각각 특정 component class를 대상으로 하는 스코프를 가진 여러 room을 만들 수 있으며, 그 클래스들 사이에 하나 이상의 공통 부품 멤버가 존재할 수도 있습니다.
-
비어 있는 room을 설계에 배치한 경우, room에 배치되어야 하는 부품들은 특정 component class(Design » Classes)를 생성하여 함께 그룹화해야 합니다. Room Definition rule이 자동으로 생성되어 room에 할당되며, 초기 스코프(Full Query)는
- 선택된 부품을 멤버로 하는 직사각형, 직교(Orthogonal) 또는 비직교(Non-Orthogonal) 형상의 room을 자동 생성하려면, Design » Rooms sub-menu의 from selected components 기반 명령에서 Create Room를 사용하십시오. 선택 항목을 포함하는 component class가 자동으로 정의됩니다. 이어서 room이 생성되고, 그 Room Definition rule은 생성된 component class를 연관하도록 정의됩니다. room은 선택된 모든 부품이 들어가도록, 각 부품 경계 사각형의 한계에 따라 적절한 크기로 설정됩니다.
- 부품이 room에 할당되면 room을 이동할 때 함께 이동합니다. 부품을 이동하지 않고 room만 이동하려면, 연관된 Room Definition 규칙을 일시적으로 비활성화하십시오.
-
room은 부품을 포함/제외하기 위한 독립적인 설계 규칙일 뿐 아니라, Clearance, Height, Routing Width, Solder Mask Expansion, Power Plane Connections 등 다른 규칙의 스코프를 정의하는 데도 사용할 수 있습니다. room을 규칙이 아니라 객체로 사용할 것이므로, 규칙을 비활성화하거나, 아래 이미지에 표시된 것처럼 query(규칙 스코프)를
False로 설정할 수 있습니다. room 객체를 다른 규칙의 스코프 정의에 사용할 때는 다음 두 Query를 사용할 수 있습니다:- TouchesRoom(RoomName) - room 내부에 완전히 또는 부분적으로 포함된 객체를 찾는 데 사용합니다.
- WithinRoom(RoomName) - room 내부에 완전히 포함된 객체를 찾는 데 사용합니다.
위에 표시된 것처럼, Room은 Name으로 참조하여 다른 규칙의 Query로 사용할 수 있습니다.
room 내부에서는 라우팅 폭, 플레인 연결 스타일, 솔더 마스크 확장 값이 room 외부의 값과 다르다는 점에 유의하십시오.
Component Clearance
기본 규칙: 필요함
이 규칙은 부품들이 서로로부터 배치될 수 있는 최소 거리를 지정합니다. Component clearance에는 부품 풋프린트의 일부로 포함된 3D 모델 간의 간격도 포함됩니다. 3D 모델이 없거나 Check clearance by component boundary 규칙 제약 옵션이 활성화된 경우에는, 대신 부품의 선택 영역(selection area)이 사용됩니다. 부품을 클릭하면 부품 선택 영역이 흰색으로 하이라이트됩니다.
부품 선택 영역의 기본 동작은 by graphic selection mode라고 합니다. 이 모드에서 부품 선택 영역은 Courtyard(레이어 이름이 아니라 레이어 타입) + Silkscreen + 3D Body 객체 + Copper 레이어(문자열은 제외)에 존재하는 combined geometries로 정의되는 영역입니다.
필요한 경우, 부품 선택 영역을 기본 by graphic mode에서 by layer mode로 전환할 수 있습니다. by layer mode에서는 geometries를 포함하는 first layer 이 사용되며, 레이어는 다음 순서로 검색됩니다: Courtyard(레이어 타입); 3D Body; Silkscreen + Copper Layers; Copper Layers. 이 모드는 PCB.ComponentSelection Advanced Setting 값을 설정하여 선택합니다. component selection area 와 사용 가능한 selection mode에 대해 더 알아보십시오. Mechanical Layers and the Courtyard Layer Type에 대해서도 더 알아보십시오.
컴포넌트 클리어런스는 연관된 3D 모델을 통해 컴포넌트의 형상과 윤곽을 정의하기 위해 정확한 3D 메시(3D meshing)를 사용하여 계산됩니다. 이는 임베디드된 실제 3D 모델일 수도 있고, 2D 형상을 돌출(extrude)한 것일 수도 있습니다. 클리어런스 검사의 정확도 측면에서(특히 수직 방향 및 복잡한 컴포넌트 형상 맥락에서) 3D 바디(3D body)를 사용하는 것이 가장 정확합니다.
Constraints

Component Clearance 규칙의 기본 제약 조건
-
Vertical Clearance Mode – 수직 클리어런스를 지정하는 두 가지 모드를 사용할 수 있습니다:
-
Infinite – 무한대를 나타내는 값으로 클리어런스 검사를 수행합니다. 즉, 위나 아래에 배치된 어떤 컴포넌트든 위반으로 간주됩니다. 사용 예로, 접근 가능해야 하는 조정 메커니즘이 있는 보드를 들 수 있습니다. 해당 컴포넌트에 이 규칙을 적용하면, 컴포넌트 위/아래 영역으로 돌출되는 모든 컴포넌트에 대해 위반이 발생합니다.
-
Specified – 컴포넌트 3D 바디 또는 컴포넌트 풋프린트 속성으로 정의된 정확한 형상을 사용하여 클리어런스 검사를 수행합니다. 3D 바디를 사용할 경우, 위반이 아닌 한 한 컴포넌트가 다른 컴포넌트 위로 일부 오버행(overhang)되는 것을 허용할 수 있습니다. 이 모드를 활성화하면 다음 제약 조건을 사용할 수 있습니다:
-
Minimum Vertical Clearance – 설계에서 배치된 컴포넌트 간 수직 방향에서 허용되는 최소 클리어런스 값입니다.
-
-
-
Minimum Horizontal Clearance – 설계에서 배치된 컴포넌트 간 수평(X-Y) 평면에서 허용되는 최소 클리어런스 값입니다. 0 이상 값은 해당 값으로 검사됩니다.
-
Show actual violation distances – 컴포넌트 간 위반이 가장 큰 지점들 사이에 선을 표시하려면 이 옵션을 활성화합니다. 선의 길이가 표시되며, 위반을 해소하기 위해 객체를 얼마나 이동해야 하는지 거리 계산에 유용할 수 있습니다.
-
Do not check components without 3D body
-
해당 옵션이 활성화되면 – 3D Body를 포함하지 않는 모든 컴포넌트는 이 규칙에 의한 클리어런스 검사 대상에서 제외됩니다.
-
해당 옵션이 비활성화되면 – 3D 바디가 없는 컴포넌트의 경우, 컴포넌트의 selection bounding box가 X-Y 평면에서의 영역을 정의하고, 컴포넌트의 Height attribute가 수직(Z) 방향 클리어런스 검사에 사용됩니다.
-
-
Check clearance by component boundary
-
이 옵션이 활성화되면 – 클리어런스 검사에 실제 3D 모델을 사용하는 대신 컴포넌트 경계(component boundary)를 사용합니다. 컴포넌트 경계는 component selection bounding box로 정의됩니다. 기본 selection bounding box는
by graphic mode이며, Courtyard Layer Type의 도형, 실크스크린, 3D Body 객체, 구리(Copper) 레이어의 도형을 결합하여 외곽(envelope)을 정의합니다(문자열은 제외). 설계 요구사항에서 컴포넌트 코트야드(courtyard) 사용을 규정하는 경우 이 옵션을 사용하십시오. 또한 코트야드 레이어에 정의된 형상이 트랙/아크로 만든 폐곡선이며 끝 정점이 서로 일치(정확히 접촉)하는 경우, 해당 트랙의 중심선(centerline)이 bounding box를 정의하는 데 사용됩니다. 검사 대상이 트랙 중심선이므로, 이 기능은 Minimum Horizontal Clearance = 0일 때 코트야드 외곽선이 서로 겹치도록 허용합니다. -
이 옵션이 비활성화되면 – 3D 모델이 클리어런스 검사에 사용됩니다. 컴포넌트 does not에 3D Body 객체가 포함되어 있지 않으면 component selection bounding box 가 사용됩니다. 컴포넌트에 3D Body가 포함되어 있으면, 다른 레이어의 객체는 고려하지 않고 포함된 3D 모델의 정확한 형상이 클리어런스 검사에 사용됩니다. 정확한 형상 감지는 가져온(imported) 3D 모델뿐 아니라, 돌출형/원통형/구형 3D Body 객체를 포함한 모든 3D 형상에 적용됩니다.
-
Rule Application
온라인 DRC 및 배치 DRC.
Notes
-
돌출(단순) 3D 바디는 다각형 형태의 객체로, 활성화된 어떤 기계(Mechanical) 레이어에도 라이브러리 컴포넌트 또는 PCB 문서에 배치할 수 있습니다. 컴포넌트 풋프린트의 경우, 3D 바디를 사용하여 X, Y, Z 축에서 컴포넌트의 물리적 크기와 형상을 구체적으로 정의할 수 있습니다.
-
여러 개의 3D 바디 프리미티브를 사용하여 임의의 복잡한 형상을 정의할 수 있습니다. 이는 특히 수직 방향에서 유용한데, 컴포넌트의 서로 다른 영역에서 높이를 다르게 설정할 수 있기 때문입니다.
-
Component Clearance 설계 규칙의 범위에 포함된 컴포넌트가 Courtyard Layer Type의 폐곡선으로 컴포넌트 경계가 정의되어 있고, 규칙의 Minimum Horizontal Clearance 값이
0로 설정되어 있다면, 컴포넌트 코트야드 외곽선이 정확히 겹치는 경우 이 규칙 위반이 발생하지 않습니다.
Component Orientations
기본 규칙: 필요 없음
이 규칙은 현재 DRC 도구에서 적용되지 않습니다.
Permitted Layers
기본 규칙: 필요 없음
이 규칙은 컴포넌트를 배치할 수 있는 레이어를 지정합니다.
Constraints

Permitted Layers 규칙의 기본 제약 조건
Permitted Layers - 컴포넌트 배치 시 사용이 허용되는 레이어입니다. 다음 레이어 옵션을 사용할 수 있습니다:
- Top Layer - 탑(Top) 레이어에 컴포넌트 배치를 허용합니다.
- Bottom Layer - 바텀(Bottom) 레이어에 컴포넌트 배치를 허용합니다.
Rule Application
배치 DRC.
Note
이 규칙은 Batch DRC를 수행할 때 테스트로 동작하여, 규칙 범위의 쿼리 표현식으로 지정된 컴포넌트가 허용된 레이어에만 배치되도록 보장합니다. 회로도에서 컴포넌트에 지정한 파라미터가 PCB의 풋프린트로 함께 전달된 경우, 이 목적에 매우 효과적으로 활용할 수 있습니다. 예를 들어 웨이브 솔더링을 지원하지 않는 컴포넌트가 바텀 레이어에 배치되지 않도록 확인하려면, 이러한 유형의 규칙을 정의할 수 있습니다. 컴포넌트 파라미터 SupportsWaveSolder가 컴포넌트에 대해 정의되어 있고 PCB에서 풋프린트의 파라미터로 전달되었다고 가정하면, 규칙 범위는 다음과 같을 수 있습니다:
CompParameterValue('SupportsWaveSolder') <> 'Yes'
그리고 Top Layer 제약만 허용되며, Bottom Layer 제약은 비활성화되어야 합니다.
무시할 넷
기본 규칙: 필요 없음
이 규칙은 현재 DRC 도구에서 적용(관찰)되지 않습니다.
높이
기본 규칙: 필요
이 규칙은 설계 내에 배치되는 컴포넌트의 높이 제한을 지정합니다.
제약

높이(Height) 규칙의 기본 제약
- Minimum - 허용되는 최소 컴포넌트 높이 값.
- Preferred - 선호(권장) 컴포넌트 높이 값.
- Maximum - 허용되는 최대 컴포넌트 높이 값.
규칙 적용
Preferred 설정은 보드를 3D로 표시할 때 준수됩니다. Minimum 및 Maximum 설정은 Online DRC와 Batch DRC에서 준수됩니다.
참고
-
컴포넌트의 높이는 다음과 같이 정의됩니다:
- 컴포넌트에 3D 바디가 포함되어 있지 않으면, 컴포넌트의 Height 속성이 사용됩니다.
- 컴포넌트에 3D 바디가 포함되어 있으면, 해당 3D 바디 객체의 전체 높이가 사용됩니다.
-
높이 규칙의 범위 정의에서 사용할 컴포넌트 클래스를 생성할 수 있으며, 이를 통해 규칙에 지정된 높이 제약 기준을 위반하는 멤버 컴포넌트를 표시(플래그)할 수 있습니다.


)


)