配置ルールの種類
Placementカテゴリの設計ルールについて以下に説明します。

Placementカテゴリの設計ルール。
Room Definition
デフォルトルール: 不要
このルールは次の方法で使用できます:
-
基板の上面または下面に、コンポーネントの配置を許可する、または許可しない矩形または多角形の領域を指定する。
-
基板上に名前付き領域(エリア)を定義し、その名前付き領域を他の設計ルールのスコープ指定に使用する。この使い方では、room は単に基板上の領域を定義します。特定レイヤーに限定するなど別の制約を加えるには、その内容をルールの Query に含めてください。この方法を使用した Routing Width ルールの例が、以下に示す注記の画像にあります。
制約

Room Definition ルールのデフォルト制約
-
Room Locked - 設計内で room を現在位置に固定し、手動操作または Autoplacers による意図しない移動を防ぎます。room がロックされている状態で移動しようとすると、移動を続行するかどうかを確認する警告ダイアログが表示されます。このように手動で上書きして移動した後も、room のロック状態は維持されます。
-
Components Locked - room 内に配置され、その room に関連付けられているコンポーネントの位置を固定できます。このオプションが有効な状態で room 内のコンポーネントを移動しようとすると、そのコンポーネントの移動に合わせて room 全体とその中のすべてのコンポーネントも一緒に移動します。
-
Define button - room の領域と位置を定義できます。クリックするとメイン設計ウィンドウに戻り、カーソルが十字に変わって、実質的に room 配置モードに入ります。必要な形状の多角形 room を必要な位置に定義してください。room のコンポーネントメンバーシップはその後で定義する必要があり、設計内で配置済みコンポーネントを囲むように room 領域を定義しても自動では作成されません。
-
x1 and y1 - room の外接矩形の左下隅の位置座標を表示します。これらのフィールドは編集できません。PCB Rules and Constraints Editor dialog内から room を配置する場合は、Defineボタンを使用する必要があります。
-
x2 and y2 - room の外接矩形の右上隅の位置座標を表示します。これらのフィールドは編集できません。PCB Rules and Constraints Editorダイアログ内から room を配置する場合は、Defineボタンを使用する必要があります。
-
Layer - room を基板のどちら側に描画するかを定義します。room に含まれるオブジェクトは同じレイヤー上にある必要はなく、room に属するか属さないかの条件はルール Query によって決まります。
-
Confinement Mode - ルールのスコープ(Full Query)の対象となるコンポーネントを、room Inside内に保持するか、room Outside外に保持するかを指定します。
ルール適用
オンライン DRC およびバッチ DRC。
注記
-
1 つのコンポーネントは複数の Room Definition ルールのスコープ対象にできます。この場合、すべてのルールが順守されます。ルール競合は発生しません。
-
room はグラフィカルにのみ配置できます。room を特定位置に配置するには、適切な Vertical、Horizontal、または Point(Snap)Guide を配置し、Propertiesパネル(Boardモード)で Guides へのスナップを有効にしてください。GuidesおよびCursor-Snap Systemの設定について詳しく確認してください。
-
room の形状は、グラフィカルに、または room を選択した状態でPropertiesパネルから編集できます。room をクリックして選択し、角または辺の頂点をクリック&ドラッグすると、グラフィカルにサイズ変更できます。多角形 room を編集する場合、または矩形 room に対して多角形編集タイプの操作を行う場合は、Design » Rooms » Edit Polygonal Room Verticesコマンドを使用します(または room を右クリックして、Room Actionsサブメニューからコマンドを実行します)。標準的な多角形オブジェクト編集手法が使用され、Shift+Spacebarで頂点編集モード(Miter、Incurvate、Move)を切り替えます。現在のモードは Status bar または Heads up display で確認してください。
-
正確な位置に基づく複雑な room 形状が必要な場合は、一連のライン(およびアーク)を配置して外形を作成し、その後それを選択して Tools » Convert » Create Room from Selected Primitivesコマンドを実行することで room に変換できます。このコマンドで形状を正しく検出するには、隣接する track/arc セグメントの端点が一致している必要があります。以下の画像にカーソルを合わせると room を確認できます。
-
設計ルール内のDefine ボタンをクリックして room を定義するだけでなく、Design » Roomsサブメニューから利用できる各種コマンドを使用して room を作成/編集することもできます。Design » Roomsサブメニューのコマンドを使用して設計内に room を配置する場合、room は空の状態で配置して後からコンポーネントを関連付けることも、設計内のコンポーネントを囲むように配置して自動的に関連付けることもできます:
-
空の room を設計内に配置した場合、その room に配置する必要があるコンポーネントは、特定の component class(Design » Classes)を作成してグループ化する必要があります。Room Definitionルールが自動的に作成されて room に割り当てられ、初期スコープ(Full Query)は
Allになります。この Query を編集して、先に定義した特定の component class を対象にしてください。その後、Tools » Component Placement » Arrange Within Roomコマンドを実行してコンポーネントを room に移動できます。 -
1 つ以上のコンポーネントを囲むように room を配置し、それらが room の境界内に完全に収まるようにすると、コンポーネントは自動的に room に関連付けられます。room の定義ルールのスコープ(または query)は、すべてのコンポーネントが既存の component class に属しているかどうかによって決まります。属している場合は、その component class が使用されます。属していない場合は、それらのコンポーネントをメンバーとする新しい component class が作成されます。したがって、特定の component class を対象とするスコープを持つ複数の room を作成し、それらの class 間で 1 つ以上の共通コンポーネントメンバーを持たせることが可能です。
-
-
Create Room の selected components ベースのコマンド(Design » Roomsサブメニュー)を使用すると、選択したコンポーネントをメンバーとする矩形、直交形状、または非直交形状の room を自動生成できます。選択対象を含む component class が自動的に定義されます。続いて room が作成され、そのRoom Definitionルールは作成された component class を関連付けるよう定義されます。room は、各コンポーネントの外接矩形の範囲に基づいて、選択されたすべてのコンポーネントが収まるよう適切なサイズに設定されます。
-
コンポーネントが room に割り当てられると、room を移動したときにそれらも一緒に移動します。コンポーネントを移動せずに room だけを移動するには、関連付けられた Room Definition ルールを一時的に無効にしてください。
-
room は、コンポーネントを含める/除外するための設計ルールそのものとして使えるだけでなく、Clearance、Height、Routing Width、Solder Mask Expansion、Power Plane Connections など、他のルールのスコープ定義にも使用できます。この場合、room はルールではなくオブジェクトとして使用されるため、以下の画像に示すように、ルールを無効にするか、query(ルールスコープ)を
Falseに設定できます。room オブジェクトを他のルールのスコープ定義で使用する場合は、次の 2 つの query を使用できます:-
TouchesRoom(RoomName) - room の内部に完全または部分的に含まれるオブジェクトを見つけるために使用します。
-
WithinRoom(RoomName) - room の内部に完全に含まれるオブジェクトを見つけるために使用します。
Room は、上記のようにその Name を参照することで、他のルールの Query として使用できます。
room 内では、配線幅、プレーン接続スタイル、およびソルダーマスク拡張の値が、room 外の値とは異なることに注意してください。
-
Component Clearance
デフォルトルール: 必須
このルールは、コンポーネント同士を配置できる最小距離を指定します。コンポーネントクリアランスには、コンポーネントフットプリントの一部として含まれる 3D モデル間のクリアランスも含まれます。3D モデルが存在しない場合、または Check clearance by component boundary ルール制約オプションが有効な場合は、代わりにコンポーネントの選択領域が使用されます。コンポーネントをクリックすると、コンポーネントの選択領域は白色でハイライト表示されます。
コンポーネント選択領域のデフォルト動作は、by graphic選択モードと呼ばれます。このモードでは、コンポーネント選択領域は Courtyard(Layer Name ではなく Layer Type)上に存在する combined ジオメトリ + シルクスクリーン + 3D Body オブジェクト + 銅箔レイヤー(文字列は除外)によって定義される領域です。
必要に応じて、コンポーネント選択領域は、デフォルトの by graphic モードから by layer モードに切り替えることができます。by layer モードでは、形状情報を含む first layer が使用され、レイヤーは次の順序で検索されます。Courtyard(Layer Type)、3D Body、Silkscreen + Copper Layers、Copper Layers。 このモードは、PCB.ComponentSelection Advanced Setting の値を設定して選択します。component selection area および利用可能な選択モードの詳細を参照してください。Mechanical Layers and the Courtyard Layer Type の詳細も参照してください。
コンポーネントクリアランスは、関連付けられた 3D モデルを通じてコンポーネントの形状および輪郭を定義するために、高精度な 3D メッシュ処理を用いて計算されます。これらは埋め込みの真の 3D モデル、または押し出し 2D 形状です。3D body を使用すると、特に高さ方向や複雑なコンポーネント形状に関するクリアランスチェックにおいて、最高の精度が得られます。
Constraints

