低電力ワイヤレスモジュール戦略


8

私は、適度に狭い領域に広がる低電力センサーモジュールを設計しています。モジュールはすべて電池式であり、電池を再充電/交換する必要なしにかなり長い時間動作するはずです(長いほど、数か月または数年ではなくても少なくとも数週間は考えます)。アイデアは、モジュールが30分または1時間ごとに低電力モードからウェイクし、いくつかのサンプルを取り、データを中央のデータロガーに送信するというものです。中央のデータロガーはおそらく壁掛け式であるため、低消費電力は必要ありません。モジュールが中央ロガーから100m以上離れているとは思いません。

機能する可能性のあるいくつかのトランシーバモジュールを特定しました。

  1. ALPHA-TRX433S、433 MHz
  2. ALPHA-TRX915S、915 MHz
  3. マイクロチップMRF89XAM8A、868 MHz
  4. マイクロチップMRF89XAM9A、915 MHz

私が読んだことから、これらのモジュールはすべてFCCの規制されていない帯域で動作し、安全に使用できます。Alphaモジュールは300mの範囲をアドバタイズしますが、Microchipモジュールの予想最大範囲がどうなるかわかりません。これをどのように計算しますか?

また、私は自分のバンドを選択できるので、どのバンドを選択する必要があるのか​​、またその理由(つまり、915 MHzから433 MHzで何を取得し、何を失うのか)を教えてください。最も重要と考えるパラメーターの順に:

  1. 低電力
  2. 伝送範囲(理由の範囲内で、より良い)
  3. 他の環境要因(つまり、wifi /セルネットワーク、実行中の電子レンジ、壁/物理的な障害物、温度など)に対する耐性。対象となる用途は住宅環境であり、温度差が大きくなる可能性があります(-20C〜50Cなど)。
  4. データレート。サンプルあたりのデータが非常に少ないことを期待しているため(これは最大で数バイト)、これはそれほど重要ではありません。

もう1つの質問は、同時にデータを送信しようとする複数のモジュールを処理する方法です。これを軽減する方法についていくつかの考えがありますが、どのソリューションを続行するかわかりません。

  1. データが送信されるときにランダムな時間オフセットを使用します。衝突が単に回避されることを望んでいます。これはおそらく実装するのが最も簡単で、消費電力が最小になる可能性があります。ただし、これは衝突がないことを保証するものではありません。また、解決できないわけではありませんが、適切なランダムソースまたは一意の疑似ランダムシードを取得すると、問題が発生する可能性があります。

  2. ウェイクアップして送信しようとすると、現在進行中の送信があるかどうかを確認します。データを送信する前に、送信の終了を待ってください。問題は、最後の送信が終了したことを両方が判断し、両方が同時に送信を開始する可能性があるため、待機状態で複数のセンサーをどのように処理するかです。

  3. 他のいくつかのソリューション。


300mの範囲は「クリアラインオブサイト」通信用であり、通常は屋内では50または100m(またはそれ以下)に低下する場合があります。Tx / Rx間の壁のタイプ。6か月以上、プロジェクトで433MHz ASK / OOK Tx / Rxペアを使用しました。使用プロファイルはやや似ており、4x1.5VDC AA(標準水銀なし)を使用していません。
icarus74 2013

複数の同時送信の処理に関しては、最初のソリューションは私が使用するものに近いです。私の場合、私のトランスミッターは、校正されていない温度センサー入力をPRNGシードとして使用して、最大3000msのオフセットに変換し、その後、再送信も使用しています。
icarus74 2013

回答:


9

私はあなたに実用的な出発点を与えるオープンソースとオープンハードウェアセンサーを持っています:それはインターネットに接続されており、その温度、湿度、そしてバッテリー電圧を2分ごとに送信し、2xAAバッテリーで3-5年続きます。M12 6LoWPANモジュールに基づいています

私はあなたのすべての質問に触れるために最善を尽くします:

バンドのトレードオフについて:

433 MHz、915 MHz、2.4 GHz

距離とアンテナサイズは、ここでの明確なトレードオフです。自由空間経路損失は波長の関数であるため、同じ減衰に対してより低い周波数ははるかに遠くまで進みます。しかし、これを活用するために、あなたはまた、適切なアンテナが必要ですまた、波長に比例します。M12の2.4Ghzアンテナは、約2平方cmのPCB面積を必要とします。

2番目の要素はライセンスです。2.4GHzは、世界中で無免許のステーションを所有できます。915MHzは米国でのみライセンスされていません(それは他のどこでもGSMバンドです)。433MHzの制限がよくわかりません。

データレートは、シャノンハートレーの定理に従って周波数の選択によっても影響を受けます。より多くのデータをより高い周波数帯域に詰め込むことができます。ただし、これは常により多くの最終データレートで使用されるわけではありません。たとえば、802.15.4は、データ層で見られるすべての実ビットに対して4ビットの冗長性を持っています。32個のシンボルは疑似直交であるため、エラーを発生させるには、いくつかの低レベルビットを破損する必要があります。これにより、802.15.4がノイズフロアの下で動作(研究では-5dB SNRを示唆)、干渉に対して比較的堅牢になります。

次の難しいトピックに移ります。

低電力無線操作

家庭用バッテリーソース(AAアルカリなど)と比較すると、mc13224vなどの「低電力」SoCでもそれほど低電力ではありません。トランスミッタは2〜3.5Vで約30mA、レシーバは25mA程度です。無線をオフにしてCPUをスリープさせることなく、この負荷は数日で2つのAAを排出します。受信機の高電力消費は多くの場合驚くべきことであり、おそらく低電力無線システムの開発における最大の問題です。つまり、何年も実行すると、送信したり聞いたりすることがほとんどできなくなります。

