ピラミッドのロゴwww.pyramid.tech
FX4
FX4 プログラマーマニュアル
ドキュメントID:2711715845
バージョン: v3PYRAMID FX4 プログラマー

FX4プログラマー

ドキュメントID:2711715845
FX4 – FX4プログラマーマニュアル

PYRAMID FX4プログラマー - アイコン ドキュメント ID: 2711650310

著者 マシュー・ニコルズ
所有者 プロジェクトリーダー
目的 API を使用し、外部アプリケーションを通じて製品を拡張するために必要なプログラミングの概念を説明します。
範囲 FX4 関連のプログラミング概念。
対象読者 製品の使用に興味のあるソフトウェア開発者。
プロセス https://pyramidtc.atlassian.net/wiki/pages/createpage.action?
spaceKey=PQ&title=標準手動作成プロセス
トレーニング 適用できません

バージョン管理

バージョン 説明  保存した人  保存日  状態
v3 シンプルなオーバーを追加しましたview その他ampレ。 マシュー・ニコルズ 6年2025月10日午後29時XNUMX分 承認された
v2 デジタル IO インターフェイスと IGX への参照を追加しました。 マシュー・ニコルズ 3年2024月7日午後39時XNUMX分 承認された
v1 最初のリリース、まだ作業中です。 マシュー・ニコルズ 21年2024月11日午後25時XNUMX分 承認された

PYRAMID FX4プログラマー - アイコン1 文書管理 再ではないviewed
現在のドキュメントバージョン: v.1
いいえview割り当てられています。

1.1 署名
最新のドキュメントバージョンの場合
7年2025月10日金曜日午後33時XNUMX分(UTC)
マシュー・ニコルズが署名しました。意味: Review

参考文献

書類 文書ID  著者  バージョン
IGX – プログラマーマニュアル 2439249921 マシュー・ニコルズ 1

FX4プログラミング終了view

FX4プロセッサは、BlackBerryのQNX高信頼性リアル​​タイムオペレーティングシステム上に構築されたIGXと呼ばれる環境で動作します(QNX Webサイト¹) IGX は、独自のホスト コンピュータ ソフトウェアを作成したいユーザー向けに、柔軟で包括的なアプリケーション プログラミング インターフェイス (API) を提供します。
IGX 環境は他の Pyramid 製品間で共有されるため、ある製品用に開発されたソフトウェア ソリューションを他の製品に簡単に転送できます。
プログラマーは、Pyramidで入手可能なIGXの完全なドキュメントを参照できます。 webサイト: IGX | 最新のモジュラー制御システムフレームワーク Web対応アプリケーション²

このセクションでは、JSON形式を使用したHTTPとEPICSという2つのAPIメソッドのテスト方法を紹介します。簡潔にするために、Python(パイソン Webサイト³)は例文として使われるampプロフェッショナルでないプログラマーでもアクセスしやすく使いやすいホスト コンピュータ言語です。

3.1 PythonとHTTPの使用
元ampたとえば、測定された電流の合計をPythonで読み取るとします。 URL その特定のIO用。FX4 web GUIでは、フィールドを右クリックして「HTTPのコピー」を選択するだけで簡単に見つけることができます。 URL' をクリックして文字列をクリップボードにコピーします。

PYRAMID FX4プログラマー - PythonとHTTPの使用

これで、Python を使用して、HTTP および JSON 経由でユーザー ソフトウェアへの接続をテストできるようになりました。HTTP リクエストとデータ解析を処理するには、リクエストと json ライブラリをインポートする必要がある場合があります。

PYRAMID FX4 プログラマー - HTTP リクエストとデータ解析1 シンプルな Python HTTP 例ample

3.2 EPICSの使用
EPICS (実験物理学および産業用制御システム) を介して FX4 を接続するプロセスも同様です。EPICS は、科学施設で広く使用されている分散制御システムの開発と実装に使用されるソフトウェア ツールとアプリケーションのセットです。

  1. https://blackberry.qnx.com/en
  2. https://pyramid.tech/products/igx
  3. https://www.python.org/
  1. 目的の IO の EPICS プロセス変数 (PV) 名を取得します。
  2. EPICS ライブラリをインポートし、値を読み取ります。

PYRAMID FX4プログラマー - EPICSプロセス変数2 EPICS PV名を取得するPYRAMID FX4プログラマー - シンプルなPython EPICS Example3つのシンプルなPython EPICS例ample

さらに、Pyramidはユーティリティ(EPICSコネクト⁴) を使用すると、EPICS プロセス変数をリアルタイムで監視できます。このツールは、EPICS PV 名が正しいか、FX4 がネットワーク上で PV を正しく処理しているかを確認するのに役立ちます。

PYRAMID FX4プログラマー - EPICS Connect4 PTC EPICS コネクト

FX4プログラミングAPI

このマニュアルで説明されている概念と方法は、IGX – Programmer Manual で確立された概念に基づいています。説明と例については、そのドキュメントを参照してください。amp基本的な IGX プログラミングとインターフェイスの仕組みを説明します。このマニュアルでは、FX4 に固有のデバイス固有の IO と機能についてのみ説明します。

