SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
LabVIEW NXG Training Course
Session11 - アプリケーションの配布
Yusuke Tochigi
NXG 5.0 Version
LabVIEW NXG Training Course 2
アプリケーションの配布
開発したアプリケーションを配布します。配布先の PC に LabVIEW NXG の開発環境
がインストールされているとは限らないのでプロジェクト一式を渡すことはできません。また、
ソースコードをそのまま配布した場合、第三者によってコードを改変されるなどの恐れがあ
ります。
そもそもソースコードの状態では、デバッグ機能が有効になっているためにアプリケーション
は速度・メモリの観点から最適な状態で実行されません。これらの問題は、開発したアプ
リケーションを実行形式へビルドすることによって解決されます。
LabVIEW
NXG
●
プロジェクトファイル ?
●
main.gvi?
●
Zip 形式 ?
LabVIEW NXG Training Course 3
ビルドの事前準備
構成ペーンのパネルタブから、メイン VI のパネル設定を行います。ウィンドウサイズを設定
することで、実行ファイルにした際の可視領域が、パネル上に白色で表示されます。必要
なオブジェクトはこの範囲内に配置します。灰色の領域に置かれたオブジェクトは、実行
形式では表示されません。
LabVIEW NXG Training Course 4
ランタイムメニューの作成
実行形式ウィンドウの上部に表示されるメニューをカスタマイズできます。プロジェクトを右
クリックし、新規からランタイムメニューを作成します。現在の VI のランタイムメニューとし
て設定するには、パネルタブのメニュー項目から選択します。
LabVIEW NXG Training Course 5
ランタイムメニューの編集
メニューを追加して、項目名と項目タグを編集します。項目名はメニューに表示される名
前です。項目タグの使用例は次のスライドで紹介します。
下部にプレビューが表示されるので、これを参考にメニューを編集します。
LabVIEW NXG Training Course 6
ランタイムメニューの取扱
ランタイムメニューはイベントストラクチャを駆動します。ランタイムメニ
ューを選択すると、イベントストラクチャの「アプリケーションメニュー :
メニュー選択 ( ユーザ ) 」ケースが実行されます。
ItemTag は「 Open 」や「 Close 」などの項目名を返します。 ItemPath
は、「 File:Open 」のように、その項目の参照パスを返します。アプリケー
ションメニューケースの中でケースストラクチャを使用して、選択されたメ
ニューに応じた処理を記述します。
LabVIEW NXG Training Course 7
アプリケーションドキュメント
実行形式を作成するには、アプリケーションドキュメント (*.gcomp) を作成
し、ソースファイルをドキュメントに追加します。プロジェクトを右クリッ
クし、新規からアプリケーションを選択します。
LabVIEW NXG Training Course 8
アプリケーションを作成
アプリケーションを作成する際は、アプリケーション名とネームスペースの指定が必要です。
アプリケーション名は実行形式ファイルの名称です。ネームスペースは、ファイルを論理的
にグループ化するためのコンテナです。
例えば集録 VI とログ VI に個々に「 Error.gvi 」サブ VI を作った場合、 LabVIEW
NXG はこの 2 つの VI を同一の VI として取り扱います。そのため時としてファイルが競
合し、プロジェクトに問題を起こします。
ネームスペースを使用することで「 Acq:Error.gvi 」「 Log:Error.gvi 」のようにファイル
名にネームスペースが仮想的に付与されます。これで互いを区別し、競合を避けることが
できます。ネームスペースはフォルダに似ており、ネームスペースを作成すると、同じ名前の
フォルダが自動的に作成されます。
LabVIEW NXG Training Course 9
ソースファイルの追加
以下の方法で、アプリケーションドキュメントにファイルを追加できます。
●
既存の VI をアプリケーションドキュメントにドラッグアンドドロップ
●
アプリケーションドキュメントで右クリックメニューから新規を選択
●
アプリケーションドキュメントで右クリックメニューからファイルをインポートを選択
既存 VI を追加すると、 LabVIEW NXG は自動的にファイル間の依存を修正します。
実行形式のメイン VI を選択します。アプリケーションドキュメントを開き、メイン VI のトッ
プレベル VI にチェックします。
LabVIEW NXG Training Course 10
ビルドの詳細設定
アプリケーションドキュメントの構成ペーン 》 ドキュメントタブで、ビルド詳細を設定します。
会社名や実行ファイルの説明等を記載します。
設定の完了後、アプリケーションをビルドします。ビルドには 3 つのオプションがあります。
●
ビルド
アプリケーションをビルドし、実行形式ファイルを生成します
●
実行
アプリケーションをビルドし、実行式ファイルを実行します。
●
デバッグ
アプリケーションをデバッグモードでビルドします。
LabVIEW NXG のデバッグツールを使用して、コードの
デバッグができます。
LabVIEW NXG Training Course 11
ビルド時のエラー
プロジェクトに問題があるとビルドは失敗します。ビルドキューのエラーメッセージをダブルク
リックすると、エラーと警告ウィンドウが開かれ原因を確認できます。ここではメイン VI とラ
ンタイムメニューファイルが、同じアプリケーションドキュメントに存在していないことが原因の
ようです。
LabVIEW NXG Training Course 12
実行ファイルの実行
ビルドが完了すると、ドキュメントタブのビルド情報 》 出力ディレクトリに記載のあるフォル
ダへ実行形式ファイルが出力されます。実行するとスプラッシュスクリーンが表示され、その
後アプリケーションのウィンドウが表示されます。スプラッシュスクリーンは設定で無効化す
ることもできます。
LabVIEW NXG Training Course 13
リソースファイルの管理
一般的にアプリケーションは、 1 つのメイン VI と複数のサブ VI やタイプ定義制御器で
構成されています。このような場合のビルドについてみてみましょう。
以下の例では、 Main.gvi は 2 つのサブ VI 「 SubA.gvi 」「 SubB.gvi 」を含みま
す。アプリケーションをビルドすると、ビルドは失敗します。この問題を解決します。
LabVIEW NXG Training Course 14
依存項目の問題を解決する
2 つの VI をアプリケーションドキュメントへ追加することで、問題を解決
することができますが、新規にアプリケーションドキュメントを作成する際
の便利な方法を紹介します。
Main.gvi を右クリックして、項目からアプリケーション / ライブラリを作成
を選択します。アプリケーションまたはライブラリにない依存項目を含め
るにチェックをすることで、依存項目は自動的にアプリケーションドキュメ
ントへ追加されます。
LabVIEW NXG Training Course 15
ファイル管理の問題
ネームスペースを利用して、ファイルをグループ分けします。アプリケーションドキュメントを
右クリックして、ネームスペースを追加を選択します。
LabVIEW NXG はファイルの管理を自動的に行います。新しいネームスペースにファイ
ルをドラッグすると、 Windows エクスプローラでも同じ階層にファイルが移動されます。
LabVIEW NXG Training Course 16
ライブラリの活用
別の例を見てみましょう。
Main1.gvi と Main2.gvi を別々のアプリケーションドキュメントに追加します。どちらの
VI も、サブ VI として calc.gvi を呼び出します。このとき calc.gvi はどのアプリケーショ
ンドキュメントに配置すべきでしょう。
試していただくと、両方のアプリケーションドキュメントに追加はできないことがわかります。
しかしこのままではビルドができません。
この問題はライブラリを使用して解決できます。
LabVIEW NXG Training Course 17
ライブラリ
ライブラリは VI 、タイプ定義、クラス、その他のサポートファイルを同一
階層にまとめます。ライブラリ内のファイルは、異なるアプリケーションド
キュメントから呼び出すことができます。
先の問題は、 calc.gvi をライブラリに追加することで問題が解決できます。
プロジェクトの右クリックメニューの新規または項目からアプリケーション
/ ライブラリを作成を選択することでライブラリを作成できます。
LabVIEW NXG Training Course 18
アプリケーションドキュメントとライブラリ
アプリケーションドキュメントもライブラリも、同じ方法で作成ができ、ネームスペースを追加
できる点で非常によく似ています。
アプリケーションドキュメントは実行ファイルやインストーラを作成して配布するために使用
します。ライブラリは開発時にコードを再利用するために使用します。
ライブラリを積極的に使用することで、プロジェクトの構造を明確にし、ファイル管理を最
適化できます。以下はサンプルプロジェクトの例です。
Acquisition.gcomp ( ライブラリ )
Continuous Measurement.gcomp ( アプリケーションドキュメント )
「 Acquisition 」ネームスペースを持つリソースファイル
LabVIEW NXG Training Course 19
ファイル管理
改めてになりますが、 VI 等のファイルをどこに保存するか、ライブラリに移動されたファイル
のパスなど管理はすべて LabVIEW NXG が自動的に行います。開発者はファイルの保
存先を意識する必要はなく、プロジェクトの構造にだけ注目すればよいことになります。以
前の LabVIEW ではどちらも開発者に任されていたので、これは大きな変更です。
一方でプロジェクトフォルダには存在してるのにプロジェクトに追加されていない、または別
のフォルダから呼び出されている場合は注意が必要です。
以下の例では Builds フォルダはプロジェクトフォルダ内に存在しますがプロジェクトに追
加されていません。 settings.ini ファイルは別の場所からリンクされています。
LabVIEW NXG Training Course 20
インストーラ
作成した実行ファイルはそのまま実行できるとは限りません。実行形式の実行にはランタ
イムエンジンのインストールが必要ですし、ハードウェアを使用する場合は関連するドライ
バのインストールも必要です。
インストーラを使用すると、実行形式ファイルと必要なドライバ類をまとめてインストールで
きます。プロジェクトタブでアプリケーションドキュメントを右クリックし、項目を使用してパッ
ケージ / インストーラを作成するを選択します。パッケージは「 *.lvdist 」拡張子を持
ちます。
LabVIEW NXG Training Course 21
パッケージとインストーラ
インストーラの形式は 2 種類あります。どちらの場合も、 NI Package Manager を使
用してインストールを行います。
●
パッケージインストーラ (.exe)
実行ファイルと NI Package Manager をはじめとした関連するすべてのパッケージの実
体を含みます。ネットワークアクセスなしでインストールできます。
●
パッケージ (.nipkg)
実行ファイルと関連するすべてのパッケージの「情報」を含みます。インストールにはネット
ワークアクセスが必須です。その分サイズはパッケージインストーラよりも小さくなります。
これらはドキュメントタブで設定が可能です。
LabVIEW NXG Training Course 22
インストーラの設定
ファイルはインストーラ実行後のファイルの出力先を指定します。
ハードウェア構成は現在のハードウェア構成をインストール先へデプロイします。 NI
MAX 等で設定したハードウェア情報をデプロイする場合に使います。
パッケージ依存項目は併せてインストールされるパッケージです。デフォルトでは、必要な
項目が既に選択されています。
LabVIEW NXG Training Course 23
インストーラの設定
情報を入力して、インストーラの詳細プロパティを編集します。ビルドのためには「メインテ
ナー」と「連絡先 E メール」は必須です。
パッケージ名は記号 (. 、 + 、および - は ok) を除く小文字の英数字のみで記述され、
英数字で始まり 3 文字以上である必要があります。
LabVIEW NXG Training Course 24
インストーラのビルド
ドキュメントタブのビルドを押すことでインストーラがビルドされます。ビルドが完了すると出
力ディレクトリにインストーラが生成されます。パッケージインストーラは依存項目をすべて
含めるので、パッケージ形式に比べビルドに要する時間が長くなります。
パッケージの場合は *.nipkg ファイルを、パッケージインストーラの場合は
Install.exe を実行することでインストーラが起動し、インストールを行います。