Component Clearance ルールのデフォルト制約
-
Vertical Clearance Mode – 垂直方向クリアランスを指定するための 2 つのモードが利用できます。
-
Infinite – 無限大を表す値を使用してクリアランスチェックが実行されます。これは、上側または下側に配置された任意のコンポーネントが違反になることを意味します。使用例としては、アクセス可能な状態を維持しなければならない調整機構を備えた基板が挙げられます。このコンポーネントにこのルールを適用すると、そのコンポーネントの上方または下方の領域に突き出す任意のコンポーネントに対して違反が発生します。
-
Specified – コンポーネントの 3D body またはコンポーネント フットプリント プロパティで定義された正確な形状を使用してクリアランスチェックが実行されます。3D body を使用する場合、違反していない限り、あるコンポーネントが別のコンポーネントの上に張り出していても許容できます。このモードを有効にすると、次の制約が利用可能になります。
-
Minimum Vertical Clearance – 設計内に配置されたコンポーネント間の、垂直方向における最小許容クリアランス値。
-
-
-
Minimum Horizontal Clearance – 設計内に配置されたコンポーネント間の、水平方向平面における最小許容クリアランス値。 0 以上の値は、その値でチェックされます。
-
Show actual violation distances – このオプションを有効にすると、コンポーネント間で違反が最も大きい点同士を結ぶ線が表示されます。線の距離も表示され、違反を解消するためにオブジェクトをどれだけ移動する必要があるかを計算する際に役立ちます。
-
Do not check components without 3D body
-
このオプションが有効な場合 – 3D Body を含まないすべてのコンポーネントは、このルールによるクリアランスチェックの対象外になります。
-
このオプションが無効な場合 – 3D body を持たないコンポーネントについては、コンポーネントの selection bounding box が X-Y 平面での領域を定義し、コンポーネントの Height 属性が垂直(Z)方向のクリアランスチェックに使用されます。
-
-
Check clearance by component boundary
-
このオプションが有効な場合 – 実際の 3D モデルの代わりに、コンポーネント境界がクリアランスチェックに使用されます。コンポーネント境界は component selection bounding box によって定義されます。デフォルトの selection bounding box は
by graphic modeであり、これは Courtyard Layer Type、Silkscreen、3D Body オブジェクト、および Copper レイヤー上の形状を組み合わせて外形を定義することを意味します(文字列は除外されます)。設計要件で component courtyard の使用が規定されている場合は、このオプションを使用してください。 なお、courtyard レイヤー上で定義された形状が、端点頂点が一致(正確に接触)する track/arc から作成された閉じた形状である場合、その track の中心線が bounding box の定義に使用されます。チェックされるのは track の中心線であるため、この機能により、Minimum Horizontal Clearance = zero(
)のときに courtyard 外形同士を重ねることができます。
-
このオプションが無効な場合 – 3D モデルがクリアランスチェックに使用されます。コンポーネントの does not に 3D Body オブジェクトが含まれていない場合は、component selection bounding box が使用されます。コンポーネントに 3D Body が含まれている場合は、他のどのレイヤー上のオブジェクトも考慮せず、含まれている 3D モデルの正確な形状がクリアランスチェックに使用されます。正確な形状検出は、インポートされた 3D モデル、押し出し形状、円筒形および球形の 3D Body オブジェクトを含む、すべての 3D 形状に適用されます。
-
Rule Application
Online DRC および Batch DRC。
Notes
-
押し出し(単純)3D body は、多角形形状のオブジェクトであり、ライブラリ コンポーネントまたは PCB ドキュメント内の任意の有効な mechanical layer に配置できます。コンポーネント フットプリントでは、3D body を使用して、X、Y、Z 軸におけるコンポーネントの物理サイズと形状を具体的に定義できます。
-
複数の 3D body プリミティブを使用して、任意に複雑な形状を定義できます。これは特に高さ方向で有用であり、コンポーネントの領域ごとに高さを変えることができます。
-
Component Clearance 設計ルールの適用対象となるコンポーネントで、Courtyard Layer Type 上の閉じた形状によってコンポーネント境界が定義されており、かつルールの Minimum Horizontal Clearance 値が
0に設定されている場合、コンポーネントの courtyard 外形が正確に重なっていても、このルールの違反は発生しません(
)。
-
Component Clearance ルールは、3D 空間内における bond wire とその他の(bond wire ではない)オブジェクトとの間のクリアランス違反をチェックします(
)。ワイヤ ボンディングの詳細については、Wire Bonding ページを参照してください。
Component Orientations
デフォルト ルール: 不要
このルールは現在 DRC ツールでは適用されません。
Permitted Layers
デフォルト ルール: 不要
このルールは、コンポーネントを配置できるレイヤーを指定します。
Constraints

