低電力状態のときにICを切断して寄生/バックフィード電源を回避する適切な方法


10

私は、ネオピクセルストリップやAdafruitピクシーを含むいくつかの異なるデバイスを統合する、低電力バッテリーベースのAVRベースのプロジェクトに取り組んでいます。デバイス全体が静止しているときは、LiPoのバッテリー寿命を最大化するために、0.1mA未満の電流を引き出したいです。

私はこれをすべて機能させました(測定値0.035mA)。しかし、必ずしも「正しい」方法で実行したかどうかはわかりません。これに基づいて製品を構築する予定なので、正しく実行したいと考えています。

ここに画像の説明を入力してください (非表示:リレーのフライバックダイオード)

データピンから流れる電流によってVCCが切断されると、デバイスの「寄生的な」電力供給が中心的な懸念事項になります。たとえば、Pixie(シリアルを介して通信する)には、パワーダウンモードがなく、「オフ」の場合でも約1ミリアンペアが消費されます。そのため、VCCを切断するために小さなリレーを配置したところ、シリアルピンがまだpixieに電力を供給していることがわかりました。他の場所でのヒントは、多くのチップが電力保護のためにデジタル入力ピンをVCCにシャントするダイオードを持っていることを示唆しました。これを解決するには、シリアルライブラリを一時停止し、実際にはスリープ中にdigitalWrite(PIN、LOW)を実行する必要がありました。

WS2812bストリップについても同様です。VCCを切断しても、データピンからデバイスに電力を供給できます。また、NチャネルMOSFETでGNDを切断した他の設計では、データ線を介してグラウンドに電流が逆流するという逆の現象が発生しました。(これはPJRCの投稿ごとにダイオードで解決する必要がありました。)WS2812bは、実際には、消灯しているときでも、それぞれ約1ミリアンペアかかります。

したがって、質問:データピンが混在しているシステムのスリープ中に、プロジェクトの一部からVCCとGNDを切断する一般的な「クリーンな」方法はありますか?ベストプラクティスは何ですか?

いくつかのアイデア:

  1. VCCをGNDに強制します(方法はわかりませんか?Hbridge?)。(これを行うと、ハイになっているデータピンはどうなりますか?)
  2. すべてのデータピンとこれらのデバイスの間にトライステートバッファーを配置し、スリープ中にトライステートバッファーを高インピーダンス状態にし、PまたはNのMOSFETでのみVCCまたはGNDを切断します
  3. N mosfetのみでGNDを切断し、すべてのデータピンにダイオードを配置します
  4. VCCとGNDの両方を切断し、それらを「高インピーダンス」状態(電力用のトライステートバッファーのように)にする何らかの種類のパワーラッチはありますか?そうすると、電流はデータラインから「流出」することができません。

このような「負荷切断」問題を処理する最もクリーンで反復可能な方法を誰かに教えてもらえますか?(言うまでもなく、私はこの問題を少しの運でグーグル検索することに何時間も費やしてきましたが、負荷切り替えに関するこのテクニカルノートは見つけましたが、それはバックフィードと寄生電力には対処していません)


これは非常に煩わしいです。電源がVCCピンに到達していなくても、GPIOピンに到達する電力がAVRをオンにする(コードを実行する)場合があるのを実際に見ました...
vicatcu

2
おかしい観察:この質問を投稿してからSEでこの質問がトップランクになってから、さらにGoogle検索を行った。Googleはこのページを10分未満でインデックスに登録しました。
Jeremy Gilbert

コメントのみ:他のユーザーが提案した適切な絶縁スイッチは、リモート電圧を排除できない場合の最良のソリューションです。ショットキーダイオードを使用して、通常はVccでカソードがコモンされ、絶縁が必要なときにグランドにクランプされた入力ピンにショットキーダイオードを使用すると、インピーダンスの高い電圧を適切に除去できます。明らかに、低インピーダンスの給電ラインをクランプするショットキーは、一日を台無しにする傾向があります。
ラッセルマクマホン

おそらくすべての接続を何らかの方法(トライステートµCピン、トライステートバッファ、アナログスイッチなど)でHi-Zにすることは、ピータースミスとCLが示唆しているように、最善の策です。どちらの方法が優れているかはわかりません。いずれにしても、スイッチングにリレーを使用し、P-MOSFET(またはローサイドN-MOSFETを使用しますが、ここではローサイドスイッチングは少し難しいでしょう)を使用するのはなぜですか?
FlashCactus 2017年

