お客様が独自のプログラムを作成してPIコントローラーをアプリケーションにシームレスに統合することができます。そのために、カプセル化された関数呼び出しの形でコントローラにアクセスできるさまざまなライブラリやドライバが利用できます。コントローラとの接続や通信は、コントローラの通信インターフェイスとは関係なく、簡単に設定できます。
コントローラの総合的なソフトウェアパッケージPI Software Suiteには、一般的なプログラミング言語およびプログラム用の次のライブラリとドライバが用意されています:
C, C++, C#
C、C++、C#などのテキストベースの言語では Application Programming Interface (API) を使用して、適切なプログラムからコントローラーを直接制御できます。このAPIは、WindowsのダイナミックライブラリまたはLinuxでご利用いただけます。ご要望に応じてmacOS用のダイナミックライブラリを提供いたします。各開発環境への接続も容易です。
Python

PIは、PythonモジュールのコレクションであるPIPythonを提供しており、Pythonを使用してコントローラを直接制御することができます。そうすることで、このプログラミング言語の能力が、PI独自のGCSコマンドの柔軟性と融合します。さらに、PIPythonにはさまざまな便利な補助サポート機能が用意されています。PIのコントローラの中には、複雑なタスクを独立して解決するためにPythonスクリプトを実行できるもの、つまりホストPCに接続せずに実行できるものがあります。
MatLab

コントローラは、PI MATLABドライバを使用してMATLABで直接制御することができます。この目的のために、追加のMATLABツールボックスは必要ありません。インストールにはWindows用バージョンが含まれており、ご要望に応じてLinuxオペレーティングシステム用バージョンを提供いたします。
NI LabVIEW
PIのGCS LabVIEWドライバセットでは、お客様固有のアプリケーションに対応するプログラミング言語としてLabVIEWを完全にサポートします。実用的なサンプルだけでなく、使い勝手の良いVIを含む完全なドライバパッケージを提供します。ドライバセットのほぼすべてが純粋なNI LabVIEWコードとNI-VISA通信をベースとするため、プラットフォームに依存せず、接続された位置決め装置の種類を問わず、すべてのPIコントローラをサポートします。実際の設定以外のすべてのVIはオープンソースであり、総合的なオンラインヘルプが含まれています。ドライバーセットにはサポート範囲が広い下位互換性があるため、お客様のアプリケーションの持続可能性が保証されます。
サンプル
サポートされるすべてのプログラミング言語には、機能するアプリケーションをすぐに組み立てることができる完成したサンプルが含まれています。これらのサンプルには、コントローラとの接続や基本的な通信などの最初のステップと、さまざまな軸を持つ拡張機能が含まれています。ファンクションジェネレーターとデータレコーダーの使用もその一例です。ご要望に応じて、お客様固有の問題を解決するためのサンプルの作成と拡張が可能です。
対応ソフトウェアの範囲はコントローラの機能によって異なるため、対応する製品データシートやマニュアルを参照してください。
デバッグ能力
マクロ、スクリプトまたはプログラムをデバックする為に、エラー検索中に開発者をサポートするツールが提供されます。PIのPCソフトウェアであるPIMikroMoveは、GCSマクロのデバッグプロセスをサポートしています。これにより、マクロはPC上で動作し、含まれているコマンドがコントローラーに個別に送信されます。例えば、変数名を読んだり、論理フローをテストしたりなどさまざまなことができます。
一部のコントローラは、コントローラ自体で動作するPythonスクリプトで対応可能です。この場合は、クロスデバッグが可能です。つまり、スクリプトはコントローラー上で動作しますが、開発者はPCで作業してPCからデバッガーを操作します。