設計ルールの定義と管理
PCB Rules and Constraints Editor ダイアログは、メインメニューから Design » Rules コマンドを選択して開きます。
Design メニューに Rules コマンドがありませんか? PCB Rules and Constraints Editor ダイアログが使用可能かどうかを確認してください。詳細は learn more を参照してください。
PCB Rules and Constraints Editor ダイアログには 2 つのセクションがあります。
-
左側のツリーには、さまざまなルールカテゴリが一覧表示されます。カテゴリを展開すると、使用可能な個々のルールタイプが表示されます。ルールタイプを展開すると、そのタイプで現在定義されているすべてのルールが表示されます。
使用可能なルールタイプとその制約の詳細については、PCB Design Rule Types ページおよびそのサブページを参照してください。
-
ダイアログ右側には、ツリーで現在選択されている項目に応じた情報が表示されます。選択したルールタイプまたはカテゴリについて定義済みルールの概要、システム全体のすべての定義済みルール、または実際のルールが選択されている場合はそのルールの制約が表示されます。
-
ルートフォルダーをクリックすると、すべてのカテゴリにまたがるすべての設計ルールタイプについて定義されている個別ルールの一覧概要が、ダイアログのメイン編集領域に表示されます。
-
カテゴリフォルダーをクリックすると、そのカテゴリに関連付けられたすべての設計ルールタイプについて定義されている個別ルールの一覧概要が表示されます。
-
ルールタイプフォルダーをクリックすると、そのタイプについて定義されているすべての個別ルールの一覧概要が表示されます。
概要一覧では、各ルールについて次の項目が表示されます。
-
Name - ルール名。
-
Priority - ルールの現在の優先順位。
-
Enabled - ルールが現在有効か無効か(クリックして切り替え)。無効なルールは概要一覧でグレー表示されます。
-
Type - ルールの種類。
-
Category - そのルールが属するルールカテゴリ。
-
Scope - ルールのスコープ(つまり、どのオブジェクトに適用されるか)。
-
Attributes - そのルールに対して定義されている制約属性。
フォルダーツリーペイン内の特定ルールのエントリをクリックするか(または概要一覧内のそのエントリをダブルクリックするか)すると、その定義を管理するためのコントロールにアクセスできます。
-
Name - ルールの現在の名前。必要に応じて変更できます。
-
Comment - このフィールドには、そのルールに追加されたコメントが表示されます。たとえば、そのルールの用途を示す意味のある説明などです。
-
Unique ID - ルールの一意識別子。各ルール自体も設計オブジェクトであり、したがって実体のあるデータです。ID を使用することで一意性が保証されます。Unique ID が特に重要になるのは、回路図ドメイン内で作成されたルールの場合です。回路図上のオブジェクトに設計ルールパラメーターを追加すると、各ルールパラメーターに一意の ID が付与されます。同じ ID が、PCB 内に作成される対応する設計ルールにも付与されます。この Unique ID により、ルールの制約は回路図側でも PCB 側でも編集でき、同期時にその変更を反映できます。
-
Test Queries - クリックすると Test Queries Result dialog が開き、定義したルールの特殊化を考慮したうえで、そのルールの影響を受けるオブジェクト数が表示されます。これにより、クエリに応答するオブジェクトが存在するかどうかを確認できるほか、フィルターとルールの影響を受けるオブジェクトセットが意図どおりであるかどうかも確認できます。
-
Rule Scoping Controls - この領域には、ルールが適用される、または適用対象間となるオブジェクトの観点から、ルールのスコープを決定するためのコントロールが用意されています。
-
Constraints - ダイアログのこの領域には、編集中のルールタイプに適用される制約が表示されます。各種コントロールを使用して、必要に応じてこれらの制約を設定してください。制約領域上の F1 を押すと、ドキュメント内の PCB Design Rule Types 領域にある、そのルールタイプのページにアクセスできます。

PCB Rules and Constraints Editor ダイアログは、設計ルール管理の中枢です。
設計ルールの確認
ソフトウェアで新規作成されるデフォルトの基板には、すべての設計で必要になるわけではないルールが含まれており、さらに多くの設計ルールは設計要件に合わせて調整する必要があります。そのため、設計ルールを確認することが非常に重要です。これは PCB Rules and Constraints Editor で行えます。左側のツリー最上部で Design Rules を選択し、Attributes 列を下へ確認してすべてのルールを見渡せば、値の調整が必要なルールをすばやく見つけられます。
新しい基板を作成すると、設計に不要な場合もあるデフォルトの設計ルールが含まれます。不要なルールは、Design Rules エントリ、または PCB Rules and Constraints Editor 内の特定カテゴリのエントリをクリックし、ルールを無効化することで無効にできます(Enabled 列のチェックボックスをオフにします)。
デフォルトの基板ではヤード・ポンド法の単位も使用されます。基板でメートル法を使用する場合、たとえば Soldermask expansion のような多くのルール値が、4mil のような丸められた値から 0.102mm に変わったり、Minimum Solder Mask Sliver のデフォルト値が 10mil から 0.254mm に変わったりします。こうした最下位桁、たとえば 0.002mm は出力生成においては重要ではありませんが、気になる場合は設計ルール内でこれらの設定を編集できます。

