スニペットライブラリ

(536d) 更新

公開メモ

このページの使い方

ブロックダイアグラムは VI スニペットになっているので、 LabView へドラッグ&ドロップしてそのまま使えます。

プログラミング/LabView/VIスニペット

値が変化したことを検出する

今回の値が前回と異なるかどうかを返します。

複数の値を同時にチェックできます。

プログラミング/LabView/繰り返さないループで内部状態を保持 のテクニックを使っています。

detect_change.png

ループの部分だけを選んでサブVI化してもいいかもしれません。

使用例

detect_change-example.png

値が変化したことを検出する(別解)

detect-change2.png

フィードバックノードを使った方がシンプルかもしれない。

LabView のライブラリでは上記の反復しないループを使う書き方が多いけれど、 何かメリット・デメリットがあるのだろうか?

ループの枠で囲まれていない分、遅延が視覚的にわかりにくいというのはあるかも。

ゲート動作

ゲートがオンの時だけ入力値に出力値が追従する。

gating.png

フィードバックを使うとすごくシンプルに書けるけれど・・・ 読みやすいかといわれると疑問???

波形生成サンプル

パラメータを動的に変更可能な任意波形生成のサンプルです。

wave-generator-panel.png

wave-generator.png

フォーミュラノードの中を書き換えれば任意の波形を生成できます。

位相と t0 の生成に プログラミング/LabView/繰り返さないループで内部状態を保持 のテクニックを使っています。

周期的でない波形を作るには「商&余り関数」を外します。

  • 水色の枠で囲った部分
  • 位相を順次生成 のループ
  • t0を順次生成 のループ

の3つをサブ VI 化した上で、 上で黄緑で囲った部分をサブ VI 化し、実用的にしたものが プログラミング/LabView/波形発振器 にあります。


Counter: 791 (from 2010/06/03), today: 5, yesterday: 0