データが取り出しやすければ何でも良い、と言われたので、今更ですがIntelのEdisonを使ってみる事にしました。丁度GWで時間もあり、新しいモノを触るには良いタイミングですしね。
ハードウェア
というわけで、Edison Breakout Board Kitを買ってきました。Arduino互換のボードと比べて、かなり小型。手持ちのmbedと並べても遜色ない大きさです。おー。
これでWiFiが標準装備という所が良いですね~。
ただしArduino互換ボードと違って、DIPピンのロジック電圧が1.8Vのままであったり、AD変換器が無かったりします。代わりにSPIやI2Cのバスが複数空いていますので、要は必要に応じて足せば良いって事ですね。
その他諸々の仕様について調べるには、この辺の資料があれば事足りそう。
◇Edison概要
http://www.intel.com/support/edison/sb/CS-035276.htm
◇Edison本体のハードウェア仕様
http://www.intel.com/support/edison/sb/CS-035274.htm
◇Breakout Boardのハードウェア仕様
http://www.intel.com/support/edison/sb/CS-035252.htm
Breakout Boardの右側についている2つのUSBコネクタの内、上はserial-USBコンバータで、Linuxのコンソールメッセージが流れる所。下は単純なUSBポートでdeviceとして使った場合はここから電源供給とコードのコピーができる、と。
購入の際に「USBケーブル2本必要ですよ~」と注意書きに書いてありましたが、そういうことですか。全然機能が違う訳ね。
Edisonの設定と開発環境
で、ここからどうしよう(汗
良く理解している方は、好きな環境をEdisonに構築する所から始めているようですね。
機械屋さんには良く分からないので、大人しく公式ガイド通りやります。
数か月前はこれが無くて結構ややこしかったみたいですが、今はとっても丁寧。
◇Get Started
https://software.intel.com/en-us/iot/library/edison-getting-started
(2015/05/01時点)
Step1はハードウェアの準備。・・・ねじ締めまで丁寧に書いてあります。
Step2はPCの環境構築。
Windows向けのインストーラは最新版がリリースされてました。これを使うと ドライバのインストール、Edisonのファームウェアの更新、開発環境のインストール、まで一気にやってくれます。正に至れり尽くせりです。Step1通りにUSBを2本さして、インストーラを起動させればOKです。
開発環境はEclipseを選択。ただEclipseはもうPCに入ってるんですけど・・・。一応、必要な設定とか含めてbatファイルを生成してくれるそうなので、インストールしておきます。
Step3はEdisonのLinuxの設定。
ここはTeraTermを使った方が簡単です。接続先は「USB Serial Port」です。
「Intel Edison USB Composite Device」 とか「Intel Edison Virtual Com Port 」は名前はそれっぽいですが、トラップです。
Step4はWiFiの設定
ここまでやるとTCP/IP通信でもLinuxコンソールを叩くことができるので、2本差してたUSBの内、シリアル通信用のUSBは外せます。
以上でプログラムを書く準備が整いました。
Lチカ準備
Step5からStep6の始めまでで、Arduino互換ボードを使ったLチカをしています。
ただし、Breakout Boardの場合はユーザーが操作できるLEDは接続されていないので、外付けする必要があります。また、本体のIOピンがそのまま出ているので、電流が±3mAと貧弱です。直にLED駆動すると最悪足が死ぬかも?
ん~テスタでピンの電圧測って動作確認だけでも良いんですが、味気無いような・・・。
丁度、手持ちのトランジスタも見つけたので、きちんとやりますか。
駆動用の電流は3.3V/100mAのV_V3P30 からとります。それとGNDと適当なGPIOピンを配線します。電源投入してから少しの間は、GPIOピンの電圧が安定しないようなので、プルダウン抵抗も一応つけておきます。
ソフトウェア
ようやっとプログラムです。
IO周りを制御するためのライブラリは、GitHubで公開されています。
言語はC / C++ /Python /JS のどれでも行けるという素敵な仕様。
◇GitHub/intel-iot-devkit/mraa
https://github.com/intel-iot-devkit/mraa
使い方はというと、
Eclipseをbatファイルで起動して、プロジェクトサンプルからDigital outputを選ぶと
プラットフォームチェック→IOピンの設定→1秒ごとに出力切り替え(ループ)
てな感じの丁度良いサンプルが出てきます。IOピンの設定はレジスタを直接いじらなくても、
関数で一発で設定できるので、希望のGPIOピンを表す引数を突っ込むだけです。
対応表はここ。
◇mraaピンナンバとEdisonピンマップ
http://iotdk.intel.com/docs/master/mraa/edison.html
先ほど適当に指したGPIO128のピンナンバはmraaでは13のはず。
後は説明通り、動かしてやるとLEDが点滅しました。
![]() |
Hello,world! |
0 件のコメント:
コメントを投稿