設計ルールを確認する際は、必要に応じて列の順序を変更できる点にも注意してください。
デフォルト設計ルール
新しい PCB ドキュメントを作成すると、Design Rule Check システムが正しく機能するために必要な複数のデフォルトルールが含まれます。デフォルトルールを削除した場合、PCB Rules and Constraints Editor を閉じると自動的に再作成されます。使用したくない設計ルールがある場合、それらを管理する正しい方法は無効化することです。
ルールを無効化するには、PCB Rules and Constraints Editor ダイアログ右側のサマリーリストのいずれかで、そのルールに対応する Enable オプションを切り替えます。無効化されたルールは「グレー表示」されます。詳細は disabling design rules を参照してください。
不要なルールは Enable オプションを使って無効化します。 無効化されたルールは「グレー表示」されます。
デフォルトのルール値は内部的には mil 単位で定義されており、設計に適さない値になっている場合があります。独自のデフォルトルールと値を使用するには、次の方法があります。
Create Default Rules ボタンをクリックすると、PCB 用のデフォルト設計ルール一式が再生成されます。ルールを削除した場合、このボタンをクリックすることでデフォルトのルール一覧を復元できます。デフォルトルールが変更されている場合、それをリセットしたり置き換えたりはしません。
新しいルールの作成
PCB Rules and Constraints Editor ダイアログ内から新しい設計ルールを追加するには、左側のツリーで必要なルールタイプに移動して選択し、ルールサマリーリストの下にある New Rule ボタンをクリックするか、必要なルールタイプ上で右クリックしてコンテキストメニューから New Rule を選択します。
新しいルールはフォルダツリーに追加され、そのルールタイプのサマリーリストにも表示されます。 ルール名は、新規作成されまだ「適用」されていないことを示すために太字で表示されます。

新しい PCB 設計ルールの作成例。
新しいルールが追加されると、最初はそのルールの種類に基づいたデフォルト名が付けられます。たとえば、新しい Clearance ルールを追加すると、デフォルト名は Clearance になります。このデフォルト名を変更しないまま同じ種類の新しいルールをさらに追加すると、同じルール名に連番の接尾辞が付いた名前になります(つまり Clearance_1、Clearance_2 など)。
特定のルールタイプに対して新しいルールを作成すると、自動的に優先度 1(最優先)が割り当てられます。同じタイプの他のルールが存在する場合、それらの優先度はそれに応じて 1 つずつ下げられます。これにより、それらはスコープや制約レベルで明示的に変更されていなくても、変更済みと見なされます。そのため、そのタイプの既存ルールはすべて変更状態(アスタリスク付きの太字)で表示されます。
ルールのスコープ属性および制約属性にアクセスするには、フォルダツリーペイン内のそのルールのエントリをクリックするか、サマリーリスト内のそのエントリをダブルクリックします。するとダイアログのメイン編集ウィンドウが切り替わり、そのルールのスコープ属性と制約属性を定義するためのコントロールにアクセスできるようになります。

スコープや制約を含む、ルールの詳細コントロールへのアクセス。
新しいルールを完全に定義するには、次を行います。
-
識別しやすいように、ルールにわかりやすい名前を付けます。
-
ドロップダウンからスコープオプションを選択するか、クエリを入力して(バイナリルールの場合は複数のクエリ)、ルールのスコープを定義します。
-
ルールの制約を設定します。
-
ルールの優先度を設定します。
Rule Wizard を使用した新しいルールの作成
新しいルールは Design Rule Wizard を使用して作成することもできます。アクセスは Design » Rule Wizard コマンドを直接使用するか、PCB Rules and Constraints Editor ダイアログの下部にある Rule Wizard ボタンをクリックして行います。
既存ルールにまだ「適用」されていない変更がある場合、Rule Wizard ボタンは使用できません。
Wizard の各ページを使用して新しい設計ルールを作成します。手順は次のとおりです。
-
必要なルールタイプを選択し、わかりやすい名前を付けます(必要に応じてコメントも追加します)。
-
ルールのスコープを定義します。Wizard に組み込まれた Query Builder の機能を使って、スコープをさらに詳細化できます。
-
ルールの優先度を設定します。
最終ページの Wizard で Launch main design rules dialog オプションが有効になっている場合、Finish ボタンをクリックすると PCB Rules and Constraints Editor ダイアログが開きます。このダイアログでは、新しく作成したルールの制約を編集できます。

Design Rule Wizard を使用してルール作成を効率化します。
既存ルールの複製
既存ルールと同一のコピーをすばやく作成するには、複製機能を使用します。この機能には次の 2 つの方法でアクセスできます。

