Hands-On Introduction to LabVIEW for Scientists and Engineers (Oxford University Press)

auto-indexingとIndex Array (指標配列)と / 排列の要素を順番に1個ずつ何かへ渡す

auto-indexingはループの出口で排列が構築できるだけでなくループの入口から排列の要素を1個ずつ出力することもできる。 トンネルをauto-indexingに設定した場合は、N個の要素から成る排列がforループに入るときにループ回数がN回に自動的に設定されるので、…

4枚のコインを投げて表の出たコインの数を数える、を何度も繰り返してヒストグラムにする

FourFlippingCoins.vi - Google ドライブ coins.tns - Google ドライブ num_of_heads:=seqn(sum(randInt(0,1,4)),10000) .py import matplotlib.pyplot as plt import numpy as np numOfHeads = np.sum(np.random.randint(0, 2, [10000, 4]), axis=1) plt.hi…

エラーリスト

VIにエラーがあると実行ボタン(⇨)がやぶれた状態となる。この状態では実行できない。このやぶれた実行ボタンを押すとエラーリストが表示される。

プローブを使って一時的にどこかの何かを見る

目的の配線を右クリックして[プローブ]を選択するか、ツールパレットのProbe Toolを選択してから目的のワイヤーをクリックするか、いずれかを行う。 [プローブ監視ウィンドウ]が開くので、その状態でVIを実行すればプロービングできる。下の図は太線を流れる…

排列配線を通る排列の中身を見る

フロントパネルで[制御器]、[モダン]、[配列、行列&クラスタ]、[配列]の順に選択して配置する。 フロントパネルで[制御器]、[モダン]、[数値]、[数値表示器]の順に選択して、配列シェルの中に配置する。左の数字がインデックス、右の数字が要素の値。 配線し…

波形チャート、波形グラフ、XYグラフ

グリッドがなくてオレンジで、データポイントが横に流れていて今まさにプロットしていますよというような感じなのが波形チャート。 グリッドがあってオレンジなのが波形グラフ。 グリッドがあって茶色なのがXYグラフ。用途については今のところわからない。

波形グラフ / x軸初期値、x軸刻み幅、排列要素をバンドルでクラスタ化して波形グラフに渡す

波形グラフへは排列が直接渡せるが、インデックスの初期値と刻み幅とを変えてそれぞれをバンドルでクラスタ化してから渡すこともできる。 バンドルの一番下の入力端のブラケットは排列を受けることを表している。 下のVIは、indexを5で割ってsin()の引数にし…

波形グラフ / サインカーブを描く

ループしている最中はトンネル内でデータがどんどん排列に追加され、ループが終了したときに、出来上がった排列がトンネルから波形グラフへ渡される。 wavegraph.vi - Google ドライブ

細い線、太い線、トンネル、Indexing

細い線は数値が1個だけ通ることを表している。太い線は1次元排列の通ることを表している。トンネルは今 のようにブラケットになっているが、 これはこのトンネルで排列が作られることを表している。 トンネルのコンテキストメニューには[指標]とあるが原文は…

オブジェクトのコピー

目的のオブジェクトにカーソルを置いてctrlキーを押しながらドラッグする。Windowsにおける一般的な操作と同じである。

Toolsパレット / Automatic Tool Selectionボタン

Automatic Tool Selectionがオフのときは、スペースキーを押すとPositioning (↖)ツールとWiring (糸巻き)ツールの2つだけがトグルされ、tabキーを押すと、Operating (人差し指)、Positioning (↖)、Lebel (A)、Wirigin (糸巻き)の4つのツールが巡回される。

波形グラフ

LabVIEWで使われる主なグラフには「波形チャート」「波形グラフ」「XYグラフ」の3つがある。 波形チャートと違って波形グラフは、n個の要素から成る1次元排列を引数に取る。 要素の値がy軸の値として、インデックス(0ベース)がx軸の値としてプロットされる。…

波形チャートの背景色を変える / [背景色]プロパティノード、[フレーム付きカラーボックス]制御器

ブロックダイアグラムに波形チャートの[背景色]プロパティノードを配置する。ループ内に配置する。 フロントパネルに[フレーム付きカラーボックス]制御器を配置する。 フロントパネルのカラーボックスをクリックすると色が変えられる。 colorWaveformChart.v…

