分圧回路を使った電圧計を作る機会が多いため、
新しく作る時にスムーズに作ることができるよう、備忘録としてまとめておきます。
分圧回路の仕組み
VCCの電圧は、図の抵抗R1・R2の比率でVOUTに出力されるようになっています。
最大電圧がおおよそ分かっている場合、あとは取り出したい電圧の範囲になるよう、
抵抗値を計算して制作することができます。
抵抗値の計算
以下のサイトで計算できます。
抵抗計算ツール
今回は例として、最大電圧22VになるVINを、0〜3.3Vになるよう変換します。
以下のような結果になります。
R1が6.8kΩ、R2が1.2kΩという結果になりました。
これらの抵抗を準備して、制作していきます。
回路の実装
材料を準備して、電圧計を制作します。
- 抵抗
- 6.8kΩ
- 1.2kΩ
- ターミナルブロック
- ユニバーサル基板
- ピンヘッダ、もしくはピンソケット(1×3ピン)
プログラミング
VOUTの値をアナログ入力で受け取ります。
Arduinoマイコンを使用します。
voltage_divider.ino
void setup()
{
Serial.begin(115200UL);
}
void loop()
{
float value = analogRead(A0);
value *= 3.3; // 取り出したい電圧の最大値
value /= 1024; // アナログ入力の分解能(10ビット)
value /= 1.2; // R2の値
value *= 8; // R1+R2の値(6.8+1.2 = 8)
Serial.print("Voltage is:")
Serial.println(value);
delay(1000);
}
配線・動作
Arduino | 分圧回路 | 電池 |
---|---|---|
- | ターミナルブロックの +(プラス)穴 |
+(プラス) |
- | ターミナルブロックの -(マイナス)穴 |
-(マイナス) |
A0 | VOUT | - |
GND | GND | - |
表のように配線し、プログラムを実行します。 | ||
シリアルモニタを確認すると、以下のように1秒毎に電圧が表示されるようになります。 |
まとめ
写真で載せた通り、かなり小さくまとめることができました。
今後作ることになった時にも、スムーズに作ることができるよう心がけたいです。