Contenu connexe

Tendances

Jenkinsを用いたAndroidアプリビルド作業効率化
Jenkinsを用いたAndroidアプリビルド作業効率化Jenkinsを用いたAndroidアプリビルド作業効率化
Jenkinsを用いたAndroidアプリビルド作業効率化
Kenichi Kambara
 
2014 03-15 業務アプリinsider ソフトウェア方面の先進テクノロジー
2014 03-15 業務アプリinsider ソフトウェア方面の先進テクノロジー2014 03-15 業務アプリinsider ソフトウェア方面の先進テクノロジー
2014 03-15 業務アプリinsider ソフトウェア方面の先進テクノロジー
Hub DotnetDeveloper
 

Tendances (20)

Intro - LabVIEW NXG Training Course
Intro - LabVIEW NXG Training CourseIntro - LabVIEW NXG Training Course
Intro - LabVIEW NXG Training Course
 
Jenkins と groovy
Jenkins と groovyJenkins と groovy
Jenkins と groovy
 
Jenkinsを用いたAndroidアプリビルド作業効率化
Jenkinsを用いたAndroidアプリビルド作業効率化Jenkinsを用いたAndroidアプリビルド作業効率化
Jenkinsを用いたAndroidアプリビルド作業効率化
 
【BS2】.NET 6 最新アップデート
【BS2】.NET 6 最新アップデート【BS2】.NET 6 最新アップデート
【BS2】.NET 6 最新アップデート
 
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介 【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
 