VIの開始時に波形チャートのデータをクリアする / [履歴データ]プロパティノード

波形チャートの[履歴データ]プロパティノードに空配列を配線しておけばよい。こうすればVIの開始時に波形チャートのデータがクリアされる。このプロパティノードはループの外に配置する。 clearWaveformChart.vi - Google ドライブ

何かのプロパティをブロックダイアグラム上のオブジェクトで設定できるようにする / Property Nodeを使う

plotSinProperty.vi - Google ドライブ たとえば波形チャートの[スケール]タブ→[スケール変数]→[乗数]プロパティを、ブロックダイアグラム上のオブジェクトで設定できるようにしてみる。 ブロックダイアグラム側の波形チャートを右クリックして下のように選…

サイコロを振ったときに目的の目が出るまでの回数を数える

[乱数(0-1)]アイコンは0 ≦ x < 1の乱数を生成する。 saikoro.vi - Google ドライブ python: import math from random import random def saikoro(N): i = 0 while True: i += 1 if N == math.ceil(random()*6): break return i print(saikoro(5))

iteratorが奇数か偶数かに応じて2つのLEDを交互に点滅させる

BlinkingLED2.vi - Google ドライブ

Lチカを行う

iteratorがインクリメントするたびに点灯、消灯を繰り返す。 BlinkingLED.vi - Google ドライブ

ループ回数を1000回でとめて、その間にサインカーブを1周期ぶん描く。

plotSingleSin.vi - Google ドライブ

iteratorが任意の数を超えたらLEDを点ける

isGreaterThanN.vi - Google ドライブ

VIの開始時にユーザー入力を求める

[関数]、[プログラミング]、[ダイアログ&ユーザインタフェース]、[ユーザー入力プロンプト]を使う。 この設定にしてVIを開始すると、開始時にユーザー入力が要求される。 ブロックダイアグラムの[実行のハイライト]アイコン(電球)を押した状態でVIを実行する…

WhileループとWait (ms)とを使ってストップウォッチを作る

p.74のDO IT YOURSELF: 0.01秒刻みのストップウォッチを作る。 もっと良い方法があると思うが今のところわからない。 [停止ボタン]は、押した瞬間にループがとまるようにしたいので[押されたらラッチ]にする。この設定にすると、ボタンを押した瞬間に値がfal…

波形チャートに正弦波をプロットする

波形チャートは要するにストリップチャートのことである。 plotSin.vi - Google ドライブ

automatic creation機能

端子に配線アイコンを置いた状態で右クリックして[作成]、[定数]の順に選択すると、その端子に配線された状態で数値定数アイコンが配置される。値もハイライトされているのでそのままキーボードから入力できる。

[停止ボタン]のデフォルト設定

デフォルトは[放されたらラッチ]である。ボタンから指を放したときに値が変化する(すなわちfalseからtrueへ変化する)。その値が読み取られると元の値(すなわちfalse)に戻る。

[表示項目]→[スケール凡例]、自動スケール

x軸は今南京錠が解錠されているので自動スケールがオフになっている。y軸は今南京錠が施錠されているので自動スケールが常時オンになっている。lockアイコンをクリックすれば切り替えられる。 真ん中のボタンをクリックすれば1回だけ自動スケールにできる。

赤いcoercion dot

アイコンの入力端に表示された赤い点のこと。データ型が一致していないことを表している。下の例では引数が整数から浮動小数点数へ型キャストされている。

Whileループ

いわゆるdo ~ while()である。デフォルトはwhile(false)。 conditional terminalをクリックすれば、コンテキストメニューを開かなくてもwhile(false)とwhile(true)とがトグルできる。 iteration terminalは0ベースである。

ループと条件分岐と

ループや条件分岐は、[関数]→[プログラミング]→[ストラクチャ]に分類されている。 [関数]→[プログラミング]→[Express]→[実行制御]→[ボタン付きWhileループ]というのもある。最初から[停止ボタン]が配線されている。

チャートとグラフと

Waveform Chartは、新たなデータポイントが生成されると同時にリアルタイムプロットを行う。いわゆるストリップチャートのこと。 Waveform GraphおよびXY Graphは、事前に生成された一連のデータポイントを表示する。