将ADS1115与Raspberry Pi一起使用

Using the ADS1115 with the Raspberry Pi

这 ADS1115 是一个 16位类似物到数字转换器(ADC) 这使覆盆子Pi可以阅读 模拟信号 来自传感器,电位计和其他模拟设备。本指南将带您设置 ADS1115 ADC模块 使用Raspberry Pi使用Python读取模拟传感器数据。


你需要什么

  1. 覆盆子pi (任何具有I2C支持的模型,例如PI 3,PI 4)
  2. ADS1115 ADC模块
  3. 模拟传感器(例如电位计,温度传感器,土壤水分传感器等)
  4. 面包板和跳线电线
  5. 安装了Python 在覆盆子pi上

步骤1:了解ADS1115

Raspberry Pi缺少模拟输入引脚,所以 ADS1115 用于转换 模拟信号对数字。 ADS1115提供:

  • 4个模拟输入通道(A0,A1,A2,A3)
  • 高精度的16位分辨率
  • I2C通信接口
  • 可调节灵敏度的可编程增益放大器(PGA)

步骤2:将ADS1115接线到Raspberry Pi

ADS1115通过I2C通信,因此我们将其连接到Raspberry Pi的I2C引脚。

连接

ADS1115针 覆盆子Pi Pin
VCC 3.3V(引脚1)或5V(引脚2)
gnd 地面(引脚6)
SDA SDA(引脚3,GPIO2)
SCL SCL(引脚5,GPIO3)
A0-A3(模拟输入) 连接到传感器输出

步骤3:在Raspberry Pi上启用I2C

  1. 打开Raspberry Pi配置工具:
    sudo raspi-config
    
  2. 导航到 接口选项> I2C 并启用它。
  3. 重新启动覆盆子Pi:
    sudo reboot
    
  4. 验证 检测到ADS1115 在I2C公共汽车上:
    sudo i2cdetect -y 1
    
    ADS1115应在地址出现 0x48.

步骤4:安装所需库

  1. 更新您的Raspberry Pi的包装列表:
    sudo apt update && sudo apt upgrade -y
    
  2. 安装所需的 I2C工具 和Python图书馆:
    sudo apt install -y python3-smbus python3-pip
    pip3 install adafruit-circuitpython-ads1x15
    

步骤5:读取ADS1115的模拟数据

Python代码读取ADS1115的传感器数据

import time
import board
import busio
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn

# Initialize I2C and ADS1115 ADC
i2c = busio.I2C(board.SCL, board.SDA)
ads = ADS.ADS1115(i2c)

# Select Analog Input Channel (A0)
channel = AnalogIn(ads, ADS.P0)

try:
    while True:
        print(f"Raw Value: {channel.value}, Voltage: {channel.voltage:.2f}V")
        time.sleep(1)
except KeyboardInterrupt:
    print("Exiting...")

步骤6:ADS1115与Raspberry Pi的应用

  1. 读取模拟传感器 - 温度,光,湿度或气体传感器。
  2. 电池电压监视 - 通过高分辨率安全测量电压。
  3. 土壤水分监测 - 用于 智能灌溉系统.
  4. 电位计读数 - 用作 用户输入控制器 用于项目。

故障排除

  1. ADS1115未检测到(i2cdetect 不显示 0x48)

    • 确保 SDA/SCL引脚 正确连接。
    • 验证这一点 I2C已启用 使用 sudo raspi-config.
  2. 不准确的读数

    • 使用 PGA设置 在Python代码中以调整电压范围。
    • 确保a 稳定的电源 到ADS1115模块。
  3. 多个ADS1115模块

    • 修改 I2C地址 使用 ADDR引脚 避免冲突。

结论

ADS1115 ADC模块 使覆盆子Pi能够 阅读模拟传感器数据 高精度。无论您是建造 环境监控,电池感应或物联网应用,本指南提供了一种简单的集成方式 模拟输入您的项目! 🚀

发表评论

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.