Arduinoと分圧回路の簡単な知識で、Arduinoをデジタル電圧計に変えることができ、Arduinoと16x2LCDディスプレイを使用して入力電圧を測定することができます。
Arduinoには、Arduino内のアナログ-デジタルコンバーター(ADC)に接続するいくつかのアナログ入力ピンがあります。Arduino ADCは10ビットコンバーターであり、出力値の範囲は 0〜1023です。analogRead() 関数を使用してこの値を取得します。基準電圧がわかっている場合は、アナログ入力に存在する電圧を簡単に計算できます。分圧回路を使用して入力電圧を計算できます。ArduinoのADCについて詳しくは、こちらをご覧ください。
測定された電圧は、16x2液晶ディスプレイ(LCD)に表示されます。また、Arduino IDEのシリアルモニターに電圧を表示し、マルチメーターを使用して測定された電圧を確認しました。
必要なハードウェア:
- Arduino uno
- 16x2 LCD(液晶ディスプレイ)
- 100kオームの抵抗器
- 10kオームの抵抗器
- 10kオームポテンショメータ
- ブレッドボード
- ジャンパー線
分圧回路:
このArduino電圧計回路に入る前に、分圧器回路について説明しましょう。
分圧器は抵抗回路であり、図に示されています。この抵抗ネットワークには、2つの抵抗があります。図に示すように、R1とR2は10kと100kオームです。分岐の中点は、Arduinoへのアナログ入力として測定されます。R2の両端の電圧降下はVoutと呼ばれ、これが回路の分圧電圧です。
式:
既知の値(2つの抵抗値R1、R2、および入力電圧)を使用して、次の式に代入して出力電圧を計算できます。
Vout = Vin(R2 / R1 + R2)
この式は、出力電圧が入力電圧とR1とR2の比率に正比例することを示しています。
この式をArduinoコードに適用することにより、入力電圧を簡単に導き出すことができます。Arduinoは+ 55vのDC入力電圧しか測定できません。つまり、55Vを測定する場合、Arduinoアナログピンは最大電圧5Vになるため、この制限内で安全に測定できます。ここで、抵抗R2とR1の値は100000と10000に、つまり100:10の比率で設定されています。
回路図と接続:
このArduinoデジタル電圧計の接続 は簡単で、以下の回路図に示されています。
LCDのピンDB4、DB5、DB6、DB7、RS、およびENは、Arduino UnoのピンD4、D5、D6、D7、D8、D9に直接接続されています。
分圧回路を構成する2つの抵抗R1とR2の中心点は、ArduinoのピンA0に接続されています。他の2つの端は入力電圧(測定される電圧)とgndに接続されています。
コーディングの説明:
DC電圧を測定するための完全なArduinoコードは、以下のコード部分に記載されています。コードはシンプルで簡単に理解できます。
コードの主要部分は、上記の式Vout = Vin(R2 / R1 + R2)を使用して、指定された入力電圧を表示された出力電圧に変換およびマッピングすることです。前述のように、Arduino ADCの出力値は0〜1023の範囲であり、Arduinoの最大出力電圧は5vであるため、実際の電圧を取得するには、A0〜5 / 1024のアナログ入力を乗算する必要があります。
void loop(){int Analogvalue = AnalogRead(A0); temp =(analogvalue * 5.0)/ 1024.0; //電圧を変換するために使用される式input_volt = temp /(r2 /(r1 + r2));
ここでは、ArduinoのLCDとシリアルモニターに測定された電圧値を表示しました。したがって、ここでのコードでは、 Serial.println を使用してシリアルモニターに値を印刷し、 lcd.print を使用して16x2LCDに値を印刷します。
Serial.print( "v ="); //電圧値をシリアルモニターに出力しますSerial.println(input_volt); lcd.setCursor(0、1); lcd.print( "Voltage ="); // LCDディスプレイに電圧値を出力しますlcd.print(input_voltage);
これが、Arduinoを使用してDC電圧を簡単に計算する方法です。デモについては、以下のビデオを確認してください。Arduinoを使用してAC電圧を計算するのは少し難しいので、ここで同じことを確認できます。