ルール複製機能を使用して、類似ルールの作成を効率化します。
複製されたルールには、元のルールと同じ名前に接尾辞(例: _1)が追加され、区別できるようになります。その定義(スコープ、制約など)は元のルールと同一です。優先度については、元のルールの次の順位が割り当てられます。たとえば、元のルールの優先度が 1 の場合、複製ルールの優先度は 2 になります。
PCB Filter パネルからのルール作成
設計ルールは対象となる設計オブジェクトの集合に適用されるようスコープ設定されるため、まずそれらのオブジェクトを特定してから、それらを対象とする設計ルールを作成したほうが簡単で速い場合があります。PCB Filter panel には、パネル内で現在定義されているクエリ式をスコープとして使用する設計ルールを作成する機能があります。したがって、クエリ式が might 何を対象にするのかを頭の中で思い描こうとするよりも、PCB Filter パネルを使って必要なオブジェクトだけがフィルタされるまでクエリ式をテストおよび調整するほうが効果的です。その後、そのクエリ式を使用するルールを作成すれば、正しいオブジェクト集合を対象にしていることが保証されます。
新しい設計ルールを追加するには、次の手順を行います。
-
Create Rule ボタンをクリックします。Choose Design Rule Type ダイアログが表示されます。このダイアログには、PCB ドキュメントで使用可能な各ルールカテゴリとルールタイプが一覧表示されます。
-
作成するルールタイプを選択し、OK をクリックします(またはエントリを直接ダブルクリックします)。
-
PCB Rules and Constraints Editor ダイアログが表示されます。選択したタイプのルールが作成され、そのルールのメイン編集ウィンドウが表示されて、ルール固有の制約を定義できる状態になります。ルールのスコープオプションは Custom Query に設定され、PCB Filter パネルのクエリ式がそれに応じてクエリ領域に入力されます。
-
必要に応じてルール名と制約を変更します。また、必要であれば優先度も変更します(デフォルトでは最優先が割り当てられます)。

PCB Filter パネルから直接新しい設計ルールを作成します。フィルタのクエリ式がルールのスコープとして使用されます。
過去のクエリ式の再利用
時間の経過とともに、さまざまな基板をレイアウトする過程で、多くの有用なクエリ式が作成されます。通常は、同じ設計内だけでなく、異なる設計間でも同じクエリを適用し、再適用したい場合が多いでしょう。これを可能にするため、PCB Filter panel は Historical と Favorite の概念をサポートしています。
クエリをパネルから入力して適用すると、そのクエリはクエリの「履歴リスト」に追加されます。さらに、Add To Favorites ボタンをクリックすることで、そのクエリをクエリの「お気に入りリスト」に追加できます。パネル内の History ボタンおよび Favorites ボタンを使用すると、Expression Manager dialog 内の同名の対応タブを開いて、これらのリストを確認できます。

適用済みクエリ式の履歴にアクセスし、繰り返し再利用するためのお気に入り式の一覧を作成できます。
どちらかのリスト内の式を使用するには、その項目をダブルクリックするか、項目を選択して Apply Expression ボタンをクリックします。Expression Manager ダイアログが閉じ、式が PCB Filter パネルの Filter 領域に読み込まれます。
この機能により、必要なスコープを持つルールの作成が簡素化され、効率化されます。履歴またはお気に入りのクエリ式を呼び出し、それが引き続き必要なオブジェクトセットを対象としていることを確認し(フィルターを適用)、前のセクションで説明したように、その式をスコープに使用するルールを作成します。
デザインルールのスコープ設定
Altium Designer の PCB エディターは、ルール駆動型の環境です。設計要件は、基板に対する制約をまとめて定義する、明確に定義された一連のデザインルールによって適用されます。デザインルールは、設計内の特定のオブジェクトを対象とします。PCB ルールシステムが、特定のルールがどのオブジェクトに適用されるかを判断するには、そのルールのスコープ、つまり適用範囲を把握する必要があります。Scoping、つまりルールのターゲット設定は、PCB Rules and Constraints Editor ダイアログで行います。
既定のデザインルール、または新たに追加されたルールには、既定のルールスコープとして All が設定されており、これは基板上の all objects に適用されることを意味します。ドロップダウンを使用すると、単純なルールスコープをすばやく設定できます。

