レビューメディア「ジグソー」

クリスマスツリーを飾り付けてみよう ~インテル(R) Edison キット for Arduinoで電脳ツリーをつくってみよう~

 

はじめに

 

 Edisonは少し前のパソコン並みの能力がありそうですが、今回のレビューは、「インテル(R) Edison キット For Arduino」ということで、Edisonがもっているこうしたすごい能力を試してみるものではなく、「For Arduino」の部分で、どのくらい簡単に楽しく工作ができるかにチャレンジしてみたいと思います。

 

 みなさんも子供のころ、一度はクリスマスツリーの飾り付けをしたことがあるのではないでしょうか。

 

 「インテル(R) Edison キット For Arduino」を使って、何かを作ってみるワクワク感をもう一度取り戻せたらなという思いから、今回はクリスマスツリーの飾りつけを、「Edison キット For Arduino」といろいろな部品を使ってしてみたいとおもいます。

 

 とはいっても、私はArduino初心者ですので、初心者の視点で、レビューしたいとおもいます。

 また、途中で休憩(コーヒーブレイク)のコーナーを設けてEdison キット For Arduinoをどう使うかのアイディアだしなどをしていきたいとおもいます。

 

 ・・・・という感じで始めたのですが、最終的にはいろいろありました。Arduinoとの互換性や使い勝手の違いなど、ページの最後のほうの「まとめ」の箇所に記載しましたので、「まとめ」だけでもご覧いただければ嬉しいです。

 

 

目次

 1.設定してみる

  1-1.箱を開けてみる

  1-2.組み立ててみる

   コーヒーブレイク1 クリスマスツリーを組み立ててアイディアだし

  1-3.パソコンとつないでみる

   コーヒーブレイク2 Arduinoの参考書

 

 2.Arduinoとして使ってみる

   2-1.部品集め1

   2-2.LEDを光らせる1

   2-3.部品集め2

   2-4.100VのACコンセントの制御

     コーヒーブレイク3 キットのはんだづけと道具たち

 

 3.試行錯誤

  3-1.ツリーの電飾の制御

  3-2.MIDIキーボードの制御

  3-3.電源の制御

 

 4.完成

    コーヒーブレイク4 Arduinoの先

 

 5.まとめ

  5-1.重要ポイントまとめ

  5-2.レビューまとめ

 

 おまけ レビュー完了後に試してみたこと  

  

 

 

1.設定してみる

1-1.箱を開けてみる

一見段ボール箱に、青色の帯を付けただけのようにみえます。

大きさはこんな感じです

 

青色の帯部分を左側へ引っ張ってみます。

あれれ?ここでつっかえたけど、無理やり引っ張っても大丈夫かな?

 

取れました!

★ポイント★

 箱は青色の部分が筒状になって段ボールにかぶさっているので、図のようにスライドさせて、開封する。

 

箱の裏と側面の間がテープ止めされていますので、切り離します。

じゃーん。

おお!。箱に楽しい絵が描いてあります。

インテル(R) Edison

 箱の中は2重になっていました。

Arduino互換ボードの大きさはこんな感じ

 

おもて面。左側がArduino互換ボード、右側が比較用のArduino UNO R3

裏面。少し水滴がそのまま乾いたような汚れがありました・・・。ちょっと気になります。

これは何?? 白いプラスチックの棒が4つ、ねじ(ボルト)が2つ、ナットが2つみたい。

えっと説明書は・・・。

 

あったあった。あれれ? 注意事項だけで、使い方の説明は一切ない・・・

はて、ここからどうすれば?? しばし途方に暮れる。

 

1-2.組立ててみる

教えてEdison先生ならぬ、教えてGoogle先生。先人のお知恵を検索してみよう・・

 

>本日発売、Intelの極小コンピュータ「Edison」インプレッション

http://pc.watch.impress.co.jp/docs/topic/review/20141025_672974.html

なるほど、なるほど 、ん?「Edison Breakout Board Kit」の方の説明のようだ・・・。

さらに検索。

 

>パソコン実験工房 Edisonマスターへの道 (不定期連載)

>Intel製超小型コンピューター「Edison」

http://www.pc-koubou.jp/blog/edison_master.php

おお!これだ!ありがとう!

 

まずやることは、1.Edison本体をArduino互換ボードに取り付ける、2.Arduino互換ボードに足をつける。さっきの白いプラスチックの棒が4つ、ねじが2つは足を取り付けるたものもの。

 

では早速まねをしてみよう!ともおもいましたが、同じではつまならい?ので、ちょっと変えて、先に足をつけてみます。

 

しかし、ここで困った。ドライバーが無かった・・。さてどうする?

ねじをArduino互換ボードの表面からとおして指で押さえ、裏側のねじ山部分から、白いプラスチックの棒を回していくと

おお、止まりました。道具なしでも一応足は取り付けられました。

4本とも足がつけられました!やった。

足の位置は、完全に対称の位置ではくてそれぞれ少しずれた位置にあるようです。

立った。ボードが立った!。

 

では次に、下の写真のEdison本体を、上の写真のArduino互換ボード上の右上部分に描かれている白色の枠内に取り付けていきます。白枠の左上と右下にねじ(ボルト)が立っています。

