<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" version="2.0">
  <channel>
    <title>LabVIEW七転八倒記</title>
    <link>https://syoujyou.asablo.jp/blog/</link>
    <description/>
    <language>ja</language>
    <generator>mc 0.0</generator>
    <pubDate>Fri, 02 Jun 2017 18:15:35 +0900</pubDate>
    <item>
      <title>LabVIEW NXGが発表される</title>
      <link>https://syoujyou.asablo.jp/blog/2017/06/02/8582847</link>
      <guid>https://syoujyou.asablo.jp/blog/2017/06/02/8582847</guid>
      <pubDate>Fri, 02 Jun 2017 17:48:33 +0900</pubDate>
      <dcterms:modified>2017-06-02T18:15:35+09:00</dcterms:modified>
      <dcterms:created>2017-06-02T17:56:32+09:00</dcterms:created>
      <description>&lt;p&gt;　2017年5月24日に、LabVIEWの次世代版、LabVIEW NXGが発表されました。
今までのLabVIEWを全面的に改訂し、新しいアプリケーションとして生まれ変わっています。
&lt;/p&gt;

&lt;p&gt;○新しい別のアプリケーション
&lt;/p&gt;
&lt;p&gt;　NXGは、LabVIEWのグラフィカルプログラミングを踏襲していますが、一から開発した新しい開発環境です。VIのファイル拡張子も、&amp;quot;.vi"から".gvi"へ変更されています。
　LabVIEWで作成したコードをNXGへ読込ができますし、変換できない機能はプレースホルダノードで置換され、元のLabVIEWがインストールされていれば、実行できます。
　開発環境のユーザインタフェイスも一新し、フロントパネルや、ブロックダイアグラムも拡大・縮小が自由にできるようになりました。
　インストール後に表示言語を切り替える多言語化もされています。
&lt;/p&gt;


&lt;p&gt;○コードの自動生成
&lt;/p&gt;
&lt;p&gt;　SignalExpressのような、構成を設定して自動的にコードを生成する機能が強化され、簡単な計測であればブロックダイアグラムを触らずに作成できます。
　新規ユーザから見ると、計測や解析を自動化するアプリケーションの背後にグラフィカルな開発言語が隠れているように見える構成です。
&lt;/p&gt;

&lt;p&gt;　現時点では単品での販売ではなく、LabVIEWを購入するとNXGも利用できる形での配布のようです。
&lt;/p&gt;</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2017/06/02/4889c5.png" length="26536" type="image/png"/>
    </item>
    <item>
      <title>再認定ポイントプログラムへ参加してみました。</title>
      <link>https://syoujyou.asablo.jp/blog/2015/10/19/7855850</link>
      <guid>https://syoujyou.asablo.jp/blog/2015/10/19/7855850</guid>
      <pubDate>Mon, 19 Oct 2015 17:57:19 +0900</pubDate>
      <dcterms:modified>2015-10-19T18:06:28+09:00</dcterms:modified>
      <dcterms:created>2015-10-19T18:06:28+09:00</dcterms:created>
      <description>&lt;p&gt;CLAや、CLD、CLADといったLabVIEW認定試験は数年で再認定が必要です。
&lt;/p&gt;
&lt;p&gt;通常は再認定用試験を受けます。
&lt;/p&gt;
&lt;p&gt;この再認定をポイントで行うのが、再認定ポイントプログラムです。
&lt;/p&gt;


&lt;p&gt;講習やイベントへの参加を連絡するとポイントが付き、50ポイント貯まると認定されます。
&lt;/p&gt;
&lt;p&gt;再認定試験を受けなくてもポイントを貯めれば認定を更新できるのです。
詳細の説明も少なく、受付もNI本社のメールアドレスだけなので敷居が高いです。
&lt;/p&gt;

&lt;p&gt;私は認定外部講師でLabVIEWの講習で教えているので、ポイントがためやすいメリットを生かし、ポイントプログラムに参加しようと思い立ちました。
&lt;/p&gt;


&lt;p&gt;メールで下記の様な内容を送りました。
&lt;/p&gt;


&lt;blockquote&gt;&lt;pre&gt;I want to begin recertification by Points Program for CLA.
I teached LabVIEW Core 1 Tokyo in 2015/8/x-x.
Please count points.
&lt;/pre&gt;&lt;/blockquote&gt;