デザインルールのスコープを設定して、設計オブジェクトへの適用範囲を定義します。
あらかじめ定義されたターゲット候補の一覧に制限されるのではなく、各デザインルールは、Query と呼ばれるものを記述することで、より厳密にスコープ設定できます。
クエリを入力するには、最初の Where The Object Matches ドロップダウンを Custom Query に設定します。これにより、現在のドロップダウン設定に基づいて、このルールに対してルールエンジンが現在使用しているクエリが表示されます。
クエリとは本質的に、対象とする設計オブジェクトの集合を定義するソフトウェアへの命令です。クエリはクエリキーワードを使用して記述されます。Filter パネルで特定のオブジェクト集合を見つけるためにクエリを書けるのと同様に、各ルールが対象とするオブジェクトを定義するためにもクエリを書くことができます。たとえば、次のようになります。
InNet('VBAT') And OnLayer('Bottom Layer')
このクエリを Width rule のスコープとして使用した場合、VBAT ネットを配線していてボトムレイヤーに切り替えると、そのトラック幅はそのルールの制約で指定された幅に自動的に変更されます。また、デザインルールチェックを実行した際には、ボトムレイヤー上の VBAT ネット配線は指定された幅でなければならず、そうでない場合は違反として報告されます。

ルールのスコープ設定はクエリシステムに基づいています。Custom Query オプションを使用すると、現在のクエリを確認し、必要に応じてクエリキーワードを使って変更できます。
ルールが単項か二項かによって、それぞれ 1 つまたは 2 つのスコープを定義する必要があります。単項デザインルールの場合は、単一のルールスコープを定義するためのコントロールが表示されます。Where The Object Matches 領域で利用可能なオプションを使用してクエリ式を組み立てると、その結果が右側の領域に表示されます。二項デザインルールの場合は、両方のルールスコープを定義するために Where The First Object Matches と Where The Second Object Matches のコントロールが表示されます。それぞれで利用可能なドロップダウンを使用してクエリ式を組み立てます。1 つのルールスコープを定義する場合でも、2 つ定義する場合でも、コントロールは同じです。
PCB コンポーネントのデジグネーターまたはポリゴン名が変更されると、カスタムクエリを使用しているデザインルール内の参照は自動的に更新されます。デザインルール内で PCB コンポーネントのデジグネーターを参照しているクエリは、デジグネーターの再アノテーション時、ECO による更新時、または基板上で手動編集されたときに変更されます。
コンポーネントのデジグネーター変更時にルールクエリを更新する機能は、Advanced Settings dialog で PCB.Rules.UpdateQueryOnComponentDesignatorChange オプションが有効になっている場合に利用できます。
ポリゴン名の変更時にルールクエリを更新する機能は、Advanced Settings dialog で PCB.Rules.UpdateQueryOnPolygonNameChange オプションが有効になっている場合に利用できます。
クエリに構文エラーがある場合、そのルールは無効と見なされ、PCB Rules and Constraints Editor ダイアログ内で赤色表示されます。これは左側のルールツリー内だけでなく、そのルールが表示される任意のサマリービュー(ルールカテゴリまたはルールタイプ)でも同様です。さらに、左側のルールツリーでは、ルールタイプおよびルールカテゴリのテキストも赤色で表示されます。そのため、無効なルールを含むルールツリーの領域を折りたたんでいても、階層のより上位レベルでその問題に気付くことができます。また、ダイアログを閉じようとすると警告メッセージも表示されます。構文エラーを含むルールスコープは、Online および Batch DRC の解析処理を大幅に遅くする可能性があります。構文的に正しくないルールスコープは必ず修正してください。
スコープ設定オプション
単純なスコープ設定オプションが用意されており、これを使用するとスコープクエリをすばやく生成できます。最初のドロップダウンフィールドからいずれかのオプションを選択し、必要に応じて後続のドロップダウンリストで Net、Layer、Footprint、Package などの適切な対象を選択します。表示されるスコープ設定オプションは、ルールタイプに応じて絞り込まれています。

単純なスコープ設定オプションを使用して、クエリをすばやく作成できます。
単純なスコープ設定オプションの例は次のとおりです。
-
All - すべての設計オブジェクトを対象とするスコープクエリを生成します。
-
Net - 特定のネット内のすべてのオブジェクトを対象とするスコープクエリを生成します。追加のドロップダウンが表示され、利用可能な選択肢の一覧から目的のネットを選択できます。これには No Net も含まれます。
-
Net Class - 特定のネットクラス内のすべてのオブジェクトを対象とするスコープクエリを生成します。追加のドロップダウンが表示され、利用可能な選択肢の一覧から目的のネットクラスを選択できます。これには All Nets も含まれます。
-
Layer - 特定のレイヤー上のすべてのオブジェクトを対象とするスコープクエリを生成します。追加のドロップダウンが表示され、利用可能な選択肢の一覧から目的のレイヤーを選択できます。
-
Net and Layer - 特定のネット内かつ特定のレイヤー上のすべてのオブジェクトを対象とするスコープクエリを生成します。追加のドロップダウンが 2 つ表示され、目的のネットとレイヤーを選択できます。
単純なスコープ設定オプションを使用してルールのスコープを設定した場合でも、クエリ自体は作成されています。最初のドロップダウンフィールドで Custom Query を選択すると、そのクエリが表示されます。
Custom Query オプションを使用すると、独自の、より複雑で、より具体的なクエリを記述できます。ルールスコープ用の独自のクエリを、右側のクエリ領域に直接入力できます。あるいは、論理クエリ式の作成を支援する 2 つの機能、Query Builder と Query Helper を利用できます。これらは、クエリの構文や使用可能なキーワードに自信がない場合に役立ちます。