4.1 アナログ入力IO
これらのIOは、FX4のアナログ電流入力の設定とデータ収集に関係しています。チャンネル入力の単位は、「S」と呼ばれるユーザー設定可能な設定に基づいています。ample Units」の有効なオプションには、pA、nA、uA、mA、および A が含まれます。
4 つのチャネルはすべて同じインターフェース IO を使用し、独立して制御されます。channel_x をそれぞれ channel_1 、 channel_2 、 channel_3 、または channel_4 に置き換えます。

IO パス 説明
/fx4/adc/チャネル_x READONLY NUMBER 測定された電流入力。
/fx4/adc/チャネル_x/スカラー NUMBER チャネルに適用される単純な単位なしスカラー。デフォルトは 1。
/fx4/adc/チャネル_x/ゼロ_オフセット NUMBER チャネルの電流オフセット(nA 単位)。

以下の IO はチャネルに依存しておらず、すべてのチャネルに同時に適用されます。

IO パス  説明
/fx4/チャンネル合計 READONLY NUMBER 現在の入力チャンネルの合計。
/fx4/adc_ユニット STRING 各チャネルと合計の現在のユーザー単位を設定します。
選択肢:「ぱ」、「な」、「う」、「ま」、「あ」
/fx4/範囲 STRING 電流入力範囲を設定します。各範囲コードが最大電流入力制限および帯域幅にどのように対応するかはGUIを参照してください。
オプション: 「0」、「1」、「2」、「3」、「4」、「5」、「6」、「7」
/fx4/adc/samp頻度 数値 Hz単位の周波数ample データは平均化されます。これにより、すべてのチャネルの信号対雑音比とデータ レートが制御されます。
/fx4/adc/変換頻度 ADCがアナログ値をデジタル値に変換する周波数(Hz)を数値で指定します。デフォルトでは100kHzに設定されており、この値を変更する必要はほとんどありません。
/fx4/adc/オフセット補正 READONLY NUMBER すべてのチャネルの現在のオフセットの合計。

4.2 アナログ出力IO
これらの IO は、フロント パネルのアナログ入力の下にある FX4 の汎用アナログ出力の構成に関連しています。4 つのチャネルはすべて同じインターフェイス IO を使用し、個別に制御されます。channel_x をそれぞれ channel_1 、 channel_2 、 channel_3 、または channel_4 に置き換えます。

IO パス  説明
/fx4/dac /チャンネル_x 番号 コマンド ボリュームtage 出力。この値は、出力モードが手動に設定されている場合にのみ書き込むことができます。
/fx4/dac/チャンネル_x/リードバック 読み取り専用数値 測定ボリュームtage出力。
これは、式出力モードを使用するときに最も役立ちます。
/fx4/dac/チャンネル_x/出力モード STRING チャネルの出力モードを設定します。
オプション: 「manual」、「expression」、「process_control」
/fx4/dac/チャンネル_x/スルー制御有効 BOOL スルーレート制限を有効または無効にします。
/fx4/dac/チャネル_x/スルーレート NUMBER チャネルのスルーレート(V/s)。
/fx4/dac/チャンネル_x/上限 NUMBER 最大許容コマンドボリュームtagチャネルの場合は e です。すべての操作モードに適用されます。
/fx4/dac/チャンネル_x/下限 NUMBER 最小許容コマンドボリュームtagチャネルの場合は e です。すべての操作モードに適用されます。
/fx4/dac/チャンネル_x/出力_式 STRING 式出力モードのときにチャネルで使用される式文字列を設定します。
/fx4/dac/チャンネル_x/リセットボタン ボタン コマンドボリュームをリセットしますtage を 0 にします。

4.3 デジタル入力と出力
これらの IO は、FX4 にあるさまざまな汎用デジタル入力と出力の制御に関係します。

IO パス  説明
翻訳元 READONLY BOOL ファイバー レシーバー 1。
/fx4/ft1 BOOL ファイバートランスミッター 1。
翻訳元 READONLY BOOL ファイバー レシーバー 2。
/fx4/ft2 BOOL ファイバートランスミッター 2。
翻訳元 READONLY BOOL ファイバー レシーバー 3。
/fx4/ft3 BOOL ファイバートランスミッター 3。
/fx4/デジタル拡張/d1 BOOL D1 双方向デジタル拡張 IO。
/fx4/デジタル拡張/d2 BOOL D2 双方向デジタル拡張 IO。
/fx4/デジタル拡張/d3 BOOL D3 双方向デジタル拡張 IO。
/fx4/デジタル拡張/d4 BOOL D4 双方向デジタル拡張 IO。

4.3.1 デジタルIO構成
すべてのデジタルには、そのデジタルの動作を制御する動作モードなどの動作を構成するための子 IO があります。各デジタルには、使用可能なオプションのセットが異なります。どの IO にどのオプションが使用可能かの詳細については、GUI を参照してください。

子IOパス 説明
…/モード STRING デジタルの動作モード。
オプション: 「input」、「output」、「pwm」、「timer」、「encoder」、「capture」、「uart_rx」、「uart_tx」、「can_rx」、「can_tx」、「pru_input」、または「pru_output」
…/プロセスシグナル STRING プロセス制御信号名(存在する場合)。
…/プルモード デジタル入力の STRING プルアップ/プルダウン モード。
オプション:「上」、「下」、「無効」

