高度な設計検索
ハードウェア設計プロジェクト内の設計オブジェクトを特定、一覧表示、ハイライトするために、Altium Workspace には柔軟なクエリベース構文に基づく強力な検索エンジンが用意されています。Web Viewer 内から利用できるこの検索システムにより、特定コンポーネントの単純な抽出から、オブジェクト、データ、接続性の複雑な関係の把握まで、必要な情報を正確に見つける作業が効率化されます。
Web Viewer の検索機能は、利用可能な設計データとアクティブなクエリキーワードに基づいて候補を提示する、コンテキスト認識型のユーザーインターフェースを備えています。使い慣れた field:value 構文構造に基づいて構築された Advanced Search には、ロジック、クラス、範囲、接続属性を中心に高度なクエリを組み立てるための各種演算子セットが含まれています。詳細は Search Query Reference を参照してください。
検索コマンドインターフェースには、Web Viewer 上部の Search フィールド(Ctrl+K/Cmd+K)からアクセスします。検索結果はオブジェクトの選択とハイライトで表示され、複数のオブジェクトが結果となる場合は右側の Search Results ペインに選択可能な一覧として表示されます。リスト内の項目を選択すると、そのオブジェクトの位置が特定され、ハイライトされます。
検索結果はすべての主要データビュー(SCH、PCB, 3D、BOM)で有効です。ビューアー内の関連タブまたは結果ペインを使用して、各ビュー間で cross-probe できます。
特定のパッケージスタイル(Package:0402)を持つコンデンサコンポーネント(type:capacitor)を検索するクエリの Advanced Search の結果。
検索クエリ構文
More information: Search Query Reference
最も基本的なレベルでは、直接の用語(値)を入力して、コンポーネントやネットの位置特定などの基本検索を実行できます。たとえば r1 に続けて Enter を入力すると、コンポーネント R1 と、その検索語に一致するその他の要素が特定されて選択されます。入力中は、設計データ内で検出された要素に基づいて、検索フィールドのドロップダウンメニューにも候補エントリが表示されます。
-
入力した検索エントリでは大文字と小文字は区別されません。
-
部分的に入力した検索語との一致にはワイルドカードを使用できます。アスタリスクの接尾辞(
*)は、その後に続く任意の長さの文字列を意味し、疑問符の接尾辞(?)は、その後に続く任意の 1 文字を検出します。
システムは、利用可能なコンポーネントとネット(
)を検索ドロップダウンに表示するだけでなく、利用可能なコンポーネント Parameters も提示します。パラメータを選択し、次に一覧から目的の値を選ぶことで、一致するすべてのコンポーネントを特定できます。次の例では、Tolerance パラメータが 10% に設定されたコンポーネントを検索します。別の例としては、特定のピン数を持つコンポーネントを見つけることが挙げられます。
高度なクエリキーワード
検索語を入力する前に、Search ドロップダウンには高度な検索を実行するための適切な既定のクエリキーワード(検索 Terms)が表示されます。これには、コンポーネント Designator、Comment(Name)、Footprint による検索など、特定のオブジェクトを見つけるためのキーワードや、特定の Document、Layer、Object タイプに検索対象を絞るためのキーワードが含まれます。なお、この一覧には最大 10 件まで表示され、それ以外の Terms は入力に応じて表示されます。
Search フィールドを選択すると、Terms ごとにグループ化された利用可能なクエリキーワードのドロップダウンリストが開きます。
オプションには、タイプ、属性、またはクラスで定義されたオブジェクト群を見つけるためのクエリ語も含まれます。特に、logic operators を使って既存のクエリを絞り込むのに便利で、次のものがあります。
-
コンポーネントタイプのセット(
Type:Passive、Type:Active、Type:Resistor、Type:Mechanicalなど)を指定するためのtypeクエリ語。 -
特定の属性またはパラメータ(
Has:Model3D、has:"Dropout Voltage"など)を持つコンポーネントを見つけるためのhasクエリ。指定したパラメータを持つコンポーネントを検索する場合、パラメータ値が空白のエントリも結果に含まれる点に注意してください。 -
適用された design class によってグループ化されたオブジェクト(コンポーネント、ネット、差動ペアなど
(ComponentClass、NetClass、DiffPairClassなど)を見つけるための class キーワード。このような用語は、現在のプロジェクトに存在する場合にのみ利用できます。
設計接続性
検索システムの最も有用な機能の 1 つは、特定の電気的接続を特定できることです。特に複雑な設計において有効です。個々の接続やネットを相互に照合して全体像を視覚的に把握する必要に代わり、Advanced Search では ConnectsTo クエリキーワードにより、対象オブジェクトへのすべての電気的接続を(文字どおり)特定してハイライトできます。詳細は related reference を参照してください。
たとえば、あるコンポーネントに接続されているすべてのコンポーネント、ピン、ネットを見つけたり、アクティブデバイスを基点として回路セクション全体の接続性を選択したりできます。代替の ConnectsTo.NoPower 検索語を使用すると、電源ネットを検索結果から除外できます。

ConnectsTo 検索では対象オブジェクトへのすべての接続が返され、ConnectsTo.NoPower の代替オプションではすべての電源ネットが無視されます。
ConnectsTo 検索式では、既定でアクティブデバイス間の論理信号パス接続が返されます。これにより、アクティブデバイスのコンポーネントピン間にある受動デバイスをバイパスして、アクティブ回路内の信号フローを追跡しやすくなります。受動デバイスの両側のネットは論理的にリンクされます。この既定の検索接続性は、ConnectsTo.Direct 検索語を使用することで無効にでき、その場合は説明した論理(信号)パスではなく、物理的(同一 Net)パスのみが返されます。

ConnectTo 検索では、アクティブデバイスのピン間にある受動デバイスをバイパスして論理信号パスが表示されます。物理パスのみを表示するには ConnectTo.Direct オプションを使用します。
論理演算子
Advanced Search の強力な機能の 1 つは、ロジック式を用いてクエリ語を連結し、正確な検索構造を作成できることです。論理演算子 AND、OR、NOT を使用すると、複数の検索語を組み合わせて特定の結果向けにクエリを調整したり、追加によって既存の検索クエリを絞り込んだりできます。ロジックベースの検索式を作成する際には、コンテキスト認識型の検索 Terms が提示されます。たとえば Pin 検索を絞り込む場合、Pin オブジェクトに適用できる Terms だけが Search ドロップダウンに表示されます。
選択した Term に対する Values がその後提示されます。
-
AND operator – 含まれるすべての検索語に一致する結果を返します。なお、検索語の間にスペースがある場合は
AND演算子が暗黙的に適用されます(term1 AND term2またはterm1 term2)。Example。特定の電源レール向けのバイパスコンデンサを特定する例:
ConnectsTo:VCC5 Type:Capacitor。OR operator を使用すると、電源レールのネット自体も含めることができます。
Example. Bottom レイヤー上のすべての 100nF コンデンサを見つける例(3 つの検索語で構成):
Layer:"Assembly Bottom" Type:Capacitor Value:100nF -
OR operator – 含まれるいずれかの語に一致する結果を返します。
AND演算子と組み合わせる場合はグループ化の括弧が必要です。これはORの優先順位がANDより低いためです。Example。抵抗またはコンデンサタイプのコンポーネントを見つける例:
Type:Capacitor or Type:Resistor。括弧を使用した等価な検索は次のとおりです:Type:(Capacitor or Resistor)。Example。上記の検索を、0402 パッケージスタイルを持つコンポーネントのみに絞り込む例:
(Type:Capacitor or Type:Resistor ) and Package:0402。括弧を省略すると、すべてのコンデンサが検索結果に含まれてしまうため、意図しない/無効な結果が返される点に注意してください。
-
NOT operator – 指定した語を除外した結果を返します。
Example。コンポーネント U1 を基点とする回路セクションへのすべての接続を見つけ、電源/グランドネットと接続先コンポーネントも除外する例(
NOT演算子を使用):ConnectsTo.NoPower:U1 not Component:*
関係演算子と範囲演算子
クエリベース検索のさらなる柔軟性は、関係演算子および範囲演算子によって提供されます。これらにより、(通常は数値の)値データの範囲にわたる結果を返す検索が可能になります。
-
Relational operators – 値データの比較において、より大きい、より小さい、および等しい条件に一致する結果を返します。使用可能な演算子(
>、<、>=、<=)は、field:value構文において数値/日付値の前に挿入されます。Example。基板上で最も幅広い電源ネット配線を抽出する例(ここでは幅 0.3mm 超):
TrackWidth>0.3mm。関係演算子の前にはコロン文字を付けません。 -
Range operator – 指定した開始値から終了値までの範囲に包括的に一致する結果を返します。
field:value構文での値項は、角括弧[min to max]内に最小値から最大値までの数値として表します。Example。Value が 10k ~ 100k の間にあるオブジェクトを見つける例:
Value:[10k to 100k]。適用される単位により、検索対象として明示しなくても暗黙的に Resistors が対象になります:Type:Resistor Value:[10k to 100k]。