Custom Query オプションを使用して、より複雑なクエリ式を作成します。
-
Query Language に習熟している場合は、クエリ領域に直接クエリ式を入力できます。また、お気に入りのエディターからクエリ式をその領域に直接貼り付けたり、クエリ式を外部エディターにコピーしたり、さらには二項ルールの第 2 スコープにクエリを貼り付けたりすることもできます。これは、2 つのスコープが複雑で、しかもわずかにしか異ならない場合に特に便利です。
-
Query Builder は、関連する「構成要素」のみを使って構築できるよう、条件タイプと値が適切に制限された、より簡単なクエリ作成方法です。キーワード指定や演算子構文を含む高度なクエリ作成には、Query Helper を使用してください。
Query Builder を使用したルールのスコープ設定
Custom Query オプションを選択した状態で、
ボタンをクリックすると、Building Query from Board dialog が開きます。このダイアログでは、条件文の文字列をシンプルに組み立てることで、設計ドキュメント内の特定オブジェクトを対象とするクエリを作成できます。
ダイアログの左側のセクションでは、必要なオブジェクト群を対象にするために必要な条件を指定します。各条件は Condition Type と Condition Value で構成されます。これらのドロップダウンフィールドには、それぞれ現在のルールタイプのスコープ構築に関連する項目と、選択した条件タイプに対応する値が表示されます。
条件を定義すると、現在構築中のクエリのプレビューがダイアログ右側のセクションに表示されます。条件は AND や OR で組み合わせることができ、さらに優先順位も(括弧やインデントを使用して)組み込むことで、対象オブジェクトの集合をより絞り込めます。必要なクエリ式を定義したら、OK をクリックすると、その式が PCB Rules and Constraints Editor ダイアログのクエリ領域に読み込まれます。
なお、PCB Rules and Constraints Editor ダイアログに表示される際には、クエリ式の先頭と末尾にそれぞれ追加の開き括弧と閉じ括弧が付加されます。

Query Builder を使用すると、一連の条件文を通じて論理クエリ式を構築できます。
Query Helper を使用したルールのスコープ設定
Custom Query オプションを選択した場合は、
ボタンをクリックして Query Helper dialog にアクセスします。内部の Query Engine が PCB 設計を解析し、使用可能なすべてのオブジェクトと、クエリで使用するための汎用キーワードを一覧表示します。
Query Helper の操作はかなり直感的ですが、以下の図に示すように 3 つの明確な領域に分けて考えると、さらに理解しやすくなります。

Query Helper を使用して定義した複雑なクエリの例。
これらの領域は次のとおりです。
-
Query Region – ダイアログのこの領域では、クエリ式を作成します。ルールスコープに現在適用されている式は、ダイアログを開いた時点で既定でこの領域に表示されます。この領域には直接入力でき、補助として、使用可能なキーワードやオブジェクトのコンテキスト依存の「候補リスト」が表示されます。
-
Operators – ダイアログのこの領域には、式の構築時に使用する各種の数学演算子および論理演算子が用意されています。ボタンをクリックすると、その演算子が上の Query 領域内の現在のカーソル位置に追加されます。
-
Categories, Keywords and Objects – ダイアログのこの領域では、使用可能な PCB Functions、PCB Object Lists、および System Functions にアクセスでき、これらを使ってクエリ式を作成できます。これら 3 つの領域のいずれかでサブカテゴリをクリックすると、対応するキーワードまたはオブジェクトの一覧が右側の領域に表示されます。クエリ文字列で使用するキーワードまたはオブジェクトを見つけたら、その項目をダブルクリックしてください。すると、その項目が上の Query 領域内の現在のカーソル位置に挿入されます。
式の構文が正しいことを確認するには、
ボタン(ダイアログ左下)を使用します。必要なクエリ式を定義したら、OK をクリックすると、その式が PCB Rules and Constraints Editor ダイアログのクエリ領域に読み込まれます。
Query Helper ダイアログを使用してクエリを構築しているときに、使用可能なリストのいずれかでキーワードをクリックして
F1 を押すと、そのキーワードに関するドキュメントが
Query Language Reference 内で表示されます。
クエリ式における演算子の優先順位
このセクションを終える前に、論理クエリ式で使用される演算子の優先順位について確認しておく価値があります。こうした知識がないと、式が必要なオブジェクトを正しく対象にできない可能性があるためです。
各種演算子に対して定義された優先順位の中で、括弧が最も高い優先順位を持ちます。この優先順位によって、ユーザーが括弧を指定していない場合にソフトウェアがクエリをどのように解釈するかが決まります。優先順位は高いものから低いものへ、次の順序です。
-
括弧
-
Not
-
^, *, /, Div, Mod, And
-
+, -, Or, Xor
-
=, <>, <, >, <=, >=
-
&&, ||
この優先順位は Pascal 系言語で使用されるものに似ています。あいまいさは左から右へ処理することで解決されます。括弧は内側から外側へ評価され、同じ優先レベルのものは左から右へ評価されます。
クエリが正しく解釈されない可能性が少しでもある場合は、必ず括弧を使用することを強く推奨します。括弧を十分に使用することであいまいさがなくなり、結果として得られるクエリは他の人にとっても読みやすくなります。
ルールの優先順位付け
ルールの定義と管理を簡素化するための考え方として、まず広範な要件をカバーする一般的なルールを定義し、その後、特定の状況ではより具体的なルールでそれらを上書きします。これを可能にするには、同じタイプの複数のルールが 1 つのオブジェクトを対象にした場合に、どのルールを使用するかを示すためにルールへ優先順位を設定できる必要があります。
たとえば、基板上で最も一般的に使用する配線幅を指定するには、基板上のすべてのネットに適用される単一のルールを定義します。その後、特定のネット(またはネットクラス)については、同じタイプでより高い優先順位を持つ別のルールを追加することで、このルールを上書きできます。
別の例として、ソルダーマスク要件があります。この場合、まず基板上のすべてのパッドとビアを対象とする 1 つのマスクルールを定義し、その後、特定のフットプリント種別内のパッドに対してそのルールを上書きできます。必要であれば、このフットプリント固有のルールを、そのフットプリント内の特定のパッドに対してさらに上書きすることも可能です。
ルール管理における重要な点は、すべての優先順位が適切に設定されていることを確認することです。新しいルールを作成すると、既定では最優先になります。優先順位を設定するには、PCB Rules and Constraints Editor ダイアログの下部にある Priorities ボタンを使用して、Edit Rule Priorities ダイアログで設定します。

