この記事は、初心者向けのまずこれシリーズ第17回の補足記事です。サブVIを作れるようになったらこういったことにも意識を向けるとあとあと便利ですよ、という内容を紹介しています。
サブVIを作れるようになったら、よりよいVIを目指すことにも気を付けていけるとなおよいです。
よりよい、は曖昧な表現ですが、要は見やすい、わかりやすいということです。作ったVIを一か月後見て何をしたかったのかわからないのはいいVIとは言えないですね。後から見てもちゃんと意味が分かるようにしておくと、保守性、デバッグのしやすさにも優れたプログラムになります。
よりよいプログラムにするには、LabVIEWのヘルプから見れるLabVIEWスタイルチェックリストを参考にするといいようです。

ただこのチェックリストをすべて読んでこの通りにするのはなかなか大変です。そこで、個人的な観点ですが、サブVIを作るに用意するにあたってはこういったことに気を付けるとほうがいいという項目についてまとめてみました。
※このブログの他のページで紹介しているプログラムではこれら全部をやれてるわけではないのですが、他の人と共有するときや後で見返すときに便利なもの、ということで紹介していきます。
- フリーラベルをつける
- ドキュメントを用意する
- アイコンを編集する
- ワイヤのラベルを設定する
- ヒントラベルを編集する
以下で一つ一つ見ていきます。
フリーラベルをつける
他の言語でも同様ですが、コメントを残すのはプログラムを書く上で重要です。VIの特定のコードに対してどういったアルゴリズムなのか、ループ等のストラクチャにもサブダイアグラムを設定することで説明をつけておきます。
ラベルでは矢印をつけて特定の部分を指し示すことができます。また、ラベルの色を変えることもできるので、コメントの種類に応じて区別させることもできます。

ドキュメントを用意する
関数として用意したサブVIについてどのような機能を持つか、どういった入力や出力を持つかはドキュメントとして残しておくことができます。
このドキュメントは詳細ヘルプ中で表示されるテキストになるので、後からプログラムを流用するときなどにプログラムの使い方等を思い出すときにも役に立ちます。

アイコンを編集する
LabVIEWの最大の特徴であるグラフィカルなプログラムも、サブVIがデフォルトのアイコンだとむしろわかりにくくなってしまうことさえあります。
テキストやグリフを駆使してなるべくそのサブVIの機能を端的に表現するような見た目を心がけます。

なお、アイコンの編集については、画像ファイルを使用して簡易的にアイコン化するためのプログラムもあります。ご興味がある方はこちら確認してみてください。
ワイヤのラベルを設定する
ラベルはワイヤにも付けることができます。
やり方は簡単で、ワイヤを右クリックして表示項目からラベルを選択するだけです。
LabVIEWではワイヤの色や太さでデータタイプやスカラなのか配列なのかを区別することができますが大きなプログラムだと同じ色のワイヤが複数出てきます。そこでそのワイヤにどういったデータが通っているかを書き記しておくことで、LabVIEWにおけるデータフローを簡単に追いやすくなります。

ヒントラベルを設定する
これはサブVIに限らない話ですが、フロントパネル上の各制御器や表示器の使い方についてプログラムの実行中にヒントを表示させることができます。
例えば特定の数値制御器への入力値はどういった値とするべきかについて、ユーザーに通知させることができます。
なお、同じ画面で、制御器や表示器に対する詳細ヘルプの説明文も編集できます。

LabVIEWは他の言語にはない視覚的な表現でプログラムを書けるものの、その特性を十分に活かしかつプログラムの保守性、可読性を高めるための工夫がなければ良さが減ってしまいます。
個人でプログラムを作る場合であっても、後からプログラムを修正する際に「このプログラム、何やっていたんだっけな」という混乱や勘違いを減らすためにも、上記の内容は意識しておいた方がいいと思います。
ここまで読んでいただきありがとうございました。
コメント