新ファーム機能!EdisonでBLE機器を制御してみた(2)

 前回までのBLEシリーズでは、Edisonを使用して探せるキーホルダーのバッテリー残量の取得や、バイブの鳴動を行いました。今回はiPhoneアプリと同じように、Edisonと探せるキーホルダーの距離によってLEDをつけたり消したりしてみたいと思います。

 

EdisonのIO制御

 EdisonのLEDを制御するために、mraaというライブラリをインストールします。mraaライブラリは、Intelから提供されているEdisonのIO制御を行うためのライブラリです。mraaライブラリを使うことで、様々なプログラミング言語から簡単にIO制御を行うことができます。

 

mraaライブラリのインストール


 下記の手順でEdisonにmraaライブラリをインストールします。

 

 1. /etc/opkg/mraa-upm.conf というファイルを作成し、ファイル内にインストール元アドレスを記載する

echo “src mraa-upm http://iotdk.intel.com/repos/1.1/intelgalactic” > /etc/opkg/mraa-upm.conf

 

2. パッケージマネージャopkgを使用してmraaをインストールする

opkg update

opkg install libmraa0

 

探せるキーホルダーの制御

 前回までに行ったBLE機器制御の仕組みと、mraaによるEdisonのIO制御を使用して、実際にiPhoneアプリで提供されているような、Edisonと探せるキーホルダーの距離によってLEDをつけたり消したりするプログラムを作成したいと思います。

 

プログラム


 今回作成したのは、Edisonに挿した3つのLEDを、探せるキーホルダーとの距離によって順番に光らせるプログラムです。2番ピンLEDが常に光った状態で、距離が近づくにつれて、7番ピンLED、8番ピンLED、12番ピンLEDの順に光っていきます。

 

実際に動かしてみた


 作成したプログラムを実際に動かしてみます。

まず、探せるキーホルダーを遠くに置くと…

image

光っているのは2番ピンLEDのみで、その他のLEDは光りません。探せるキーホルダーを近づけると…

image

LEDの2つ目が光りました!さらに近づけると…

image

LEDの3つ目が光りました!!さらにさらに近づけると…

image

全てのLEDが光りました!!!

 

最後に、アニメーションで動く様子を見てください!!!

edison_bt

次回は…

 EdisonのBLEシリーズはこれにて終了です。次回は…お楽しみに!!

Leave a Reply

メールアドレスが公開されることはありません。