&lt;p&gt;二週間ほどして返信が有りました。
&lt;/p&gt;

&lt;blockquote&gt;&lt;pre&gt;We have added your 5 points for teaching LabVIEW Core 1 on 2015/8/x-x.
Thank you for your participation in the National Instruments 
Recertification by Points Program!
&lt;/pre&gt;&lt;/blockquote&gt;
&lt;p&gt;無事にポイントが付いたようです。
&lt;/p&gt;


&lt;p&gt;認定講師でないと50ポイントを集めるのは、なかなか大変です。
&lt;/p&gt;
&lt;p&gt;簡単にポイントがもらえる項目としては、
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;NIDaysへの参加　10ポイント
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt;講習への参加　　5～10ポイント
&lt;/li&gt;&lt;/ul&gt;

&lt;p&gt;CLAならば４年更新なので、NIDayを４回と、講習などで10ポイント得れば良いですが、
&lt;/p&gt;
&lt;p&gt;CLDは３年更新なので、NIDayが３回、講習で20ポイントとらないと足りません。
&lt;/p&gt;
&lt;p&gt;さらに、CLADは２年更新ですから、ちょっと厳しいですね。
&lt;/p&gt;


&lt;p&gt;他にもポイントが付く項目として、
&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;認定試験問題の開発　3～30ポイント
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;試験問題は英語で作成するのでしょうから、難しいですかね、
&lt;/p&gt;


&lt;ul&gt;&lt;li&gt;１人のCLD、CLA認定者へのメンタリング　30ポイント
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt;３人のCLAD認定者へのメンタリング　30ポイント
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;メンタリング？　おそらくサポートした人が認定試験に合格すればOKなのだと思います。
&lt;/p&gt;
&lt;p&gt;これはポイントが高い！（しかし、CLAD１人で10ポイントにしてほしいです。）
&lt;/p&gt;


&lt;p&gt;ほかにも項目が有るのですが、ちょっと敷居が高そうです。
&lt;/p&gt;
&lt;p&gt;詳しくは下記を参照してください。
&lt;/p&gt;

&lt;p&gt;&lt;a href="//ftp.ni.com/evaluation/certification/recertification_by_points/recertification_by_points.pdf"&gt;再認定ポイントプログラムftp&lt;/a&gt;
&lt;/p&gt;</description>
      <dc:subject>CLA</dc:subject>
    </item>
    <item>
      <title>CLA事前に考えるけど "いつも通り"</title>
      <link>https://syoujyou.asablo.jp/blog/2015/09/14/7792113</link>
      <guid>https://syoujyou.asablo.jp/blog/2015/09/14/7792113</guid>
      <pubDate>Mon, 14 Sep 2015 12:59:11 +0900</pubDate>
      <dcterms:modified>2015-09-14T13:00:14+09:00</dcterms:modified>
      <dcterms:created>2015-09-14T13:00:14+09:00</dcterms:created>
      <description>&lt;p&gt;７月にLabVIEW認定設計者（CLA）試験に合格しました。
CLAの実技試験で時間配分が重要で、特にアーキテクチャ開発を早く終わらせると、実装に十分時間をかけられます。
&lt;/p&gt;

&lt;p&gt;そこで、事前に使用するアーキテクチャを決めて、テンプレートとなるVIを短時間で作成できるよう、練習しました。
&lt;/p&gt;

&lt;p&gt;では、どのようなアーキテクチャが良いのでしょうか？
&lt;/p&gt;

&lt;p&gt;NIが公開しているサンプル問題を参考にすると、
日本版ではエレベータの問題があります。
&lt;a href="http://www.ni.com/gate/gb/GB_INFOCLAEXMPRP/JA"&gt;http://www.ni.com/gate/gb/GB_INFOCLAEXMPRP/JA&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;一方英語版にはエレベータの問題に加えてATMの問題があります。
&lt;a href="http://www.ni.com/gate/gb/GB_INFOCLAEXMPRP/US"&gt;http://www.ni.com/gate/gb/GB_INFOCLAEXMPRP/US&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;エレベータの問題の解答は、ステートマシンを用い、モジュール間のコマンドにはキューを使っています。比較的シンプルな方法です。
&lt;/p&gt;

&lt;p&gt;ATMの問題は解答は、イベントを用いた生産者消費者を用い、モジュール間のコマンドにはキューを使い、さらに停止のためにユーザーイベントを使っています。こちらは、より複雑で拡張性のある方法だと思います。
&lt;/p&gt;