Edison本体のおもて面です。左上、右下にねじ穴があります。

Edison本体の裏面です。写真下側部分にコネクタがあります。

Edison本体の表面を上にして、下の写真のようにEdison本体のねじ穴に、Arduino互換ボードのボルトを入れていきます(下の黄色の矢印部分が2つのボルトになります)

 

上の写真の黒矢印の部分を押して、Edison本体の裏面のコネクタを、Arduino互換ボードのコネクタに差し込みます。

★ポイント★

のちにマニュアルを見たところ、金属部分は押さずに、金属周辺のL字状の基盤部分を押して差し込むことという記載がありました。下記マニュアルの「Handling」の項目の図。

https://communities.intel.com/docs/DOC-23161

 

黄色矢印の2本のボルトにそれぞれ付属のナットを回転させて入れ込んでいきます。私は道具がありませんでしたので、手でナットを回してボルトに入れ込んでいきました。

★ポイント★

このナット2個は非常に小さくなくしやすいので注意が必要です。取り付け作業などは箱の中でやったりしたほうがよいかもしれません。

 

組み立て完了。Edison本体をArduino互換ボードに取り付けてインテル(R) Edison キット for Arduinoの組立ができました。

★ポイント★

届いてから箱を開け、組み立て完了までは道具はなくてもできる。

 

 

さて、次はどうすれば?ともう一度、

>パソコン実験工房 Edisonマスターへの道 (不定期連載)

>Intel製超小型コンピューター「Edison」

http://www.pc-koubou.jp/blog/edison_master.php

こちらを参考にと。

 

>USB TypeA→MicroBのケーブルが2本必要です。

おっと、押入れのどこかにあるはず・・・たぶんある。

というわけで今日はここまで。

 

★ポイント★

パソコンと接続するために、USB TypeA→MicroBのケーブルを2本あらかじめ用意しておくべし。

 

コーヒーブレイク1

 少し休憩して、今回飾り付けていくクリスマスツリーを組み立ててみたいとおもいます。

最初に買ってみたツリー、ダイソーの100円のツリーと100円の星のかざりです。高さ30cmくらいです。実際部屋の隅においてみたら、小さすぎるかな・・という感じ。

そこで、買ってきました。本当は本物の木がよかったのですが、大人の事情により..

ニトリの「セットツリー150cm」です。お値段は2990円なり。

開けてみると、木の部分は3分割されていてそれぞれ差し込んで組み立てるものでした。

 

 電球がついています。コンセントにつなぐタイプ。これはなんだかインテル(R) Edison キット for Arduinoにつなげられる予感??

おお!光った。点滅します。

飾りをつけて、はい完成!。

右側はダイソーの100円のツリーです。飾りをお互い少しづつ譲りあって飾ってみました。

ランプの点滅のペースは上の動画のような感じです。

さすがはお値段以上のニトリのツリー。普通にこれで十分のようにも思えますが・・・。

 

 

さてどうEdisonを使って飾り付けるかですが、実際にツリーを組み立ててみた思ったのは、

1.上の写真の黄色の四角で囲った部分がちょっとさみしいので、ここら辺を派手にできないか。

2.ツリーのランプももっと派手にできないか。

3.ツリーのランプの電源を寝るときに自動的切れるようにできないか。

4.右側の小さなツリーもちょっとさみしい。何かできないか。

といった点です。

 

 

それでは本編に戻りまして・・

1-3.パソコンとつないでみる

再びこちらの記載を参考に

>パソコン実験工房 Edisonマスターへの道 (不定期連載)

>Intel製超小型コンピューター「Edison」

http://www.pc-koubou.jp/blog/edison_master.php

 

USBとシリアルの変換チップのドライバをインストールします。

★ポイント★

 まだパソコンとは接続しない。

 

http://www.ftdichip.com/Drivers/VCP.htm

から「Windows」の「 setup executable」をクリックしてダウンロードし、実行してインストールします。

 

次に、Edisonのドライバをインストールします。

https://communities.intel.com/docs/DOC-23242

「Windows Driver setup 1.0.0」の「Download」をクリックしてダウンロードし、実行してインストールします。

ドライバセットアップが完了したら、USBケーブルで「Edison」本体とパソコンを接続します。

★ポイント★

USBケーブルを接続したらドライバインストール中に抜かない。

ドライバのインストールは10分くらいかかります。インストール中には何度も「ピンポンパン」というデバイスを認識できたことを示す音が鳴ります。

 

私の場合はデバイスドライバのインストール中にエラーのダイアログが表示されることはありませんでした。

 

次に、Arduino Softwareのドライバをインストールします。

https://communities.intel.com/docs/DOC-23242

「Arduino Software」の「Download」をクリックしてダウンロードして展開します。

展開はWindows8に標準の展開機能では展開できません。下記のようなエラーが発生します。

★ポイント★

「Arduino Software」の展開は7-zipで行うべし。

(下記サイトの下のほうの.exeファイルの展開ソフトを使用)

http://sourceforge.jp/projects/sevenzip/

 

