05-16-2011 03:09 AM
いつもお世話になっております。
檀上と申します。
LabVIEW2010(SP1でも同様でした)を使用してソフトを作っているのですが、
タイミングループを4つ並行に動かしていると、
ある日数がたつと、そのうち2つのタイミングループが止まってしまいます。
止まったと判断したのは、各ループに経過時間VIをつけて
現在日時をラベルへ表示させてみたところ2つだけが止まりました。
但し、ループのエラー状態を表示させており、異常は、発生していませんでしたので
異常で止まったのではなさそうです。
ただ、この現象が発生するのがWindows7で、
WindowsXPでは、発生しません。
特に、タイミングループの中で、ループ処理は無い為、
無限ループに陥る事は、ないはずですが…
何か情報がありましたらお教えいただけないでしょうか?
05-17-2011 02:37 AM
05-17-2011 07:27 PM
見目様
情報が少なくてすいません。
まず、処理として、各タイミングループの中で色々な処理を行っています。
1.100msのタイミングループ
①ADボード(CONTEC)からのサンプリング
②グラフへのサンプリングデータ表示
2.200msのタイミングループ
①設定情報のDB(MSDE)からの読込み
3.1000msのタイミングループ
①サンプリングデータのファイル書き込み
②異常チェック
4.500msのタイミングループ
①画面の情報表示
②異常内容のファイル書き込み
上記の順番で優先順位をつけています。
CPUのプロセッサ割り当ては全て自動で行なっています。
2.だけ遅れた処理のチェック2つ(無視・保持)を付けています。
その他は、つけていません。
止まるのは、2.と3.のタイミングループで、
1.と4.は止まりません。
早いときには、2日で止まりますが、長いときで、1週間と特定ではありません。
Windows7で2台のPCにて行なったところどちらにも同じ症状がでるのですが、
WindowsXPでは、此方も2台ですが、どちらも2週間以上動かしていますが、
発生しません。
ソースをお渡しできれば、良いのですが、
ユーザー様が、提供を許されていない為
お渡しが出来ません。
以上ですが、何か他に情報として必要でしょうか?
申し訳ありませんがよろしくお願いします。
05-26-2011 03:27 AM
檀上 様
日本ナショナルインスツルメンツ技術部 見目です。
この度は、弊社ディスカッションフォーラムをご利用頂きまして誠に有難うございます。
ご連絡が大変遅くなりまして申し訳ございません。
タイミングループが止まるとは、何かエラー等が生じていますでしょうか。
それとも、ただ、データベースやファイルへの書き込みが停止しているのみでしょうか。
例えば、ループ2・3をそれぞれ単体で実行するとそれでもループが停止しますでしょうか。
また、Windows 7 とタイミングループで過去の事例は特に報告されておりません。
Windows7では、複数台で生じ、WindowsXPでは生じていないとなると互換性の問題との考えられます。
何かエラーが生じているか、ご確認いただけますでしょうか。
上記内容をご確認いただき、再度ご連絡頂けますでしょうか。
日本ナショナルインスツルメンツ 見目
05-30-2011 09:26 PM
いつもお世話になっております。
檀上です。
返信が遅くなりすいません。
>タイミングループが止まるとは、何かエラー等が生じていますでしょうか。
>それとも、ただ、データベースやファイルへの書き込みが停止しているのみでしょうか。
ループのエラーは発生しません。
ループの中の処理が全く行われなくなる状況になります。
ループの中にあるサブVIの中で、ブレイクを置いても全く反応しない状態になります。
その為、ソフトで停止ボタンをつけて、各ループの終了をおこなっているのですが、
2と3については、ループの終了が実行されませんので、
ソフトが止まったようになります。
最初は、ループの中で、無限ループのようなものを作っているのかとも
思いましたが、片方のループは、ファイルからデータを読むだけで、
特に、ループの処理は行っていません。
>例えば、ループ2・3をそれぞれ単体で実行するとそれでもループが停止しますでしょうか。
単体でのテストしていませんので、確認してみます。
よろしくお願いします。
06-12-2011 10:49 PM
いつもお世話になっております。
アイルネット檀上です。
>例えば、ループ2・3をそれぞれ単体で実行するとそれでもループが停止しますでしょうか。
単体ですと、止まりません。
よって、複合的な感じがするのですが…
他に何かあればお教えください。
よろしくおねがいします。
06-14-2011 02:16 AM
日本ナショナルインスツルメンツ技術部 見目様
いつもお世話になっております。
檀上です。
電話での対応ありがとうございます。
さて、電話中に言われていたループのカウント数の件ですが、
昨日から実行したところ、現象が発生しました。
結論から言いますと、カウント数は動かなくなっています。
ループ止まっていますので、そこに問題があるようですので、
お知恵をお貸しください。
よろしくお願いします。
06-14-2011 07:10 PM
壇上様
ご連絡頂きましてありがとうございます。
カウント数が動かないとは、0から変化しないということでしょうか。
それとも、ある一定の値をこえると動かなくなるということでしょうか。
もし、カウント値が0から変動しないのであれば、Whileループ自体がまわっていないので、
ループ以前の箇所(ループが実行されるまでの箇所)にて、コードが全て実行されているかご確認下さい。
また、Whileループの実行条件、停止条件を今一度ご確認ください。
宜しくお願い致します。
日本ナショナルインスツルメンツ 見目
06-15-2011 10:24 PM
日本ナショナルインスツルメンツ 見目様
いつもお世話になっております。
アイルネット檀上です。
最初には書いていますが、途中で止まります。
タイミングループが止まる時間もまちまちですでの、
0ではありませんし、特定の値でもありません。
突然、カウントの値が止まっており、タイミングループの
エラー値は、0のままで全く進んでいない状態になります。
あと、Whileループは使用しておりませんので、
終了条件等の指定はなく、ある変数がONになったら
ループの終了を行なっています。
よろしくお願いします。
06-15-2011 11:08 PM
壇上様
ご連絡頂きましてありがとうございます。
タイミングループの停止条件である、ある変数がONになる条件は何でしょうか。
この変数は、常にOFFであり、尚且、タイミングループが停止していますでしょうか。
また、単体だと止まらないとのことですが、問題の2つのループのみを実行していると、どちらも停止しますでしょうか。
2つのループでリソースの共有などはありますでしょうか。
何卒、よろしくお願いします。
日本ナショナルインスツルメンツ 見目