Makerを目指すソフト屋のブログ

旧:ハードウェア制御と車のお勉強ブログ。いろんな体験/経験を通して、エンジニアとしても人間としても成長したいと思っています。

LabVIEW CLAD試験の勉強について

※本記事はLabVIEW Advent Calendar 2016向けの記事です。

本日からクリスマスまでの25日間、LabVIEW関連の記事を投稿しあってLabVIEWユーザ同士で楽しみませんか?12月のお忙しい時期ではありますが、ご参加をお待ちしております。

qiita.com

 

◆12/1となりました!

技術系Advent Calendarスタートしましたね!各言語、開発環境などの記事が毎日少しづつ読めるようになって、わくわくする季節となりました。

今回、LabVIEWアドベントカレンダーを立ち上げました。一緒に盛り上がれれば、と思っています。

 

◆今日のテーマ「CLAD受験」

LabVIEW CLAD(LabVIEW 準開発者認定試験)受験にあたり、私の経験を書きたいと思います。

今回の記事で知っていただきたいテーマについては以下の二点です。

   1.「LabVIEWの資格」というものがあるんだよ

           2.資格取得にあたり勉強したこと、苦労したこと

 

LabVIEWの資格について

以下のWebサイト(NI:National Instruments社の)を参考にされるといいと思います。

http://sine.ni.com/nips/cds/view/p/lang/ja/nid/201888

初学者は、 CLAD→CLD→CLAの順に受験するのが一般的かな?と思います。

 

資格は、LabVIEWの習熟度を判断する指標の一つだと思います。

LabVIEWによる開発を依頼しようと思っている方!どんな品質のものが納品されるか不安に思っていませんか?「依頼先に資格保有者が何名在籍しているか?」「どんな資格を持っているのか?」についてもチェックされるとよいかもしれません(^_^)

 

◆当日までに勉強したこと、苦労したこと

最初、先輩からLabVIEWの概要や各部品の特徴等についてレクチャーを受けました。

エラーチェックをするための配線が、なかなか理解できなくて苦労しました。

エラー有無のチェックができないVIを判別することができなかったり…

あと、ループ(For、While)はめちゃくちゃ大事です。

シフトレジスタの値はループによってどう変わるか??意識しながら問題を解きましょう。数こなすことが大事でした。

既にCLAD、CLDを保有している先輩方からは「過去問をしっかり解くこと」とアドバイスを受けてました。過去のブログにも書きましたが、私はひたすら過去問中心にやりました。過去問+正答はNIのWebサイトで入手できますよ。

http://www.ni.com/gate/gb/GB_EKITCLADEXMPRP/JA

 

◆試験の思い出

CLADは、LabVIEWの操作方法(考え方、結果なども含む)を問う問題が中心です。

正答を選択するタイプの試験です。

私が受験した試験会場では、PCの前に座り、正答にチェックをつける、という形で問題を解きました。

PCのモニタ上に問題が表示され、マウス操作で回答しますが、計算用の小さめホワイトボード+ペンは貸してもらえますので途中の計算や考え方をチェックするためのメモに使いましょう。

私は試験時間を目いっぱい使って、チェック・検算を念入りに行いました。

合否結果は、試験終了直後に出ます!

(スコアについては、退出前にプリントアウトした紙をもらえました→私は、会社に合格の報告をするために提出しました。)

 

◆試験を受けてみたくなったら…

ピアソンVUEまたはNIのWebサイトで、CLAD受験日を調べてみましょう!

「この日に受ける!」って決めて、さっさと周りに宣言しちゃった方がいいですよ。

先輩方からは「YDK」って励まされました。

私もがんばったら合格できました。みんなやればできる子です。

f:id:mate_gai:20161201215435p:plain

↑喜びのあまり合格した日の夜はFacebookに投稿した。

案外LabVIEWご存知の方がいらっしゃってうれしかったな。

 

最後に…