&lt;p&gt;NIのコミュニティでは、LVOOP（オブジェクト指向）を使ったとの書込みもみられますが、かなり慣れていないと時間切れになると思います。
&lt;/p&gt;

&lt;p&gt;選択した方法は、ATMの例に近いのですが、APIを作る部分は省略しました。
結局は自分が慣れている方法を使う方が良い！という単純な結論です。
&lt;/p&gt;

&lt;p&gt;どのパターンが良いか迷っている方は、シンプルなエレベータの例を参考にするのが良いと思います。作業量が一番少ないですから。
&lt;/p&gt;</description>
      <dc:subject>CLA</dc:subject>
    </item>
    <item>
      <title>CLA"あきらめ"も大事</title>
      <link>https://syoujyou.asablo.jp/blog/2015/09/08/7783674</link>
      <guid>https://syoujyou.asablo.jp/blog/2015/09/08/7783674</guid>
      <pubDate>Tue, 08 Sep 2015 17:11:32 +0900</pubDate>
      <dcterms:modified>2015-09-08T17:22:16+09:00</dcterms:modified>
      <dcterms:created>2015-09-08T17:22:16+09:00</dcterms:created>
      <description>&lt;p&gt;７月にLabVIEW認定設計者（CLA）試験に合格しました。
&lt;/p&gt;&lt;p&gt;受験の準備に当たって、いろいろな方面から情報を頂き、攻略方を検討したので、その研究結果の一部を紹介します。
&lt;/p&gt;

&lt;p&gt;CLAでは短時間で多くの作業が求められるので、時間配分が重要です。
&lt;/p&gt;&lt;p&gt;海外のブログでも書かれていたので、評価基準の配点の項目に従って時間配分を考えました。
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.metisautomation.co.uk/how-to-ace-your-cla-exam/"&gt;http://www.metisautomation.co.uk/how-to-ace-your-cla-exam/&lt;/a&gt;
&lt;/p&gt;


&lt;p&gt;配点は下記です。
&lt;/p&gt;&lt;pre&gt;・ユーザインタフェースおよびブロックダイアグラムのスタイル : 10点
・ドキュメント化 : 20点
・仕様の実装度 : 30点
・アーキテクチャ開発 : 40点
&lt;/pre&gt;

&lt;p&gt;作業の順番は逆で、時間配分の目安は下記にしました。
&lt;/p&gt;&lt;pre&gt;１．アーキテクチャ開発　１時間１５分
２．仕様の実装度　　　　２時間１５分
３．ドキュメント化　　　３０分
&lt;/pre&gt;
&lt;p&gt;※スタイルは全体の作業に関連するので時間は割り当てません。
&lt;/p&gt;


&lt;p&gt;アーキテクチャ開発ではフレームワークのテンプレートを作成します。
&lt;/p&gt;&lt;p&gt;これは事前に練習しておき、できるだけ早く作ります。
このテンプレートをコピーして仕様で必要なモジュールを作ります。
&lt;/p&gt;

&lt;p&gt;次に、各モジュールの中の処理ケース等を仕様書に従って実装していきます。
&lt;/p&gt;&lt;p&gt;全ての仕様の網羅を目指し、次々に処理ケースを作ってタグを貼りこみます。
タグは仕様書に書かれている[Covers: SD1]といった文字列です。
このタグを、対応する場所にフリーラベルで貼ります。
採点では、要件管理ソフトウェアNI Requirements Gateway 使って調査するらしいので、全てのタグを入れる事が重要です。
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://sine.ni.com/nips/cds/view/p/lang/ja/nid/202625"&gt;http://sine.ni.com/nips/cds/view/p/lang/ja/nid/202625&lt;/a&gt;
&lt;/p&gt;


&lt;p&gt;実装で、あまり細部にこだわらない事も必要です。
&lt;/p&gt;&lt;p&gt;仕様を読んでも、理解できない所は、タグだけ貼って、あきらめる事も重要です。
とにかく時間が足りないので、サクサク進むようにしましょう。
&lt;/p&gt;


&lt;p&gt;最後は、ドキュメント化と、確認作業です。
&lt;/p&gt;


&lt;p&gt;アーキテクチャ開発を短時間で終わらせ、実装に時間を回すと良いと思います。
&lt;/p&gt;


