DesignSpark Electrical Logolinkedin
Menu 検索
フォーラムで質問

LoRaWANを利用してコウモリ検出器を作ろう

オープンなIoT用ネットワーク「The Things Network (TTN)」に集めた超音波検出データでコウモリ検出に挑戦

ODI Leedが最近、LoRaWANを使ってコウモリ検出器が作成できることに注目していると発言した。私達はそれを耳にし、すぐに「なんて面白いアイデアだ。是非やろう!」と考えたのだ。この記事では私と同僚が作成した最初のプロトタイプの紹介になる。

マイコンボード「SmartEverything LION」

SmartEverything LION (124-8830)はLoRaWAN通信機能を持った開発プラットフォームである。Arduino互換でありながら以下の機能を備えている。

  • Cortex M0+ USB Host を搭載したCPU (ATSAMD21J18A-MU)
  • 通信用IC Crypto-Authentication (ATSHA204A-MAHDA-T)
  • Dynaflex 868 MHzアンテナ (915/2)
  • マイクロチップ LoRA モジュール (RN2483)
  • アンテナ組み込み済みTelit GPS (SE868-A)
  • Bluetooth Low Energy IC (RN48730)
  • BLE 設定インタフェース および ファームウェアアップグレード
  • GPS位置測位

今回はGPSとBluetoothを使用していないが、今後スマートフォンで設定変更や日時設定といった機能を追加する場合には、これらの機能が役に立つはずだ。

コウモリ検出用「ArduBat」シールド

トニー・メッシーナ氏とフランク・フリケット氏が開発したArduBat ShieldはArduinoプラットフォームでコウモリ検出器を作成するのに非常に便利だ。ローカルストレージへログを保存することを考慮して設計されており、超音波変換器で受信したコウモリのコール音を一度増幅し、32で割った後、パルス(波形)をMUCデジタル入力へ送り、コウモリをカウントする。回路の詳細などはトニーのウェブサイトをチェックして欲しい。

今回の私達のプロトタイプでは、SDカード等のローカルストレージにログを保存する代わりに、データをRAM(メモリ)に一時保存し15分毎にLoRaWAN上にアップし、ローカルのデータをリセットする。

ソーラーパワーパネル

ベンチテスト環境でのソーラーパネルの様子

今回のシステムは電力供給のない環境で動作しないといけないため、ソーラーパワーパネルを利用した。これにより、バッテリー消耗を気にすることなく、電子部品とコードの実験を行うことができる。特に必要以上の電力を供給可能な方法に着目したのだ。 

 

  • RS Pro 10W ポリクリスタルソーラーパネル(904-6121)
  • RS Pro 12V 12AH シール鉛蓄電池式バッテリー
  • ソーラーテクノロジー社製 デュアルバッテリーコントローラー (905-4532)
  • リトルヒューズ社製 ATOブレードヒューズ向けインラインフューズホルダー (787-4350)
  • リトルヒューズ社製 2Aグレー自動車用ブレードヒューズ (787-4126)

上の写真のように、そのままの状態で極めて大きな電流を流すことができる鉛蓄電池タイプのバッテリーとヒューズを同じボックスに入れておくのが良い手段だろう!

粉塵からの侵入防護

上の写真は筐体に格納しているベンチテストの様子だ。ただし、ソーラーパネルは窓に近い場所に少し離して設置している。今回のシステムは野外に置かれるため、粉塵などから防護する必要がある。以下はそれらのうち重要なパーツである。

  • TK PS プラスチック筐体(エンクロージャー) IP66 (220-490)
  • BOCUBE プラスチック筐体(エンクロージャー) IP67 (773-9468)
  • RS Pro 50 ΩおよびSMAメスSMAオス変換 同軸ケーブルを組み合わせたもの(アセンブリ)(794-2888)
  • Binder 620シリーズ, 5ポールパネルマウントコネクタソケット (734-5357)
  • Binder 620シリーズ, 4 ポールパネルマウントコネクタソケット (468-819)
  • Binder 620シリーズ, 3 ポールパネルマウントコネクタソケット (468-976)

