ESP32とADS1115で電圧計測
ソーラー蓄電システムでバッテリー電圧を計測したく、ESP32の標準ADCを使用するも変動が大きい為、専用のADCモジュール(ADS1115)を購入しました。
ADS1115とは
ADS1115はI2C通信でA0~A3の4つのアナログ入力ができるモジュールで、±256mV~±6.144Vまでの入力に対応しています。値としては0~32766までの範囲で計測されます。
使用するもの・環境
ライブラリをインストール
Arduino IDEから「ツール」→「ライブラリを管理」→「ads」で検索し「Adafruit ADS1X15」をインストール。

ADS1115モジュールとの接続
ESP32 | ADS1115 |
5V | VDD |
GND | GND |
GPIO22 | SCL |
GPIO21 | SDA |
GND | ADDR |
ALRT(未接続) |
ESP32でADS1115を使用するサンプルプログラム
アナログ入力A0~A3までの入力値をシリアルに出力するコードです。
#include <Wire.h>
#include <Adafruit_ADS1015.h>
Adafruit_ADS1115 ads;
void setup(void)
{
Serial.begin(9600);
ads.begin();
}
void loop(void)
{
int16_t adc0, adc1, adc2, adc3;
adc0 = ads.readADC_SingleEnded(0);
adc1 = ads.readADC_SingleEnded(1);
adc2 = ads.readADC_SingleEnded(2);
adc3 = ads.readADC_SingleEnded(3);
Serial.print("AIN0: "); Serial.println(adc0);
Serial.print("AIN1: "); Serial.println(adc1);
Serial.print("AIN2: "); Serial.println(adc2);
Serial.print("AIN3: "); Serial.println(adc3);
Serial.println(" ");
delay(1000);
}


ディスカッション
コメント一覧
まだ、コメントがありません