デバイス内同期(ジェネレーティング・サンプリング)


外観

概略

1つのデバイス内部で、ジェネレーティング/サンプリングを同期して動作させるサンプルです。

ジェネレーティングをマスター、サンプリングをスレーブとします。

このサンプルプログラムは、アナログ出力機能、および、アナログ入力機能を持ったデバイスの選定が必要です。

同期動作については、イベントコントローラ使用例1の記載内容を参考にしてください。

 

サンプル仕様

※サンプルプログラムの初期値です。デバイスドライバの初期値と異なりますので、ご注意ください。

プログラム名

InternalSyncGeneratingSampling

変換データ転送方式

0(デバイスバッファモード)

開始条件

マスター:0(ソフトウェア)

スレーブ:10(イベントコントローラ出力)

クロック種類

マスター:0(内部クロック)

スレーブ:10(イベントコントローラ出力)

停止条件

マスター:0(設定回数変換終了)

スレーブ:10(イベントコントローラ出力)

メモリタイプ

0(FIFO)

データ保存用バッファサイズ

1MByte

イベント

マスター: デバイス動作停止イベント、オーバーフローイベント、ジェネレーティングクロック周期エラーイベント、DA変換エラーイベント

スレーブ: デバイス動作停止イベント、オーバーフローイベント、サンプリングクロック周期エラーイベント、AD変換エラーイベント

 

使用手順

1.希望するプログラム名を指定し、プログラム実行させると、上記のような外観のウィンドウが表示されます。

  ソフトウェアのバージョンによっては外観が異なることがあります。

 

2.デバイス初期化処理

 ・デバイス名に、デバイスマネージャーで設定したデバイス名を指定し、[AioInit]ボタンを押します。

  指定デバイスの利用開始することをデバイスドライバへ通知します。

 

3.アナログ入出力設定

 ・ジェネレーティング(マスター)内のアナログ出力設定「レンジ:」を指定します。

 ・サンプリング(スレーブ)内のアナログ入力設定「レンジ:」を指定し、「入力方式:」も指定します。

 ・[アナログ入出力設定]ボタンを押すと、上記の指定内容が、デバイスドライバへ通知されます。

  利用するデバイスによっては、デバイス上のジャンパーピンで入出力レンジを変更しないと設定が有効とならない場合があります。

 

4.ジェネレーティング設定、サンプリング設定

 ・ジェネレーティング(マスター)内の「チャネル数:」設定で、希望するチャネル数を指定します。

  なお、開始チャネル番号は0ch固定です。例えば、チャネル数 3を指定した場合、0ch~2chからのデータ出力となります。

 ・ジェネレーティング(マスター)内の「ジェネレーティングクロック周期:」設定で、希望するジェネレーティングクロック周期を[μsec]単位で指定します。

  指定できるジェネレーティングクロック周期の最小値は、利用するデバイスによって異なります。

  また、指定したチャネル数の値も考慮する必要があります。

  詳細は、[用語集]サンプリング クロックエラーの項目を参照ください。

 ・ジェネレーティング(マスター)内の「ジェネレーティング回数:」設定で希望するジェネレーティング回数を指定します。

 ・サンプリング(スレーブ)内の「チャネル数:」設定で、希望するチャネル数を指定します。

  なお、開始チャネル番号は0ch固定です。例えば、チャネル数 3を指定した場合、0ch~2chからのデータ入力となります。

 ・[ジェネレーティング/サンプリング設定]ボタンを押すと、、上記の指定内容が、デバイスドライバへ通知されます。

 

5.同期動作の設定

 ・[同期動作設定]ボタンを押すと、開始条件、クロック条件、停止条件が、デバイスドライバへ通知されます。

 

6.出力データ設定

 ・[出力データ設定...]ボタンを押すと、「ジェネレーティング回数:」設定で指定した点数のデータをもつ、ジェネレーティング用のファイルが生成されます。

  出力データを生成した後、デバイスドライバへ出力用ファイルを通知します。

 

  生成ファイルの格納フォルダー: (カレント フォルダー) ※EXEファイルと同じフォルダー

  生成ファイル名: GeneratingData.csv

  生成データ: 指定レンジに応じた正弦波(サイン波)が生成されます。指定したジェネレーティング回数で1周期となります。

         複数チャネルの場合、位相が1/4周期(90度)遅れた正弦波(サイン波)が、各チャネルに対して生成されます。

  生成ファイル例:
  

 

7.ジェネレーティング/サンプリング動作

 ・[ジェネレーティング/サンプリング開始]ボタンを押すと、デバイスからデータ出力が開始されます。

  ジェネレーティングクロックと同じタイミングで、データサンプリングも行われます。

 ・[状態取得]ボタンを押すと、「ジェネレーティング回数:」や、「サンプリング回数:」の表示値が更新されます。

 ・[ジェネレーティング/サンプリング停止]ボタンを押すと、デバイスからのデータ出力と、データサンプリングが停止します。

 ・指定したジェネレーティング回数までデータ出力が完了、もしくは、ジェネレーティング停止すると、デバイス動作停止イベントが発生します。

  イベントが発生すると、「サンプリングデータ:」テキストボックス内に、サンプリングされたデータ値が表示されます。

 

8.サンプリングデータの保存

 ・[取得データファイルの出力...]ボタンを押すと、テキストボックス内に表示されたサンプリングデータをテキストファイルへ保存することができます。

  サンプリングファイル例:
  

 

9.終了処理

 ・[AioExit]ボタンを押し、現デバイス利用が完了したことデバイスドライバへ通知します。

  プログラムを終了させることなく、異なるデバイス(例:AIO001など)からデータ出力ができます。

  再び、データ出力処理を行う場合は、新たなデバイス名を指定の上、[AioInit]ボタンを押し、デバイス初期化処理を行ってください。

 

10.プログラムの終了処理

 ・ウィンドウ内の[閉じる]ボタンを押し、プログラムを終了させます。