スクリプトによる設計タスクの自動化

スクリプト機能は、Altium Designer での作業能力と生産性を高めるための強力な手段です。スクリプトには一連の命令(自動化コマンド)が含まれており、Altium Designer で実行されると解釈されます。スクリプトは複数の言語で記述でき、高度なダイアログを備えたものも作成でき、Altium Designer 内でデバッグも可能です。スクリプトを使用すれば、ユーザー入力を最小限に抑え、キーボード操作やマウスクリックの回数を減らしながら、設計目標を達成できます。

スクリプトを使うことで、繰り返し作業を自動化したり、Altium Designer の既存コマンドでは実現できない編集を行ったりできます。たとえば、PCB ドキュメント上のフィデューシャルマークを検索して更新する、あるいはカスタマイズしたネットリストをエクスポートする、といった処理をスクリプトで実行できます。

スクリプトはスクリプトプロジェクト、または設計プロジェクトに保存できます。Altium Designer でスクリプトを作成するためのスクリプト言語はいくつか用意されています。


スクリプトシステムの概要とセットアップ

Altium Designer のスクリプトシステムには、ソフトウェア内のタスクを自動化するスクリプトを作成するために必要なツールと機能がすべて備わっています。

スクリプトは、繰り返し作業の自動化や、Altium Designer の機能強化のために作成できます。スクリプトシステムは主に2つの要素(エディタとデバッガ)で構成されます。スクリプトエディタ、デバッガ、各種スクリプトパネルが連携し、スクリプトの作成とデバッグを容易にします。スクリプトはスクリプトエディタから直接実行できるほか、メニュー、ツールバー、ホットキーに割り当てることもできるため、PCB などの現在のドキュメントに対していつでも適用できます。

Read about Scripting System in Altium Designer


スクリプトの作成と保存

Altium Designer のスクリプトは通常、スクリプトプロジェクト(*.PrjScr)で作成・保存しますが、任意の種類のプロジェクトに追加したり保存したりすることも可能です。

スクリプトの作成を始めるには、新しいスクリプトプロジェクトを作成し、そのプロジェクトにスクリプトファイルを追加します。

スクリプトプロジェクトはスクリプトの管理に役立ち、メインメニューから File » New » Project » Script Project を選択して作成できます。新しいプロジェクトは Projects panel に表示されます。プロジェクトに新しいスクリプトを追加するには、プロジェクト名を右クリックして、コンテキストメニューから Add New to Project を選択します。

新しいスクリプトを作成する際は、プロジェクト要件に応じて2種類のスクリプトタイプ(スクリプトユニットとスクリプトフォーム)から選択します。スクリプトユニットでは、独立したプロシージャや関数を記述できます。スクリプトフォームでは、コントロールやイベントハンドラを備えたダイアログに加え、プロシージャや関数も作成できます。

Read about Creating & Storing Scripts in Altium Designer


スクリプトの記述

スクリプトの記述には、適用される重要な概念と用語がいくつかあります。

  • プロセス(Processes)は、スクリプト内でコマンドを実行するために使用できるコマンド文字列です。

  • コンポーネント(Components)は Tool Palette panel 上の視覚的なコントロールオブジェクトで、スクリプトフォームにドラッグ&ドロップして配置し、設計を操作できます。

  • スクリプトフォーム上に配置されたコンポーネントには、メソッド、プロパティ 、イベントがあります。

  • オブジェクトインターフェース(Object Interfaces)は、スクリプトから設計ドキュメント上のデータを抽出・変更するために使用できる特別なオブジェクトインターフェースです。

既定のスクリプト言語は DelphiScript(*.pas)に設定されています。スクリプトエンジン自体は Embarcadero Delphi で記述されており、Tool Palette panel は Delphi の VCL(Visual Component Library)をベースにしています。

Read about Writing Scripts in Altium Designer


スクリプトの編集およびデバッグツール

Altium Designer のスクリプトシステムは、主に2つの要素(エディタとデバッガ)で構成されます。エディタにはスクリプトコードの支援や検査機能が用意されており、デバッガではスクリプトコンポーネントやデバッグ機能にアクセスできます。スクリプトのデバッグでは、Scripting Editor Tools が重要な役割を果たします。

スクリプトシステムには、デバッグを支援するためのツールが多数用意されています。たとえば、スクリプト内に複数のブレークポイントを設定する、Watch List panel を使って変数の値を監視する、ブックマークで効率よく移動する、ステップイン/ステップオーバー機能でスクリプトの実行を追跡する、といったことが可能です。

Read about Script Editing Tools in Altium Designer

Read about Debugging Scripts in Altium Designer


スクリプトの実行

Altium Designer のスクリプトシステムは、Altium Designer 向けに高度な自動化タスクを作成する手段を提供しますが、作成したスクリプトは設計プロセス中に容易にアクセスできる必要もあります。たとえば、PCB の編集中に複雑な一連の操作を実行するために作成したスクリプトは、PCB エディタ自体からすぐに利用でき、数回のマウスクリックで実行できることが望まれます。