インストールした「Arduino.exe」を実行します

(私の場合、「C:\arduino-1.5.3-Intel.1.0.4」の中にあります)

 

「Intel Edison Virtual Com Port」に割り当てられたCOMポート番号を「デバイスマネージャ」で確認します。

「ポート(COMとLPT)」の中の「Intel Edison Virtual Com Port」の欄になります。私の場合は「COM4」でした。Arduinoのメニューの「ツール」「シリアルポート」を選びこのCOM番号を選択します。

「ファイル」→「スケッチの例」→「01.Basics」→「Blink」をクリックします。

メニューの「ファイル」の下の左から2番目の「ボードへ転送する」ボタンをクリックします。

 

その結果が、下記のビデオです。

 

おお!できました。

インテル(R) Edison キット for Arduino上のLEDが1秒おきに点灯・消灯を繰り返します。

 

これでまずはインテル(R) Edison キット for Arduinoのボードが動作することが確認できました。

 

 

コーヒーブレイク2 Arduinoの参考書

さてここからどうすればよいでしょうか。

Arduinoの勉強が必要です。

 

そこで本を探してみました。

Arudino初使用の私が購入したのは下記の2冊です。

1.Arduinoをはじめよう 第2版

http://www.amazon.co.jp/dp/487311537X/

何も知らない私のような人でも読み進められる本です。後半の半分以上は「Arduino 公式リファレンス」になっていてスケッチ(プログラム)の言語と命令のマニュアルになっています。これは下記URLのオンライン版を本にしたものになりますのでパラパラめくって読むのに都合がいいです。

http://www.musashinodenpa.com/arduino/ref/

 

2.たのしい電子工作 Arduinoで電子工作をはじめよう!

http://www.amazon.co.jp/dp/479803939X/

これは後述しますAmazonで「Arduinoエントリーキット(ボード別売)」を購入しようとした際に「よく一緒に購入されている商品」として表示された書籍です。

プログラムを作ったことのある方であればすらすらと読み進められる内容だとおもいます。(私が一日かからずに読めるレベルでした)

 

 

 

2.Arduinoとして使ってみる

2-1.部品集め1

Arudinoを試してみるために何が必要かですが、初心者にとっては一から試してみる必要があるとかんがえました。まずは、なんらかの入門キットを購入しようとしてAmazonを物色したのですが、どれもこれも、Arduino UNOのボード付きの入門キットばかりで、インテル(R) Edison キット for Arduinoを持っている人のためのArduino UNOのボードのないタイプの入門キットが見つかりませんでした。

そんな中で発見したのが、

 

Arduinoエントリーキット(ボード別売)

http://www.amazon.co.jp/dp/B00A9XIPMS/

「(ボード別売)」というところがポイントです。結果的にはそのまんまの名前でした。 

>Arduinoで電子工作をはじめよう!(出版社:秀和システム)
>※Chapter2-6までの例題に対応。拡張キットと合わせて、Capter2-9まで試すことができます。

とありました。この本はコーヒーブレイク2の中でご紹介しました本です。2-10までがシールドを使わないものの説明ですので、この部分について大部分のものを試すことができそうです。

そこで「Arduino拡張キット」も購入しました。

 

★重要ポイント★

のちにEdison キット for Arduinoで試行錯誤していてわかったことですが、実はEdison キット for ArduinoをArduinoとして使おうという方は、本家ArdinoUnoもあったほうが、問題の切り分けに使えますので、本家ArdinoUnoがセットになったキットのほうがよいと思います。

 

 

2-2.LEDを光らせる1

>Arduinoで電子工作をはじめよう!

http://www.shuwasystem.co.jp/products/7980html/3939.html

の下のほうに記載のあります目次に沿って、

>1-4 はんだ付けなしで回路を作る (スケッチ1-4)

から

>2-2 LEDをさらに増やしてみる(スケッチ2-2-1)

まででツリーがどのくらい派手にできるか試してみます。

 

スケッチ1-1

さてこれでツリーはどのくらい派手になったでしょうか?・・

 

おー?。

ん、しょぼい。わかってたよ。いやいやしょぼいかもしれないけど大事な第一歩を踏み出したのだ!

(と自分に言い聞かせたのです。)

 

スケッチ1-2

ならばこれでどうだ!

ほんのちょこっと進歩したよ。

あ、いいことを思いついた!これなら派手になるかも?

速さだけは・・派手になったぜ!

 

ひきつづき本に記載のスケッチを試してみます

スケッチ2-1-5 PWMを使って明るさを制御する

 

スケッチ2-1-6 明るさを連続的に制御する

 

スケッチ2-1-7 2つのLEDの明るさの制御を異ならせる

 

★重要ポイント★

PWMでの制御がうまくできないポートがあって悩んでいたのですが・・、

本家ArduinoUnoはPWMのポート数が6で、ピン番号3,5,6,9、10,11であるのに対し、

Edison キット for Arduinoは、PWMのポート数が4で、初期状態ではピン番号3,5,6,9に割り当てられています。そのため、ピン番号10,11を使うスケッチはそのままでは動きません。