Edit Rule Priorities ダイアログでルールの優先順位を変更します。
最初に、このダイアログには現在 PCB Rules and Constraints Editor ダイアログで選択されているルールタイプに属するすべてのルールインスタンスが一覧表示されます。Rule Type フィールドを使用してルールタイプを変更し、そのタイプに定義されている特定のルールを表示できます。定義済みルールは現在の優先順位順、つまり 1(最優先)から下位へ向かって一覧表示されます。ルール項目を選択し、Increase Priority ボタンと Decrease Priority ボタンを使用して、それぞれ優先順位を上または下へ移動します。
既に 1 つ以上のルールが存在するルールタイプに新しいルールを追加すると、その優先順位は 1(つまり最優先)に設定されます。 ルールを複製した場合、コピーには元のルールより下の優先順位が与えられます。
既存ルールの変更
もちろん、ルールはいつでも変更できます。実際、最終的に実用的なルールセットに仕上げるには、ここやそこにいくつかの重要な調整を加えることがよくあります。通常は、対象の設計オブジェクトが各ルールによって必要どおりに「拾われる」ようにするためのスコープ調整が含まれます。PCB Rules and Constraints Editor ダイアログで既存のルールを選択し、必要に応じてそのスコープおよび制約属性を変更してください。
既存のルール定義に加えられた変更は、フォルダツリーペインと該当するサマリーリストの両方で強調表示されます。こうした項目は、ルール名が太字になり、その右側にアスタリスクが表示されることで区別されます。このアスタリスクは、そのルールが新規作成されたルールではなく、変更された既存ルールであることを示します(新規作成ルールはアスタリスクなしの太字で表示されます)。

変更された既存ルールの例。ルール名を太字にし、アスタリスクを付けることで変更を示します。
特定のルールタイプに対して新しいルールを作成すると、自動的に優先順位 1 が与えられます。同じタイプの他のルールが存在する場合、それらの優先順位はそれに応じて 1 つずつ下げられます。これらのルールは、スコープ/制約レベルで明示的に変更されていなくても、変更済みと見なされます。したがって、そのタイプの既存ルールはすべて変更状態(太字かつアスタリスク付き)で表示されます。
無効なルールの表示
システムによってルールが無効と検出された場合、たとえばスコープのクエリ式に問題がある場合や、許可されていない制約値が設定されている場合、そのルールは無効としてマークされます。このようなルールは、PCB Rules and Constraints Editor ダイアログ内で左側のルールツリーおよびそのルールが表示されるすべてのサマリービュー(ルールカテゴリまたはルールタイプ)の両方で赤色表示されます。さらに、ルールタイプおよびルールカテゴリのテキストも左側のルールツリー内で赤色表示されます。そのため、無効なルールを含むルールツリーの領域を折りたたんでいても、階層のより上位レベルでその存在に気付くことができます。ダイアログを閉じようとした場合には、警告メッセージも表示されます。
構文エラーを含むルールスコープは、Online DRC および Batch DRC の解析を大幅に遅くする可能性があるため、構文的に正しくないルールスコープは必ず解消してください。