Jenkins導入ライブ
Jenkins導入ライブJenkins導入ライブ
Jenkins導入ライブ
 
Androidリリース作業の効率化(2)
Androidリリース作業の効率化(2)Androidリリース作業の効率化(2)
Androidリリース作業の効率化(2)
 
jenkinsで遊ぶ
jenkinsで遊ぶjenkinsで遊ぶ
jenkinsで遊ぶ
 
Empower Every App, Every Developer ~ 統合開発プラットフォーム Visual Studio の進化 ~
Empower Every App, Every Developer ~ 統合開発プラットフォーム Visual Studio の進化 ~Empower Every App, Every Developer ~ 統合開発プラットフォーム Visual Studio の進化 ~
Empower Every App, Every Developer ~ 統合開発プラットフォーム Visual Studio の進化 ~
 
Bat vb script_power_shellの単体テスト自動化
Bat vb script_power_shellの単体テスト自動化Bat vb script_power_shellの単体テスト自動化
Bat vb script_power_shellの単体テスト自動化
 
Visual studio 2013 debugging
Visual studio 2013 debuggingVisual studio 2013 debugging
Visual studio 2013 debugging
 
AndroidStudioはじめました ~Gradle編~
AndroidStudioはじめました ~Gradle編~AndroidStudioはじめました ~Gradle編~
AndroidStudioはじめました ~Gradle編~
 