「たのしい電子工作 Arduinoで電子工作をはじめよう!」のスケッチですと2-1の5から7、2-3の4、6などはピン番号を書き換える必要があります。またピン9,10,11のピン番号の連続性を前提としたスケッチはその前提部分の構造を書き換える必要があります。

https://communities.intel.com/docs/DOC-23161

上記マニュアルの「Intel® Edison kit for Arduino* PWM swizzler」の項目に記載のようにジャンパの差し替えで4つのPWMを割り当てる端子を指定できますが、指定した場合には指定替えされたピンが使用不能となるように思われます

 

 

スケッチ2-2-1 LEDをさらに増やして各ピンごとに明るさをPWM制御する

 

LEDを増やしていけば派手になりそうな感触をつかみました!

そこで、どんな部品を追加すればよいか「スイッチサイエンス」のサイトを探索してみました。

 

2-3.部品集め2

https://www.switch-science.com/

以下、購入品です。

https://www.switch-science.com/catalog/1537/

NeoPixel Ring - 16連フルカラーシリアルLED

小さいほうのツリーを飾りたい。

 

 

https://www.switch-science.com/catalog/926/

12mm拡散平型デジタルフルカラーLEDストリング(25連結)

大きいほうのツリーの電飾を派手にしたい

 

 

https://www.switch-science.com/catalog/1421/

SparkFun製 DangerShieldキット

電飾の明るさなどを調整できるようにしたい。

 

 

https://www.switch-science.com/catalog/126/

曲げセンサ(4.5インチ)

ツリーの枝を触ったことを検出できないかな・・。

 

https://www.switch-science.com/catalog/387/

MIDIシールド

クリスマスの音楽を流したいな。

 

https://www.switch-science.com/catalog/924/

16x32 RGB LED マトリックスパネル

ツリーの下の部分をド派手にできないかな・・。

 

 

 

http://www.amazon.co.jp/gp/product/B007731V74

サンワサプライ USB連動タップ 3P・7個口 2m TAP-RE8UN もともとセットツリーについていたACコンセントの電球のオンオフを制御したい。いろいろとACコンセントの制御をする方法を探したのですが、私のような初心者にはAC100Vを扱うのは危険に思えました。これはパソコンのUSBと接続し、パソコンの電源オンをUSBへの給電で検知して、ACコンセントへの給電をオンオフするものです。主にパソコンの周辺機器への電源供給をパソコンの電源オンオフと連動させる目的んものです。

ダイソーにあったPSPとUSBで接続するケーブル

このUSBケーブルを切ってACコンセントの制御用のUSBの線を取り出したいとおもいます。

 

ACアダプタ 5V 2個

派手なLEDの電源用。

 

配線材など小物たちです。

ELPA DCジャック
ELPA DCジャック&プラグ
ELPA ICテストリード
ELPA 10芯コード5M 2個
ELPA 収縮チューブ

 

 

2-4.100VのACコンセントの制御

PSP充電ケーブルをカットして、USBコネクタへの接続部分から、電源線(赤と黒)の被服を剥いてはんだめっきをし、インテル(R) Edison キット for Arduinoの13番ピンに赤色の線、GNDに黒色の線を接続します。そうです。最初のころにやったLチカとまったく同じ13ピンに赤をつなぎます。

 

そして、サンワサプライ USB連動タップの本来パソコンのUSBコネクタを接続する部分に、このUSBコネクタを差し込みます。これによってインテル(R) Edison キット for Arduinoの13番ピンのオンオフによって、ACコンセントのオンオフができるはずです。

 

スケッチは最初にインテル(R) Edison キット for Arduinoのボード上のLチカで試したスケッチと同じで、ディレイの時間を30秒に変えただけです。

これで30秒ごとにACコンセントの電源がオンオフされるはず。うまくいくかな?

うまくいきました!。

 

 

コーヒーブレイク3 キットのはんだづけと道具たち

キットははんだづけが必要でしたので道具をそろえることにしました。

 

白光(HAKKO) こて台 633-01

https://www.amazon.co.jp/gp/product/B000TGNWCS/

SANWA ポケット型デジタルマルチメータ PM3

https://www.amazon.co.jp/gp/product/B000JQHB6G/

goot 高密度集積基板用はんだ SD-60

https://www.amazon.co.jp/gp/product/B0029LGAJI/

白光(HAKKO) 電池式はんだこて FX901-01

https://www.amazon.co.jp/gp/product/B0020FPUSA/

このはんだとはんだごての組み合わせでは、よくはんだが溶けずうまくはんだ付けできませんでした。原因を追究している時間がないため、買い直しました。

good はんだごて 30W 電子部品用 KS-30R

電子工作用はんだ

 

ニッパーを忘れていましたので急きょダイソーで購入。先端部では切れないです。100円ですが、電子工作にはおすすめできないです。

 

これらの工具を使って、SparkFun製 DangerShieldキットを作成してみました。

はい。できあがり。

 

★ポイント★

1.はんだごては熱くなるので十分に気を付けましょう!コンセントを抜いてもしばらくは熱いので注意!(私はこて台を移動させようとして手をやけどしちゃいました。軽傷ですみましたがジュっといって指がやけました・・皆様お気をつけあれ。)