ArduBatを搭載したSmartEverything LIONおよび充電器はアクリルベースプレートを挟んで大きな筐体にしっかりと固定した。また、超音波トランスデューサーは別の小さな筐体に密閉するこにした。これにより、異なる超音波トランスデューサーを簡単に交換して試すことができる。また、メインとなる電子部品であるSmartEverything LIONから少し離れた場所に配置することも可能になった。Binder 620シリーズ IP67定格コネクタはソーラーパネル、バッテリー、トランスデューサーの接続に利用した。異なるポールを選択したのは接続のミスを避けるためだ。

BOCUBE筐体に密閉された超音波トランスデューサー

また、筐体には外部のソーラーパネルのためのソケットが取り付けられている。必要であれば追加のソーラーパネルを並列に接続することも可能になっている。噛み合わせ型のBinder 620シリーズコネクタはバッテリー、ソーラーパネル、トランスデューサーケーブルに取り付けた。

ファームウェア

SumartEverythingはコウモリのコール音を3つの周波数に分割している。

  • 低: < 20KHz
  • 中: 20-40KHz
  • 高: 40-60KHz 

それぞれのカウンタの値とバッテリーの電圧をまとめて、15分に一度ネットワークのアップリンクを利用して送信される。より詳細を知りたい場合は私の同僚のKarl Woodward氏の投稿GitHubリポジトリを確認して頂きたい。ただし、これは現在進行中の技術であるため、最適化されていないことに注意して欲しい。

データプラットフォーム

ArduBatで取得されたデータはMQTTプロトコルで The Things Network (TTN) APIにアップする。今回は Node-REDというシンプルなIoTのデータ加工が可能なプラットフォームにデータを転送し、解析を行うことにした。バッテリー電圧とコウモリのコール音の計測結果が連続して、時系列データベースであるInfluxDBに記録される。

収集したデータの可視化にはGrafanaというツールを利用した。上の図では設置してから最初の朝を迎えた際のバッテリー電圧の値を確認することができる。

最初の実験結果

私達はコウモリを見つけることができたのだろうか?上の図は、私達が"何か"を発見したことを意味している。この結果が正しいかどうかを確認するためには、アラートを設定する必要があるだろう。

改善点の考察

今回私達が作成した最初のプロタイプのポイントと改善点は以下の通りだ。

  • 半リアルタイム (最大15分周期) アラート: . これは比較的簡単である。Node-REDにて、指定のアクティビティが検知されたときにアラートを送信するように設定すればよい。
  • リアルタイムアラート:おそらくSmartEverything LIONからBluetoothを利用してシグナルを直接送信することができるだろう。もしくはLoRaWANのアップリンクを利用も考えられる。
  • トランスデューサーパフォーマンス:.
    • 超音波トランスデューサーを直接筐体内に密閉しているため、超音波が多少変化して受信されたり、振動による干渉などの可能性が考えられる。
    • o 雨から守るためのシールド機構は干渉の可能性を低減する
    • 出力電流とケーブル容量が小さく、EMI(電気的ノイズ)のリスクが高いため、アンプ(増幅器)から離れた位置にトランスデューサーを配置するは理想的ではない

 

『最終的な製品』となれば、電子部品、測定技術、省電力方法など、今回のプロトタイプとは全く異なっているだろう。しかし、我々より先に実験を行っていたTonyとFrank、SmartEverything LION、Arduino、The Things Network(TTN)の利用の容易さ、Node-REDとGrafanaといったパワフルなオープンソースなどのおかげで、今回のような『電源の供給を必要としない、長距離ワイヤレス通信コウモリ検出器』のプロトタイプを非常に短い時間で製作することができたのだ。

Andrew Back

Open source (hardware and software!) advocate, Treasurer and Director of the Free and Open Source Silicon Foundation, organiser of Wuthering Bytes technology festival and founder of the Open Source Hardware User Group.

31 Aug 2017, 9:03