&lt;p&gt;実際に数カ所、理解に苦しむ記述がありました、翻訳が、、
&lt;/p&gt;&lt;p&gt;あ、誰か来たようです。今回はここまでといたします。
&lt;/p&gt;</description>
      <dc:subject>CLA</dc:subject>
    </item>
    <item>
      <title>CLAなんとか合格</title>
      <link>https://syoujyou.asablo.jp/blog/2015/09/07/7781804</link>
      <guid>https://syoujyou.asablo.jp/blog/2015/09/07/7781804</guid>
      <pubDate>Mon, 07 Sep 2015 12:53:29 +0900</pubDate>
      <dcterms:modified>2015-09-07T12:55:26+09:00</dcterms:modified>
      <dcterms:created>2015-09-07T12:55:26+09:00</dcterms:created>
      <description>&lt;p&gt;LabVIEW認定設計者（CLA）試験に合格しました。
CLAはプロジェクトの仕様に従って最適な構造を設計する技能を評価する試験です。
４月下旬から準備をはじめ、６月中旬に受験しました。
&lt;/p&gt;

&lt;p&gt;この試験の難しい点は、「時間が足りない！」という点です。
仕様書に従っコードを作る実技試験ですが、４時間という短時間で仕様をカバーするコードを作成できるかがポイントです。
&lt;/p&gt;

&lt;p&gt;想定される仕様に対して使用するデザインパターンの骨格を、できるだけ短時間で作成する練習を繰返して、試験に臨みました。
試験当日も、集中力と持続力が必要です。
体調を整え、水分や糖分補給を考えて、お茶や飴を準備して行きました。
&lt;/p&gt;

&lt;p&gt;４時間が過ぎた時には、グッタリと疲れていました。
体重が５キロくらい落ちたかと思ったのですが、変わっていませんでした、、
&lt;/p&gt;

&lt;p&gt;試験結果は、メールでくるのですが、なかなか来なかったので気をもみましたが、
７月末に合格の通知をうけました。
&lt;/p&gt;

&lt;p&gt;感想は、&amp;quot;つかれた"　体力の要る試験なので、もう一度やるのはゴメンです。
&lt;/p&gt;</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2015/09/07/3c2574.jpg" length="18399" type="image/jpeg"/>
      <dc:subject>CLA</dc:subject>
    </item>
    <item>
      <title>VIを動的に実行</title>
      <link>https://syoujyou.asablo.jp/blog/2011/05/27/5882516</link>
      <guid>https://syoujyou.asablo.jp/blog/2011/05/27/5882516</guid>
      <pubDate>Fri, 27 May 2011 11:15:00 +0900</pubDate>
      <dcterms:modified>2011-05-27T11:21:34+09:00</dcterms:modified>
      <dcterms:created>2011-05-27T11:16:07+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
サブVIを利用する場合、そのVIをブロックダイアグラムに貼り付けて呼び出す方法が基本です。&#13;
&lt;br&gt;&#13;
使用するメモリーの節約などを考慮して、VIを動的に呼び出す場合があります。&#13;
&lt;br&gt;&#13;
動的に呼び出す方法には、手順が有るため、少々手間がかかります。&#13;
&lt;br&gt;&#13;
そこで、今回は、VIを動的に実行するサブVIを作成しました。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;br&gt;&#13;
"VIパス"に実行するVIのファイルパスを入力します。&#13;
&lt;br&gt;&#13;
"終了まで待機"にVIが実行を完了するまで待機するかどうかを指定します。&#13;
&lt;br&gt;&#13;
"ウィンドウの状態"にフロントパネルのウィンドウを開いた状態を設定します。 &#13;
&lt;br&gt;&#13;
実行して、スマイルマークのボタンを押すとゲームスタートです。&#13;
&lt;br&gt;&#13;
実行すると指定したVIが実行されます。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;br&gt;&#13;
オプションの"終了まで待機"をFalseで実行すると、通常のサブVIではできない動きが可能です。&#13;
&lt;br&gt;&#13;
実行した後で、呼び出した方のVIを終了しても、呼び出されたVIはそのまま動き続けます。&#13;
&lt;br&gt;&#13;
動的な実行を使うと、呼び出されるまでは、メモーを消費しないため、メモリーの節約になります。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A101.html" target="\blank"&gt;VIを動的に実行&lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2011/05/27/17e12c.jpg" length="18127" type="image/jpeg"/>
      <dc:subject>LabVIEW</dc:subject>
      <dc:subject>サブVI</dc:subject>
    </item>
    <item>
      <title>マインスイーパー</title>
      <link>https://syoujyou.asablo.jp/blog/2011/04/28/5829182</link>
      <guid>https://syoujyou.asablo.jp/blog/2011/04/28/5829182</guid>
      <pubDate>Thu, 28 Apr 2011 17:00:00 +0900</pubDate>
      <dcterms:modified>2011-04-28T16:19:39+09:00</dcterms:modified>
      <dcterms:created>2011-04-28T16:11:25+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