4.4 リレー制御
両方のリレーは独立して制御され、同じタイプのインターフェースを共有します。relay_x をそれぞれ relay_a または relay_b に置き換えます。

IO パス  説明
/fx4/リレー_x/許可/ユーザー_コマンド BOOL リレーの開閉を指示します。true コマンドはインターロックが有効になっている場合にリレーを閉じようとし、false コマンドは常にリレーを開きます。
/fx4/リレー_x/状態 READONLY STRING リレーの現在の状態。
ロックされたリレーは開いていますが、インターロックのため閉じることができません。
状態: 「オープン」、「クローズ」、または「ロック」
/fx4/リレー_x/自動的に_閉じる BOOL true に設定すると、インターロックが許可されたときにリレーが自動的に閉じます。デフォルトは false です。
/fx4/リレー_x/サイクル_カウント 読み取り専用数値。前回のリセット以降のリレーサイクル数。リレーの寿命を追跡するのに役立ちます。

4.5高巻tageモジュール
FX4高電圧の詳細については、IGX - プログラマーマニュアルを参照してください。tage インターフェイス。コンポーネントの親パスは /fx4/high_votlage です。

4.6 投与量コントローラー
FX4 投与量コントローラ インターフェイスの詳細については、IGX – プログラマ マニュアルを参照してください。コンポーネントの親パスは /fx4/dose_controller です。

FX4 パイソンExampレ

5.1 HTTPを使用したデータロガー
この元ampleは、いくつかの読み取り値をキャプチャしてCSVに保存する方法を示しています。 file読み取り間の遅延を長く設定することで、FX4が故障した場合でも長期間のデータロギングを実行できます。ampリングレートは高く設定されています。これにより、システムに負担をかけずに長期間にわたって継続的に測定値を収集して保存することができ、分析に適した間隔でデータがキャプチャされます。読み取り間の遅延により、データが記録されるペースが調整され、効率的な保存が可能になり、高速サンプリングのメリットを享受しながらデータポイントの欠落リスクが軽減されます。ampリアルタイム測定のためのリング。

PYRAMID FX4 プログラマー - HTTP を使用したデータロガーPYRAMID FX4プログラマー - HTTP 2を使用したデータロガーPYRAMID FX4プログラマー - HTTP 3を使用したデータロガーPYRAMID FX4プログラマー - HTTP 4を使用したデータロガー

5.2 シンプルなPython GUI
XNUMX番目の元ample は、Python 用に構築された Tkinter GUI ツールを使用して、測定された電流の表示を作成します。このインターフェイスを使用すると、ユーザーフレンドリなグラフィック形式で電流の読み取り値を視覚化できます。ディスプレイは、部屋の反対側からでも読み取れる大きさにサイズ変更できるため、広いスペースでリアルタイムの監視が必要なシナリオに最適です。Tkinter を使用すると、インタラクティブなインターフェイスを簡単に作成できます。FX4 と統合することで、特定のニーズに合わせてカスタマイズできる測定された電流の視覚的な表示をすばやく構築できます。

PYRAMID FX4 プログラマー - シンプルな Python GUIPYRAMID FX4 プログラマー - シンプルな Python GUI 2PYRAMID FX4 プログラマー - シンプルな Python GUI 3PYRAMID FX4 プログラマー - シンプルな Python GUI 4PYRAMID FX4 プログラマー - シンプルな Python GUI 5PYRAMID FX4 プログラマー - シンプルな Python GUI 6PYRAMID FX4 プログラマー - シンプルな Python GUI 7

5.3 シンプル WebソケットExample
この元ampleは、 Webソケット インターフェイス。これは、最大帯域幅が必要な場合に FX4 からデータを読み取るための推奨される方法です。 Webソケットはリアルタイムの全二重通信チャネルを提供し、他の方法に比べてより高速で効率的なデータ転送を可能にします。
元ampleは一連のsを読みますamplesは1秒あたりの平均時間を報告しますampファイルと最大遅延を計算し、データをCSVファイルに保存します file 後で分析するために、この設定により、効率的なリアルタイム監視と後処理のための簡単なデータ保存が可能になります。
達成できる具体的なパフォーマンス Webソケットは、イーサネット インターフェイスの信頼性とアプリケーションの相対的な優先度に依存します。最適な結果を得るには、ネットワークが安定していること、および必要に応じて FX4 のデータ転送が優先されることを確認してください。

PYRAMID FX4プログラマー - シンプル WebソケットExamplePYRAMID FX4プログラマー - シンプル WebソケットExamp2 番目PYRAMID FX4プログラマー - シンプル WebソケットExamp3 番目

バージョン: v3
FX4 パイソンExampレ:21

ドキュメント / リソース

PYRAMID FX4 プログラマー [pdf] 取扱説明書
FX4 プログラマ, FX4, プログラマ

参考文献

コメントを残す

あなたのメールアドレスは公開されません。 必須項目はマークされています *