この例では、誤ったスコープクエリ式により、システムが無効な設計ルールを検出しています。
ルールの無効化
ソフトウェアのPCBエディターにおけるルール駆動型環境では、基板を適切に制約するために、かなり充実した包括的なルール群を構築することは珍しくありません。さまざまな理由から、それらのルールの一部を無効にしたい場合があります。たとえば、対象の基板には適用されない場合や、Design Rule Checker の負荷を一時的に軽減して、その結果としてパフォーマンスを向上させたい場合などです。無効化は、将来再び必要になったときに備えて、そのようなルールを保持しておくための有効な方法です。
ルールを無効にするには、PCB Rules and Constraints Editorダイアログの右側にある関連するサマリーリストのいずれかで、そのルールに対応する Enable オプションを切り替えます。無効化されたルールは、グレー表示でも示されます。

サマリーリスト内でグレーのフォントで表示されている、無効化されたルールの例。
ルールは、
PCB Rules And Violations パネルから直接無効化/有効化することもできます。ルールに関連付けられた
On オプションを切り替えてください。これは、
PCB Rules and Constraints Editorダイアログ内のそのルールの
Enable オプションにも反映されます。
ルールの削除
PCB Rules and Constraints Editorダイアログ内から単一のデザインルールを削除するには、次のいずれかを行います。
-
左側のツリーを使用して必要な既存ルールに移動し、右クリックしてコンテキストメニューから Delete Rule を選択します。
-
左側のツリーで特定のルールタイプに移動し、右側のサマリーリストで削除するルールを選択します。次に、リストの下にある Delete Rule(s) ボタンをクリックします。
ルール名は太字かつ取り消し線付きで表示され、まだ「適用」されていない削除対象であることが区別されます。

単一ルールの削除。
-
特定のデザインルールが不要になったものの、将来再び使用する可能性がある場合は、削除する代わりに単に 無効化 できます。これを行うには、PCB Rules and Constraints Editorダイアログの右側にある関連するサマリーリストのいずれかで、そのルールに対応する Enable オプションを切り替えます。
-
複数のルールは、サマリーリスト表示から1回の操作で削除できます。その場合は、削除するルールを選択し(標準の Shift+click および Ctrl+click ショートカットに対応)、リストの下にある Delete Rule(s) ボタンをクリックします。
-
Design Rule Check システムが機能するためには、特定のルールが存在している必要があります。これらのルールのいずれかが削除され、そのルールタイプが1つも存在しなくなった場合は、自動的に再作成されます。デフォルトのデザインルール の詳細をご覧ください。
多くのルールタイプでは、新しいPCBドキュメントを作成したときにデフォルトルールが作成されます。同様に、それらのルールタイプのいずれかについてすべての個別ルールが削除された場合、次回 PCB Rules and Constraints Editor ダイアログを開いたときにデフォルトルールが自動的に再追加されます。あるいは、ダイアログ下部の Create Default Rules ボタンをクリックして、デフォルトルールを再作成することもできます。
ルールのエクスポートとインポート
デザインルールは、PCB Rules and Constraints Editorダイアログからエクスポートしたり、そこへインポートしたりできます。これにより、お気に入りのルール定義を異なる設計間で保存および読み込みできます。
-
To export – ダイアログ左側のツリー内の任意の場所を右クリックし、Export Rules を選択します。
Choose Design Rule Type ダイアログが開き、エクスポートするデザインルールを選択できます。続いて開く Export Rules to File ダイアログで、.rul ファイル名と保存場所を指定できます。エクスポートされたルールは、PCB Rule ファイル(*.rul)に保存されます。
-
To import – ダイアログ左側のツリー内の任意の場所を右クリックし、 Import Rules を選択します。
Choose Design Rule Type ダイアログが開き、インポートするデザインルールを選択できます。続いて開く Import File ダイアログで、インポートする .rul ファイルを参照します。
インポート時に、選択したタイプのルールがすでに存在する場合は、インポート前に既存ルールを消去するオプションが表示されます。Yes をクリックすると、そのタイプの既存ルールはすべて削除され、その後 .rul ファイル内のルールに置き換えられます。No をクリックすると、既存ルールは保持されます。ただし、既存ルールとインポートするルールの名前が同じ場合は、インポートしたルールが既存ルールを上書きします。
デザインルールレポート
現在定義されているデザインルールのレポートは、PCB Rules and Constraints Editorダイアログ内から生成できます。レポートは、フォルダーツリーで選択されている項目に応じて、すべてのルールカテゴリ、特定のルールカテゴリ、または特定のルールタイプに対応できます。レポートは次の方法で生成できます。
-
必要なサマリーリストを開き、右クリックしてコンテキストメニューから Report コマンドを選択するか、リスト下部の Report ボタンをクリックします。
-
フォルダーツリー内の該当項目を右クリックし、コンテキストメニューから Report コマンドを選択します。
Report Preview ダイアログが開き、適切なレポートがすでに読み込まれた状態になります。このダイアログでは、最終的にファイルへエクスポートしたり印刷したりする前に、さまざまなページ/ズームコントロールを使用してレポートを確認できます。

