PCB上のルーム定義デザインルールの使用方法
Created: 10月 03, 2021 | Updated: 6月 20, 2024
| Applies to version: 21
This document is no longer available beyond version 21.0. Information can now be found here: Room Definition Rule for version 25
ルールカテゴリ:配置
ルール分類:単項
概要
このルールは以下の方法で使用できます:
- 基板の上側または下側に、部品が許可されているか許可されていないかを指定する矩形または多角形の領域を指定する。
- 基板上の名前付き領域(エリア)を定義し、その名前付き領域を他の設計ルールの範囲として使用する。この方法で使用される場合、部屋は単に基板のエリアを定義します。特定の層など、他の方法で制限するには、そのルールのクエリにそれを含めます。このアプローチを使用するルーティング幅ルールの例が、下記の注記にある画像で示されています。
制約
- Room Locked - デザイン内の現在位置でルームをロックし、手動または自動配置ツールによる偶発的な移動を防ぎます。ロックされた状態のルームを移動しようとすると、移動を進めるかどうかを尋ねる警告ダイアログが表示されます。このような手動でのオーバーライド移動後も、ルームのロック状態は維持されます。
- Components Locked - ルーム内およびルームに関連付けられたコンポーネントの位置をロックすることができます。このオプションが有効な状態でルーム内のコンポーネントを移動しようとすると、ルームとその内部のすべてのコンポーネントが移動します。
- Define button - ルームのエリアと位置を定義することを可能にします。クリック後、メインデザインウィンドウに戻り、カーソルが十字線に変わり、基本的にルーム配置モードに入ります。必要に応じて、必要な場所に多角形のルームを定義します。ルームのコンポーネントメンバーシップは、デザイン内の配置されたコンポーネントの周りにルームエリアが定義された場合でも、自動的には作成されません。後で定義する必要があります。
- x1 and y1 - ルームの境界矩形の左下隅の位置の座標を表示します。これらのフィールドは編集不可です。PCB Rules and Constraints Editorダイアログ内からルームを配置する場合は、定義ボタンを使用する必要があります。
- x2 and y2 - ルームの境界矩形の右上隅の位置の座標を表示します。これらのフィールドは編集不可です。PCBルールと制約エディタダイアログ内からルームを配置する場合は、定義ボタンを使用する必要があります。
- Layer - ルームが描かれるボードの側面を定義します。ルームが含むオブジェクトは同じレイヤー上にある必要はなく、ルーム内外の条件はルールクエリによって確立されます。
- Confinement Mode - ルールのスコープ(フルクエリ)によって対象とされるコンポーネントがルーム内部に保持されるべきか、またはルーム外部に保持されるべきかを指定します。
重複ルールの競合がどのように解決されるか
すべてのルールが遵守されます。
ルールの適用
オンラインDRCとバッチDRC。
注記
- 部屋はグラフィカルにのみ配置できます。特定の場所に部屋を配置するには、適切な垂直、水平、またはポイント(スナップ)ガイドを配置し、プロパティパネル(ボードモード)でガイドへのスナップを有効にします。ガイドとPCBグリッドシステムの設定についてもっと学びましょう。
- 部屋の形状はグラフィカルに編集することも、部屋が選択されているときにプロパティパネルで編集することもできます。部屋を選択するには、部屋をクリックし、次に角またはエッジの頂点をクリックしてドラッグしてグラフィカルにサイズを変更します。多角形の部屋を編集する場合、または長方形の部屋に多角形タイプの編集を行う場合は、Design » Rooms » Edit Polygonal Room Verticesコマンドを使用します(または部屋を右クリックしてRoom Actionsサブメニューからコマンドを実行します)。標準の多角形オブジェクト編集技術が使用され、Shift+Spacebarで頂点編集モード(マイター、インカーブ、移動)を切り替えます。現在のモードを確認するには、ステータスバーまたはヘッズアップディスプレイを確認してください。
-
正確な位置に基づいた複雑な部屋の形状が必要な場合、一連の線(およびアーク)を配置してアウトラインとして形状を作成し、その後、このアウトラインを選択してTools » Convert » Create Room from Selected Primitivesコマンドを実行することで部屋に変換できます。このコマンドが形状を正しく検出するためには、隣接するトラック/アークセグメントの端点が一致している必要があります。下の画像にカーソルを合わせると、部屋が表示されます。
-
設計ルールのDefineボタンをクリックして部屋を定義するだけでなく、Design » Roomsサブメニューから利用可能なさまざまなコマンドを使用して部屋を作成/編集することもできます。設計にDesign » Roomsサブメニューからのコマンドを使用して部屋を配置する場合、部屋は空の状態で配置され、後でコンポーネントが関連付けられるか、または設計内のコンポーネントの周りに配置され、自動的にそれらを部屋に関連付けることができます:
-
設計に空の部屋が配置された場合、部屋に配置する必要があるコンポーネントは、特定のコンポーネントクラスを作成することによってグループ化されるべきです(Design » Classes)。Room Definitionルールが自動的に作成され、部屋に割り当てられ、初期スコープ(フルクエリ)は
All
になります。このクエリを編集して、以前に定義された特定のコンポーネントクラスをターゲットにします。その後、Tools » Component Placement » Arrange Within Room commandを実行して、コンポーネントを部屋に移動できます。 - 一つ以上のコンポーネントを囲むように部屋を配置すると、それらは完全にその境界内にあるため、自動的に部屋に関連付けられます。部屋の定義ルールのスコープ(またはクエリ)は、すべてのコンポーネントが既存のコンポーネントクラスの一部であるかどうかによって異なります。そうである場合、このコンポーネントクラスが使用されます。そうでない場合、新しいコンポーネントクラスが作成され、これらのコンポーネントがそのメンバーとなります。したがって、特定のコンポーネントクラスをターゲットにした複数の部屋を持ち、それらのクラス間で一つまたは複数の共通コンポーネントメンバーを持つことが可能です。
-
設計に空の部屋が配置された場合、部屋に配置する必要があるコンポーネントは、特定のコンポーネントクラスを作成することによってグループ化されるべきです(Design » Classes)。Room Definitionルールが自動的に作成され、部屋に割り当てられ、初期スコープ(フルクエリ)は
- 選択したコンポーネントに基づいて部屋を自動的に生成するCreate Room from selected components-based commands(Design » Roomsサブメニュー)を使用します。選択に含まれるコンポーネントを含むコンポーネントクラスが自動的に定義されます。その後、部屋が作成され、作成されたコンポーネントクラスを関連付けるように定義されたRoom Definitionルールがあります。部屋は、選択されたコンポーネントの境界矩形の限界によって定義されるように、すべてのコンポーネントを収めるのに適したサイズになります。
- コンポーネントが部屋に割り当てられると、部屋が移動するときにコンポーネントも移動します。コンポーネントを移動せずに部屋を移動するには、関連するRoom Definitionルールを一時的に無効にします。
-
部屋は、コンポーネントを含むまたは除外するための独自の設計ルールであるだけでなく、クリアランス、高さ、ルーティング幅、はんだマスクの拡張、電源プレーン接続など、他のルールのスコープを定義するためにも使用できます。ルームはルールではなくオブジェクトとして使用されるため、次の図に示すように、ルールを無効にするか、クエリ(ルールスコープ)を
False
に設定できます。次の 2 つのクエリは、別のルールのスコープ定義でルーム オブジェクトを使用する場合に使用できます。- TouchesRoom(RoomName) - 部屋の全体または一部にあるオブジェクトを検索するために使用します。
- WithinRoom(RoomName) - 部屋の中にあるオブジェクトを検索するために使用します。