Altium Designer では、スクリプトをプロセスランチャーに割り当てることで、メニュー、ツールバー、ショートカットに割り当て可能なコマンドとして提供できます。

スクリプトエディタで開いている場合、エディタの Run コマンドでスクリプトを実行できます。ただし、この方法では Altium Designer でスクリプトプロジェクトを開いておく必要があり、たとえば PCB 設計プロセス中に必要なスクリプトへアクセスする方法としては便利とは言えません。代替として、Select Item To Run dialog(File » Run Script)を使用すると、ローカルハードドライブ上のスクリプト、または connected Workspace 上のスクリプトを参照して、目的のプロセスを実行できます。スクリプトは現在のセッション中は読み込まれた状態のままになります。

頻繁に使用するスクリプトへアクセスするより適した方法は、Preferences dialog の Scripting System – Global Projects page から、そのプロジェクトをグローバルプロジェクトとしてインストールすることです。この場合、Altium Designer の起動時にプロジェクトが自動的に読み込まれ、File » Run Script コマンドからいつでも実行できます。

Read about Running Scripts in Altium Designer


スクリプトのグラフィカルコンポーネント

Altium Designer のスクリプトで使用できるビジュアルフォームコンポーネントの多くは、Embarcadero の Visual Component Library(VCL)に由来します。VCL は、Delphi および C++ 言語を使用して Windows アプリケーションを開発するために定義されたビジュアルコンポーネントのコレクションです。

VCL はビジュアルクラスライブラリとして開発されており、VCL クラスは線形のオブジェクト階層において TComponent object(それ自体が TObject root object の派生)から派生しています。そのため、TButton object のような一般的なスクリプトコンポーネントは、上位オブジェクトからプロパティ、メソッド、イベントを継承します。この場合のクラス階層は TObject → TPersistent → TComponent → TControl → TWinControl → TButtonControl → TButton です。

TControl object から派生するコンポーネントは一般にビジュアルコンポーネント(コントロール)であり、TWinControl から派生する一般的なコンポーネントは主に Windows API のラッパーである点に注意してください。

Altium Designer のスクリプトエディタでフォームを作成する際、コンポーネントは Tool Palette panel からアクセスします。スクリプトフォームには関連する *.DFM file があり、フォームの構成、コンポーネントの配置、その他の属性の詳細が含まれます。このファイルはスクリプトプロジェクトのホストフォルダにあります。Altium Designer では、スクリプトフォームの設計時に、DelphiScript または VBScript のいずれからでもコンポーネントを使用できます。

Read about Scripting Graphical Components in Altium Designer


スクリプト例

スクリプトシステムの一般的な側面、およびスクリプトにおける Delphi と X2 Object Models の使用について理解を深めるため、機能面の観点から2つのサンプルプロジェクト(外形線コピーとネットリスト生成スクリプト)を取り上げます。Board Outline Copier と Netlister の各スクリプトは、Altium Designer のスクリプトシステムの能力を示すために X2 Object Models を使用して開発されています。

これらは example script collection に含まれる既存スクリプトです。ZIP ファイル内の Scripts フォルダには、スクリプト言語ごとに整理されたサブフォルダが含まれています。

Altium Designer API は段階的に更新されており、それに伴ってスクリプトシステムのインターフェースや、そのメソッド/プロパティも更新されるため、一部のレガシーなスクリプト例は当初の意図どおりに動作しない場合があります。それでも、script examples collection に含まれるスクリプトはすべて有用なリソースであり、自作スクリプト作成のための参照情報として利用できます。

また、Altium Designer GitHub collection には、幅広い有用なスクリプトが用意されている点にも注意してください。

Read about Script Example Analysis in Altium Designer

Read about Scripting Examples Reference for Altium Designer


スクリプト言語のサポート

Altium Designer 用のスクリプトは、複数のスクリプト言語で記述できます。なお、主要言語であり、スクリプト関連ドキュメントで最も多く参照されるのは DelphiScript で、Embarcadero Delphi™ と密接に関連しています。

既定のスクリプト言語は DelphiScript に設定されています。VBScript および JavaScript(Jscript)で書かれた既存スクリプトを開いて実行することもできます。VBScript で新規スクリプトを作成するには、Advanced Settings dialogLegacy.Scripts.SupportOldLanguages option を有効にする必要があります。

Read about Scripting Language Support in Altium Designer

AI-LocalizedAI で翻訳
問題が見つかった場合、文字/画像を選択し、Ctrl + Enter キーを押してフィードバックをお送りください。
機能の提供状況

ご利用可能な機能は、お使いのAltiumソリューション(Altium DevelopAltium Agile TeamsAltium Agile Enterprise、または有効な契約期間中のAltium Designer)によって異なります。

実際にお使いのソフトウェアに文書化されている機能が表示されない場合は、詳細についてAltium Sales までお問い合わせください。

従来のドキュメント

Altium Designer のドキュメントは、バージョンごとに掲載されなくなりました。Altium Designer の旧バージョンのドキュメントは、Other Installers ページの Legacy Documentation の項目をご覧ください。