2xAAアルカリから「1年」の動作を実現する目標は、システムの平均電流を50 uA未満にすることです。そうすることで、自己放電や家庭用電池の7年の自己寿命など、電池による二次的影響に何年も耐えられるようになります。

平均50uA未満にする最良の方法は、トランシーバーが受信する必要がない場合です。これが当てはまる場合、データをできるだけ迅速に「チャープ」し、ほとんどの時間、システムを低電力モード(たとえば、約10uA)にすることができます。TH12例えば、約10msの間に送信するが、関与するセンサのための時間とセットアップ時間を処理についてシステム内の他のオーバーヘッドがあります。詳細は、現在のプローブとスプレッドシートで解決できます。

そのタイプの分析から、実行寿命がどうなるかを計算できます(バッテリーの放電曲線が正確であると仮定します)。

低電力側でデータを受信する必要がある場合(たとえば、メッシュネットワークでスリープ状態のルーターを作成する場合)、現在の最先端技術は時分割技術に重点を置いています。802.15.4ビーコンなど、ネットワークを厳密に同期するものもあれば、ContikiMACなどの「緩い」システムを使用するものもあります(ハードウェアに安定したタイムベースがない場合は、特に実装が簡単です)。

いずれにせよ、私の経験では、これらの方法は平均で約400uAであり、2xAAで「数か月からおそらく1年」のランタイムになります。

衝突

私のアドバイス:今のところそれらについて心配しないでください。言い換えれば、「アロハ」(オプション#1)を実行し、データがある場合はそれを送信します。衝突した場合は、おそらく再送信してください。(これはあなたの目標に依存します)。すべてのサンプルを確実に受信する必要がない場合は、一度試してすぐにスリープ状態にしてください。

電力消費の問題が非常に難しいため、まったく送信しないネットワークが唯一の解決策であることがわかります。試してみれば、おそらく成功するでしょう。そうでない場合は、いつでも後で再試行できます。

すべてのデータグラムが確実に通過する必要がある場合は、何らかのACKスキームを実行する必要があります。6LoWPANの世界では、TCPを使用して、バッテリーがなくなるまで再試行を続けることができます。UDPを使用し、再試行メカニズムを備えたCoAPもあります(ただし、配信は保証されません)。しかし、ここでのすべての選択は実行時間に影響を与えます。何年も運用している場合、影響は数か月になります。

オプション#2は、CCAとして802.15.4ハードウェアに組み込まれています。アイデアは、8つのシンボルに対して受信機がオンになり、trueまたはfalseを返すというものです。次に、次に何をするかを決定できます。あなたはこれらのスキームで一日中遊ぶことができます。しかし、このようなことをするたびに、ランタイムからさらに数週間ひげを剃ります。だから私は今のところシンプルに始めることをお勧めします。あなたが長い実行時間を試みているなら、それは非常にうまくいきます。


リンクが機能しません!
Ryan Griggs、2017年

このMicrochip XLP Estimatorに追加したいと思います。これは、バッテリーのさまざまな構成と実行状態/期間の予想実行時間を示します。また、すべてのセンサーがトランシーバーである場合は、マスターがデバイス0から「何か私に何か」を繰り返し要求する「ラウンドロビン」または「トークンリング」スキームを実装できます。センサーは、その回転を待ち(たとえば10ms)、送信してからシャットダウンします。文字化けしたデータを受け入れないようにするために、ある種のCRCチェックサムを使用することをお勧めします。n
rdtsc 2017年

1

JeeNodesに興味があるかもしれません。これは、基本的にArduino UnoとHopeRFのRFM-12B無線モジュールを組み合わせたものです。コードをリモートの「ノード」に直接書き込むと、センサーなどによっては、バッテリーのセットから数か月を簡単に取得できます。

彼のウェブサイトをチェックしてください。消費電力は十分に文書化されています。これらについての理想的なことの1つは、センサーに標準のarduinoライブラリを使用するか、jeelabsストアのセンサーを使用して、すべてを非常に簡単にするJeeLibライブラリを使用できることです。

JeeNode v6からランプ用の小さなリモコンを作成し、古いNokiaバッテリーの電源を切りました(約1 Ahですが、おそらく現在は少なくなっています)。まだかなりいっぱいです)。ボタンが押されているかどうかを確認するために、数ミリ秒ごとに起動し、低電力のスリープ状態になります。

私はJeeLabsストアからPCBを購入しましたが、ebay、element14などの場所からすべてのコンポーネントを入手しましたが、その方が少し安くなりました。

アンテナの設計に少し注意を払うと、見通し線からアンテナから数百メートル離れているように見えます。シンプルな垂直ワイヤーで家全体を簡単にカバーできます。


0

データレート 「データレートは、シャノンハートレーの定理に従って周波数の選択によっても影響を受けます。より高い周波数帯域に多くのデータを詰め込むことができます。」違う!!!

データレートは、キャリア周波数ではなく帯域幅と関係があります。キャリア周波数は低くても、帯域幅とデータレートは高くできます。

キャリア 周波数キャリア周波数が低いほどレンジに適しています。周波数が半分になると、範囲は4倍になります。ただし、アンテナのサイズも大きくなります。通常、アンテナはlamba / 2またはlambda / 4です(lambdaはメートル単位の波長です)。

チャネルの競合 これは、一見すると非常に明白に見えますが、注意が必要です。他の人が指摘したように、最も単純な戦略は、一度目を覚まして送信し、その後スリープすることです。送信機の数がそれほど多くなく、スリープ時間が送信時間よりはるかに長い場合、これは機能します。ただし、まれに一部のデータを失う準備ができている必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.