この記事で扱っていること
- ケースストラクチャの全ケースをまとめて確認する方法
を紹介しています。
注意:すべてのエラーを確認しているわけではないので、記事の内容を実装する際には自己責任でお願いします。また、エラー配線は適当な部分があるので適宜修正してください。
LabVIEWはプログラムのアルゴリズム(繰り返しや条件分岐など)も全てグラフィカルに表します。
基本的にこのグラフィカルなプログラミング方式は見やすいことが多いのですが、弱点もあり、その一つが条件分岐などの「重なり」が一度に確認できないことにあると思います。
テキスト系のプログラミングの場合、各条件項目を列挙していくのですべての条件についてパッと確認することができますが、LabVIEWでは一つずつの条件しか一度に表示できません。
そこで、全ケースをまとめて確認するための方法として、ブロックダイアグラムの画像を取得しこれをWordファイルに保存する方法をとってみました。
(Wordファイルへの書き込みについてはReport Generation Toolkitを使用しています)
どんな結果になるか
今回紹介するプログラムについては、調べたい対象のviを選択するファイルパス制御器と、生成するWordファイルをどこに保存するかを指定するファイルパス制御器の二つのみあります。
試しに、サンプルのプログラムに対して今回のプログラムを適用したとします。
C:\Program Files (x86)\National Instruments\LabVIEW XXXX\examples\Mathematics\Fitting
にあるサンプルで、ケースは5個あるようです。
すると、次のようなWordファイルを生成できます。
なお、実行前に指定する生成Wordファイルのパス指定は、Wordファイル名(拡張子含む)まで入力する必要があります。
プログラムの構造
対象とするviにはviサーバ経由でアクセスし、インボークノードで画像をHTMLにプリントします。
このとき、ケースストラクチャの各ケースをばらばらに表示するための画像が生成されるのですが、ブロックダイアグラムの画像に対してはファイル名に「d」がつくことを利用してその画像だけ抽出、Wordファイルに書き出していくようにしています。
最後の部分の削除関数がないと、このプログラムで生成したすべてのファイルが残ったままになります。
注意点
実はこのプログラム、保存できるのは「ケースストラクチャ」の全ケースだけではありません。重なって表示されるものも対象となるため、イベントストラクチャやスタックシーケンスストラクチャもそれぞれの中身をWordファイルに画像として貼っていきます。
もし一つのVIにこれらが複数あると、そのすべてについて画像がつきます。
他に方法があるかはわかりませんが、少なくともこの方法で「ケースストラクチャだけ全部見たくイベントストラクチャは見たくない」といった場合には対応できません。
表示状態を変更する
対象とするケースストラクチャによっては、画像の向き(縦、横)が変わっていた方がいい場合もあると思います。
そんなときは、Report Generation Toolkitの関数でレポートの向きを変えられるので試してみてください。
この記事では、ケースストラクチャの全てのケースの中身を画像として保存する方法を紹介しました。
ステートマシンなどLabVIEWのデザインパターンに沿ってプログラムを組んでいくと必然的にケースストラクチャのケースが増えてしまい全体が見通せない、という時に補助的に使えるようなプログラムとして参考になればうれしいです。
ここまで読んでいただきありがとうございました。
コメント