時々、LabVIEWは計測専用のソフトだと思われている方がいます。&#13;
&lt;br&gt;&#13;
そこで、おなじみの地雷探しゲームをLabVIEWで作ってみました。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;br&gt;&#13;
"WIDTH"に横のマス数を入力します。&#13;
&lt;br&gt;&#13;
"HEIGHT"に縦のマス数を入力します。&#13;
&lt;br&gt;&#13;
"Mines"に地雷の個数を設定します。&#13;
&lt;br&gt;&#13;
実行して、スマイルマークのボタンを押すとゲームスタートです。&#13;
&lt;br&gt;&#13;
左クリックでマスを開き、右クリックで旗を立てます。&#13;
&lt;br&gt;&#13;
左右同時クリックには対応していません。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
プログラムはイベント処理の生産者消費者デザインパターンを利用しています。&#13;
&lt;br&gt;&#13;
選んだマス目の周囲に地雷が有るか探す部分で、再帰呼出しの手法を使っています。&#13;
&lt;br&gt;&#13;
再帰呼出しは、LabVIEW2009で新たに追加された機能です。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A100.html" target="\blank"&gt;マインスイーパー&lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2011/04/28/172c26.png" length="29298" type="image/png"/>
      <dc:subject>LabVIEW</dc:subject>
    </item>
    <item>
      <title>強度グラフのマーカー色自動設定</title>
      <link>https://syoujyou.asablo.jp/blog/2011/04/15/5806386</link>
      <guid>https://syoujyou.asablo.jp/blog/2011/04/15/5806386</guid>
      <pubDate>Fri, 15 Apr 2011 15:00:00 +0900</pubDate>
      <dcterms:modified>2011-04-15T17:52:29+09:00</dcterms:modified>
      <dcterms:created>2011-04-15T17:52:29+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
二次元のデータを色の変化で表現する強度グラフですが、色の仕手に一手間かかります。&#13;
&lt;br&gt;&#13;
特に、表示したい値が大きく変化すると、すぐに画面全体が一つの色だけになってしまいます。&#13;
&lt;br&gt;&#13;
これは、色の指定をするマーカーの位置が、自動的に変化してくれないためです。&#13;
&lt;br&gt;&#13;
そこで、マーカーの位置を値の範囲に応じて自動調整するVIを作りました。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;br&gt;&#13;
"IntGraphRefIn"に強度グラフのリファレンスを接続します。&#13;
&lt;br&gt;&#13;
"DataIn"に強度グラフに表示するデータを接続します。&#13;
&lt;br&gt;&#13;
"MarkerColors"にマーカーに使う色のリストを接続します。値が大きい範囲に対応する色から並べます。&#13;
&lt;br&gt;&#13;
実行すると波形グラフのマーカーが自動的に設定されます。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A099.html" target="\blank"&gt;強度グラフのマーカー色自動設定&lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2011/04/15/16e805.jpg" length="19747" type="image/jpeg"/>
      <dc:subject>LabVIEW</dc:subject>
      <dc:subject>サブVI</dc:subject>
    </item>
    <item>
      <title>一次元配列を編集する</title>
      <link>https://syoujyou.asablo.jp/blog/2011/04/08/5783637</link>
      <guid>https://syoujyou.asablo.jp/blog/2011/04/08/5783637</guid>
      <pubDate>Fri, 08 Apr 2011 15:00:00 +0900</pubDate>
      <dcterms:modified>2011-04-08T13:26:24+09:00</dcterms:modified>
      <dcterms:created>2011-04-08T13:26:24+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