2014 03-15 業務アプリinsider ソフトウェア方面の先進テクノロジー
2014 03-15 業務アプリinsider ソフトウェア方面の先進テクノロジー2014 03-15 業務アプリinsider ソフトウェア方面の先進テクノロジー
2014 03-15 業務アプリinsider ソフトウェア方面の先進テクノロジー
 
Android アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステムAndroid アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステム
 
デスクトップ アプリ開発における Visual Studio の進化
デスクトップ アプリ開発における Visual Studio の進化デスクトップ アプリ開発における Visual Studio の進化
デスクトップ アプリ開発における Visual Studio の進化
 
Pythonを中心としたチーム開発
Pythonを中心としたチーム開発Pythonを中心としたチーム開発
Pythonを中心としたチーム開発
 
Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015
 
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
 
Android cleanarchitecture
Android cleanarchitectureAndroid cleanarchitecture
Android cleanarchitecture
 
Javaユーザに贈るJenkins 25のTips
Javaユーザに贈るJenkins 25のTipsJavaユーザに贈るJenkins 25のTips
Javaユーザに贈るJenkins 25のTips
 

Similaire à Session11 - LabVIEW NXG Training Course

Agileツール適合化分科会(構成管理・ビルドツール)
Agileツール適合化分科会(構成管理・ビルドツール)Agileツール適合化分科会(構成管理・ビルドツール)
Agileツール適合化分科会(構成管理・ビルドツール)
masanori kataoka
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
Daisuke Sugai
 
Gws 20120521 gradle
Gws 20120521 gradleGws 20120521 gradle
Gws 20120521 gradle
Nobuhiro Sue
 

Similaire à Session11 - LabVIEW NXG Training Course (20)

JViews Diagrammer チュートリアル (JSF 2)
JViews Diagrammer チュートリアル (JSF 2)JViews Diagrammer チュートリアル (JSF 2)
JViews Diagrammer チュートリアル (JSF 2)
 
C#版人狼知能エージェントの作り方~Visual Studio編~(AIWolf.NET 1.0.6版)
C#版人狼知能エージェントの作り方~Visual Studio編~(AIWolf.NET 1.0.6版)C#版人狼知能エージェントの作り方~Visual Studio編~(AIWolf.NET 1.0.6版)
C#版人狼知能エージェントの作り方~Visual Studio編~(AIWolf.NET 1.0.6版)
 
