04-29-2015 03:32 AM - 編集済み 04-29-2015 03:32 AM
下記のような構成で、DAQmxのC#ライブラリを使用してNIのデバイスを制御しています
この構成にて、下記のようなチャンネル選択で複数のタスクを平行に(マルチスレッドで)実行するプログラムを記述しています。
しかし、タスク4をCommit状態にしたところで下記のようなエラーが発生します。
NI Platform Services: The specified resource is reserved. The operation could not be completed as specified.
これはタスクで物理・仮想チャンネルがかぶらなくても、1つのNIデバイスにアクセスすることのできるタスクは1つまで、という意味なのでしょうか?
これを回避する方法はないのでしょうか?
回答よろしくお願いします。
解決済! 解決策の投稿を見る。
04-29-2015 04:31 AM - 編集済み 04-29-2015 04:32 AM
タスク4のコミットでトラぶってるのは、1つのモジュールに別々のタスクからアクセスしようとしていることが原因では?
>> 1つのNIデバイスにアクセスすることのできるタス
正確には、1つのNIデバイスの1機能にアクセスできるタスクは1つだけです。
9205のタスクは纏めれないんでしょうか。
GEN II CompactDAQシャーシ(cDAQ-9171/9174/9178/9181/9184/9188/9188XT/9191)で、同時に実行できるタスクの数はいくつですか
http://digital.ni.com/public.nsf/allkb/3123AE6550B433A886257D080002941E
併せてこういった資料もありますので、cDAQでのプログラミングにはご注意ください。
05-11-2015 10:02 AM
05-11-2015 08:44 PM - 編集済み 05-11-2015 08:45 PM
返信ありがとうございました。
リンク先などの資料で、アナログ入出力タスクの制限数について理解出来ました。
NI 9205に割り当てていたタスクを1つにまとめて使用することで解決することにしました。