プログラム的にVIにある制御器の値をリセットする

更新しました Jan 9, 2019

使用製品

Software

  • LabVIEW Full
  • LabVIEW Base
  • LabVIEW Professional

Programming Language

  • LabVIEW G

問題

  • 各VI実行の開始時にフロントパネルにあるすべての制御器値をデフォルトにリセットするにはどうすればよいですか?
  • VIのフロントパネルにある値が、前回の実行から引き継がれることがあります。フロントパネルにあるすべての制御器の値をプログラム的にリセットする方法はありますか?

解決策

まず、フロントパネルの制御器に手動で設定してからそれぞれを左クリックして、データ操作>>現在の値をデフォルトにするを選択し、希望するデフォルト値を指定する必要があります。または、すべてのフロントパネルにある制御器を手動で希望の値に設定し、編集ツールバーに移動して現在の値をデフォルトにするを選択して、一度にすべての制御器をデフォルトに設定することもできます。その後、各VI実行の開始時にプログラムでこれらの値にリセットするようにVIを構成することができます。

LabVIEWバージョン8.0以降を使用している場合は、VIクラスのデフォルト値.すべてをデフォルト設定に戻す(Default Values.Reinitialize All to Default)にメソッドがあります。 このメソッドは、メニューオプションにある編集>>現在の値をデフォルト設定にすると同様です。
 

  1. ブロックダイアグラムウィンドウを選択します。
  2. クイックドロップを起動します(<Ctrl-Space>を押します)。
  3. 「VIサーバリファレンス」と入力して、一番上の結果をダブルクリックします。
  4. 左クリックして、ダイアグラムに「このVI」ボックスを配置します。
  5. ワイヤリングツールが表示されるまで、右側にカーソルを合わせます。
  6. 出力端子を右クリックして、作成>>VIクラスのメソッド>>デフォルト値>>すべてをデフォルト値に戻すを選択します。​
  7. VIサーバリファレンスの出力をインボーグノードの左上の入力に配線します。




8.0より前のバージョンのLabVIEWでは、制御器クラスメソッドにある制御器.Dfltに初期化(Control.Reinitialize To Default)を使用して、フロントパネルにある各制御器のデフォルト値を個別に設定する必要があります。以下に示すように作成すると、VIのフロントパネルにあるすべての制御器を反復処理できます。

  1. ブロックダイアグラムウィンドウを選択します。
  2. クイックドロップを起動します(<Ctrl-Space>を押します)。
  3. 「VIサーバリファレンス」と入力して、一番上の結果をダブルクリックします。
  4. 左クリックして、ダイアグラムに「このVI」ボックスを配置します。
  5. ワイヤリングツールが表示されるまで、右側にカーソルを合わせます。
  6. 右クリックして、作成>>VIクラスのプロパティ>>フロントパネルを選択します。


 

  1. 新しく作成したプロパティノードのパネル出力を右クリックし、作成>>パネルクラスのプロパティ>>制御器[]を選択します。


 

  1. クイックドロップを起動します(<Ctrl-Space>を押します)。
  2. 「For Loop」と入力して、一番上の結果をダブルクリックします。
  3. Forループをクリックアンドドラッグして配置します。
  4. クイックドロップを起動します(<Ctrl-Space>を押します)。
  5. 「インボーグノード」と入力して、一番上の結果をダブルクリックします。
  6. ループ内にインボーグノードを配置します。
  7. 下図に沿って、これらの要素を配線します。


 
  1. インボーグノードのメソッドをクリックして、「すべてをデフォルト値に戻す」を選択します。

この記事はお役に立ちましたか?

いいえ