&lt;br&gt;&#13;
フロントパネルの一次元配列をボタンの操作で編集するサンプルVIを作りました。&#13;
&lt;br&gt;&#13;
配列の順番の変更、データの削除、挿入の処理をボタンのクリックで行えます。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;br&gt;&#13;
配列の左側に、操作対象を選択する丸ボタンの選択ボタンがあります。&#13;
&lt;br&gt;&#13;
この選択ボタンで対象とするデータを選びます。&#13;
&lt;br&gt;&#13;
"Delete"を押すと、対象のデータを削除します。&#13;
&lt;br&gt;&#13;
"Up"を押すと、対象のデータを一つ上に移動します。&#13;
&lt;br&gt;&#13;
"Down"を押すと、対象のデータを一つ下に移動します。&#13;
&lt;br&gt;&#13;
"Insert"を押すと、対象のデータの上に新しいデータを挿入します。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A098.html" target="\blank"&gt;一次元配列を編集する &lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2011/04/08/16c13a.jpg" length="10358" type="image/jpeg"/>
      <dc:subject>LabVIEW</dc:subject>
    </item>
    <item>
      <title>ある範囲の整数の乱数を作る</title>
      <link>https://syoujyou.asablo.jp/blog/2011/03/08/5728864</link>
      <guid>https://syoujyou.asablo.jp/blog/2011/03/08/5728864</guid>
      <pubDate>Tue, 08 Mar 2011 15:00:00 +0900</pubDate>
      <dcterms:modified>2011-03-08T14:17:29+09:00</dcterms:modified>
      <dcterms:created>2011-03-08T14:17:29+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
&lt;br&gt;&#13;
乱数を作る関数としては、「乱数(0-1)」があります、これは０から１の範囲の小数乱数を発生させます。&#13;
&lt;br&gt;&#13;
それでは、サイコロの様に１から６の整数をランダムに発生させるにはどのようにすれば良いでしょう？&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
乱数の値を、５倍して０～５の乱数を作り、それに１を加えて１～６の乱数として、それを整数に変換すると間違えです。&#13;
&lt;br&gt;&#13;
この計算方法では、１と６の発生確率が半分になってしまいます。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
ちょっと考えると当たり前なのですが、このようなミスを防ぐためにも、範囲を指定できる乱数発生のサブVIを作成しました。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;br&gt;&#13;
「Max」に発生させる最大値、「Min」に発生させる最小値を入力します。&#13;
&lt;br&gt;&#13;
実行すると、「Random Num」からランダムな整数値が出力されます。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A097.html" target="\blank"&gt;ある範囲の整数の乱数を作る &lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2011/03/08/1636f1.jpg" length="15931" type="image/jpeg"/>
      <dc:subject>LabVIEW</dc:subject>
      <dc:subject>サブVI</dc:subject>
    </item>
    <item>
      <title>VIのフォルダパスを調べる</title>
      <link>https://syoujyou.asablo.jp/blog/2011/02/16/5684588</link>
      <guid>https://syoujyou.asablo.jp/blog/2011/02/16/5684588</guid>
      <pubDate>Wed, 16 Feb 2011 15:00:00 +0900</pubDate>
      <dcterms:modified>2011-02-16T16:32:06+09:00</dcterms:modified>
      <dcterms:created>2011-02-16T16:32:06+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
&lt;br&gt;&#13;
VIの保存先のパスを調べる時に、"現在のVIパス"で調べる方法がありますが、&#13;
&lt;br&gt;&#13;
実行形式のEXEファイルにするとパスが変わってしまう場合があります。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
例えば "c:\Test\Main.vi" の中で "c:\Test\Sub.vi" が使われている場合。&#13;
&lt;br&gt;&#13;
Subの中で、"現在のVIパス"は "c:\Test\Sub.vi"を出します。&#13;
&lt;br&gt;&#13;
ここで、Mainを実行形式にすると、"c:\Test\Main.vi\Sub.vi" となります。&#13;
&lt;br&gt;&#13;
実行形式にする場合には変更が必要になります。&#13;
&lt;br&gt;&#13;
そこで、今回はそのVIが保存されているフォルダを調べるサブVIを作成しました。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;br&gt;&#13;
このサブVIを使えば、VIの状態でも、EXEでも、そのVIが保存されているフォルダのパスを返します。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A096.html" target="\blank"&gt;VIのフォルダパスを調べる&lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2011/02/16/15c793.jpg" length="12815" type="image/jpeg"/>
      <dc:subject>LabVIEW</dc:subject>
      <dc:subject>サブVI</dc:subject>
    </item>
    <item>
      <title>Googleのチャートツールでマップチャートを描く</title>
      <link>https://syoujyou.asablo.jp/blog/2011/01/19/5641888</link>
      <guid>https://syoujyou.asablo.jp/blog/2011/01/19/5641888</guid>
      <pubDate>Wed, 19 Jan 2011 15:00:00 +0900</pubDate>
      <dcterms:modified>2011-01-19T16:42:59+09:00</dcterms:modified>
      <dcterms:created>2011-01-19T16:42:59+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
