NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

LabVIEW、他言語におけるPCI-6259の使用。

お世話になっております。
私は物理系の大学院生です。
 
・経緯
現在、LabVIEWにより信号入力(フォトダイオード電圧)、処理(PID)、出力(ピエゾアクチュエータ)を行う実験システムを開発しております。
このシステムは全体として数十KHzの速度を必要としています。
リアルタイム処理をしたいので入出力は1サンプルごとで行いたいのですが、この方式ですと、速度が追いつきません。
そこで、信号の入出力をC言語などのロウレベルな言語を用い、ダイレクトにデータ収録をすれば、速度を上げることができるのではないかという思いました。
 
・相談
☆まず、PCI-6259というハードウェア自体が数十KHzで1サンプルごとの収録が可能でしょうか?
☆もし上記が可能であれば、このハードウェアを用い、他の言語(C/C++希望)で入出力制御が可能でしょうか?
☆最後に、上記の2事項をクリアできた場合、viにそのソース(or バイナリ?)を組み込む(CIN?)ときにどのようにすればよいのかご教授願います。
 
マニュアルや、このフォーラム、googleを検索した上での質問です。私の調査不足で、もし、どこかに記述があるのであればそのソースだけでもよいので教えて下さい。
よろしくお願い致します。
0 件の賞賛
メッセージ1/2
3,440件の閲覧回数
いつもお世話になっております。
日本ナショナルインスツルメンツ技術部の竹内と申します。

PCI-6259には数KHzで1サンプル毎の集録を行う機能はございますが、LabVIEWにて1ポイントハードウェアタイミングで収録する場合はWindowsOSを使用しているとあまり高いレートでの集録は期待できません。試しにDAQアシスタントで集録モードを「1サンプル(HWタイミング)」で集録を行ってみてください。1kHzを越えたあたりからエラーが発生するようになります。
また、弊社のボードにて単にアナログ入力する場合、その入力の速さは、ボードのサンプリングレートに一致しますが、もしアナログ入力後、計算して、出力するような場合、その計算速度が重要になってきます。ただ、計算の大きさにより状況は大きく変化しますので、ここでどのぐらいの速さで動作するかは、提示できません。
高速で繰り返し制御を行なう場合は、LabVIEW RTというソフトウェアを使用したリアルタイムシステムの仕様をお勧めいたします。

NI-DAQmxがデフォルトパスでインストールされていれば「C:\Program Files\National Instruments\NI-DAQ\Examples\DAQmx ANSI C」にCのサンプルプログラムがございますのでご参照下さい。

LabVIEWには他の開発環境で作成されたDLLやコードを呼び出すのに「ライブラリ関数呼び出しノード」や「コードインターフェースノード」がございます。LabVIEWヘルプに詳細がございますのでご確認下さい。

以上、ご不明な点等ございましたらご連絡下さい。
よろしくお願いいたします。

日本ナショナルインスツルメンツ技術部
竹内
0 件の賞賛
メッセージ2/2
3,380件の閲覧回数