「iijmio」タグアーカイブ

M5Stack UnitCatM 位置情報送信システム実証実験

以前製作したM5Stack UnitCatMを用いた 位置情報送信システムの実証実験を実施しましたので報告いたします。

 

 

構成おさらい

製作した位置情報送信システムの構成をおさらいいたしましょう。

制御はマイコンXIAOで実施し、30分おきにスリープから起床し5V DCDCをONしてUnitCatMユニットを起動します。
ユニットで基地局の位置情報を取得してサーバにHTTP通信で送信して5V DCDCをOFFしてXIAOをスリープしています。

部品

  • Seeeduino XIAO
    [amazonjs asin=”B086KXY929″ locale=”JP” title=”Seeed Studio Seeeduino XIAO-Arduino IDE 互換ボード SAMD21 Cortex M0+搭載 ブレッドボード互換 USB Type-C(3pcs)”]
     
  • 5V 昇圧 DCDCコンバータ
    [bc url=”https://akizukidenshi.com/catalog/g/gK-13065/”]
     
  • SIM7080G CAT-M/NB-IoT Unit
    [bc url=”https://shop.m5stack.com/products/sim7080g-cat-m-nb-iot-unit?variant=40493802160300″]
     

HTTP通信

サーバへの位置情報送信にはHTTPを採用いたしました。

M5Stack UnitCatM で HTTP通信

 

位置情報取得

位置情報は基地局の座標を取得するATコマンド (AT+CLBS=?) をUnitCatMユニットに送って取得します。

基地局の座標を得るまでに5回までリトライ実行します。

M5Stack UnitCatM を Seeeduino XIAO で制御

 

SIMカード

ここではIIJmioのデータSIMを使用しています。

M5Stack UnitCatM の 消費電力とデータSIM契約

 

乾電池駆動検証

実証実験の準備としましてシステムの乾電池駆動を検証しました。

 

アルカリ単三電池 3本で動かしました。
7/17~7/31までの17日経過しても動作しつづけ、乾電池による長期動作は問題ないことを確認できたので中断終了いたしました。

低消費設計がうまくいっていると言えるでしょう。

M5Stack UnitCatM を Seeeduino XIAO で制御

 

実証実験

東京旅行ついでに実証実験を決行いたしました。

乾電池駆動の位置情報送信システムを箱詰めして、羽田空港の郵便局から自宅に送ってみました。
乾電池が入っていることを伝え、特定記録による陸路での郵送をお願いいたしました。

 

位置情報データ

以下が位置情報送信システムからサーバに送られてきたデータです。

30分おきにデータが来るはずですが電波状況の影響のためかデータが届いていなかったり、基地局座標を得られていなかったりしております。
しかし断続的には座標を得ることができました。

2日かからずに札幌に到着しています。
しかし土日のために実際に投函されたのは月曜日の8/8でした。
その間は最寄りの郵便局の座標が断続的に送られておりました。保管されていたのでしょう。
 

座標プロット

 

 

 

恐らくフェリーも使ってこんなルートでやってきたのだと思う

 

おわりに

無事に位置情報送信システムによる座標取得動作が確認できました!
おもしろいな。

いよいよをもってコレを川に投げ流したくなってきた。。。

M5Stack UnitCatM 位置情報送信システムの省電力化

前回はUnitCatM で通信基地局位置情報を取得して長期運用を試してみました。

M5Stack UnitCatM を Seeeduino XIAO で制御

30分おきに位置情報をサーバに送る仕様で、400mAhのLiPoバッテリで121時間動作しました。

ここでは消費電力を低減して更に長期の動作を目指しました。

 

 

構成おさらい

本システムの構成を記します。

制御はマイコンXIAOで実施し、30分おきにスリープから起床し5V DCDCをONしてUnitCatMユニットを起動します。
ユニットで基地局の位置情報を取得してサーバに送信して5V DCDCをOFFしてXIAOをスリープしています。

部品

  • Seeeduino XIAO
    [amazonjs asin=”B086KXY929″ locale=”JP” title=”Seeed Studio Seeeduino XIAO-Arduino IDE 互換ボード SAMD21 Cortex M0+搭載 ブレッドボード互換 USB Type-C(3pcs)”]
     
  • 5V 昇圧 DCDCコンバータ
    [bc url=”https://akizukidenshi.com/catalog/g/gK-13065/”]
     
  • SIM7080G CAT-M/NB-IoT Unit
    [bc url=”https://shop.m5stack.com/products/sim7080g-cat-m-nb-iot-unit?variant=40493802160300″]

 

省電力化

スリープ時の待機電流がほぼXIAOのパワーオン表示LEDで消費されていますので、LEDを除去してみました。

スリープ時の待機電流 (5V DCDCの待機電流も含む)は以下のとおり
 LEDあり:1.55mA
 LEDなし:122.4uA

1/10以下になりました!

これでスリープ時の消費電力は大きく低減されました。

参考

 

エイジング

スリープ時の省電力化に成功しましたので再度 運用モードでエイジング実施いたしました。

400mAhのLiPoバッテリで
 前回が121時間のところ
 今回は348時間動作しました。

容量の大きなバッテリを用いれば更に長期の動作が期待できます。

おわりに

ここではUnitCatMによる位置情報送信システムの低消費電力化とエイジング動作の確認を実施しました。

長期動作が見込めそうなのでビンに詰めて川にぶん投げたいところですが
これから冬なのでそれは春先に実行するとして、
しばらくは本システムをお出かけ時に持ち歩いて位置情報の精度の検証に当てたいと思います。

次の記事

M5Stack UnitCatM 位置情報送信システム実証実験

M5Stack UnitCatM 番外編 SIM7080G EVAボードを楽しむ

これまではM5Stack製の SIM7080G  CAT-M/NB-IOT Unitをつこて色々検証してきました。

[bc url=”https://shop.m5stack.com/products/sim7080g-cat-m-nb-iot-unit?variant=40493802160300″]

ここでは別のSIM7080Gが載ったモジュールを入手しましたので報告いたします。

 

 

SIM7080G EVAボード

SIM7080G  CAT-M/NB-IOT Unitと同じLTEモジュール SIM7080G が載った評価ボードをAliExpressで見つけました。

こちらはGPSのアンテナ端子もあり、しかも安いので試しに購入してみました。

[bc url=”https://ja.aliexpress.com/item/1005002345858173.html?spm=a2g0s.9042311.0.0.56844c4dhiQdAH”]

LTE用とGPS用のアンテナ付きを購入

技適マークもあり一安心♪

セットアップ

この評価ボードにはマイクロUSB端子がありパソコンとシリアル通信可能です。
ドライバは以下で入手しました。
 https://www.waveshare.com/wiki/SIM7080G_Cat-M/NB-IoT_HAT

ボードは給電後にPWRピンを一瞬 GNDに落とすと起動します。

USBから給電、コマンド送信ができ非常に便利です。

GPS

早速GPSを試してみました。
GPSはSIMを入れなくても楽しめます。

窓辺にボードを置いてGPSによる位置情報取得ATコマンドを送ってみました。

受信できるようになるまでしばらく時間がかかりましたが、非常に精度の良い位置情報を得ることができました。

参考

LTE通信

SIMを挿入すればLTE通信が可能です。
SIMスロットはマイクロSIMサイズでした。挿入方向に注意は必要です。

あとはSIM7080G  CAT-M/NB-IOT Unitと同じようにATコマンドでもろもろ通信制御が可能です。

参考

 

おわりに

今回試したSIM7080G EVAボードはGPSアンテナ端子もあり、USBシリアル通信も可能で非常に便利です。

しかし今 私がやろうとしている #私のボトルメッセージ 計画に用いるには
ちょっと高級すぎる印象でした。

例えば省電力のために逐一電源を切ってからGPSをつかむのに時間かかるという懸念がございます。

十分に電源が確保されていて高精度の位置座標がほしいような用途でいつか使おうかと思います。

しかしやはり携帯通信網の利用は非常に便利で夢が拡がります。

次の記事

M5Stack UnitCatM 位置情報送信システムの省電力化

M5Stack UnitCatM で運用とエイジング

前回は通信基地局の位置情報取得について記載いたしました。

M5Stack UnitCatM で位置情報取得

 

 

目標

本件の目標は以下の通りです。

  1. 格安データSIM探して契約:IIJmioに決定
  2. 座標情報取得:基地局の位置情報を取得
  3. 外部への通信:HTTP通信で決定
  4. コントローラ選定:Seeduino XIAOに決定
  5. パワーセーブ:XAIOのSleepとDCDCコントロール併用
  6. ビンに詰める
  7. 川に投げる

今回は運用シーケンスの検討とエイジング動作の確認を行いました。

運用シーケンス

本システムのシーケンスは以前確立した通りです。

M5Stack UnitCatM を Seeeduino XIAO で制御

動作は以下を繰り返します。

  • Sleepから起床
  • AT導通確認
  • ネットワーク通信開始
  • 基地局位置情報取得
  • 基地局位置情報を付与して 自宅サーバへHTTP getリクエスト
  • 30分 Sleep

 

位置情報取得

上記 運用シーケンスでモジュールをもってお出かけして観たのですが、位置情報を得ることはできませんでした。。。

 

サーバのログは以下。位置座標はLocation Failで得ることができず。

シーケンス修正

検証したところ、起動後1発では位置情報取得できないことがほとんどであることがわかり、基地局位置情報取得コマンドを複数回リトライするようにしました。

ここでは位置情報を得るまで10回までリトライするようにしました。

相変わらず自宅では位置情報を得ることはできませんが、ちょろっと外に出て位置情報がサーバに送られることを確認できました。リトライ追加のご利益ですね。

 

エイジング

自宅で長期運用してみました。

 

400mAhのLiPoで運用シーケンスでエイジング実検しましたところ
121時間動作しました。

30分間隔通信での消費電力は8.1mWhでしたので理論値は
400mAh × 3.7V ÷ 8.1mWh = 182.7h

まぁもろもろリトライとかフルチャージできてないとかあるのでこんなもんでしょうか。

消費電力のほとんどがマイコンXIAOのパワーON LEDで消費されていますので、今度LEDを取り除いて再実験したいです。

[amazonjs asin=”B086KXY929″ locale=”JP” title=”Seeed Studio Seeeduino XIAO-Arduino IDE 互換ボード SAMD21 Cortex M0+搭載 ブレッドボード互換 USB Type-C(3pcs)”]

 

おわりに

当初の目標に向かって徐々に進んできております。

次回は更なる低消費電力化とバッテリ選定を実したいと思います。

次の記事

M5Stack UnitCatM 番外編 SIM7080G EVAボードを楽しむ

M5Stack UnitCatM で位置情報取得

前回はシステムの消費電力測定とデータSIMの契約について記載いたしました。

M5Stack UnitCatM の 消費電力とデータSIM契約

 

目標

本件の目標は以下の通りです。

  1. 格安データSIM探して契約:IIJmioに決定
  2. 座標情報取得:基地局の位置情報で検討中
  3. 外部への通信:HTTP通信で決定
  4. コントローラ選定:Seeduino XIAOに決定
  5. パワーセーブ:XAIOのSleepとDCDCコントロール併用
  6. ビンに詰める
  7. 川に投げる

今回は②の位置情報取得を再検討しましたので報告いたします。

 

位置情報取得の再検証

前回の検証では通信基地局の座標を取得するATコマンドを自宅で試しましたが情報を得ることはできませんでした。
基地局位置情報のコマンドはATコマンドの資料p. 337に記載があります。

この度、ちょっと街にお出かけの機会がありましたので再度試してみました。

USBシリアルモジュールでスマホにつないで Serial USB Terminal アプリでATコマンドを送信して実験しました。

実験結果

札幌の狸小路から国道に抜ける道を歩きながら位置情報を取得してみました。

①: +CLBS: 0,141.352896,43.057192,550,2021/09/27,11:13:19
②: +CLBS: 0,141.355294,43.055670,550,2021/09/27,11:23:58
③: +CLBS: 0,141.357550,43.056538,550,2021/09/27,11:25:16

無事に位置情報を取得することができました!
結構 位置の精度も高かったです。

 

自宅に戻るとLocation Failedで位置情報は取得できなくなりました。
我が家は一体どこの基地局で通信してるんだ。。。

おわりに

屋外で無事に通信基地局の位置情報取得を確認することができました!

次に長期動作の確認をしたいと思います。
あわせてバッテリーの選定もしないといけません。

次の記事

M5Stack UnitCatM 位置情報送信システムの省電力化

M5Stack UnitCatM の 消費電力とデータSIM契約

前回はコントローラにSeeduino XIAOを選定し、通信動作を確立しました。

M5Stack UnitCatM を Seeeduino XIAO で制御

 

 
 

目標

本件の目標は以下の通りです。

  1. 格安データSIM探して契約
  2. 座標情報取得:基地局の位置情報で検討中
  3. 外部への通信:HTTP通信で決定
  4. コントローラ選定:Seeduino XIAOに決定
  5. パワーセーブ:XAIOのSleepとDCDCコントロール併用
  6. ビンに詰める
  7. 川に投げる

今回は⑤の消費電力詳細測定を実施し、①のデータSIMの契約をいたしましたので報告します。

 

消費電力詳細測定

パワーセーブ動作は前回確立し、通信時以外はXIAOをスリープし通信ユニットCAT-MはDCDCコンバータで給電しSleep中は給電を止めて消費電力を抑えます。

消費電力測定を実施しました。
30分に1回Sleepから起床してSIMの位置情報をHTTPでサーバに通信させます。通信後にSleepします。

Vin = 3.7V で消費電力は 8.09 mWh でした。

通信しない時の待機電力は3.7V × 1.55mAh = 5.735mWh
なので通信1回当たり 1.18mWh消費することになり実にLowPowerであることがわかりました。

約7割がXIAOのPower ON LEDで消費されているので、以下に倣ってLEDを除去するのがよいと考えます。

[bc url=”https://qiita.com/dzonesasaki/items/9f86c353d1a75dad5a0f”]

次回LEDを除去し消費電力を再測定したいです。

 

データSIM契約

これまではスマホのSIM(Jcom KDDI網)を使用して実験してきましたが、
いちいちSIMの載せ替えが面倒なので専用のデータSIMの契約を実施しました。

ここでは”IIJmioえらべるSIMカード”のデータ2ギガ (DoCoMo網)プランにしました。 
以下のAmazonで契約用コードを購入をダウンロードしてコースを選定して契約しました。簡単にできました。

[amazonjs asin=”B08P817H2J” locale=”JP” title=”【DL版】【初期費用3,300円(税込)が無料】IIJmioえらべるSIMカード エントリーパッケージ 月額利用(音声SIM/SMS)ドコモ・au回線・(データ/eSIM/プリペイド)ドコモ回線IM-B327″]

現在は秋の乗り換えキャンペーン(2021年10月31日まで)とのことで契約翌月から3か月データが1GB増量されるとのことです。ラッキー!

 

費用は以下の通りでした。

  • Amazon 契約コード【DL版】:¥350
  • SIMカード発行手数料:¥394
  • 月額使用料:¥748

数日後にSIMカードが到着しました。
SIMカードサイズはミニ、マイクロ、ナノのいずれのサイズにも対応しています(マルチサイズ)。

SIM設定

以下のATコマンドでSIMのAPN設定を実施します。設定後はモジュールに記憶されます。

AT+CGDCONT=1,”IP”,”APN名” 
AT+CNCFG=1,1,”APN”,”ユーザ名”,”パスワード”,3

IIJmioのデータSIMでも問題なく接続が確認できました。

 

おわりに

今回は消費電力測定とデータSIMの契約について記載いたしました。

次回はSeeeduino XIAOのPower ON LED除去による消費電力低減の確認と
通信基地局の位置情報について調査結果をまとめたいと思います。

次の記事

M5Stack UnitCatM で位置情報取得