Googleのサービスで、様々なグラフやチャートを描くサービスが有ります。&#13;
&lt;br&gt;&#13;
Googleチャートというサービスです。詳しくは&#13;
&lt;a href="http://code.google.com/intl/ja/apis/chart/docs/making_charts.html"&gt;Google Chart Tools&lt;/a&gt;を参照してください。&#13;
&lt;br&gt;&#13;
仕組みは簡単、URLに、グラフのデータを添えて送信すると、グラフ画像を返してくれます。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;br&gt;&#13;
今回はマップチャートです。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
"PointData"に、データを入力します。&#13;
&lt;br&gt;&#13;
データは以下の三要素のクラスタの配列です。&#13;
&lt;br&gt;&#13;
　"Country Code "は、プロットする国、地域の選択肢です。&#13;
&lt;br&gt;&#13;
　国と、日本の県、アメリカ合衆国の州の選択肢から選ぶことができます。&#13;
&lt;br&gt;&#13;
　"Legend"は、凡例に表示する文字です。&#13;
&lt;br&gt;&#13;
　"Color"は、プロットの色です。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
"Size"に、グラフのサイズを設定します。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
"Zoom"では、表示する地域の範囲を指定できます。&#13;
&lt;br&gt;&#13;
　"ZoomOption"では二種類のオプションがあります。&#13;
&lt;br&gt;&#13;
　"auto"では、選択した場所を中心に自動的に範囲を決めます。&#13;
&lt;br&gt;&#13;
　　auto場合、"bottom"、"left"、"top"、"right"でピクセル単位で位置を調整できます。&#13;
&lt;br&gt;&#13;
　"fixed"では、緯度経度で表示範囲を決めます。&#13;
&lt;br&gt;&#13;
　　fixed場合、"bottom"、"top"、は緯度（南緯はマイナス）、"left"、"right"は経度（西経はマイナス）で指定します。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
実行すると、"Chart"に画像が表示されます。&#13;
&lt;br&gt;&#13;
Googleのサイトを利用するので、インターネットへの接続環境が無いと使えません。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A095.html" target="\blank"&gt;Googleのチャートツールでマップチャートを描く&lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2011/01/19/153976.jpg" length="10134" type="image/jpeg"/>
      <dc:subject>LabVIEW</dc:subject>
      <dc:subject>サブVI</dc:subject>
    </item>
    <item>
      <title>バイナリデータを符号無し整数に変換する</title>
      <link>https://syoujyou.asablo.jp/blog/2011/01/15/5635783</link>
      <guid>https://syoujyou.asablo.jp/blog/2011/01/15/5635783</guid>
      <pubDate>Sat, 15 Jan 2011 15:00:00 +0900</pubDate>
      <dcterms:modified>2011-01-13T17:10:30+09:00</dcterms:modified>
      <dcterms:created>2011-01-13T17:10:30+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
