LabVIEWでプログラムを書くときの強みの一つは、ユーザーインタフェースであるフロントパネルをドラッグアンドドロップの操作だけで簡単に構築することができることだと思います。
本ブログのまずこれのシリーズでは主にプログラムのアルゴリズムの部分の書き方について解説してきましたが、アルゴリズムを知っているだけではプログラムは書けず、どのような選択肢があるかということも知っておく必要があります。
使い方集は、まずこれのシリーズでステートマシンまでの知識はある程度知っている前提で、アルゴリズム以外に関わるプログラムの書き方について紹介するシリーズです。
本記事ではプログラム作成後にユーザーが使用する、あるいはプログラムのメンテナンス時に有用な、ヘルプファイルの扱いについて紹介しています。
ヘルプファイルを作る
プログラムというのは、ただ単に実現したい処理ができるようなコードを記述して実際に実行できればそれで終わり、というものではなく、作成者と使用者が異なる場合、あるいは作成者が後継の人に作成を受け継ぐ場合などで困らないように、「何をしているのか」を情報として残しておくことが大切だったりします。
そんな場合に、プログラム(LabVIEWのブロックダイアグラム)にフリーラベルを用いて「この部分ではこういう処理をしている」ということを残しておく以外にも、使い方全体の説明をいつでも参照できるようにしておくということは案外見落とされがちです。
パソコン上で動くアプリケーション、プログラムというのは大体ヘルプページが存在し、そこに使い方についての説明、紹介が載っているもんです。であればLabVIEWで作ったプログラムに対しても、そのプログラムに対するヘルプファイルは何らか用意しておく必要があります。
とはいってもどうやってヘルプファイルを作ればいいかわからない、そんな方には、VIドキュメントをヘルプファイルとして見れるようにする方法がそれなりに便利だと思います。
もちろんヘルプの書き方に絶対的なルールなんてないので、「こうしなければならない」ということを本記事で紹介することはできません。ですが、そんなに難しくなく簡易的にヘルプドキュメントを作成することはできます。
具体的には、以下のような資料を作成し、これをヘルプファイルとして、メニューバーの「ヘルプ」から参照できるようにする、ということを紹介していきます。
VIドキュメントをヘルプとして構成する
では、VIドキュメントをヘルプとして構成する方法を紹介するのですが、そのためにこの「ドキュメント」というものを用意する必要があります。
今回は、上でも既に見せていましたが、以下のような正弦波を生成するプログラムを例にとります。
ここで用意するドキュメントは
- それぞれの制御器、表示器に対するドキュメント
- VIそのものに対するドキュメント
の二つです。
まず、制御器、表示器に対するドキュメントは、設定したい制御器や表示器を右クリックしてプロパティを選択し、「ドキュメント」タブを選んでここに説明を書き込みます。
これを、フロントパネル上にあるすべての制御器および表示器に対して行います。
実際問題、制御器や表示器が大量にあって全てにドキュメントの設定をやるというのが大変な場合には、ラベルだけでその制御器や表示器の役割を説明しきれていないもの、あるいは使用上の注意があるものに絞ってドキュメントを用意すればいいと思います。
なお、例えば配列なんかは、その配列そのもの以外に、配列の要素のデータに対しても別途ドキュメントを作成できます。
次に、VIのドキュメントですが、これはVIプロパティの「ドキュメント」カテゴリで行えます。
これで、ドキュメントの準備は終わりました。あとはこれをヘルプファイルとして参照できるようにします。
ここでは、webブラウザ上にヘルプを表示するような使い方を例にとります。プロジェクトテンプレートのサンプルもwebブラウザで見れるようなhtml形式になっていますし、これにならいます。
ではどうやってhtmlファイルを用意するかというと、印刷の機能を使います。
印刷を使用して、内容をカスタマイズしていきます。
カスタマイズできる項目は複数あるのですが、ヘルプを見る際にブロックダイアグラムが載っている必要はあまりないと思うのでこれは選択しない場合が多いと思います。
その後、HTMLファイルで出力することを指定して保存します。
保存先はどこでもいいのですが、なるべくわかりやすいところ、例えばヘルプファイルを用意したVIと同じ階層に専用フォルダを作成しそこに保存するのがいいと思います。
専用フォルダを用意するのは、HTMLファイルが作成される段階で画像ファイルも大量に生成されてファイルがごちゃごちゃするのを防ぐため、という理由なので、VIと同じ階層に作るのでも使用するには問題ありません。
ただし、後述するように、最終的にプログラムをEXE形式にビルドしてそのEXEでヘルプを使用する場合にはやはり専用フォルダを用意しておくのが便利です。
これで完成です。印刷し終えて生成されるhtmlファイルを、VIプロパティの「ドキュメント」カテゴリのヘルプファイルの設定のところで指定してあげます。
これで全ての準備が整いました。VIのメニューバーのヘルプから「このVIのヘルプを見る」を選択(ヘルプファイルが指定されていない場合にはこの選択肢はグレーアウトしています)することで、webブラウザ上に表示させることができます。
また、詳細ヘルプの「オンラインヘルプ」でも同じ結果となります。
プログラム的にヘルプファイルを構成、作成、設定まで行う
各制御器や表示器およびVIそのものへのドキュメントを用意するのは避けようがないのですが、その後の印刷およびVIプロパティで印刷したhtmlファイルを指定する部分は面倒っちゃ面倒です。(設定項目がとても多いわけではないですけれどね)
この、「その後の印刷およびVIプロパティで印刷したhtmlファイルを指定する」はプログラム的に行うことができるのですが、それにはReport Generation Toolkitを使用します。
プログラム的に行う方法の一例を紹介します。
ただし、この方法は「印刷」で設定して作成したヘルプファイルとかなり近いのですが、微妙に異なるhtmlファイルが生成されます。
もちろん、どちらか好みで選べばいいので、見た目や面倒くささを基準にどちらの方法を採用するか選んでみてください。
EXEでヘルプを使えるようにする
EXEでもヘルプを見れるようにするためには、まず前提として、元となるVIにて、VIプロパティでヘルプパスが指定されていて正しく見えている状態にしておきます。
そして、ヘルプに関係するhtmlファイルや画像ファイルをプロジェクトエクスプローラに登録しておいて、これをEXEに常に含む設定にします。
このとき、もし上の操作で専用フォルダにhtmlを出力していたら、そのフォルダを選択して一度にまとめて複数のファイルを登録することができます。
プロジェクトエクスプローラにフォルダごと登録する場合、これは仮想フォルダ(あるいは自動更新フォルダ)として表示させることができます。
あとはビルド仕様で「ソースファイル」のカテゴリにて、専用フォルダを「常に含む」に入れておきます。
プレビューのカテゴリで専用フォルダの中身がサポートフォルダ(デフォルト名はdata)に含まれるようになっていれば完成です。
あとは生成されたEXEを開いて、「このVIのヘルプ」を確認してみてください。
本記事ではヘルプファイルの作成について紹介してきました。
そのプログラムを使用する人の立場になったとき、あるいはそのプログラムを今後誰かに引き継ぐ必要があるとき、こうした説明資料があるのとないのとではやりやすさが全然違います。
ドキュメント部分を用意するのが面倒は面倒なのですが、将来の「困った」を軽減するためにもドキュメントをヘルプとして残しておくことに少しでも役にたてばうれしいです。
ここまで読んでいただきありがとうございました。
コメント