De ADS1115 is een 16-bit precisie analoog-naar-digitale converter (ADC) met een I2C-interface. Het biedt een hoge nauwkeurigheid en meerdere invoerkanalen, waardoor het ideaal is voor het lezen van sensoren, monitoringspanningen of het versterken van signalen in Arduino -projecten. Deze zelfstudie zal u begeleiden door de ADS1115 te verbinden en te gebruiken met Arduino.
Wat u nodig hebt
- ADS1115 ADC -module
- Arduino Board (bijv. UNO, Mega, Nano)
- Sensoren of analoge apparaten (bijv. Potentiometer)
- Breadboard en jumper draden
- Een computer met de Arduino Ide geïnstalleerd
Stap 1: Inzicht in de ADS1115 -module
De ADS1115 biedt:
- 16-bit ADC-resolutie (15-bit voor differentiële ingangen).
- 4 Input -kanalen (of 2 differentiële paren).
- Programmeerbare versterkingsversterker (PGA) voor signaalversterking.
ADS1115 PINOUT
Pin | Functie |
---|---|
VCC | Voeding (3.3V/5V) |
GND | Grond |
SDA | I2C -gegevenslijn |
SCL | I2c kloklijn |
Addr | I2C -adresconfiguratie |
-
ADDR PIN -configuratie:
- GND:
0x48
(Standaardadres) - VCC:
0x49
- SDA:
0x4A
- SCL:
0x4B
- GND:
Stap 2: de advertenties1115 bedraden aan Arduino
Sluit de advertenties1115 als volgt aan op de Arduino:
ADS1115 PIN | Arduino Pin |
---|---|
VCC | 5V |
GND | GND |
SDA | A4 (SDA) |
SCL | A5 (SCL) |
Opmerking: Voor andere Arduino -boards, zorg ervoor dat u de juiste I2C -pennen gebruikt.
Stap 3: Installeer de vereiste bibliotheek
Om de communicatie met de ADS1115 te vereenvoudigen, installeert u de bibliotheek Adafruit ADS1X15.
Stappen om te installeren:
- Open de Arduino Ide.
- Gaan naar Schetsen > Library innemen > Bibliotheken beheren.
- Zoek naar "Adafruit ADS1X15" en klik Installeren.
Stap 4: Upload de code
Hier is een voorbeeldschets om analoge invoer te lezen van de advertenties1115:
#include <Wire.h>
#include <Adafruit_ADS1X15.h>
Adafruit_ADS1115 ads; // Create an ADS1115 object
void setup() {
Serial.begin(9600);
while (!Serial);
Serial.println("Initializing ADS1115...");
if (!ads.begin()) {
Serial.println("Failed to detect ADS1115. Check connections.");
while (1);
}
Serial.println("ADS1115 initialized.");
}
void loop() {
int16_t adc0 = ads.readADC_SingleEnded(0); // Read channel 0
float voltage = adc0 * 0.1875 / 1000.0; // Convert to voltage (gain = 2/3)
Serial.print("ADC Value: ");
Serial.print(adc0);
Serial.print(" | Voltage: ");
Serial.print(voltage);
Serial.println(" V");
delay(500); // Wait for 500ms before the next reading
}
Stap 5: Test de installatie
- Sluit de Arduino via USB aan op uw computer.
- Open de Arduino IDE en selecteer de juiste Bord En Haven onder de Hulpmiddelen menu.
- Upload de code naar de Arduino door te klikken Uploaden.
- Open de seriële monitor (Hulpmiddelen > Serie -monitor) en stel het baudrates in op
9600
. - Varieer de ingangsspanning (bijvoorbeeld met behulp van een potentiometer) en observeer de ADC -waarde en spanningswaarden.
Optioneel: differentiaalmodus gebruiken
De ADS1115 kan ook het verschil meten tussen twee invoerpennen (bijv. A0 en A1):
int16_t diff = ads.readADC_Differential_0_1(); // Measure difference between A0 and A1
float voltage = diff * 0.1875 / 1000.0; // Convert to voltage
Serial.println(voltage);
Toepassingen van de ADS1115
- Zeer nauwkeurige sensorwaarden
- Spanningsbewaking en -meting
- Signaalversterking voor kleine sensoren
- Differentiaal signaalmeting
Problemen oplossen
- Geen reactie van de sensor: Controleer de I2C -verbindingen en zorg ervoor dat het juiste I2C -adres wordt gebruikt.
- Inconsistente lezingen: Controleer op een stabiele voeding en schone signaalingangen.
- Lage resolutie: Zorg ervoor dat u de juiste versterkingsinstelling gebruikt voor uw invoerbereik.
Conclusie
Je hebt de ADS1115 ADC met succes gekoppeld met Arduino. Met zijn hoge precisie en flexibiliteit is de ADS1115 een uitstekend hulpmiddel voor verschillende projecten die een nauwkeurige analoog naar digitale conversie vereisen. Experimenteer met zijn functies om geavanceerde meetsystemen en sensorinterfaces te bouwen!