バイナリファイル等を扱う場合に、バイナリデータから整数を取り出す必要が出てきます。&#13;
&lt;br&gt;&#13;
複数バイトのサイズの整数を扱う場合に問題になるのがバイト順序（バイトオーダー）です。&#13;
&lt;br&gt;&#13;
バイトオーダーには、主に「ビッグエンディアン」と「リトルエンディアン」の二種類があります。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
「ビッグエンディアン」は、データを大きい値に対応する上位バイトから並べます。&#13;
&lt;br&gt;&#13;
この方式は、IBMの汎用計算機から、UNIX系のCPU、モトローラー系のCPUで採用されていました。&#13;
&lt;br&gt;&#13;
そのため、「Motorola形式」と呼ぶ場合もあります。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
「リトルエンディアン」は、データを小さい値に対応する下位バイトから並べます。&#13;
&lt;br&gt;&#13;
この方式は、インテルのCPUで採用され普及したため、「インテル形式」と呼ぶ場合もあります。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
ちなみに、LabVIEWの内部処理では、「ビッグエンディアン」が使われています。&#13;
&lt;br&gt;&#13;
これは、LabVIEWが元々AppleのMacintoshで開発されたソフトウェアであるり、当時のMacがMotorolaのCPUを使っていたためです。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
この二種類のバイト順序に対応してデータを変換するサブVIを作りました。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サブVIは、16ビット、32ビット、64ビットの３種類がありますが、32ビットを例に説明します。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
"Binary Data"に元になるバイナリデータを文字列形式で入力します。&#13;
&lt;br&gt;&#13;
"Byte Order"で、バイトオーダーを"big-endian"か"little-endian"を選択します。&#13;
&lt;br&gt;&#13;
"Index"には、データ読出し位置を入力します。&#13;
&lt;br&gt;&#13;
実行すると、&#13;
&lt;br&gt;&#13;
"U32"から、変換された値が出力されます。&#13;
&lt;br&gt;&#13;
"Bytes"からは、変換に使われた箇所のデータをバイト配列で出力します。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A094.html" target="\blank"&gt;バイナリデータを符号無し整数に変換する　&lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2011/01/15/151d61.jpg" length="29211" type="image/jpeg"/>
      <dc:subject>LabVIEW</dc:subject>
      <dc:subject>サブVI</dc:subject>
    </item>
    <item>
      <title>VIの説明をまとめて編集する</title>
      <link>https://syoujyou.asablo.jp/blog/2010/12/27/5611067</link>
      <guid>https://syoujyou.asablo.jp/blog/2010/12/27/5611067</guid>
      <pubDate>Mon, 27 Dec 2010 15:00:00 +0900</pubDate>
      <dcterms:modified>2010-12-27T13:16:42+09:00</dcterms:modified>
      <dcterms:created>2010-12-27T13:16:42+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
VIの説明をまとめて編集するViを作りました。&#13;
&lt;br&gt;&#13;
大きなプロジェクトで、たくさんのVIを作った場合に、まとめて作業できると便利です。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
このVIでは、ファイル名のリストからVIを動的に開いて、プロパティノードから説明を変更します。&#13;
&lt;br&gt;&#13;
編集後には、インボークノードを使ってVIを保存します。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A093.html" target="\blank"&gt;VIの説明をまとめて編集する&lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2010/12/27/14c0e8.jpg" length="24434" type="image/jpeg"/>
      <dc:subject>LabVIEW</dc:subject>
      <dc:subject>サブVI</dc:subject>
    </item>
    <item>
      <title>音のフィルター</title>
      <link>https://syoujyou.asablo.jp/blog/2010/12/03/5548756</link>
      <guid>https://syoujyou.asablo.jp/blog/2010/12/03/5548756</guid>
      <pubDate>Fri, 03 Dec 2010 15:00:00 +0900</pubDate>
      <dcterms:modified>2010-11-30T16:37:02+09:00</dcterms:modified>
      <dcterms:created>2010-11-30T16:37:02+09:00</dcterms:created>
      <description>&lt;p&gt;&#13;
LabVIEWで波形のフィルタ処理を行うViを作りました。&#13;
&lt;br&gt;&#13;
タイプは、"ローパスフィルター"、"ハイパスフィルター"、"バンドパスフィルター"、"バンドストップフィルター"の４種類です。&#13;
&lt;br&gt;&#13;
カットオフ周波数を指定して実行します。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
今回はバターワースフィルタ関数を使用しています。&#13;
&lt;br&gt;&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
サンプルは会社のサイトに掲載しましたので下記をご覧ください。&#13;
&lt;br&gt;&#13;
&lt;/p&gt;&lt;p&gt;&#13;
&lt;a href="http://www.tectos.co.jp/technique/A092.html" target="\blank"&gt;音のフィルター&lt;/a&gt;&#13;
&lt;/p&gt;
</description>
      <enclosure url="https://syoujyou.asablo.jp/blog/img/2010/12/03/143766.jpg" length="17901" type="image/jpeg"/>
      <dc:subject>LabVIEW</dc:subject>
      <dc:subject>サブVI</dc:subject>
    </item>
  </channel>
</rss>
