LabVIEW備忘録

National Instruments社のグラフィカル言語 LabVIEWに関する学習Blogです。

SetとMap

LabVIEW2019でしれっとCollectionなる機能が追加されている。中身はSetとMapなど他の言語でよく見る機能であるのだが、これによって連想配列(dict)が使えることになるので相当便利。御多分に漏れず、旧バージョンへのコンバートが聞かないのでご利用は計画的に。
f:id:labviewtips:20190728235224p:plain

DAQ物理デバイスで複数の名称を許可しない

DAQmx用の物理IOを指定する際にCtrlを押しながら選択すると複数デバイスが指定可能となる。が、これはLabVIEW特有のUI操作なので、LabVIEWのクセを知らない一般的なWindowsユーザーに操作させると、大概問題を引き起こす。よってこの機能を無効化し、デバイスをそれぞれ指定する方法がおすすめである。

f:id:labviewtips:20190624234334p:plain

パネルの面積は食われるが、不要なトラブルを回避できるし、デバイスを配列にまとめてしまえば、Forループに通すだけで処理できるので、意外とコンパクトに記述できる。

3Dモデル(STL)を読み込み表示する

3Dモデル(STL)を読み込んで表示させる場合に分かりにくい項目を列挙していく。

  • ググってでてくるサンプルが古くて混乱する。8.4以前でのインボークノードSet Geometry相当が8.5以降だとSet Drawableに変更されている。

f:id:labviewtips:20190609063257p:plain

  • 視点をマウスで動かす場合には、表示器の上で右クリック→カメラコントロール→球を選択。

f:id:labviewtips:20190609063127p:plain

以降随時更新

tdmsに画像を記録

tdmsに画像を記録する方法を考えてみた。内部的なファイルの添付はサポートされていないはずなので、LabVIEW画像データにパースしてから各種情報を生データとして書き込んだ。

f:id:labviewtips:20190129231519p:plain
書き込み
f:id:labviewtips:20190129231552p:plain
読み込み
記録データと画像データを同一ファイルに残せるのが利点。課題はDIAdemで画像を表示できない点。マクロ駆使すれば可能なのかもしれないが・・・。

LabVIEW NXG 3.0 雑感

先々LabVIEW 20XXと一本化されるであろうLabVIEW NXGについて、3.0が出たのでお試ししてみた。以下ファーストインプレッション。

メリット

  • ほぼ文法同じ。というかプログラムレスを盛んに宣伝してたけどExpressみたいに自動で生成するモードのことだったようでLabVIEW文法は健在。
  • UIがフラット化されて、デザインしやすい。現状でもシルバーがゴテゴテなためクラシックUI+Tを主に使っているので◎。
  • ブロックダイアグラムもわかりやすい。(エラー線がペーン下から上に上がったのは◎)
  • ブロックダイアグラムに追加した項目が一時保留され、フロントパネル側に切り替えたのちに配置場所を決定できる(逆も然)。
  • 日本語版では切りすてられた64bit化が実現。
  • アプリケーションビルダもかなりモダンになっている。

デメリット

  • 重い。基本機能以外の機能の対応も待たれる。
  • UIの細かいプロパティノードをいじるのは面倒そう。
  • パレット分類が結構変わってるのでなれるまで時間かかりそう。

f:id:labviewtips:20190115233251p:plain