220523JS7.pdf
220523JS7.pdf220523JS7.pdf
220523JS7.pdf
 
OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理
 
Agileツール適合化分科会(構成管理・ビルドツール)
Agileツール適合化分科会(構成管理・ビルドツール)Agileツール適合化分科会(構成管理・ビルドツール)
Agileツール適合化分科会(構成管理・ビルドツール)
 
Spring Integration 超入門
Spring Integration 超入門Spring Integration 超入門
Spring Integration 超入門
 
Alfresco CI
Alfresco CIAlfresco CI
Alfresco CI
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
 
node-webkit
node-webkit node-webkit
node-webkit
 
Gws 20120521 gradle
Gws 20120521 gradleGws 20120521 gradle
Gws 20120521 gradle
 
コーディング不要! Entity Framework 6.1.3 + ASP.NET MVC 5 サンプル アプリケーション構築 手順書
コーディング不要!Entity Framework 6.1.3 + ASP.NET MVC 5 サンプル アプリケーション構築 手順書コーディング不要!Entity Framework 6.1.3 + ASP.NET MVC 5 サンプル アプリケーション構築 手順書
コーディング不要! Entity Framework 6.1.3 + ASP.NET MVC 5 サンプル アプリケーション構築 手順書
 
Visual StudioやAzureからAzure DevOpsを使う
Visual StudioやAzureからAzure DevOpsを使うVisual StudioやAzureからAzure DevOpsを使う
Visual StudioやAzureからAzure DevOpsを使う
 
sit-tokyo2022_sap-data-intelligence
sit-tokyo2022_sap-data-intelligencesit-tokyo2022_sap-data-intelligence
sit-tokyo2022_sap-data-intelligence
 
cp-1. Microsoft Visual Studio 2019 C++ の使い方
cp-1. Microsoft Visual Studio 2019 C++ の使い方cp-1. Microsoft Visual Studio 2019 C++ の使い方
cp-1. Microsoft Visual Studio 2019 C++ の使い方
 
IBM Bluemix DevOps Services で Javaの Web アプリを開発する
IBM Bluemix DevOps Services で Javaの Web アプリを開発するIBM Bluemix DevOps Services で Javaの Web アプリを開発する
IBM Bluemix DevOps Services で Javaの Web アプリを開発する
 
Visual Studio を使わず .NET する
Visual Studio を使わず .NET するVisual Studio を使わず .NET する
Visual Studio を使わず .NET する
 
Xilinx2013d
Xilinx2013dXilinx2013d
Xilinx2013d
 
Visual Studio 2017 と Team Foundation Server / Visual Studio Team Services で実現...
Visual Studio 2017 とTeam Foundation Server /Visual Studio Team Services で実現...Visual Studio 2017 とTeam Foundation Server /Visual Studio Team Services で実現...
Visual Studio 2017 と Team Foundation Server / Visual Studio Team Services で実現...
 
Entity Framework 6.1.3 + Windows フォーム サンプル アプリケーション構築 手順書
Entity Framework 6.1.3 + Windows フォームサンプル アプリケーション構築手順書Entity Framework 6.1.3 + Windows フォームサンプル アプリケーション構築手順書
Entity Framework 6.1.3 + Windows フォーム サンプル アプリケーション構築 手順書
 
今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略
 

Plus de Yusuke Tochigi

Plus de Yusuke Tochigi (7)

Test Driven Development in LabVIEW
Test Driven Development in LabVIEWTest Driven Development in LabVIEW
Test Driven Development in LabVIEW
 
Session7 - LabVIEW NXG Training Course
Session7 - LabVIEW NXG Training CourseSession7 - LabVIEW NXG Training Course
Session7 - LabVIEW NXG Training Course
 
Session10 - LabVIEW NXG Training Course
Session10 - LabVIEW NXG Training CourseSession10 - LabVIEW NXG Training Course
Session10 - LabVIEW NXG Training Course
 
Session6 - LabVIEW NXG Training Course
Session6 - LabVIEW NXG Training CourseSession6 - LabVIEW NXG Training Course
Session6 - LabVIEW NXG Training Course
 
