プログラミングコース 02 LabVIEWを使ったアプリケーション開発 株式会社ペリテック
01 学習を始める前に ■本教材および研修のねらい LabVIEWの基本的なプログラミング技術を身につける。 ■本教材および研修の到達目標 知識 ・波形チャート、波形グラフを描画する方法を知っている。 ・数値を文字列に、または文字列を数値に変換する方法を知っている。 ・ファイル保存のプログラミング方法を知っている。 ・生産者/消費者デザインパターンを知っている。 スキル ・データを一覧表示するプログラムを作ることができる。 ・ファイル保存プログラムを作ることができる。 ・生産者/消費者デザインパターンでプログラムを作ることができる。 ・NI製品を動作させることができる。 態度 ・過去に、あるいは自分以外の他者が製作したプログラムを活用して、効果的・ 効率的に進めようと思う。 ・プログラムのつくりに共通項を見出し、未知のプログラムの分析および製作に 応用しようと思う。
02 プログラミングの実践 ■STEP01:波形チャートにデータを表示してみましょう。 ■STEP02:波形グラフにデータを表示してみましょう。 ■STEP03:数値を文字列に変換する関数と文字列を数値に変換する関数 ■STEP04:数値を一覧表に表示してみましょう。 ■STEP05:テキストファイルの書込みと読込みの処理を作成してみましょう。 ■STEP06:バイナリファイルの書込みと読込みの処理を作成してみましょう。 ■STEP07:デザインパターンについて ■STEP08:簡単なアプリケーションソフトを作成してみましょう。 ■STEP09:NI製品をPCに接続して動作させてみましょう。 ■ポイントのまとめ ■付録1:グローバル変数と機能的グローバル変数 ■付録2:リファレンスとプロパティノード
STEP 1:波形チャートにデータを表示してみましょう ①1つのデータを表示する場合 ②3つのデータを表示する場合 クラスタのバンドルを使用する ③3つの配列データを表示する場合 配列の連結と2D配列転置を使用する チャート履歴について チャートにはバッファ(メモリ機能)があります。この機能によりデータを入力していくだけでグラフが表示されます。 チャート履歴の初期値は1024です。この値はチャート履歴の長さで変更することができます。
STEP 1:波形チャートにデータを表示してみましょう プロットの凡例を右クリックして、この一覧表を表示することにより、 色・ラインスタイル・線の太さなどを変更することができます。 更新モードについて 波形チャートは3つの更新モードがあります。デフォルトは『ストリップチャート』です。プロパティの更新モード設定により『スコープチャート』、『スイー プチャート』に変更できます。それぞれの特徴を確認しておきましょう。
STEP 2:波形グラフにデータを表示してみましょう ①1つのデータを表示する場合 ②3つのデータを表示する場合 配列の連結を使用する ③x0とΔxを指定する場合 クラスタのバンドルを使用する 波形グラフについて 入力データは、1つの配列または、X軸の開始データ(X0)、X軸のインターバル(ΔX)、X軸のデータからなるクラスタが必要になります。 配列のみ入力する場合のX0とΔXは、X0 = 0、ΔX = 1となります。
STEP 2:波形グラフにデータを表示してみましょう ①1つのデータを描画しながら表示する場合 シフトレジスタと配列の連結を使用する ②3つのデータを描画しながら表示する場合 シフトレジスタと配列の連結、2D配列転置を使用する 波形グラフについて 波形グラフにはバッファ(メモリ機能)がありません。シフトレジスタ等を使用してデータを蓄積して入力する必要があります。 波形チャート履歴の初期値と同様に描画するデータ数は1000ポイント以下にすることを推奨いたします。
STEP 2:波形グラフにデータを表示してみましょう 波形グラフには、カーソルを表示する機能があります。 (表示項目/カーソル凡例を選択して、カーソルを追加します。)
STEP 3:数値を文字列に変換する関数と文字列を数値に変換する関数 数値を文字列に変換する関数 ① 文字列を数値に変換する関数 ② ①数値を小数点以下3桁の文字列に変換する場合 ②小数点文字列を数値に変換する場合
STEP 4:数値を一覧表に表示してみましょう
STEP 5:テキストファイルの書込みと読込みの処理を作成してみましょう ①テキストファイルの書込み ファイルを開く ②テキストファイルの読込み テキストファイル から読み取る テキストファイル ファイルを閉じる に書き込む シンプルエラー処理
STEP 6:バイナリファイルの書込みと読込みの処理を作成してみましょう ①バイナリファイルの書込み ②バイナリファイルの読込み
STEP 7:デザインパターンについて 生産者/消費者デザインパターン(イベント)
STEP 8:簡単なアプリケーションソフトを作成してみましょう 冷房・暖房・除湿3つの運転モードをもつエアコン(下図)の処理を作成してみましょう フロントパネル ブロックダイアグラム
STEP 8:簡単なアプリケーションソフトを作成してみましょう キューで送信するメッセージを列挙定数で作成する。 ①停止処理 ②運転切替処理 ③冷房運転 ④暖房運転 ⑤除湿運転 生産者ループのイベント処理を作成する。 ①運転開始ボタン:値変更 ②運転切替ボタン:値変更 ③運転停止ボタン:値変更 ④stop:値変更
STEP 8:簡単なアプリケーションソフトを作成してみましょう 消費者ループのランプ表示処理を作成する。 ①停止処理:すべてのランプOFF ②冷房運転:冷房運転ランプON ③暖房運転:暖房運転ランプON ④除湿運転:除湿運転ランプON 消費者ループの運転切替処理を作成する。 ①冷房運転中のとき:暖房運転処理の起動 ②暖房運転中のとき:除湿運転処理の起動 ③除湿運転中のとき:冷房運転処理の起動
STEP 9:NI製品をPCに接続して動作させてみましょう ①USB-6008をPCに接続してNI MAXのテストパネルで動作確認しましょう USB-6008 NI MAX 起動画面 NI MAXから起動できるUSB-6008のテストパネル ②LabVIEWのサンプルプログラムで動作確認してみましょう デジタル SWタイミング出力のサンプルVI
■ポイントのまとめ ① 波形チャートにはバッファがあるので、データを入力するだけでグラフ表示される。 ② 波形グラフにはバッファがないので、表示するデータをすべて入力する必要がある。 ③ 数値と文字列を意識してプログラミングする必要がある。 ④ 一覧表に表示するには、数値を文字列に変換する必要がある。 ⑤ 一覧表に表示すると簡単にCSVファイルに保存できる。 ⑥ 生産者/消費者デザインパターンは、イベントストラクチャとキューを使用する。 ⑦ キューのデータタイプは、列挙定数をタイプ定義に指定するとcaseの処理が作りやすい。 ⑧ NI製品を単体で動作確認するためにNI MAXというアプリケーションがある。
付録.1 グローバル変数と機能的グローバル変数 グローバル変数を使用すると異なったVI間でデータを参照することができます。 計測.vi グローバル 1.vi グラフ表示.vi (グローバル変数にダイアグラムはありません。) 機能的グローバル変数は、サブVIの中にデータを蓄積して他のモジュールからデータを参照します。 グラフ表示2.vi 計測2.vi 機能的グローバル.vi
付録.2 リファレンスとプロパティノード ①リファレンスを使用すると他のVIからオブジェクトへアクセスすることができます。 波形チャートのリファレンスを使用して他のVIからデータを表示させた例 ②プロパティノードを使用するとオブジェクトのプロパティを設定・回収できます。 無効プロパティを使用してボタンをグレイアウト表示させた例