LabVIEWを使用してSystemLink Cloudにファイルを転送する

更新しました Jul 11, 2021

環境

ソフトウェア

  • LabVIEW
  • SystemLink Cloud

SystemLink Cloudでは、作成したタグのデータを書き込んだり読み取ることでクライアントとのデータの送受信が行えます。LabVIEWのSystemLink APIを使用してこれを行う方法はこちらの記事 で紹介されています。

一方で、SystemLink Cloudを使用して、ファイルのアップロードおよびダウンロードを行うこともできます。ここでは、LabVIEWサンプルファインダのサンプルを基にしてファイルのアップロードおよびダウンロードを行う方法を確認します。

SystemLinkへのログイン
SystemLink Cloud にログインします。SystemLink Cloudのアカウントのアクティブ化方法に関しましてはこちら をご参照ください。タグを用いる方法と同様にクライアントPCからSystemLink CloudにAPIを使用してアクセス、データ通信を行う場合、セキュリティの項目にてAPI Keysを発行する必要があります。
API Keyの取得についてはこちらの記事 を確認してください。

LabVIEWサンプルファインダのサンプルを使用する
LabVIEWのファイルメニューのヘルプからサンプルを検索を選択、表示されるNIサンプルファインダの検索タブにてSystemLinkと検索することで見つかるSync File IO.lvprojをクリックします。
注意:こちらのサンプルは以下で編集するため、オリジナルのサンプルプログラムを編集しないように別名でプロジェクトごと保存することを推奨しています。
syncio.png
Sync File IO.lvprojのサンプルプロジェクトには、TDMSファイルを閲覧するためのHost.viとTDMSファイルを生成、アップロードするためのClient.viがあります。ここではまずClient.viを操作してTDMSファイルのアップロードを行うプログラムを確認します。

こちらのプログラムは元々API Keyを入力できる状態になっていません。そこで、フロントパネルのタブ制御器のUser & Passwordを右クリックして後にページを追加を選択、生成されたタブにAPI Keyと入力します。
addapikeytab.png
次にブロックダイアグラムに移り、一番左のケースストラクチャでUser & Passwordのケースを選択時に右クリックしてケースを複製を選択します。このとき、ケースセレクタラベルに"API Key"と表示されることを確認してください。その後、Open Configuration HTTP.viに入力された3つの文字列制御器のワイヤを一度全て切断します。そしてOpen Configuration HTTP.viの多態性VIセレクタラベルからAPI Keyを選択してください。
(このときVIの名前がOpen Configuration HTTP.viからOpen Configuration API Key.viに変化します。)
apikeyselect.png

Open Configuration API Key.viへの文字列入力にはserver urlapi keyがあります。server url入力には定数を作成しhttps://api.systemlinkcloud.comと入力します。また、api keyには制御器を作成し、フロントパネル上ではこの制御器をAPI Keyのタブの中に配置します。
apiconfig.png
フロントパネル上のapi keyには、SystemLink Cloudで生成したAPI Keyを入力します。
注意:フロントパネル上でAPI Keyが表示されるのを避ける場合には、文字列制御器を右クリックしてパスワード表示を選ぶことで、アスタリスクでAPI Keyを表示させる状態にします。
あとはこのプログラムを実行することでファイルをSystemLink Cloudにアップロードすることができます。実行後、適当なタイミングでプログラムを終了してください。

SystemLink Cloudでアップロードされたファイルを確認する
SystemLink Cloudでアップロードされたファイルを確認するためにはホーム画面でGO TO DATAを選択しデータの閲覧画面に移ります。
gotodata.png
その後、左上のタグからFilesを選択するとアップロードしたファイルの一覧を見ることができます。もし何も表示されない場合、キーボードでF5を押してページの更新を試してください。
files.png
データを確認するときには、見たいファイルを選択後、右上に表示されるPreviewボタンを押すとデータ閲覧のページに移るのでこちらで確認することができます。また、Previewの左側にあるDownloadボタンでファイルをダウンロードすることができます。
files2.png
Previewでは各グループやチャンネルを指定し、グラフやチャンネルデータ、プロパティの確認を行えます。
fileexample.png


LabVIEWを使用してファイルをダウンロードする
Sync File IO.lvprojのHost.viを使用して、LabVIEWによってファイルをダウンロードすることもできます。Host.viもまたClient.vi同様サンプルのままではAPI Key入力に対応していないため、Client.viと同じ要領でAPI Keyを入力できるようにフロントパネルのタブ制御器のタブやブロックダイアグラムの多態性VIセレクタを編集します。
hostconfig.png
このHost.viは、プログラムを実行するとFiles on ServerにSystemLink Cloud上のファイルの一覧を表示し、ユーザーがそのファイル名をクリックすると中身のデータをDataに表示した後、ダウンロードしたファイルは破棄してしまいます。もしSystemLink CloudからダウンロードしたファイルをそのままローカルのPCでダウンロードしたままにしたい場合には、ブロックダイアグラム上の右側のケースストラクチャのAnalyze FileケースにあるDelete Fileの列挙体をWait for Userに変更します。
waitforuser.png
このサンプルでは、ダウンロードしたファイルは
C:\Users\<user name>\AppData\Local\Temp
のフォルダに保存されます。