Session4 - LabVIEW NXG Training Cours
Session4 - LabVIEW NXG Training CoursSession4 - LabVIEW NXG Training Cours
Session4 - LabVIEW NXG Training Cours
 
Session2 - LabVIEW NXG Training Course
Session2 - LabVIEW NXG Training CourseSession2 - LabVIEW NXG Training Course
Session2 - LabVIEW NXG Training Course
 
Automotive QMS IATF16949
Automotive QMS IATF16949Automotive QMS IATF16949
Automotive QMS IATF16949
 

Session11 - LabVIEW NXG Training Course

  • 1. LabVIEW NXG Training Course Session11 - アプリケーションの配布 Yusuke Tochigi NXG 5.0 Version
  • 2. LabVIEW NXG Training Course 2 アプリケーションの配布 開発したアプリケーションを配布します。配布先の PC に LabVIEW NXG の開発環境 がインストールされているとは限らないのでプロジェクト一式を渡すことはできません。また、 ソースコードをそのまま配布した場合、第三者によってコードを改変されるなどの恐れがあ ります。 そもそもソースコードの状態では、デバッグ機能が有効になっているためにアプリケーション は速度・メモリの観点から最適な状態で実行されません。これらの問題は、開発したアプ リケーションを実行形式へビルドすることによって解決されます。 LabVIEW NXG ● プロジェクトファイル ? ● main.gvi? ● Zip 形式 ?
  • 3. LabVIEW NXG Training Course 3 ビルドの事前準備 構成ペーンのパネルタブから、メイン VI のパネル設定を行います。ウィンドウサイズを設定 することで、実行ファイルにした際の可視領域が、パネル上に白色で表示されます。必要 なオブジェクトはこの範囲内に配置します。灰色の領域に置かれたオブジェクトは、実行 形式では表示されません。
  • 4. LabVIEW NXG Training Course 4 ランタイムメニューの作成 実行形式ウィンドウの上部に表示されるメニューをカスタマイズできます。プロジェクトを右 クリックし、新規からランタイムメニューを作成します。現在の VI のランタイムメニューとし て設定するには、パネルタブのメニュー項目から選択します。
  • 5. LabVIEW NXG Training Course 5 ランタイムメニューの編集 メニューを追加して、項目名と項目タグを編集します。項目名はメニューに表示される名 前です。項目タグの使用例は次のスライドで紹介します。 下部にプレビューが表示されるので、これを参考にメニューを編集します。
  • 6. LabVIEW NXG Training Course 6 ランタイムメニューの取扱 ランタイムメニューはイベントストラクチャを駆動します。ランタイムメニ ューを選択すると、イベントストラクチャの「アプリケーションメニュー : メニュー選択 ( ユーザ ) 」ケースが実行されます。 ItemTag は「 Open 」や「 Close 」などの項目名を返します。 ItemPath は、「 File:Open 」のように、その項目の参照パスを返します。アプリケー ションメニューケースの中でケースストラクチャを使用して、選択されたメ ニューに応じた処理を記述します。
  • 7. LabVIEW NXG Training Course 7 アプリケーションドキュメント 実行形式を作成するには、アプリケーションドキュメント (*.gcomp) を作成 し、ソースファイルをドキュメントに追加します。プロジェクトを右クリッ クし、新規からアプリケーションを選択します。
  • 8. LabVIEW NXG Training Course 8 アプリケーションを作成 アプリケーションを作成する際は、アプリケーション名とネームスペースの指定が必要です。 アプリケーション名は実行形式ファイルの名称です。ネームスペースは、ファイルを論理的 にグループ化するためのコンテナです。 例えば集録 VI とログ VI に個々に「 Error.gvi 」サブ VI を作った場合、 LabVIEW NXG はこの 2 つの VI を同一の VI として取り扱います。そのため時としてファイルが競 合し、プロジェクトに問題を起こします。 ネームスペースを使用することで「 Acq:Error.gvi 」「 Log:Error.gvi 」のようにファイル 名にネームスペースが仮想的に付与されます。これで互いを区別し、競合を避けることが できます。ネームスペースはフォルダに似ており、ネームスペースを作成すると、同じ名前の フォルダが自動的に作成されます。
  • 9. LabVIEW NXG Training Course 9 ソースファイルの追加 以下の方法で、アプリケーションドキュメントにファイルを追加できます。 ● 既存の VI をアプリケーションドキュメントにドラッグアンドドロップ ● アプリケーションドキュメントで右クリックメニューから新規を選択 ● アプリケーションドキュメントで右クリックメニューからファイルをインポートを選択 既存 VI を追加すると、 LabVIEW NXG は自動的にファイル間の依存を修正します。 実行形式のメイン VI を選択します。アプリケーションドキュメントを開き、メイン VI のトッ プレベル VI にチェックします。
  • 10. LabVIEW NXG Training Course 10 ビルドの詳細設定 アプリケーションドキュメントの構成ペーン 》 ドキュメントタブで、ビルド詳細を設定します。 会社名や実行ファイルの説明等を記載します。 設定の完了後、アプリケーションをビルドします。ビルドには 3 つのオプションがあります。 ● ビルド アプリケーションをビルドし、実行形式ファイルを生成します ● 実行 アプリケーションをビルドし、実行式ファイルを実行します。 ● デバッグ アプリケーションをデバッグモードでビルドします。 LabVIEW NXG のデバッグツールを使用して、コードの デバッグができます。
  • 11. LabVIEW NXG Training Course 11 ビルド時のエラー プロジェクトに問題があるとビルドは失敗します。ビルドキューのエラーメッセージをダブルク リックすると、エラーと警告ウィンドウが開かれ原因を確認できます。ここではメイン VI とラ ンタイムメニューファイルが、同じアプリケーションドキュメントに存在していないことが原因の ようです。
  • 12. LabVIEW NXG Training Course 12 実行ファイルの実行 ビルドが完了すると、ドキュメントタブのビルド情報 》 出力ディレクトリに記載のあるフォル ダへ実行形式ファイルが出力されます。実行するとスプラッシュスクリーンが表示され、その 後アプリケーションのウィンドウが表示されます。スプラッシュスクリーンは設定で無効化す ることもできます。
  • 13. LabVIEW NXG Training Course 13 リソースファイルの管理 一般的にアプリケーションは、 1 つのメイン VI と複数のサブ VI やタイプ定義制御器で 構成されています。このような場合のビルドについてみてみましょう。 以下の例では、 Main.gvi は 2 つのサブ VI 「 SubA.gvi 」「 SubB.gvi 」を含みま す。アプリケーションをビルドすると、ビルドは失敗します。この問題を解決します。
  • 14. LabVIEW NXG Training Course 14 依存項目の問題を解決する 2 つの VI をアプリケーションドキュメントへ追加することで、問題を解決 することができますが、新規にアプリケーションドキュメントを作成する際 の便利な方法を紹介します。 Main.gvi を右クリックして、項目からアプリケーション / ライブラリを作成 を選択します。アプリケーションまたはライブラリにない依存項目を含め るにチェックをすることで、依存項目は自動的にアプリケーションドキュメ ントへ追加されます。
  • 15. LabVIEW NXG Training Course 15 ファイル管理の問題 ネームスペースを利用して、ファイルをグループ分けします。アプリケーションドキュメントを 右クリックして、ネームスペースを追加を選択します。 LabVIEW NXG はファイルの管理を自動的に行います。新しいネームスペースにファイ ルをドラッグすると、 Windows エクスプローラでも同じ階層にファイルが移動されます。
  • 16. LabVIEW NXG Training Course 16 ライブラリの活用 別の例を見てみましょう。 Main1.gvi と Main2.gvi を別々のアプリケーションドキュメントに追加します。どちらの VI も、サブ VI として calc.gvi を呼び出します。このとき calc.gvi はどのアプリケーショ ンドキュメントに配置すべきでしょう。 試していただくと、両方のアプリケーションドキュメントに追加はできないことがわかります。 しかしこのままではビルドができません。 この問題はライブラリを使用して解決できます。
  • 17. LabVIEW NXG Training Course 17 ライブラリ ライブラリは VI 、タイプ定義、クラス、その他のサポートファイルを同一 階層にまとめます。ライブラリ内のファイルは、異なるアプリケーションド キュメントから呼び出すことができます。 先の問題は、 calc.gvi をライブラリに追加することで問題が解決できます。 プロジェクトの右クリックメニューの新規または項目からアプリケーション / ライブラリを作成を選択することでライブラリを作成できます。
  • 18. LabVIEW NXG Training Course 18 アプリケーションドキュメントとライブラリ アプリケーションドキュメントもライブラリも、同じ方法で作成ができ、ネームスペースを追加 できる点で非常によく似ています。 アプリケーションドキュメントは実行ファイルやインストーラを作成して配布するために使用 します。ライブラリは開発時にコードを再利用するために使用します。 ライブラリを積極的に使用することで、プロジェクトの構造を明確にし、ファイル管理を最 適化できます。以下はサンプルプロジェクトの例です。 Acquisition.gcomp ( ライブラリ ) Continuous Measurement.gcomp ( アプリケーションドキュメント ) 「 Acquisition 」ネームスペースを持つリソースファイル
  • 19. LabVIEW NXG Training Course 19 ファイル管理 改めてになりますが、 VI 等のファイルをどこに保存するか、ライブラリに移動されたファイル のパスなど管理はすべて LabVIEW NXG が自動的に行います。開発者はファイルの保 存先を意識する必要はなく、プロジェクトの構造にだけ注目すればよいことになります。以 前の LabVIEW ではどちらも開発者に任されていたので、これは大きな変更です。 一方でプロジェクトフォルダには存在してるのにプロジェクトに追加されていない、または別 のフォルダから呼び出されている場合は注意が必要です。 以下の例では Builds フォルダはプロジェクトフォルダ内に存在しますがプロジェクトに追 加されていません。 settings.ini ファイルは別の場所からリンクされています。
  • 20. LabVIEW NXG Training Course 20 インストーラ 作成した実行ファイルはそのまま実行できるとは限りません。実行形式の実行にはランタ イムエンジンのインストールが必要ですし、ハードウェアを使用する場合は関連するドライ バのインストールも必要です。 インストーラを使用すると、実行形式ファイルと必要なドライバ類をまとめてインストールで きます。プロジェクトタブでアプリケーションドキュメントを右クリックし、項目を使用してパッ ケージ / インストーラを作成するを選択します。パッケージは「 *.lvdist 」拡張子を持 ちます。
  • 21. LabVIEW NXG Training Course 21 パッケージとインストーラ インストーラの形式は 2 種類あります。どちらの場合も、 NI Package Manager を使 用してインストールを行います。 ● パッケージインストーラ (.exe) 実行ファイルと NI Package Manager をはじめとした関連するすべてのパッケージの実 体を含みます。ネットワークアクセスなしでインストールできます。 ● パッケージ (.nipkg) 実行ファイルと関連するすべてのパッケージの「情報」を含みます。インストールにはネット ワークアクセスが必須です。その分サイズはパッケージインストーラよりも小さくなります。 これらはドキュメントタブで設定が可能です。
  • 22. LabVIEW NXG Training Course 22 インストーラの設定 ファイルはインストーラ実行後のファイルの出力先を指定します。 ハードウェア構成は現在のハードウェア構成をインストール先へデプロイします。 NI MAX 等で設定したハードウェア情報をデプロイする場合に使います。 パッケージ依存項目は併せてインストールされるパッケージです。デフォルトでは、必要な 項目が既に選択されています。
  • 23. LabVIEW NXG Training Course 23 インストーラの設定 情報を入力して、インストーラの詳細プロパティを編集します。ビルドのためには「メインテ ナー」と「連絡先 E メール」は必須です。 パッケージ名は記号 (. 、 + 、および - は ok) を除く小文字の英数字のみで記述され、 英数字で始まり 3 文字以上である必要があります。
  • 24. LabVIEW NXG Training Course 24 インストーラのビルド ドキュメントタブのビルドを押すことでインストーラがビルドされます。ビルドが完了すると出 力ディレクトリにインストーラが生成されます。パッケージインストーラは依存項目をすべて 含めるので、パッケージ形式に比べビルドに要する時間が長くなります。 パッケージの場合は *.nipkg ファイルを、パッケージインストーラの場合は Install.exe を実行することでインストーラが起動し、インストールを行います。