PCB Rules Report を生成する。
Options and Controls of the Report Preview Dialog
-
Preview Window - このダイアログのメイン領域には、生成されたレポートのプレビューが表示されます。レポートは、ウィンドウ下部の各種コントロールおよび右クリックメニューを使用して操作できます。
スクロールバーを使用して、拡大表示されたページを水平方向または垂直方向に移動します。
-
Page x of x - 最初の x は現在表示中のページ番号、2番目の x はレポートの総ページ数です。
-
All - このボタンをクリックすると、ページサイズが利用可能なプレビューウィンドウ内に収まるよう調整されます。ダイアログ(したがってプレビューウィンドウ)のサイズを変更すると、ページ全体が表示されたままになるようにサイズも調整されます。
-
Width - このボタンをクリックすると、ページサイズが利用可能なプレビューウィンドウの横幅に収まるよう調整されます。ダイアログ(したがってプレビューウィンドウ)のサイズを変更すると、ページの全幅が表示されたままになるようにサイズも調整されます。
-
100% - このボタンをクリックすると、ページは実寸(100%)に設定されます。
-
% - このフィールドを使用してズームインまたはズームアウトします。実寸は 100% です。小さい値を入力すると縮小表示され、大きい値を入力すると拡大表示されます。
ズームは、Ctrl+mouse wheel を使用するか、Page Up キーおよび Page Down キーを使用して、それぞれ拡大および縮小することでも行えます。
右クリックを押したままドキュメントをドラッグすると、拡大表示内をパンできます。Shift+mouse wheel またはスクロールバーを使用して水平方向にスクロールし、マウスホイールを使用して垂直方向にスクロールします。
-
Page Navigation Controls - このコントロール群は、レポートのページ間を移動するための別の手段を提供します。これらのコントロールにより、文書の先頭、前、次、末尾の各ページへそれぞれ移動できます。あるいは、テキストボックスにページ番号を直接入力して Enter を押すこともできます。
-
Export - このボタンをクリックすると、Export Report From Project ダイアログが開き、保存場所、名前、エクスポート形式を指定してレポートを保存できます。対応形式は次のとおりです。
-
Microsoft Excel ワークシート (*.xls)
-
Adobe PDF (*.pdf)
-
Rich Text Format (RTF) (*.rtf)
-
Web ページ (*.htm, *.html)
-
Web レイヤー (CSS) (*.htm, *.html)
-
JPEG 画像ファイル (*.jpg)
-
Windows ビットマップファイル (*.bmp)
-
TIFF 画像ファイル (*.tif)
-
Print - このボタンをクリックするとレポートを印刷します。標準の Print ダイアログが表示され、ページ範囲や部数を指定できます。
-
Open Report - このボタンをクリックすると、Export で指定したアプリケーションで生成済みレポートを開きます。このボタンは、Export ボタンをクリックした後にのみ使用可能です。
右クリックコマンド
上記のコマンドの一部は、ダイアログ内の任意の場所を右クリックして表示される右クリックメニューからも利用できます。
-
Print - このボタンを使用してレポートを印刷します。 標準のPrint ダイアログが表示され、そこでページ範囲や部数を指定できます。
-
Export - このボタンをクリックすると、Export Report From Project ダイアログにアクセスでき、保存先、ファイル名、エクスポート形式を指定してレポートを保存できます。 サポートされている形式は次のとおりです。
-
Microsoft Excel Worksheet (*.xls)
-
Adobe PDF (*.pdf)
-
Rich Text Format (RTF) (*.rtf)
-
Web Page (*.htm, *.html)
-
Web Layer (CSS) (*.htm, *.html)
-
JPEG Image File (*.jpg)
-
Window Bitmap File (*.bmp)
-
TIFF Image File (*.tif)
-
Copy - このボタンを使用して、アクティブなページを Windows クリップボードにコピーします。必要に応じて、そこから外部アプリケーションに貼り付けることができます。
-
Page Width - このボタンをクリックすると、利用可能なプレビューウィンドウの横幅内に収まるようにページサイズが調整されます。ダイアログ(したがってプレビューウィンドウ)のサイズを変更すると、ページは幅全体が常に完全に表示されるようにリサイズされます。
-
Whole Page - このコマンドを使用すると、利用可能なプレビューウィンドウ内に収まるようにページサイズが調整されます。
-
Zoom In - このコマンドを使用して、レポートを段階的に拡大します。
-
Zoom Out - このコマンドを使用して、レポートを段階的に縮小します。