NI製品ディスカッション

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

ブールのカウント

はじめて投稿します。

添付のようなVIで閾値がある一定の回数超えたらプログラムを終了したいですが、うまく言っておりません(今回の場合は5回)。

ただケースストラクチャ内にローカル変数を入れると情報が反映されていないようです。

アドバイス頂けたら幸いです。

 

 

0 件の賞賛
メッセージ1/8
4,463件の閲覧回数

しっかり組んでらっしゃいますが、ローカル変数をあちこちで使っているので、

競合が発生してしまっている状況です。

こちらの、ローカル変数のセクションを一度読んでください。

http://www.ni.com/newsletter/51735/ja/

 

その上で、カウント値はシフトレジスタなどに保持すべきです。

 

イメージとしては下記のようになるかと思います。

すにぺっと.png

Certified LabVIEW Developer
There are only two ways to tell somebody thanks: Kudos and Marked Solutions

GCentral
0 件の賞賛
メッセージ2/8
4,422件の閲覧回数

Pignite様

 

ありがとうございます。

ご紹介頂いたページを読ませて頂き、まさに初心者が犯しがちなミスをしておることに気づきました。一度しっかり基礎から学んだ方が良いと最近強く感じております。

 

それを承知でもう一点質問させて頂きたいです。

実際のプログラムはもう少し複雑にしておりまして、ケースストラクチャの項目が5つくらいあります。

そのうちの一つで5回以上ブールをカウントした場合に試行を止めたいのです。ただケースストラクチャ―内にローカル変数を入れてもカウントしないという問題があり、その解決策を模索しております。

ご提案頂いた方法でも実際のプログラムの修正を行ってみたいと思いますが、何か良い方法がありましたらお願い致します。

 

0 件の賞賛
メッセージ3/8
4,404件の閲覧回数

コードを拝見していないのでなんとも言えませんが、ケースストラクチャの項目毎に、

しきい値を超えたらカウンタを "+1" するようなコードを実装し、そのカウンタ値をローカル変数で渡すことになるかと思います。

 

イメージとしては下記のような形です。

 

My.png

Certified LabVIEW Developer
There are only two ways to tell somebody thanks: Kudos and Marked Solutions

GCentral
0 件の賞賛
メッセージ4/8
4,384件の閲覧回数

Pignite様

 

下記ありがとうございます。こちらで上手くいきそうです。

もし可能でしたら関連する問題にもアドバイス頂けましたら助かります。

添付のVIで閾値を決定してそれぞれ異なる音による結果のフィードバックを行いたいのですが、beep音の設定がうまくできません。よろしくお願いします。

0 件の賞賛
メッセージ5/8
4,357件の閲覧回数

「beep音の設定がうまくできない」とのことですが、何が問題なのか記載いただかなくては、

問題解決へのアドバイスはできません。

 

また、beep音の関数を今までのコードに組み込んでいますが、単体でのテストはされたのでしょうか?

いきなり全体のVIに組み込んでしまうと、beep音の設定が悪いのか、ほかのコードが悪いのか判別できません。

 

こちらに非常に良いサンプルがありますので、参考にしてみてください。

アラート音[ Alart Sound ]

Certified LabVIEW Developer
There are only two ways to tell somebody thanks: Kudos and Marked Solutions

GCentral
メッセージ6/8
4,343件の閲覧回数

Pignite様

 

ご紹介頂きましたVIを参考に色々試みていたのですが、やはり解決に入っておりません。

添付の「ブールカウント_sound1」にありますように、ある範囲内にデータが来た場合とそれを超えてしまった場合で音を変えたいと考えています。「ブールカウント_sound1」のようにbeep音を2つ置くと競合しているのか、非常に動きが遅くなってしまいます。一方、「ブールカウント_sound2」のようにしますとスムースにプログラムは動きますが、音が1種類しか出ません。

解決方法がございましたらお願いします。

すべてをダウンロード
0 件の賞賛
メッセージ7/8
4,277件の閲覧回数

ビープ音の関数は、複数箇所で同時に使用すべきではないと思います。

ビープ音を出力するためのリソースは、Windows OS上に一つしかないからです。

 

周波数を変更するのであれば、下記のように関数に入力する周波数のみを変更するようにされたほうが、

競合の問題が発生しないかと思います。

 

Beep Image.png

Certified LabVIEW Developer
There are only two ways to tell somebody thanks: Kudos and Marked Solutions

GCentral
メッセージ8/8
4,262件の閲覧回数