2.背の低い部品からはんだづけしていくこと!先に背の高い部品をはんだづけしてしまうと、背の低い部品をはんだ付けするときに固定しにくかったりしました。

 

 

 

3.試行錯誤

3-1.ツリーの電飾

では早速電飾を飾り付けてみましょう。おー派手になった!!

のですが、

いろいろEdison キット for Arduinoでは試行錯誤したのですが動作させることができず、上記ビデオ内で現在光っている電飾はツリー右下にある本家ArdinoUnoからコントロールしているものです。

試行錯誤の結果、得たポイントは以下のとおりです。

 

★最重要ポイント★

Arudino用として販売されているキット等のうち、ライブラリのインストールが必要なキット等は、ライブラリを Edison キット for Arduino用へ移植する必要があり、スケッチをそのまま簡単には動作させられませんでした。

上記ビデオの右側の小さいツリーにつけていますNeoPixel Ring - 16連フルカラーシリアルLEDはコンパイルは通りますがEdison キット for Arduinoとの接続では無反応となりました。

大きなツリーに巻いてあります12mm拡散平型デジタルフルカラーLEDストリング(25連結)と、ツリーの下の16x32 RGB LED マトリックスパネルはスケッチのコンパイルでコンパイルエラーとなります。ライブラリのソースコードを追っていろいろ修正を試みましがEdison キット for Arduinoで動かすことはできませんでした。

このあたり、キットの供給元やインテルさん、コミュニティのみなさんのお力頼みとなります。

 

 

結局、ツリーの電飾は、本家Arduinoでの制御となりました。

 

大きい方のツリーに12mm拡散平型デジタルフルカラーLEDストリング(25連結)を。

大きいツリーの下のさみしかったところに、16x32 RGB LED マトリックスパネルを。

 

小さい方のツリーにNeoPixel Ring - 16連フルカラーシリアルLEDを。

 

 

3-2.MIDIキーボードの制御

ならばシリアルの制御はどうでしょうか。というわけでMIDIにチャレンジしてみました。

ところがこちらも本家Arduinoでは問題なく動作するのですが、Edison キット for Arduinoでは、動作せずでした。SerialをSerial1に変更して試してはみたのですが・・・。

参考URL

https://communities.intel.com/thread/54236

というわけでこちらも本家Arduinoの互換機で動かすことに。

 

3-3.電源の制御

 本当は、Edison キット for Arduinoで動かしたかった部分がうまく動かせませんでしたので、Edison キット for Arduinoには、ツリーの電飾制御のArduinoと、MIDI制御のArduinoと、ニトリのツリーにもともとあった電飾と、MIDIキーボードの「ACコンセントの電源」を制御させることにします。

 

SparkFun製 DangerShieldキットをEdison キット for Arduinoに取り付けた様子です。特にライブラリを必要としないCapsense以外の部分は問題なく動作しました。

 

電源制御の仕様は以下のようにしたいとおもいます。

1.部屋の明かりが切れた電源が切れるようにする。

2.ただし1の場合でも近くに人がいる場合には電源は切らない。

3.ツリーが倒れた場合には電源が自動的に切れるようにする。

1.部屋の明るさの検出は 上記写真の水色枠内にあるDangerShieldキットのcdsの電圧をアナログインで読み取る方法で検出し、部屋の蛍光灯がオンの場合とオフの場合を識別できる閾値としました。

2.人が近くにいるかは、上記写真の黄色の部分に取り付けた距離センサで距離が60cm以内に障害物があるかを判定することにしました。

3.ツリーが倒れたかは、下記の曲げセンサの抵抗値から判定することにしました。

 

 

4.完成

 

ツリーの完成映像です。

 

部屋の明かりを消した際のツリー消灯の様子です。

クリスマスが終わるまではこのままかざって、終わりましたら今度はLinuxマシンとしていろいろ試してみたいとおもいます。

 

コーヒーブレイク4 Arduinoのその先

ほかに以下のことをためしてみました。

1.Wifiの設定と、Edisonのファームウェアアップデート

http://dev.classmethod.jp/hardware/edison/edison-wifi/

http://shiitakeo.hatenablog.jp/entry/2014/10/25/234622

こちらを参考にさせていただき、できました。

★ポイント★

最初Windowsからターミナルソフトで接続しようとすると、接続は確立するものの、まったくキャラクタが表示されない謎現象が発生して困り果てていました。2台目のwindows機でも同じ症状がでて、仕方なくMacでやってみたところうまくいきました。後で判明したのですが、Macでやったからうまくいったのではなく、MacでやったときにACアダプタでEdisonに給電を初めてしてみたことが解決策でした。USBハブ(セルフ給電)経由ではうまくいかなかったのに、WindowsでもACアダプタからの電源供給ではうまくいきましたので、同じような症状の方はためしてみるとよいかもしれません。

Wifi経由でsshでログインできるようにしておくとArduinoでのシリアルでの接続経路と違う経路でEdisonへアクセスできるのでUSBシリアルのリソースの競合の問題が発生せず便利です。

 

