GNSS + LTE Asset Tracker プロジェクト パート1
今週のプロジェクトでは、LTEベースのアセット追跡システムを構築します。このシステムは、盗難防止(および原状復帰)、配送または輸送車両の追跡の他、収集したデータを適切な機械学習サービスと組み合わせて使用した場合には予測保守まで、さまざまな用途で使用できます。これまでのプロジェクトはすべて、スペースに制約のない2層の基板でしたが、本当にコンパクトな高密度回路基板も構築してみたかったので、このプロジェクトではできるだけ小さな基板を構築することを目指します。やるべきことはたくさんあるので、まずは目標の設定と、部品の選択および回路図について検討し、続いてパート2でPCBの設計とレイアウトに着目していきます。
このようなプロジェクトにはさまざまな用途があります。バスや旅客車両に搭載すると、GNSSデータが運輸会社に報告され、位置情報の更新が可能になります。続いてその情報を使用して、次の便の到着予想時間を顧客に提供することができ、さらに規模を拡大して、スケジュール管理や停車時のタイミングデータを改善することができます。建設用ライトタワー、発電機の他、遠隔地に放置されることが多く、盗難の対象となりやすい設備など、高価な可動性資産にこのシステムが備えられていると、資産が予定外に移動されたときに警察や警備担当者による対応が可能になります。また、ジオフェンスとして設定されたエリア内から資産が出ないようにするためにも使用できます。
資産の追跡は大きな目標ですが、素晴らしい機械学習ツールとクラウドベースのシステムが市販されており、保守スケジュールを最適化できるデバイスに接続したり、技術者の現地派遣要請をスタッフに自動的に警告したりすることができます。今回は、回路に基本的なCANバスICと加速度計を追加して、エンジン管理システムからデータを収集できるようにし、振動データを集めます(このような機械学習システムは首尾よく早期故障警告システムに転じます)。
加速度計は、GNSS信号が弱くなったり妨害されたときに目標物が移動したかどうかを検出できるため、セキュリティに関するオプションをさらに可能にするという点でも役立ちます。
経験豊富な泥棒は十二分にトラッカーのことを知っているので、トラッカーが動作できないようにバッテリーケーブルを切断することがあります。そこで今回は、メインバッテリーが切断された場合にシステムに電力を供給するリチウムポリマーバッテリーセルを1つ内蔵します。こうすることで、大型発電機が始動したり、バッテリーで電圧低下が生じるなどの状況(特に寒い日など)でも、デバイスの継続的な動作が保証されます。
私はこのデバイスを、できるだけ小型化し、存在を気付かれないようにするつもりです。これまでに目にしてきた多くの市販の追跡システムは、高価でかさばり、設置に手間がかかる一方、泥棒が簡単に動作を停止させたり取り外したりできるものでした。このプロジェクトでは、低コストに抑えることを特に目指しているわけではありませんが、要件を満たして問題なく機能する最低価格のコンポーネントを使用するつもりです。
いつものように、このプロジェクトは、変更や再配布の要件が最小のMITライセンスの下で、GitHubにある他のすべてのプロジェクトと一緒に保存されています。MITライセンスの下では基本的に、読者の皆様は、エラーの可能性およびいかなる問題も私またはAltiumが責任を負わないことを認識している限り、断片的なコピーからそのままでの大量生産まで、この設計を自由に使用することができます。
このプロジェクトのコンポーネントはすべて、私のオープンソースのAltium Designer®ライブラリであるCelestial Altium Libraryに由来しています。そのため、このプロジェクトの一部をご自分の設計にすぐに再利用できます。
コンポーネントの選択
「高価な」コンポーネントについて検討する前に申し上げておきたいのですが、私はこれをできるだけ小さく設計しているので、パッシブコンポーネントには可能な限り0201(インチ)サイズの部品を使用しています。可能であれば01005(インチ)を使用したいところですが、プロトタイプを提供するのが大変なため、今回はより大きな0201を使用します。これを使えば、ペーストステンシル、ピンセット、リフロー炉のみでプロトタイプを作ることができます。このプロジェクトは、01005サイズの部品でさらに小さくなる可能性があります。
セルラー/LTEモジュール
LTEモジュールの要件はかなりシンプルですが、通常使用するオプションの多くを除外しています。これはサンプルプロジェクトであるため、モジュールはすべての国で使用が認められているか、異なる地域用のバリアントがある必要があります。これに加えて、主要なコンポーネント販売代理店で入手できるモジュールを使用したいと考えているため、これらのトラッカーのいずれかを構築する場合に、サプライヤーを探す必要はありません。さらに具体的には、認定済みモジュールを探しています。認定済みモジュールを正しく使用すると、完成した基板が、事前に認定された意図的な放熱器を含む偶発的な放熱器として認められます。そうすれば、この基板を小型化し、意図的な放熱器として認定されるために比較的高額な費用をかけずに認定を受けることができます。
過去5年間で、主要な販売代理店で入手可能なセルラーモジュールの数と在庫水準は大幅に上昇しています。10年前には、入手可能な種類にかかわらず、グローバルに使用できるセルラーモジュールを、特に低価格で大手サプライヤー(MouserやDigi-Keyなど)で見つけることは、非常に難しかったかもしれません。モノのインターネットの盛り上がりとともに、私が設計しているようなデバイス(LTE帯域が特にLTE Cat-M1およびNB-IoTバンドを備えたIoTデバイスに対応するようなデバイス)に、携帯電話からアクセスしたいという要求が著しく増えています。これらの帯域は、主に少量のデータを送信する、バッテリー駆動の低電力デバイスの要件を扱うよう特別に設計されています。
この点を考慮して、uBlox SARA-R410Mモジュールを選択しました。このモジュールには、世界の主だったすべての地域向けのオプションがあります。主要な販売代理店で入手でき、価格もそれほど高くありません。これは、最新のLTE規格に対応した非常に新しいセルラーモデムですが、受信可能範囲が問題となる地域に対しては、旧世代規格との下位互換性があります。低速な基本インターネットのみが必要なため、このアプリケーションでは、初めからモジュールのすべての機能を使用することはありません。
今回は、SARAモジュールと、Linx TechnologiesのANT-LTE-CER-T基板実装マルチバンドアンテナを組み合わせます。
GNSSレシーバーモジュール
このプロジェクトの重要な要件は、位置精度です。ナビゲーションレシーバーの無線通信が多くの衛星から信号を受信できることは重要です。最もよい方法は、GPSだけを使用するのではなく、GNSS(Global Navigation Satellite System)レシーバーを使用することです。これにより、システムはGPS(米国)、GLONASS(ロシア)、ガリレオ(EU)、BeiDou(中国)からナビゲーションフィックスデータを受信することができます。位置の確定に使用される衛星の数は著しく増加しています。このデバイスはおそらく離れた場所に設置されると仮定すると、空が見えにくい(信号を受信しにくい)場合があるので、空が見える範囲内により多くの衛星があることが望ましいことは間違いありません。
過去のプロジェクトでは、uBlox 8シリーズに勝るGNSSモジュールを見つけるのに苦労しましたので、このプロジェクトはuBloxを中心に構築します。使用する予定の具体的なモジュールは、ファームウェアの更新を可能にするフラッシュメモリを搭載したuBlox NEO-M8Nです。これは他の8シリーズオプションよりも高価ですが、この類のデバイスでのファームウェアの更新は、それだけの費用をかける価値があると考えます。
GNSSレシーバーは認定を受ける必要はありませんが、ベアICよりも、uBloxのモジュールバージョンを使用したいと思います。基板上にSAWフィルターとLNAが付属しており、最終製品のレイアウトと調整の手間を減らせます。また、レシーバーはRF遮蔽筐体に入っており、この製品ではGNSS L1帯域に近い周波数で動作できる強力なLTEモデムに近接するため、大きなメリットになります。遮蔽モジュールを使用していない場合は、この基板用のRFシールドを作成する必要があり、追加のエンジニアリング費用がかかります。
マイクロコントローラー
外部電源がトラッカーから切断された場合、このデバイスは、引き続き資産を追跡するためにオンボードバッテリーの電力で長時間稼働する必要があります。無線通信モジュールは、消費電力が少ないスリープモードがあります。そこで、スリープモードでの消費電力が非常に低いマイクロコントローラーの使用を検討しました。また、マイクロコントローラーは比較的コンパクトである必要もあります。
これらの要件に基づき、迷わずSilicon LabsのEFM32シリーズを選択しました。これまでに、8ビットおよび16ビットマイクロコントローラー、EFM32シリーズに加え、さまざまなARMマイクロコントローラーについて広範なテストを行ってきましたが、これらのマイクロコントローラーでは、低消費電力の要件と、消費電力を抑えたスリープ状態との簡単な切り替えを実現できませんでした。
このプロジェクトにおいては、EFM32 Tiny Geckoが、コスト、機能、サイズ、および電力のバランスが最もよくとれています。具体的には、EFM32TG11B520F128GM32-Bを使用しています。これは5x5mm QFN32パッケージに収まっており、外部水晶を必要とせず、さらに省スペースです。
バッテリーの充電と管理
利用可能なバッテリー充電ICの多くは、5V入力に限定して設計されています。この基板で共通の中間電圧は8Vにしたいと考えています。理由はすぐにわかります。6Vを超える入力をサポートしていない多くのシングルセル充電ICを除外するからです。このプロジェクトでは急速充電機能は必要ありません。バッテリーは無停電電源としてのみ動作し、デバイスが常に接続されているはずだからです。したがって、充電電流についてはさほど心配していませんが、入力電圧とスペースだけは気がかりです。
そこで、Texas InstrumentsのBQ24040DSQRを使用することにしました。最大充電電流は1Aです。今回のニーズには十分であり、PWSONパッケージはわずか2x2mmで、コンパクトなソリューションの要件を満たしています。
バッテリーを充電するほか、外部電源から切断されている場合は充電状態を把握する必要もあります。このために、Texas InstrumentsのBQ27542DRZ I2Cバッテリーマネージャーを使用しています。このバッテリーマネージャーは、放電状態を正確に監視し、一目で電圧を把握できるのと同じように、電力使用量(%)の概算値ではなく正確な数値を読み取ることができます。バッテリー遮断機能は実装していません。1つの18650セルのコストは、バッテリーが空になる直前のデータパケットから非常に高価な資産を回復できる可能性と比べれば、問題になりません。バッテリー放電を正確に監視すると、ファームウェアは、必要に応じてセルラーモデムのデータのチェックインから返送までの長時間、スリープ状態になり、デバイスの寿命を延ばすことができます。セルラーモデムは、圧倒的に多くの電力を消費しますので、その電力消費を監視し、電力使用を管理することは、外部電源からの切断時の稼動時間を延ばす最も効果的な方法です。
センシングとデータストレージ
前述のように、セルラーモデムの使用は、デバイスのバッテリー寿命を著しく縮めます。したがって、有用なデータを返送しつつも、できるだけ使用を抑えたいと考えています。モデムを最大限に活用するため、バースト送信するデータを保存しておくことは有効です。マイクロコントローラーには大容量のフラッシュ領域がないため、外部フラッシュの使用をお勧めします。今回は4メガバイトのSPIフラッシュICを使用します。これを使って、位置や移動のデータ、あるいはその他の収集データを保存し、定期的にバースト送信できます。
記事の冒頭で述べたように、このデバイスは予測保守に使用でき、EFM32TGはCANバスに対応しているので、ON SemiconductorのNCV7351D13R2G CANトランシーバーを追加しました。これにより、エンジン管理システムやその他のCAN対応デバイスからデータを収集できます。このデータも、外部フラッシュに収集して、クラウドサービスにバースト送信できます。
電源/電圧変動率
最近のプロジェクトの多くでは、正当な理由から、スイッチモード電源の設計に重点はを置いてきました。電気的な観点から言えば、電源はプロジェクトの中心であることが多いからです。このプロジェクトでは、やや状況が異なります。今回は、スペースの制約のため、複数の電圧レギュレーターを構築するのではなく、非常に小さな統合モジュールを使用します。これらのモジュールはすべて、同等機能のレギュレーターをレイアウトできるスペースよりもはるかに小さく、これまでによく単独で使用していたコイルよりも小型です。
目標は、10~35V入力をサポートすることです。これにより、放電され完全に充電された状態で「12v」および「24v」の鉛酸電池を使用できます。予備バッテリーとしてリチウム電池(3~4.2v)を1つ搭載し、サポートする電圧に幅があるため、バッテリーを使用するすべての部品が動作するために中間電圧が必要になります。
中間電圧は8ボルトで落ち着きました。この電圧は、このプロジェクトの最小入力電圧をわずかに下回り、オンボードバッテリーの電圧をそれほど上回っていません。これにより、レギュレーターに適切な中間点が提供されつつ、ICおよびバッテリー充電ICに必要な5V、3.8V、3.3Vの電圧が効率的に生成されます。
入力はMonolithic Power SystemsのMPM3550モジュールを使用して安定化され、オンボードバッテリーはTPS61089を使用して昇圧されます。昇圧コンバーターは基板上で唯一の非モジュールレギュレーターですが、TPS61089で構築できるソリューションよりも小さい適切な昇圧コンバーターモジュールは見つかりませんでした。
電流引き込みがかなり低いので、8Vの中間電圧は、MC78LC50リニアレギュレーターを使用してCANトランシーバー向けに5Vに変換されます。PMU8218Dモジュールを使用してSARAモジュールに3.8Vが供給され、残りのシステムに対しては、Texas InstrumentsのLMZ21701SILTから3.3Vが供給されます。これらのレギュレーター探しは本当に楽しい作業でした。いくつかのモジュールは、信じられないほど小型で比較的安価でありながら、非常に多くの電力を変換することができ、かなり驚きました。
外部電源からバッテリーへの瞬時負荷開閉器には、前の12V UPSプロジェクトで使用したのと同じAnalog DevicesのLTC4414EMSを使用しています。
回路図
このプロジェクトは、以前のプロジェクトと比べてかなり順調に進んでいるので、システム内の電力の流れを示すメモを記したトップレベルの回路図シートを図解しました。
入力電力
まずは回路図の入力電源のところから見てみましょう。この製品は、大型発電機やその他の工業施設への設置、さらには車載アプリケーションへの搭載を目的としており、入力電力には十分に注意を払う必要があります。大型発電機内の巨大な始動モーターは、非常に大きいフライバック電圧やその他のカオスを引き起こす可能性があります。
モーターのクランク回転中の破損や不安定な入力電圧に対処するため、入力電源フィルターに関しては少々無理をしました。
正電圧入力と負電圧入力の両方に逆極性保護があります。負側は、回路の「後方」に配置されたNチャンネルMOSFET IC1を介して行われます。これにより、ボディダイオードが電流を流し、次にゲートが電流をもれなく受信してFETをオンにします。ボディダイオードを保護するため、外部ダイオードD5も追加して、より耐性のあるデバイスから同じ機能を提供しました。
正側には、自動車用ミニブレードヒューズホルダーのM1、続いて2つのTVSダイオードがあります。TVSダイオードは、大きなサージ電流に対処できない可能性がありますが、ヒューズを焼き切って回路を保護できるだけの十分な電流を流します。この基本的な入力保護の後には、さらに逆極性保護を行うためのダイオード、フライバックから保護するための別のダイオード、および基本的な伝導EMIフィルターがあります。入力電圧レギュレーターは、データシートでCISPR22クラスBに準拠する必要があり、CISPR25クラス5準拠のため回路図にフィルターを組み入れることが求められます。このデバイスは自動車環境で使用する可能性があるため、CISPR25クラス5は排出ガス規制遵守を目指す価値があります。
前のプロジェクトのレギュレーターと比べて、この設計の入力レギュレーターは非常に単純です。必要なのは、データシートの表で推奨された抵抗を使用して周波数を設定し、帰還抵抗を計算することのみです。帰還抵抗は、モジュール上の帰還電圧分圧器と並行する抵抗です。入力コンデンサーと出力コンデンサーは、データシートに提示されている最小値よりも大きい静電容量を持ちます。ここでは、1210(インチ)のセラミックコンデンサーのサイズと入力電圧範囲でできる限りの最大値を選択しました。
バッテリー管理
バッテリー充電設計は非常に単純です。電流は、チップが設定できる最大値(1A)に設定されます。バッテリー充電設計の詳細は、筆者による「12V Uninterruptible Power Supply(12V無停電電源)プロジェクト」でお読みいただけます。
バッテリーセルモニターは、それよりもはるかに複雑に見えます。
バッテリーモニターは、実質的にはバッテリーを流れるすべての電流を集計する電流センサーです。電流検出抵抗(R16)には基本的なフィルタリングネットワークがありますが、それ以外はBQ27542DRZに直接接続するだけで使用電流の合計が計算され、結果はI2Cからアクセスできます。
UPS機能は、LTC4414EMSおよびPチャネルMOSFETによって提供されます。前述しましたが、これに関連しては、完結したプロジェクトを構築したことがあるので、ここでは深く触れません。セルラーモデムがフルパワーで送信中に電力が中断された場合、レギュレーターの起動には数ミリ秒かかりますが、電力を供給するだけの十分な静電容量が基板上には存在しないので、バッテリー用の8Vレギュレーターが常に動作していることは注目に値します。
電圧を仲介するバッテリー
このプロジェクトでは、カスタム電圧レギュレーターが1つだけあります。前述のように、ほどよく小型で高電力の昇圧レギュレーターモジュールは見つかりませんでした。このTI TPS61089は、セルラーモジュールの現在の要件に合わせて設計できる最小の昇圧コンバーターです。
この設計では、入力静電容量は最小限です。リチウム電池の抵抗が十分に低いので、大きな電流の要求に即座に対応できない電源を使うより、限界を少し広げることができると考えるからです。同様に、大量の出力静電容量はありません。このレギュレーターを即座に動作させるニーズにのみ対応する必要があり、回路内の他の場所に十分なバルク静電容量があるからです。
レギュレーターは2Mhzで動作させていますが、設計の効率が若干損なわれ、2Aの負荷下で約86%に低下します。ですが、フットプリントが大幅に減るので、バッテリー寿命をトレードオフする価値があります。電源損失を補うために無線通信の多用を避けてソフトウェアで対応できることはありますが、ソフトウェアで基板を小さくすることはできません。90%以上の効率的な設計では、基板スペースの4倍以上を使用します。
多数のレギュレーター
最も電力消費の大きいデバイスであるセルラーモデムは、3.8Vで最大2Aを必要とします。Flex Power ModulesのPMU2818は、極めて簡単に実装できます。回路図内のほとんどの値(フィードバックデバイダー以外)は、データシート内の多くの表に基づいたもので、さまざまな電圧と条件に関する推奨値が入力されています。
セルラーモデムのバルク静電容量はモデムの回路図シートに記載されており、出力静電容量はモジュールのすぐ隣に示された値に制限されます。
基板上の論理ICの大部分は3.3Vですが、電流の要求はかなり控えめです。LMZ21701は、調整可能なリニアレギュレーターと同じように使い勝手がよく、オプションでソフトスタートコンデンサーを選択できます。
最終的に、電源は5Vで、単純な固定出力LDOです。電力が供給されているCANトランシーバーの電流要求は十分に低く、リニアレギュレーターがバッテリー寿命に与える影響はごくわずかです。
Silicon LabsのEFM32マイクロコントローラー
EFM32シリーズは、それを使ってよほど変わったことをしようとしているのでなければ、少なくとも回路図の観点から、セットアップが非常に簡単である点で優れています。外部サポートコンポーネントがある限り、本当に必要なものは、いくつかのデカップリングコンデンサーのみです。低周波の外部発振器は、これを必要とする機能を使用する予定がないので、必要ありません。
マイクロコントローラーに電力を供給した後の問題は、すべてのIOの接続のみです。私は、このモデル/パッケージに、このプロジェクトに十分なIOがあればよいと思っていましたが、結果的にうまくいきました。さらに必要があれば、周辺機器のリセットピンを組み合わせることで、IOを節約できます。
このプロジェクトでは、ポートを使用するだけでなく、各シートのハーネスコネクタを使用することにしました。ハーネスは、トップレベルのシートの外観を整え、すべての端子をまとめます。そのため、ポートを使用するよりもはるかに時間を節約できました。
また、回路図のマイクロコントローラー部分の一部として、SPIフラッシュを検討しています。SPIフラッシュも接続が非常に簡単で、デカップリングコンデンサーや通信バスを接続するだけです。
uBlox SARA LTEモジュール
このプロジェクトで、ほとんどの機能にモジュールを使用するメリットの1つは、BOMの数が非常に少なくなることです。どのモジュールも、必要な対応コンポーネントや値の計算が大幅に少なくてすみます。LTEモジュールは、独自モジュールの構築と全く変わりません。
LTE回路図で主に注意すべきものは、アンテナとSIMカードです。アンテナのトラックは、インピーダンスが整合している必要があり、また、調整コンポーネントを備えている必要もあります。アンテナの調整にはデータシートの推奨値を使用していますが、実際のテストでは、ベクトルネットワークアナライザーを使用して、回路基板に必要な実際の値を決定する必要があります。
SIMカードコネクタ用の4ラインTVSダイオードがあります。SIMカードは、挿入や取り出しによって静電放電が発生する可能性が非常に高く、RFモジュールに直接接続すると、無線を劣化または破損する可能性のある損傷放電を引き起こします。
uBlox SARAはIOラインに1.8vを使用しているので、このプロジェクトでは、Texas InstrumentsのTXB0108PW論理レベル変換器を使用して、論理電圧を変換しています。過去のプロジェクトでも使用したことがあり、非常に満足できる結果を得ています。
前述の3.8V電源の説明で、バルク静電容量がLTEモジュール自体に供給されると書きましたが、それは次のことです。ピーク電流が必要とする静電容量はかなり控えめですが、ピークは短時間でありほとんどの場合ピークに達する可能性はないため、供給されたコンデンサーが確実に正しく動作するには十分です。
SARAには多数のGND、つまり膨大な数のGNDピンがあります。回路図全体のうち、記号部分のほとんどすべてがGNDピンのところがあります。
uBlox NEO M8N GNSS
NEO-M8Nには多くの通信周辺機器があり、通常はUARTラインのみを接続しますが、ここでは既に基板上にI2Cがあるので、将来的により多くのオプションを提供するために接続するとおもしろいだろうと考えました。入力およびUARTラインにフェライトビーズを追加して、モジュールに伝わる可能性のある伝導EMIの量を減らしました。
理想的な世界のアンテナは調整コンポーネントを必要としないでしょう。しかし、よい応答を得るためには必要になりそうです。私は、VNAでテストしたプロトタイプ基板がない状態で、不整合が何であるかを推測したくありませんでした。値を計算するアンテナとモジュールに関する十分なデータを見つけることができなかったからです。このプロジェクトの独自バージョンを構築する場合は、最適なパフォーマンスを得られるようRFパスを適切に調整するため、基板、モジュール、およびアンテナの特性評価を検討する必要があります。
モジュールには既にSAWフィルターとLNAが搭載されているため、アンテナをモジュールに直接取り付けて追加する必要はありません。オフボードのリモートアンテナを使用する場合は、VCC_RFピンを使用して、フィルターとLNAを内蔵したアクティブなアンテナに電力を供給できます。
加速度計
ここで使用している加速度計は、割り込みとジェスチャー認識の機能を備えた最も安いものの1つです。お気に入りは、動きやダブルタップなどのイベントやジェスチャーがあったときに割り込みを生成する機能を持つ、STシリーズの加速度計です。この用途では、デバイスが純粋に盗難防止のために使用されている場合、加速度計と電源のみを有効にして、デバイス全体を深いスリープ状態にできます。加速度計が動きを検出すると、より厳密な監視を開始できるマイクロコントローラーを復帰させます。
以前の回路図シートで、I2Cのプルアップがどこにあるのか疑問に思ったかもしれませんが、ここにあります! 加速度計は、私が初めて回路図を取り込んだI2Cデバイスです。マイクロコントローラーシートはスペースが限られており、プルアップ抵抗を元々あった場所に残しました。
CANトランシーバー
最後に、エンジン管理システムに接続できるCANトランシーバーです。技術者がワイヤを接続した場合や、動作中にワイヤが接続されたデバイスから過渡が生じた場合は、CANコネクタでも過渡が起こります。
次のパートの予告
このプロジェクトはかなり規模が大きいので、この記事はこのあたりで中断しようと思います。次回の記事では、基板を配線してどれほど小さくできるかを見てみましょう。2つのRFモジュールが、小型基板に対して、宇宙からの信号を探す、比較的高電力の送信機と非常に感度の高いレシーバーに関する難しい問題を突き付けます。
基準マークを除いて合計141個のコンポーネントがあり、興味深い配線プロジェクトになります。
今すぐAltium Designerの無償評価版をリクエストして、世界最高のPCB設計ソリューションをお試しください!ご不明な点などございましたら、お問合せフォームにご入力ください。