<概要>
■Bluetooth Low Enargy (Bluetooth4.0 Smart)
次世代の低消費電力規格であるBluetooth Low Energy(Bluetooth4.0、以下BLE)の無線モジュール。単四乾電池2本で約1年の動作が可能です。
■ブロードキャストで簡単読み取り
本センサーモジュールはアドバタイズパケットの中にセンサーデータが入っており、ブロードキャスターとして動作します。つまり、BLEの接続操作も不要で、アドバタイズパケットを読み取るだけでセンサーデータを取り込めます。一般的なGATTサービスの接続と比べ、非常に簡単なプログラムコードでセンサー値が読み取れます。ページ下のサンプルプログラムの節でAndroid、iPhoneとの接続方法を詳細に解説していますので、ビギナープログラマーでも比較的簡単にIOT(Internet of Things)が実現できます。
■ID切り替え16種類
本装置は基板上のジャンパ設定でSSIDを物理的に16種類に変更することができ、狭い範囲で複数の測定を行うことができます。BLEの個別識別はたとえばMACアドレス(BLE装置は個別に6バイトの値が割り振られている)で判断するなどもありますが、たとえばiOSの場合はMACアドレスをアプリに渡さないなどありますので、SSIDでの個体識別が確実な方法となります。
■iPhoneとの通信
従来は、Bluetooth2.xや3.x、有線通信で外部機器とiPhoneをつなぐ場合は、Apple社とMFi契約を結ぶ必要がありましたが、BLEからはこの契約は不要になりました。iPhoneでBLEに対応しているのはiPhone4S以上になります。よって、このモジュールはiPhone4S以上のiPhone端末であれば、自由に外部機器を作ることが可能となります。
■Androidとの通信
2013年8月からAndroidOSでもBLEの正式サポートが決まり、BLEを使える端末が出てきました。AndroidOSでも今後BLEが普及すると思われます。
■ケース
このモジュールは通販などで入手できる、タカチのLM-100のケースに取り付けられるようになっています。※LM-100に取り付ける場合は採光穴をあける必要があります。 また、ケース付タイプも販売しております。
ケース付タイプ
■日本国内の電波法に準拠
無線装置を使用する場合はその国の法律に基づいて使う必要があり、日本国内の場合は技術基準適合証明及び認証を受けていない無線機を使うことはできません。本モジュールは日本国内の技術基準適合証明及び認証(通称TELEC)を受けており、安心して使うことができます。
■低消費電力設計
全ての部品は低消費電力設計になっており、単四乾電池2本で約一年間の連続稼働が可能です。
■カスタム対応
数量がまとまれば、カスタム対応も可能です。センサーの交換、パワー設定、送信周期変更、基板形状変更、その他情報の追加などが可能です。メールにてお問い合わせ下さい。
<仕様>
電源電圧
|
+3.3VDC (最大定格2.7〜3.6VDC)
|
消費電流
|
待機時100uA、送信時10mA
|
BT仕様
|
Ver4.0 Single
Mode (Bluetooth SMART) |
無線周波数
|
2.402-2.480 GHz |
GAPロール
|
ブロードキャスター |
送信間隔
|
10秒 |
適合
|
TELEC, FCC,
CE, |
寸法/重量
|
基板のみ 寸法54x46x9(H)mm 重量:約10g
ケース付 寸法61x100x18.8(H)mm 重量:約78g |
<価格>
基板のみ価格 6,480円 (本体価格6,000円)
ケース付価格 8,640円 (本体価格8,000円)
※バッテリは別売です。
※8個以上の場合は割引可能です。メールにてお問い合わせください。
<寸法図>
※本装置は電波で通信するモジュールですので、アルミケースなどの電波を遮断するものに入れての使用はできません。ケースに入れる場合は、ケースの素材を電波を通すもの(プラスチック、木など)にしてください。
※カット可能のラインは、基板カッター(HOZANのK110など)などでカットすることが可能です。
※タカチのケースLM-100に取り付ける場合は、M2.6のタッピングネジ4本が必要です。長さは4〜6mm。
<IDの変更>
本装置はSSID(BLEセントラルから見た場合の名前)が16種類に変えられます。基本は「ENV_n」のように表示されます。nは1〜Fまでの16進値になります。ID変更は基板上のジャンパJ1〜J4の設定で行います。
出荷時は、すべてのジャンパにジャンパピンがさしてあります。さしている状態を「ON」、抜いている状態を「OFF」とします。下の図のように左右をジャンパピンでつなぐとONになります。
SSIDとON/OFFの関係は次のようになります。
J1 |
J2 |
J3 |
J4 |
SSID |
ON |
ON |
ON |
ON |
ENV_0 |
OFF |
ON |
ON |
ON |
ENV_1 |
ON |
OFF |
ON |
ON |
ENV_2 |
OFF |
OFF |
ON |
ON |
ENV_3 |
ON |
ON |
OFF |
ON |
ENV_4 |
OFF |
ON |
OFF |
ON |
ENV_5 |
ON |
OFF |
OFF |
ON |
ENV_6 |
OFF |
OFF |
OFF |
ON |
ENV_7 |
ON |
ON |
ON |
OFF |
ENV_8 |
OFF |
ON |
ON |
OFF |
ENV_9 |
ON |
OFF |
ON |
OFF |
ENV_A |
OFF |
OFF |
ON |
OFF |
ENV_B |
ON |
ON |
OFF |
OFF |
ENV_C |
OFF |
ON |
OFF |
OFF |
ENV_D |
ON |
OFF |
OFF |
OFF |
ENV_E |
OFF |
OFF |
OFF |
OFF |
ENV_F |
<電源の投入>
ケース付をお買い上げの場合は、単四乾電池2本を背面の電池ボックスへ入れてください。直ちに動作が始まります。
基板のみをお買い上げの場合は、付属のコネクタ付きケーブルの赤を電源+に、黒を電源-につないでください。又は、CN1と書かれているところのVCCを電源+に、GNDを電源-にハンダ付けしてください(基板裏面にハンダ付けしてください。)。基板のみ、の場合、CN1にはヒロセ製EHコネクタがついていますが、付属のケーブルを挿すとEHコネクタの高さが高いためにタカチのケースLM-100には入りませんのでご注意ください。
<送信フォーマット>
BLECAST_ENVのアドバタイジングパケットは次の構造になっています。
「MACアドレス」(赤の部分)は各センサー個体固有の値で、これにより同じタイプのセンサーでも個別識別が可能ですが、BLEセントラル(つなぐ相手)の仕様によってはMACアドレスが見れないものもあります。たとえば、2016年8月現在ではAndroidの開発環境はMACアドレスも見れますが、iOSの開発環境ですとユーザーアプリからはMACアドレスが見れません。
BLEはPDUペイロードの中にデータを入れて1つのアドバタイズデータを送信します。アドバタイズデータには最大31バイトのデータを入れることができますが、本製品のフォーマットは上記のオレンジ+緑の部分のようになっています。AD1、AD2と2種類のデータを格納しています。
ADxはBLEのフォーマットに準拠しており、Typeが0x09の時はローカルネーム、0xFFの場合はメーカー(浅草ギ研)独自のデータとなります。
ローカルネームは5バイトの長さになっており、ASCIIコードで「ENV_0」〜「ENV_F」の値になります。名前の設定は前節のようにジャンパ設定で行います。
センサーデータは温度、湿度、照度、カウンタの4種類になります。カウンタ以外は2バイトで表され、MSBファーストで送信れます。(上位8ビットが先に送られる) カウンタは1バイトで、アドバタイズごとに0x00〜0xFFの値を繰り返します。この値が飛んだ場合は受信が飛んだか、受け取り側のOSが無視した(BLEの仕様で何回か無視しても良いという仕様があり、アプリやOS設定に依存する)ことになります。カウンタ以外の値の意味については後の節で説明致します。
<簡易確認方法>
アドバタイズデータを確認する無料アプリはいろいろと出ています。たとえば「nRF Connect」というアプリがあります。BLECAST_ENVに電源を入れ、nRF Connect アプリを立ち上げるとSSID一覧が出ますのでSSIDが「ENV_n」のものをクリックすると次のように表示されます。(iPhoneで表示した例)
Manufacture Dataが独自のセンサーデータ、つまりBLECAST_ENVのセンサーデータになります。上記の例ですと、
0x7C 52 69 34 00 13 AF
という値が得られています。
<センサー値と湿度の関係>
値は相対湿度(一般的に湿度と言われているもの)になります。
値は2バイトで表され、MSB、LSBの順に送られます。
value(生データ) = (MSB*256)+LSB
生データからの計算方式は次の通り、
相対湿度=(125*value/65536)-6
前節の例によると、このときの湿度は0x7C52となっています。10進数に変換すると0x7Cは124、0x52は82です。よってvalue=(124*256)+82=31826。 相対湿度は (125 * 31826 / 65536) -6 = 54.7% となります。
<センサー値と温度の関係>
値は2バイトで表され、MSB、LSBの順に送られます。
value(生データ) = (MSB*256)+LSB
生データからの計算方式は次の通り、
温度=(175.72*value/65536)-46.85
前節の例によると、このときの温度は0x6934となっています。10進数に変換すると0x69は105、0x34は52です。よってvalue=(105*256)+52=26932。 相対湿度は (175.72 * 26932 / 65536) -46.85 = 25.36℃ となります。
<センサー値と照度の関係>
値は2バイトで表され、MSB、LSBの順に送られます。
value(生データ) = (MSB*256)+LSB
生データと照度の関係は次の通り、
値は3.6V基準で解像度は10ビット(0〜1024の範囲)になります。内部で1.2V基準電圧を3倍にしているので、バッテリの電圧が変化しても値に影響はありません。照度が0Luxの場合でも0Vにはなりませんのでご注意願います。
照度の目安は次の通りになります。
まっくらな状態 = 0 Lux近く
暗い部屋 = 20〜100 Lux
電気をつけた部屋 = 300〜500 Lux
くもりの日 = 2000〜30000 Lux
晴天 = 数万〜100000 Lux前後
<電源と電池寿命について>
本製品はケース付と基板のみの2種類のタイプがあります。ケース付の方は単四乾電池2本で動作します。乾電池はできるだけアルカリ乾電池を使用してください。乾電池の場合、自己放電がありますので、使わなくても段々と残量が減ることから、一年を超えるような長期の使用は難しく、長期間使用するような場合はACアダプタなど、外部電源で動作させてください。
単四乾電池の容量が1000mAhで25℃の温度で連続稼働した場合の寿命は約1年となります。実際には電池容量のバラツキや、温度変化がありますので、1年もたない場合もありますし、1年以上もつ場合もあります。
電源電圧が3V付近なので、3Vのボタン電池でも動作させることはできますが、容量が小さいので電池寿命は乾電池よりも短くなります。(容量についてはそれぞれの電池について調べてください。一般的には50〜200mAh程度です。
<携帯端末のBLE搭載状況>
iPhoneの場合
iPhoneとつなぐ場合、4S以上(現在4S、5、5C、5S)であればBLEが内臓されているので接続可能です。
Androidの場合
Androidの場合、BLEが使えるかどうかはスマートフォンメーカーの実装に依存します。GoogleではAndroid4.3以降はBLEに対応していることになっていますが、Android4.3でもBLEをサポートしていない機種も若干ありますのでご注意願います。
<BLE対応しているかの確認方法(Android端末の場合)>
ADB接続時にコンソールから adb shell pm list
features を実行してください。
featureの中に、android.hardware.bluetooth_le
があれば動作します。最後に「_le]が付いたbluetoothが無いと動きません。
<サンプルプログラム>
※BLECAST_ENV専用のサンプルアプリは用意してございません。下記は他のBLECASTシリーズのサンプルプログラムですが、こちらとほぼ同じ方法で読めますのでこちらを参照願います。
iPhone
■iPhoneで照度を測定してみる
Android
■Androidで照度を測定してみる
<運用上の注意>
1)本製品は日本国内の電波法規定による技術適合を受けております。アンテナをつけるなどの改造は絶対に行わないで下さい。
2)基板上にはアンテナが付いております。基板周囲に無線に影響を与える金属などを配置すると無線性能が低下します。アルミなどの無線を遮断するケースに入れると無線が使えなくなります。
3)電池を逆に挿入すると破損します。方向に気を付けてください。
<使用上の注意>
・バッテリ使用時には電源ラインをショートさせると、バッテリが破裂・発火する可能性があります。作業中にはショートさせないよう十分注意して下さい。また、取り付け後も、あいている電源ラインに導電物質が触らないように注意して下さい。
|