2.Linuxマシンとしてつかってみる

http://nonnoise.github.io/Edison/ntpdate.html

こちらを参考にさせていただきNTPでの時計合わせをしてみました。

★ポイント★

Edison キット for Arduinoにささっていても、Edisonはその実態はLinuxマシン。Linuxでやれることはなんでもできる。夢が広がりまくりです。

http://qiita.com/advent-calendar/2014/edison

先人の皆様の記事がすばらしい。カーネルにドライバを組み込んでPCと同じようにやりたいようにできる。

 

3.超重要問題 Arduinoの転送がいきなり全くできなくなる現象への対応

Arduinoとしてだけ使いたい人にとっては死活問題です。

http://nonnoise.github.io/Edison/NoSpace.html

★重要ポイント★

スケッチのコンパイル後の転送がいきなりできなくなった場合には、EdisonのLinuxの

/var/log/journal/

がいっぱいになって転送できないので、この中のファイルを消す。

 

4.Arduinoのスケッチを入力する画面の下に表示される「マイコンボードの書き込みが完了しました」は信頼できないです。

その下の黒色の表示領域に、Transfer completeと表示されたことを確認する必要があります。

「マイコンボードの書き込みが完了しました」となっていてもTransfer incompleteになっていることがありますので要注意です。

 

5.XDK

すごいのを見つけました。Intelの開発ツールXDK。Wifi経由で簡単プログラミング。ArduinoのメリットであるArduinoのライブラリの移植が必要な現状では、XDKで直接制御したほうが実は楽な予感です。LチカもWifiでオンオフ制御が簡単にできる。これはすごいです。

http://qiita.com/k_kinukawa/items/f46b0f6e0da6072e0a12

★重要ポイント★

XDKで動かしたプロセスと、Arduinoのスケッチを動作させるプロセスは、同時に動いているようです。そのため、両者のプログラムによる制御がぶつかる可能性があります。Arduinoのスケッチだけを使いたい場合には、XDKのほうは停止させておくことが重要とおもわれます。Arduinoのほうのスケッチだけでは説明できない妙な挙動が起きる場合にはXDKのほうが動いていないか確認してみる必要があります。

http://qiita.com/xeno1991/items/148c7c8ef3821f293c68

http://nanicananica.blog.fc2.com/blog-entry-46.html

http://bearmini.hatenablog.com/entry/2014/12/22/154147

 

 

5.まとめ
5-1.重要ポイントまとめ

ポイントとして書いたもののうち重要なものを、まとめておきます。

  1. EdisonのArduinoボードへの取り付けの際、Edisonの金属部分は押すべからず。基板を押してコネクタに差し込むべし。
  2. 取り付けナット2個はなくしやすいので注意すべし。
  3. USB-MicroUSBケーブルは、データ転送できるタイプのものを2本用意すべし。
  4. 初期設定でのドライバのインストールは時間がかかるのでそのまま待つべし。
  5. 「Arduino Software」の展開は7-zipで行うべし。
  6. 障害の切り分け等のため本家ArdinoUnoも持っておくべし。
  7. Edison キット for Arduinoは、PWMのポート数が4で、初期状態ではピン番号3,5,6,9と、ArduinoUnoとは仕様が違うので注意すべし。
  8. Arduinoへのライブラリのインストールが別途必要なキットやシールドなどはライブラリ自体の移植が必要になることを覚悟すべし。
    https://communities.intel.com/docs/DOC-23355
  9. 電源はACアダプタ接続すべし。
  10. Arduinoのスケッチを入力する画面の下の緑色の欄に表示される「マイコンボードの書き込みが完了しました」は信頼するべからず。その下の黒色の表示領域に、Transfer completeと表示されたことを確認すべし。

  11. スケッチのコンパイル後の転送がいきなりできなくなった場合には、EdisonのLinuxの/var/log/journal/以下のファイルを削除すべし。
  12. Wifiの設定をしてWifi経由でSSHでログインすべし。
  13. XDKに手を出して遊んだことがある場合にArduinoのスケッチの動作がおかしくなったら、XDKのほうのプログラムのプロセスが動いている可能性を疑うべし。

 