回答:


5

これを行う場合、通常は影響を受けるデータラインでCMOSアナログスイッチを使用します

ADG812のようなものには、4チャネルのSPSTスイッチがあり、非常に高速なロジックに簡単に適合でき、オフ状態のときにスイッチノード間に非常に高いインピーダンスを提供します。

ADG812オフリーク

これの良い点は、この手法が単方向双方向の両方のデータラインで機能することです。

これらのパーツも明るい笑顔で実行されます。

ADG812の電力要件

パワーダウンの通常のシーケンス:

  1. データパススイッチをオフにする

  2. ドメインの電源を切ります。

もちろん、パワーアップはその逆です。

[更新]

これらは、パスゲートやトランスミッションゲートなど、他の名前でも知られています。

これらは、真のトライステートバッファーとは大きく異なります(上記のリンクの図で確認できます)が、通常のロジックの場合、効果は優れています(これは本質的に双方向デバイスです)が、消費電力は低くなります。


質問の無知を許してください、しかしこれはトライステートバッファとは著しく異なりますか?(そして答えをありがとう!)
ジェレミー・ギルバート

これらは「パスゲート」としても知られています
vicatcu 2016

3

データ信号がマイクロコントローラーに接続されている場合、それらのピンを入力として構成することにより、それらを高インピーダンスにすることができます。(他のチップがほとんど電力を使用しない場合、そのVccをデータ信号のように扱うことができます。)

それ以外の場合は、アナログスイッチ(74x66ロジックチップ)を使用して切断できます。単方向信号の場合、74x125も機能します。


実際にそれらをハイZにする必要はありません。マイクロのGPIOラインをローに駆動するだけで済みます。
DoxyLover 2016

1
他のチップが信号をHighに駆動できる場合は、さらに危険です。
CL。

私が完全に理解しているように、ピンを入力に切り替えることは常にそれらを高インピーダンス状態にすることと同じですか?それはほとんどのMCUに一般化されていますか、それともAVRだけですか?その状態は、OEが無効になっているときに74x125から取得するのと同じですか?
ジェレミーギルバート

@JeremyGilbertすべてのCMOS入力は高インピーダンスです(これらはMOSFETゲートであり、非常に小さなコンデンサーのように動作します)。無効になっている '125出力にはゲートがありませんが、その違いはごくわずかです。
CL。

1
@JeremyGilbert入力は、通常、ほとんどのアプリケーションでハイZです。結局のところ、ラインを運転しているときは何も感じられません。とは言っても、少なくともAVR(おそらく他のものもあるが、詳細はわからない)では、内部プルアップに注意する必要がある。ピンが入力モード(DDRxで構成)で、LOWに書き込む場合それは(PORTx経由で)、通常のHi-Zモードです。ただし、入力モードのときにHIGHを書き込むと、内部プルアップが有効になり、ピンの外部からフローティングラインではなく、VCCに対して〜50Kの抵抗のように見えます。
FlashCactus 2017年

1

残念ながら、すべての戦略に適合する1つのサイズはないと思います。すでに行っているように、電源をサブシステムに切り替えます。ソフトウェアでは、高電力の定常状態が発生しない限り、ピンを低電力状態にドライブします。その場合、ピンをハイに駆動します。入力をフロートさせないでください。安全な初期条件を確立するために、必要に応じて電源をシーケンスします。


1


2C

そのオプションはありません-非同期シリアルI / Oを使用せざるを得ません。一部のマイクロコントローラーでは、I2Cと同様のアプローチで問題を解決できます。シリアル出力ピンを、より一般的なpull-up-for-1、pull-down-for-0ではなく、プルダウンのみになるようにプログラムできる場合、スイッチドVccにプルアップ抵抗を追加して、ロジックハイを確立します。 このソリューションは、現在のアプローチほどノイズに強いわけではありませんが、AVRからI / Oモジュールに電源を供給するという問題を解決するはずです。これは実際には「クリーン」なソリューションではありませんが、IOモジュールのマイクロコントローラーにとってははるかに安全です。

概略図

この回路のシミュレーションCircuitLabを使用して作成された回路

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