スイッチ識別用のゼロまたは低電流分圧器


8

ゼロ電流または非常に低い電流を使用するスイッチで分圧回路を設計することは可能ですか?トランジスタを使用して抵抗ストリングの端を接地に接続/切断することはできますか?

バックグラウンド

回路は2つのことを行います。回路内の各スイッチは、トランジスタを使用して割り込みピンをLOWに送信することにより、IC(ATMEGA328P)を起動します。ICがウェイクアップすると、ADCは回路からの電圧をサンプリングし、どのボタンが押されたかをICが認識できるようにします。

プロジェクト全体は電池式であり、この分圧器があると電池寿命に大きな影響を与える可能性があります。

プロジェクトは、1)SDカードからファイルを読み取る、2)スリープ状態にする、3)16個のボタンの1つが押されたときにウェイクしてサウンドを再生する、および4)スリープ状態になり、ボタンを押すと#3から始まるプロセスを繰り返す。実行中はかなりの電流が流れると思います。

既存の分圧器回路

ここに画像の説明を入力してください

可能なトランジスタソリューション

抵抗ストリングの端とアースの間にトランジスタを配置し、ボタンを押してトランジスタをアクティブにすると、電圧ストリングの端がアースに接続されます。これにより、5Vの初期電圧測定値が得られ、トランジスタがオンになると、実際の測定電圧は意図した電圧になります。これがうまくいくかどうかはわかりません。

トランジスタ付きの可能な分圧回路

その他のソリューション

質問28897ごとに、10 Mオームなどの高い抵抗値を使用できます。しかし、これはまだ数百nAの現在の描画になります。ゼロがいいです。


3
10 MOhmで5Vの1000mAhバッテリーを使用する場合、バッテリーは228年間、または小さな30 mAhボタンのリチウム電池で6年間持続します。ADCで取得するすべてのサンプルは、キャップも充電または放電します。また、コントローラーのADC入力インピーダンスは10Kの範囲にある傾向があり、サンプルごとにそれを介してキャップを充電します。それを踏まえて、nAソリューションが本当にバッテリー寿命に顕著な影響を与えると確信していますか?
Scott Seidman

電圧レギュレータの静止電流とMCU自体(スリープ時)の合計が少なくとも10 uAであることを考えると、あなたは正しいです。私は不要な電流の流出を抑えようとしているだけです。
LucasMcGraw

@ n.tacoいくつかの追加データが役立ちます。あなたの最大バッテリー電圧は何ですか?あなたのVcc電圧は何ですか?uCにはどのように電力が供給されますか(リニアレギュレーター、スイッチモード、またはバッテリーから直接)?
Nick Alexeev

電池の供給源は4 Dセルでしょう。電圧レギュレータはMaxim MAX667(リニア電圧レギュレータ)で、すべてのデバイスに電力を供給します(レギュレータ以外のデバイスはバッテリ電圧を認識しません)。Vccは5Vです。
LucasMcGraw、

@ n.tacoところで、回路図にコンポーネント指定子を記述します。「右から3番目の下のBJT」よりも「Q23」の方がはるかに簡単です。これを読んでください。EE.SE に関するこれらのガイドラインに従わない場合、高血圧のリスクが大幅に高まります。公正警告。
Nick Alexeev

回答:


5

新しい答え

あなたのアプローチはうまくいくことができます。しかし、2つ目の回路図にはバグがあると思います。ADCは常にトランジスタのVを認識します。これは常に0.7V程度です。

ベースとADCの間に抵抗R39があるため、この変動ではこの問題は発生しません。

ここに画像の説明を入力してください

答えではなかった古い答え

バッテリーを節約するために、トランジスターでディバイダーを切り替えることができます。ただし、ハイサイドスイッチである必要があります。グランドで切り替えると、A / Dピンにバッテリー電圧が現れ、入力を損傷する可能性があります。

(元々、回路図はこのスレッドに投稿されていました。)


このアイデアは、スイッチがトランジスタをオンにするという制約とどのように連携しますか?
LucasMcGraw

1
divider On/Offトランジスタを制御するデジタル信号を手動スイッチに置き換えます。どのようにそのことについて?
Nick Alexeev

1.どのスイッチが押されているかを識別するためにこれを拡張する方法を理解するのに苦労しています。N個のスイッチの場合、N個のトランジスタと抵抗を抵抗器で分圧する必要はありませんか?2. Vcc <= ADCの最大電圧の場合、グランドを切り替えることができますか?その場合、ADCの電圧は5Vから始まりますが、分圧された電圧まで低下します。
LucasMcGraw

@NickAlexeevバグを見つけました。指摘してくれてありがとう。また、これが1つのトランジスタで実現できることも知りませんでした。これは素晴らしく見える、私は今週末それを試すつもりです。
LucasMcGraw

3