5-2.レビューまとめ

  1. 心理的負担と実際にかかる手間について
    本家Arduinoは雑に扱ってもよいがEdisonは雑に扱えない要素がありました。
     本家ArduinoUnoは3千円程度で入手可能で互換キットであれば千円程度から入手可能でありチップだけの交換なら数百円であるのに対し、Edisonはこの数倍の価格ですので壊れたことを想定した心理的な負担に違いがありました。
     またMicroUSB接続が2本必要という点が意外に手間になります。MicroUSBはコネクタがきつく抜き差ししにくいですし、差し込むときも力加減に気を遣います。しかもそれが隣接して2つあります。さらにはLinuxマシンということを考えると抜き差しするタイミングもなんとなく気を遣うのです。そこでUSBハブを差し込んでハブのスイッチでオンオフできるようしたのですが、これがまたいろいろなトラブル時に混乱を招く原因にもなりました。また2つのUSBケーブルをPCへ接続した際に、EdisonのLinuxが起動し、PCのドライバがEdisonを認識するのに、本家Arduinoよりも時間がかかるという問題もあります。
     さらには、ライブラリを必要とするキット等は現状ライブラリの移植が必要で、そのままではArduinoのスケッチが動作しないという問題があります。これはArduinoとして使ってみようとする初心者にとっては結構痛いです。Intelさんやキットのメーカさんがこれまで以上に積極的にEdisonにも対応してくださるとありがたいです。
     Edison キット for Arduinoは、Arduinoよりもサイズが大きいという点も取り回しのしやすさに影響を与えました。
  2. 情報について
     本家Arduinoはもちろん情報が充実しています。Edisonは始まったばかりで情報が、(特に日本語の情報が)少ないです。いまのところ英語がある程度読めないと厳しい状況です。ただ、公式マニュアルは頻繁に更新されていて最初のころのマニュアルには記載がなかった情報が随時追加されてきています。(もちろん英語ですが)
  3. とはいえ
     Edison Breakout Board Kitに比べれば、Edison キット for Arduinoは初心者の敷居はかなり低いです。入門書に載っているArduinoのスケッチは、ライブラリのインストールが別途必要なものを除きほぼそのまま動きました。
  4. Edison キット for Arduinoのメリット
     Linuxが動き、無線関係が充実しており、MicroSDスロットもあるという点です。これは本家Arduino単体では全く実現できません。EdisonはPCとArduinoとの間をPC寄りの部分で埋める存在に感じました。Edisonは非常に簡単にインターネットに接続できました。まさにIoTのための取りかかりのツールとしてはEdison キット for Arduinoは非常によいという印象です。
     たとえば、複数の本家Arduinoと接続してそれらからの情報を簡単にインターネットにあげるチュートリアル(や仕組み)などがあれば、嬉しいなというところです。またArduinoのスケッチのプロセスと他のプログラムのプロセスとの間で情報をやりとりできるやさしい内容のチュートリアル(や仕組み)があれば、Arduinoのスケッチでできる部分はさくっとつくって、スケッチではできない部分をEdison上に他の言語等で実装することができるので、お手軽さと強力さとを両立できるのではないかとおもいます。

以上でレビューはおしまいです。最後までおつきあいいただきましてありがとうございました。[2014/12/23]

 

 

おまけ レビュー完了後に試してみたこと 2014/12/28追記

レビュー完了後、やってみたこと,わかったことなどを追記します。2014/12/28
リンクしております先駆者の方々の情報に感謝申し上げます。

1.Arduinoとして
(1)スケッチとコードのサンプル集
 参考:http://edison-lab.jp/examples/

 最初はここを参考にやってみるとよいと思われました。

 

(2)Edison上でのスケッチの実体とサービス
 (a)転送されたスケッチの実行ファイル /sketch/sketch.elf
 (b)Edison上のサービス clloader
 例1:スケッチの削除 rm /sketch/sketch.elf; systemctl restart clloader
 例2:Arduino機能停止 systemctl stop clloader; systemctl disable clloader
 例3:Arduino機能開始 systemctl start clloader
 参考:https://communities.intel.com/message/261577

 

