« 追加仕様 | トップページ | CONTEC社ADカードAD16-16U(PCI)EVとアナログデバイセズ社差動アンプAD620ANZ »

2009年10月27日

WindowsリアルタイムIO制御プログラムからAD等のロギング制御

WindowsリアルタイムIO制御プログラム(MOS言語)から、AD等のロギング制御する。

■MOS言語のプログラム例

以下のように、MOSプログラムで記述する。

  a = AnalyzerStart(); //ロギング開始

    // ログを取りたいIO制御処理(加工プロセスの記述)

  Sleep(300); //ロギングデータを取りこぼさないために

  a = AnalyzerStop(); //ロギング停止

  a = AnalyzerStoreData( "test.csv"); //ファイルに保存

■ロギング制御の実際

Windowsリアルタイム動作波形ロギングツール「Motiware Analyzer(モウティウェアアナライザ)」を起動して、ロギングしたい項目

 IO 4点

 AD入力 3点

等、選択しておく。

次に、ロギング制御を含むMOSプログラムを実行する。

Analyzer_start_8

クリックで拡大します。

画面の波形では、IOが8の値で停止している。

期待は、

  WritePorts( 5121,4,9);

を実行してIOの値が9までロギングしてほしい。

ロギングが停止命令のAnalyzerStop関数実行より時間的に前で停止してしまっている。

これは、サンプリングバッファ上にデータが残っていても、AnalyzerStop関数実行時点でロギングが停止することによる。

ゆえに、バッファ上のデータを抜き取るまで、約300ms程度、Sleep関数で待ってから、AnalyzerStop関数を発行してほしい。

このへんは、お客様ご理解ください。

■実際のロギングデータ

IOデータの4点をワクで囲んであります。

その右側が、AD入力データです。

最後のサンプリングは、10月27日18時01分50秒797ms518us600nsのデータ。

Analyzer_start_csv

クリックで拡大します。

■MOSプログラムソース

「AnalyzerStart.mos.c」をダウンロード

■デスクトップとの対話をサービスに許可

コントロールパネル-パフォーマンスとメンテナンス-管理ツール-サービス

でMwControllerをクリックして、

デスクトップとの対話をサービスに許可しておいてください。

Photo

Link: 

プライムモーション社(みんなで手軽にWindowsリアルタイムIO制御)

プライムモーション(Windowsで手軽にリアルタイムIO制御)

|

« 追加仕様 | トップページ | CONTEC社ADカードAD16-16U(PCI)EVとアナログデバイセズ社差動アンプAD620ANZ »

技術Windowsでリアルタイム制御」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« 追加仕様 | トップページ | CONTEC社ADカードAD16-16U(PCI)EVとアナログデバイセズ社差動アンプAD620ANZ »