抵抗ストリングを切り離すのにトランジスタは必要ありません。MCU出力ピンに接続するだけで済みます。ストリングのもう一方の端と同じ値に設定すると、ゼロに近い電流が使用されます。私はこのアプローチを使用しましたが、うまく機能します。

(図では、トランジスタに独自のグラウンドを与え、MCUピンを抵抗ストリングの下部に接続します)。


2番目の図と最初の図のどちらを参照していますか?
LucasMcGraw

また、両方のピンがHIGHの場合、分圧器で電圧降下はありますか?
LucasMcGraw

最初の図(投稿を直接含むように編集しました)。両端が高い場合、分圧器に沿ったすべてのポイントの電圧は高くなり、電流は流れません。
pjc50

2

ゼロ電流を使用するスイッチで分圧回路を設計することは可能ですか?

これでうまくいくはずで、グランドスイッチングは必要ありません。スイッチが閉じているときにのみディバイダーがバッテリーに接続され、すべてのスイッチが開いているときにADC入力がグランドに引き下げられます。

5V Vccの場合、ADC入力は次のとおりです。

  • 5.0V = SW1が閉じている
  • 3.3V = SW2が閉じている
  • 1.7V = SW3が閉じている
  • 0V =すべてのスイッチが開いている

もちろん、抵抗値はお好みに合わせて調整できます。

ここに画像の説明を入力してください


高品質のスイッチを使用している場合は、このアプローチが有効です。PCボードでカーボンドームを使用している場合は、軽く押すボタンの抵抗が1K未満、100Kを超える、またはその間のどこかにある可能性があり、そのような抵抗が適度に留まっているように見えることがあります1秒のかなりの部分の間安定しています。システムがライトボタンの押しを無視することは一般的に問題ありませんが、1つのボタンを軽く押して完全に異なるボタンとして解釈されるのは、一般的に煩わしいことです。
スーパーキャット2012年

同意する; この回路では、スイッチが適切な近似の代わりに感圧抵抗器を使用し、オフのときにオープン、オンのときにショートの場合、この回路では予期しない結果が生じます。
Alfred Centauri

多くのアプリケーションでは、カーボンドーム接点は、感圧抵抗器として動作しますが、スイッチとして使用できます(ただし、ハードウェアまたはセミハードウェアのヒステリシスを追加すると効果的です)。私は、読者がこれがこれらのアプリケーションの1つではないことを知っていることを確認したかっただけです。
スーパーキャット2012年

確かにそして悲しいことに、それ作られなければならない区別です。何かが「スイッチ」と呼ばれているからといって、それが必ずしも理想的なスイッチの良い近似であることを意味するわけではありません。
アルフレッドケンタウリ

1

スイッチングしきい値が適度に一貫している2つのI / Oピンがある場合、接地されたキャップを小さな抵抗を介して各プロセッサピンに配線し、1つのキャップを抵抗ストリングの両端に接続し、各スイッチでストリングのタップをVDDに接続できます。またはアース(どちらか便利な方。この説明ではVDDを想定します)。どちらかの端と最初のスイッチの間に大きな抵抗があります。スイッチが押されていないときは、キャップを放電するのに十分な長さで両方のピンを接地してください。次に、一方をフロートさせ、もう一方をVDDに設定します。フローティングピンが状態を変更するのにかかる時間。入力のしきい値が異なる場合は、他の入力に対してテストを繰り返します。次に、両方のピンを接地してからフロートさせます。これがアイドル状態です。

ピンの状態が変化したことが確認されたら、両方のピンを十分に長く接地してキャップを放電し、フロートさせます。各ピンの状態が変化するまでにかかる時間。この時間と上記で測定したベースラインの比率から、各ピンからVDDまでの抵抗がわかります。2つの測定値の合計が文字列の総抵抗にかなり近いことを確認してください(そうでない場合、ボタンが適切に接触していないため、読み取りに問題がある可能性があります)。

入力がレールから浮いているときにプロセッサーが過剰な電流を引き込む可能性がある場合は、ボタンが押されていなくても、定期的にキャップを放電することをお勧めします。これが行われると、システムの静止電流はかなり最小限になります。


面白いアイデア。コンデンサは継続的に電流を引き出しませんか?
LucasMcGraw

1
@ n.taco:キャップの電圧を一定量増やすには、電圧の変化(ボルト単位)に静電容量(ファラッド単位)を掛けた値に等しい電荷量(クーロン単位)を追加する必要があります。電圧を下げるには、電荷を取り除く必要があります。1アンペアは、1秒あたり1クーロンを表します。コンデンサを充電して一定の周期でその電荷をグランドに放出するには、サイクルあたりの電荷に周波数を掛けたものに等しい電流量が必要です。ただし、コンデンサがそのほとんどの時間を一定の電圧のままにしておくと、その間、コンデンサは本質的にゼロ電流を使用します。
スーパーキャット
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.