Raspberry PiとADC、およびADS1115の理解
Raspberry Piには、アナログ-デジタル変換器(ADC)が内蔵されていません。
つまり、アナログセンサーを直接読み取ることができないということです。以下のようなデバイスは、単体ではPiに接続できません。
- 可変抵抗器
- 光センサー
- ガスセンサー
- 土壌水分センサー
このギャップを埋めるには、外部ADCが必要です。ADS1115は高精度な16ビットADCです。I2Cプロトコルを介してRaspberry Piに接続します。
ADCの仕組み: ADCは変化する電圧をデジタル数値に変換します。以下の3つのステップで行われます。
- サンプリング:ADCが特定のタイミングで電圧をキャプチャします。
- 量子化:ADCが電圧範囲を離散的なレベルに分割します。
- エンコード:ADCがそのレベルをバイナリ(2進数)に変換します。
解像度は重要です。解像度が高いほど、精度が向上します。
- 8ビットは256レベルを提供します。
- 12ビットは4,096レベルを提供します。
- 16ビット(ADS1115など)は65,536レベルを提供します。
なぜADS1115を使用するのか?
- 高精度を実現する16ビット解像度。
- 4つのアナログ入力チャンネル。
- 微小信号を増幅するためのプログラマブル・ゲイン・アンプ(PGA)。
- 2つの電圧間の差を求める差動測定。
接続方法:
- VDDを3.3Vへ
- GNDをGNDへ
- SDAをGPIO2へ
- SCLをGPIO3へ
セットアップ手順:
- raspi-configでI2Cを有効にします。
- デバイスを確認するためにi2c-toolsをインストールします。
- i2cdetect -y 1を実行します。アドレス0x48が表示されるはずです。
- pipを使用してAdafruit ADS1x15ライブラリをインストールします。
このモジュールは、スマート農業、バッテリー管理、産業オートメーションなどに活用できます。物理的なセンサーデータを、コードで使用可能なデジタル情報に変換します。
Source: https://dev.to/kenryikegbo/understanding-adcs-and-using-the-ads1115-with-raspberry-pi-40m6
Optional learning community: https://t.me/GyaanSetuAi