Permitted Layers ルールのデフォルト制約
Permitted Layers - コンポーネント配置時に使用を許可するレイヤー。次のレイヤー オプションが利用できます。
- Top Layer - トップ レイヤーへのコンポーネント配置を許可します。
- Bottom Layer - ボトム レイヤーへのコンポーネント配置を許可します。
Rule Application
Batch DRC。
Note
このルールは、Batch DRC の実行時にテストとして機能し、ルールのスコープのクエリ式で対象となるコンポーネントが、許可されたレイヤーにのみ配置されていることを確認します。回路図上でコンポーネントに指定され、PCB 上のフットプリントに引き継がれたパラメーターは、まさにこの目的のために非常に効果的に利用できます。たとえば、ウェーブはんだ付けに対応していないコンポーネントがボトムレイヤーに配置されていないことを確認するために、このタイプのルールを定義できます。たとえば、コンポーネントパラメーター SupportsWaveSolder がコンポーネントに対して定義され、PCB 内のフットプリントのパラメーターとして引き継がれている場合、ルールのスコープは次のようになります:
CompParameterValue('SupportsWaveSolder') <> 'Yes'
また、許可されるのは Top Layer 制約のみであり、Bottom Layer 制約は無効になります。
無視するネット
デフォルトルール: 不要
このルールは現在、DRC ツールでは適用されません。
高さ
デフォルトルール: 必須
このルールは、設計内に配置されたコンポーネントの高さ制限を指定します。
制約

高さルールのデフォルト制約
- Minimum - 許容されるコンポーネント最小高さの値。
- Preferred - 推奨されるコンポーネント高さの値。
- Maximum - 許容されるコンポーネント最大高さの値。
ルールの適用
Preferred 設定は、基板を 3D 表示するときに適用されます。Minimum および Maximum 設定は、Online DRC と Batch DRC によって適用されます。
注記
-
コンポーネントの高さは、次のように定義されます:
-
コンポーネントに 3D ボディが含まれていない場合は、コンポーネントの Height プロパティが使用されます。
-
コンポーネントに 3D ボディが含まれている場合は、その 3D ボディオブジェクト全体の高さが使用されます。
-
-
高さルールのスコープ定義では、コンポーネントクラスを作成して使用でき、ルールで指定された高さ制約条件に違反するメンバーコンポーネントを特定できます。