NIのFacebookページでも本アドベントカレンダーのことを紹介していただきました。うれしい限りです。いつもLabVIEW + NI製品の情報を配信してくださるのでとっても楽しみなFacebookページの一つです(*´ω`*)

https://ja-jp.facebook.com/NationalInstrumentsJapan/

LabVIEW 次のステップへ

LabVIEWユーザの皆さまへ※

今年、LabVIEW初?と思われる 

LabVIEWアドベントカレンダー」を作成しました!

qiita.com

2016年12月1日からクリスマスまでの25日間、LabVIEWユーザの方々でLabVIEWに関するいろんな記事、ネタなどを共有しあいませんか?

LabVIEWユーザの方々のご参加をお待ちしております。

 

----------

LabVIEWに関するお勉強について。

昨年、CLADを取得したので、次なるステップとしてはCLDに挑戦したいです。

CLAD…LabVIEW 準開発者認定試験

CLD…LabVIEW 開発者認定試験

 

LabVIEWの資格については、以下の「NI認定プログラム」をご確認ください。

www.ni.com

 

...ということで、

今後、欲しい情報にすぐアクセスするためにも、ここにメモ。

 

LabVIEW 開発者認定試験(CLD)準備用リソースキットのダウンロード

(ログイン必要)

http://www.ni.com/gate/gb/GB_EKITCLDEXMPRP/JA

 

LabVIEW開発者認定試験(CLD)受験対策ビデオ

LabVIEW開発者認定試験(CLD)受験対策ビデオ - National Instruments

 

独学(どうしてもわからない部分は、CLD保有の先輩方に聞こうと思っていますが…)で進めていくことになるので、どこまで頑張れるか?そしてCLD取得の先に見える景色はどんな感じなのか??制御の仕事に関われなくなっちゃった現状ですが、自分にできることを少しづつやって、道を探したいと思います。

 

以下の4つのバランスをとれるようになって、早く元気になって

イキイキと仕事したいです。

・やらなければならないことと

・やってほしいと思われていることと

・やりたいこと

・やらせてほしいこと

 

今日のテーマは以上です!!

 

 

LabVIEWに挑戦したら、自分の世界が広がった話

私は、"LabVIEW"というNational Instruments(NI)の開発環境を使ったプログラムを作ることができます。

LabVIEWと出会い、使い方を勉強して、社内でLabVIEWを使った業務に携わることができるようになった経緯と、今後についてこの機会に書きたいと思います。

 

(LabVIEWによるプログラム開発の例)

f:id:mate_gai:20161029090750j:plain

 

◆きっかけ

LabVIEWとは?

細かく知りたい方は、NIさんのWebサイトを見てもらうといいかと思います。

NI LabVIEWとは? - National Instruments Japan

一般的に使われる他の言語(C/C++C#VB…)・開発環境(Visual StudioC++Builderなど)と大きく異なることは 「機能(グラフィカルな部品群:LabVIEWではVIと呼んでいます)を組み合わせてロジックを組み立てる」ところです。

プログラマでない人でもプログラムが作れる、という点では、

子ども向けの開発環境「Scratch」に近いように思います。

実際、教育版LEGO MINDSTORMの開発環境の一つにLabVIEWがあったりします。

三重県では"LabVIEWを使った"子ども向けプログラミングワークショップはまだない、と思ってます。いつかやってみたいなー。やってみませんかね?個人で協力しますよ!NIさーん。アフレルさーん。|д゚)チラッ

www.afrel.co.jp

 

なんでやろうと思ったの?

LabVIEWに出会うまでは、計測データの条件入力機能(UI)や、測定データの可視化などの業務をやっていました。

当初は、主婦なので、負荷が少なくなるように…という当時の上司のご配慮の下ではあったのですが、業務を続けていくうちに、現在の業務だけやっているだけでは、良い仕事につなげていくことが難しいな…やっぱり全体を理解していないと、と思うようになりました。弊社の製品・ソフトウェア全体について詳しく理解したい、自分のできることをもっと広げたい、と思うようになりました。

しかし、他の領域には私の入る余裕はありません。周りのメンバーも自分の仕事で精いっぱい。教育のコストやリソースを割いてもらうことは、現実的に難しい状況でした。

 

制御ソフトにかかわる勉強は、書籍を読んだり、Arduino等のワークショップなどで勉強していたけど、実際業務に役立つスキルを身に着けるにはどうしたらいいのか…どうしたら業務全体を理解することができるようになるのか…

ある日、休日出勤していたところ、既にLabVIEW業務に関わっていた他チームの先輩に声をかけられました。

 

f:id:mate_gai:20161029090138j:plain  f:id:mate_gai:20161029090141j:plain

 

二つ返事で「LabVIEWやる!!!」って決意。いろんな説明を聞いて、LabVIEWの勉強を開始し、先輩のチームの業務を助けたい!と思うようになりました。

 

◆どんな勉強をしたの?

計測制御ソフトのことを、ほとんど何も知らないところからのスタートです。業務で使い物になるレベルであることをアピールできなければ、業務に関わらせてもらうことはできない、と考え「まず、実績を作る」ことからスタートしました。

 

LabVIEW CLAD(LabVIEW 準開発者認定試験)受験に挑戦

NIが実施している資格を取って、一定水準の理解があることをアピールしようと思いました。学習に使ったテキスト(パワポ資料)・過去問は先輩のお下がり。それから、NIのサイトから最新の過去問を入手して勉強しました。(つまり過去問は3年分ぐらいやった)

 

LabVIEW CLADってどこで受けられるの?どんな勉強したの?

私が住んでいる三重県では、津市で受験することができました。

受験日時や手続き方法は、ピアソンVUEのWebサイトを確認してもらったらいいと思います。おそらく、都会はもっと受験機会が多いんではないかと思います。

いつでも受けられる、と思うとダラダラするので、先輩・上司に「○月○日に受験します」と宣言し、その日に照準を合わせた勉強をしました。

特に平日の夜(寝る前の30~1時間)や、電車・バス乗車時の移動時間は過去問中心、休日は間違えた問題を「なぜ間違えたのか?」確認するための時間と決めて勉強しました。

CLADの場合は、LabVIEWの考え方や操作方法に関する問題が殆どです。実際にLabVIEWを操作しないと納得できない間違いについては、先輩のPCやハードウェアを借りて試しました。

 

その結果…

当日は、「過去問よりも難しいな…」という印象の問題が多かったのですが、一発合格できました!\(^o^)/

上司からも認めていただき、会社から受験料を出していただくことになりました。

こんなかっこいい合格証がメールで送られてくるゾ!

f:id:mate_gai:20161029093458j:plain

 

◆CLAD合格を通して得たもの

CLAD合格後、LabVIEWを使った制御ソフトウェア開発に関わる機会をいくつかいただくことができました。

また、受験勉強から考えると、新しい挑戦をきっかけに、自分の世界を広げることができた、ということで自分に自信が少しつきました。

 

◆今後やっていきたいこと

現在、会社の業務都合によりLabVIEWを使った制御ソフト開発からは離れてしまいました。当分業務で関わることはできなさそうです。

でも、三重県内でLabVIEWを扱うことができる人はまだまだ少ないはず。

今持っている能力を枯らすことなく、今後に生かしたい、と思っています。

  ・さらに上の資格(LabVIEW CLD)に挑戦してみたい

  ・NIさんの情報を継続してキャッチし、LabVIEWをはじめとする計測制御ソフトウェアや業界の動向を追いかけたい

  ・個人でも LabVIEW+Arduino でアプリを作りたい

  ・LabVIEWについて学んだこと、新たに知ったことを情報発信することで裾野を広げたい、次の世代にも広めたい

 

三重県およびその近郊でLabVIEWやっているよ、という方やこれからやりたいという方、研究・学術機関の方などいらっしゃれば、是非お知り合いになって情報共有したいです。LabVIEWについても、自分にできることをもっと増やしていきたいです。

ホビーカフェ ガイアに行ってきたよ~!

今年7月、伊勢市にOPENしたばかりの

「ホビーカフェ ガイア」に、8月と先日の2回 行ってきました!

 

◆ホビーカフェ ガイアとは???◆

なんと、プラモデルが作れちゃうカフェです。

店内に、工作スペースがあります。機材等を使わせてもらうことができます。初心者向けもあるみたいですよ。

(注:プラモデルは基本持ち込みです。作りたいものを持っていきましょう)

f:id:mate_gai:20160904171210j:plain

 

料金など、詳しいことはこちらのお店のサイトまで↓

hobby-cafe.x-i-g.blue

ちなみに、塗装ブースは、匂いが飲食スペースに届かないように

ちゃんと対策を施されているんですよ^^ 

 

 

◆何を作った??◆

8月に訪問した際は、「タミヤフォークリフト」を作りました。

 

あー、このサムネイル画像のフォークリフト、私の作品ですw

hobby-cafe.x-i-g.blue

 

f:id:mate_gai:20160904171306j:plain

 

◆お食事について◆

コーヒー牛乳とカレーが自慢とのことです。

チキンカレーを注文しましたところ…。

 

カレーめっちゃおいしい!(・∀・)

f:id:mate_gai:20160904171758j:plain

 

しっかり煮込んであって、口に入れるとうまみが優先で広がる味です

 …って伝わるかな??

 

ちなみに、昨日訪問した際はいちごチョコサンデーを注文しました。

甘党にはうれしいメニュー!

f:id:mate_gai:20160904172211j:plain

女性のお客さんも多いし、店内で特撮やアニメの話できるのも楽しいですよ。私はガンダム詳しくないけどベアッガイⅢは好きです。

 

またプラモデル作る時も作らない時も

ここにちょくちょく訪れたいと思いますw

 

営業時間や休日の情報はこちらでチェックしてくださいね↓

hobby-cafe.x-i-g.blue

C++Builder 10.1 Berlin Starter EditionでBCB6のプログラムを動かす

下記記事の続き。

mate-gai.hatenablog.com

 

C++ Builder使ってた、という人が少しいらっしゃって

フォームアプリ作成の容易さ(当時、MFCに比べれば楽だった)と

現在の情報量の少なさについての苦悩が共有できてうれしく思います。

 

主に今回は興味本位で「BCB6(Borland C++ Builder6)で作ったプロジェクトは、今回のC++Builderで動くのか??」ということを試してみました。

 

0. 確認 

BCB6のプロジェクトは読めるのか??

f:id:mate_gai:20160904162340p:plain

[ファイル]→[プロジェクトを開く]メニューを確認すると、

[旧 Borland プロジェクト グループ(.bpg))は選択できるようです。

 

1.BCB6でプログラムを作る。

BCB6のプロジェクトは[.bpr]という名前で作られるので

新規でプロジェクトグループを作り、その中にBCB6のプロジェクトファイル(今回はProject1.bprと命名)を含めることにしました。

 

作成したプログラムは、

ボタンをクリックしたらエディットボックスに現在日時を表示する単純なものです。

 

【ボタンクリックイベントの中身】

TDateTime dt = Now();

AnsiString as = dt.FormatString("yyyy/mm/dd hh:nn:ss");

Edit1->Text = as;

 

2. C++Builder 10.1 Berlin Starter Editionを開き、

 BCB6で作ったプロジェクトグループを読み込ませる。

 

ここでトラブル発生!

f:id:mate_gai:20160904162858p:plain

 

とりあえず、ProjectGroup1は読み込んだようなので

その下に、新規プロジェクトを追加してみました。

([VCLフォームアプリケーション]を選択)

f:id:mate_gai:20160904163452p:plain

プロジェクトができたので、その下に

BCB6で作ったソースコード(.h、.cpp、.dfm(フォーム))を追加しコンパイル

 

 f:id:mate_gai:20160904163502p:plain

 

「いまなんじ?」ボタンをクリックしたら

プログラムは現在日時を表示するようになりました。

 

4. 今回のまとめ

・BCB6で作成した[.bpr]という拡張子のプロジェクトファイルは

 サポートされていない。(なぜか?追って調べてみる)

・BCB6では、文字列"AnsiString"の使い勝手が良くて多用していた。

   今回も使用できるようだが、C++Builder 2009 から、Stringは"AnsiString"→"UnicodeString"に変わったらしい。

www.gesource.jp

 

5. もっと調べてみたいこと

…ざっと思いつくのは、こんな感じ。ほかにもいろいろ気になることは出てくると思うので少しづつ遊んで確認してみようと思います。

 

・文字列の扱い

・今回はごくごく単純なプログラムでしか確認してないけど、

実際ソフト作成時に使用するコントロール(特にグリッド)の使い勝手(イベント、プロパティ)はどんな感じか?

・重い処理(大量のデータを読ませて、グラフ等に出力する場合・・・など)の場合

.NET Frameworkを使用したフォームアプリ(C#などで開発)したものと比べたら動作は軽快なのではないか?

・BCB6で発生していた不具合(と思われる現象)は改善されているのか?

Excelファイル入出力は、BCBではOLEを使用していたが今はいい方法があるのか?

 

C++Builder 10.1 Berlin Starter Editionを使ってみた

きっかけはこの記事。

forest.watch.impress.co.jp

 

C++Builderって、皆さん覚えてます&知ってます??

C/C++言語で開発するときの、開発環境の一つなんですけど。

 

開発環境とは、ざっくりいうと「ソフトウェアを作る際に必要なソフト」。

一般の方は、Scratchをイメージしていただければ、と思います。

 

私が使ってたC++Builderは6で、当時はBorland社でした。

今は、Embarcadero(エンバカデロ)社に引き継がれて

C/C++言語の開発環境を提供されています。

 

2016年現在のC++ Builderのシェアってどれぐらいなんだろう?

(三重県内でBuilder使いがいらっしゃったら、ともだち妖怪になりたいですw)

 

今回、そのC++ Builderが9/9まで無償で入手できるとのことなので

試しに使ってみることにしました!

 

【インストールにあたって(注意点)】

2016/9/9までは無料。(通常は\38000)

本エディションは趣味や学習を目的とした利用に加え、開発したアプリケーションに関連する収益が1,000米ドルを越えない範囲で無償利用が可能

入手するためには、エンバカデロ社の EDN アカウントが必要。(無料)

 

詳しくは、下記エンバカデロ社のダウンロード規約を読んで入手してくださいね。

www.embarcadero.com

 

私はすでに EDNアカウントを持っているので、

登録しているEメールアドレスとパスワードで トゥルッと入手。

インストールしてみました。

 

【ちょっと使ってみた感想】※個人の感想です。

過去に使用経験があるのは、「Borland C++ Builder 6 (以下、BCB6)」なのでそれとの比較になりますが…

 

・デスクトップに作られたアイコン名称が

「RAD Studio 10.1 Berlin」になっているなあ…

BCB6のときは、「C++Builder6」だったのに。

 

・初回起動時は、Visual Studioみたいな

「複数の子画面が一つの大画面にドッキングした状態」なのだが

「クラシック(ドッキングなし)」を選ぶことで、BCB6ライクな環境で作業できる。

でも、できればフォームはソースコードの開発画面と分離してほしい

(タブ切り替えでフォーム編集画面に行くのは使いづらい)

 

 

→ (追記)Twitterで、フォームデザイナとコードエディタは

      分離できることを教えていただきました。

      (詳しくは、リンク先の説明を参考にしてください。)

 

 

 

・32ビットWindowsアプリケーションしか作れないみたい

 

VCLフォームアプリケーション使いやすい。(BCB6で慣れてるから)

 

【これからやってみたいこと】

既存のBCB6で作成したプログラムの互換性

(どの機能が動き、どの機能が動かない(変わっている)のか…)

 

ここまで読んで関心を持たれた方、

無償で入手できるのは9/9までなのでお急ぎくださいね!

 

…Web上でも、C++Builderをインストールした!って記事が、

ほとんど見つからないのですが使用されたの貴重な報告。

DEKOのざつだん - 2016/08

qiita.com

Little Coder Mieプログラミングワークショップに行ってきた

今回のLittle Coder Mieプログラミングワークショップ(子ども向けプログラミングワークショップ)は、みんなでドミノ!!!

 

ドキドキのスタート…

f:id:mate_gai:20160730174417j:plain

 

みんなで、一つのドミノを作り、動かしました。

ざっくりいうと、「隣の人のドミノが倒れたことをトリガーにして、モータを回すプログラムを作り、モータが回ることによってビー玉が転がり、自分のドミノが倒れて隣の人につなげていく…」というイメージです。

 

ドミノの仕掛け。

f:id:mate_gai:20160730175336j:plain

年齢は小3~6で、初心者・経験者入り混じった状態です。私は初心者中心に今回フォローさせていただきました。

 

全体を俯瞰するとこんな感じ。

机をコの字型においてながーいドミノを作りました。

f:id:mate_gai:20160730174744j:plain

 

今回気づいたことは、初心者の子同士で「それどうやってやったの?」みたいな会話が積極的になされてて、各自個性のある見てて面白いプログラムができてたこと!

隣の席の人の仕事にも積極的に声掛けて、良いことは共有しあわなくては。(職業プログラマーにも通じることやで~!)

 

素晴らしいプログラムはどうやって作ったのか?みんなで見よう!

f:id:mate_gai:20160730175017j:plain

 

f:id:mate_gai:20160730175213j:plain

 

最後の仕掛けの風船が…私はビビりなので

超びっくりしました。(最後すごい驚きの表情で写真に納まってたのは内緒)

 

結構風船でかいw 仕掛け等いろいろ作ってくださったyokoさんありがとうございました。

f:id:mate_gai:20160730175305j:plain

 

途中、ドミノがうまく倒れない…ということは今回も発生はしてたのですが、ワイワイと楽しくやれたこと、満足度は高かったこと、なにより「他の子と積極的にコミュニケーションを取り合える雰囲気であったこと」がよかったな、と思っています。

 

私個人は、この機会を通して、「ハードを動かすプログラム」にまた関われてすごくうれしかったです。

いつも、ワークショップでは勇気と元気を貰えています。

毎回ワークショップで使用しているプログラム開発環境「Scratch」をもっともっと三重の老若男女に広めていきたいと思ってます。今後もいろいろ作って遊ぼう!

 

さーて。次回は秋に開催です。どんなことやろうかな??

 

初心者チーム担当で講師をしてくださったあおさん。

終始和やかに進められたのはあおさんの雰囲気のおかげと思います。

おつかれさまでした!

f:id:mate_gai:20160730180241j:plain