(3)スケッチが転送できなくなる件(journaldが/を食い尽くす件)
 (a)暫定対策 rm -rf /var/log/journal/*
 (b)恒久対策 /etc/systemd/journald.confにSystemMaxUse=5M
 参考:
  http://slashdot.jp/journal/587319/
  http://frisk.gizmon.com/journaldnorogugasugupanpan/

 

(4)スケッチからLinuxコマンドの実行
 スケッチのコード内で system("実行したいコマンド");
 参考:http://nanicananica.blog.fc2.com/blog-entry-47.html

 

(5)レビュー内においてSerial1でMIDIキーボードへデータが送れなかった原因
 MIDIのボーレートである31250bpsにソフト等が対応していないことが原因の模様(Galileoで指摘されている通り、Edisonも31250bpsは指定不可。)
 参考:https://communities.intel.com/message/252205#252205


2.Linuxとして
 レビューではArduinoとして使ってみることを目指したため、やや辛口になっていますが、Linuxとして使用するとすばらしいです。特にドライバがあればPC用のUSBデバイスなど安価なものが使えるというのが便利です。先人の足跡をたどってみた記録です。(オリジナルは下記(8))

 

(1)Bluetoothヘッドセットのペアリングまで成功

 参考:
 http://qiita.com/yuyakato/items/b4ecd956a94b8132341c
 https://communities.intel.com/docs/DOC-23248
 https://communities.intel.com/docs/DOC-23618

 

(2)カーネルコンパイル成功
 参考:http://qiita.com/yoneken/items/88165cebbadcc8d6878c
 カーネルコンフィグでUSBAudioとUVCとDisplaylinkを導入
 カーネルコンパイルはVirtualBox上のUbuntu 14.04 32bit版で実施、32bit版でやると途中で止まるので、
 https://communities.intel.com/thread/55232
 上記情報に基づいて
 edison-src/device-software/meta-edison-distro/recipes-connectivity/libwebsockets/libwebsockets_1.23.bb
 の22行目を
 export OPENSSL_CONF=${TMPDIR}/sysroots/i686-linux/usr/lib/ssl/openssl.cnf
 に修正して続行してコンパイル成功。
 VirtualBox上のUbuntuからはEdisonへの焼きこみができなかったので、Windows上に移動してWindowsから焼きこみ成功。
 参考:http://jujurou.blog34.fc2.com/blog-entry-403.html
    https://community.spark.io/t/latest-2014-dfu-util-for-windows-compiled/5264

 

(3)Yoctoからubilinuxへ変更成功
 参考:http://linyi-zatta.blogspot.jp/2014/11/edison-on-debian.html
 ubilinuxはDebianベースとのことでapt-getでパッケージが簡単にインストールできてよいです。
 
(4)上記(2)でコンパイルしたカーネルとカーネルモジュールをubilinux上へ転送し起動成功
 下記URL記載の方法でコンパイルしたカーネルでubilinuxを起動できました。
 参考:http://shiitakeo.hatenablog.jp/entry/2014/12/06/225139

 

(5)USBオーディオ再生に成功
 下記URL記載の方法で玄人志向AUDIO5.1-USBで音楽再生できました。
 参考:http://qiita.com/yoneken/items/88165cebbadcc8d6878c
  
(6)Webカメラの使用に成功
 下記UR記載の方法でマイクロソフト LifeCam Studio でmjpg-streamerで映像配信できました。これはすごい。
 参考:http://neuralassembly.blogspot.jp/2014/12/intel-edisonwebmjpg-streamer.html

 

(7)Edison上のXをVNCでWindows上に表示に成功
 下記URL記載の方法でできました。
 参考:http://linyi-zatta.blogspot.jp/2014/11/edisonvnc.html

 

(8)Displaylinkのモニタへのコンソール画面の表示の成功
 ハブ経由で接続して起動しただけで、Displaylinkの7インチモニタであるIODATA RockVision 3D に
 コンソール画面が表示でき、ハブ接続したUSBキーボードでログイン成功(パソコン化の成功)

 

(8)SDカードマウント
 fdisk -l でデバイスを確認、マウントポイント作成 mkdir /media/sdcard
 例:mount -t vfat /dev/mmcblk1p1 /media/sdcard

 

(9)SDカードへのバックアップ
 dd if=/dev/mmcblk0 of=/media/sdcard/backup.img bs=1M
 参考:http://nanicananica.blog.fc2.com/page-1.html

 

(10)rootのファイルシステムをあける
 apt-getしまくってrootが満杯になる問題を/homeへのコピーとシンボリックリンクでとりあえず回避
 参考:http://frisk.gizmon.com/intel-edisonnosetutoatupu/

 

というわけで、ubilinuxにしてオリジナルのカーネルを入れられ各種のUSBデバイスが使えるようになりました。しかもWiFi搭載でLinuxが動く小型安価でパワフルな現時点で最強の開発ボードと

Edisonはいえるのではないでしょうか。

                                  以上 

 

27人がこのレビューをCOOLしました!

コメント (7)

  • しばさん

    2014/12/22

    執筆お疲れ様です。
    さて、このIntel Edison kit for ArduinoでBlinkのスケッチを動かしてみると、ボード上のチップLEDは点滅するのですが、ピンソケットにLEDを挿しても点滅しません…
    私のボードは故障なんでしょうか・・・。
    capivara3様はうまく行っているようなので、よろしければ解決策を教えていただければ幸いです。
  • capivara3さん

    2014/12/22

    しば様、コメントありがとうございます。
    実は、私も、チップLEDは点滅するのにピンソケットに挿したLEDが点滅しない状況が発生したことがあります。その時は、ボードにつないだすべてのケーブルを抜き、電源や接続を一度絶ってから、接続しなおすことを、何回かやりましたところ、治りました。
    私は、電源回りが安定しないと挙動がおかしくなる印象をもっていますが、再現できないので本当の原因は不明のままです。ハブ経由で給電しているといろいろと調子が悪くなることがあり、ACアダプタを接続すると安定しました。
  • しばさん

    2014/12/23

    リプありです。
    全部の接点を解除して再接続すると…治ったには治ったのですが、今度はスケッチの転送ができなくなりましたorz
他4件のコメントを表示

ZIGSOWにログインするとコメントやこのアイテムを持っているユーザー全員に質問できます。

YouTube の動画を挿入

YouTube の URL または動画の ID を入力してください

動画の ID が取得できません。ID もしくは URL を正しく入力してください。

ニコニコ動画の動画を挿入

ニコニコ動画の URL または動画の ID を入力してください

動画の ID が取得できません。ID もしくは URL を正しく入力してください。

ZIGSOWリンク挿入

検索対象とキーワードを入力してください

    外部リンクを挿入

    リンク先の URL とタイトルを入力してください

    URL を正しく入力してください。

    画像を挿入(最大サイズ6MB)

    画像を選択してください

    ファイルサイズが6MBを超えています

    別の画像を追加

    ほかのユーザーのレビュー

    ZIGSOW にログイン

    ZIGSOW会員登録(無料)はこちらから