ADS1115 je jedním z nejpoužívanějších analogově digitálních převodníků (ADC) výrobci a nadšenci do elektroniky díky své všestrannosti a přesnosti. Toto 16bitové zařízení se snadno připojí k platformám, jako je Arduino nebo Raspberry Pi díky rozhraní I2C. ADS1115 má schopnost měřit až 4 analogové nebo 2 diferenciální vstupy a nabízí vyšší rozlišení než to, které je vestavěno do mnoha mikrokontrolérů.
Díky svému programovatelnému zesílení a schopnosti měřit pozitivní i negativní signály se stal nezbytným nástrojem pro ty projekty, které vyžadují větší přesnost, než jaké mohou nabídnout interní ADC, jako jsou vysoce přesné senzory nebo měření nízkého napětí.
Co je ADS1115?
ADS1115 je analogový digitální převodník (ADC), který převádí analogové signály na digitální data zpracovatelná platformami, jako je např. Arduino o ESP8266. Toto zařízení vyniká svým 16bitovým rozlišením, díky kterému je mnohem přesnější než interní ADC mikrokontrolérů, jako je např. Arduino Uno, který nabízí pouze 10 bitů.
Jednou z nejužitečnějších funkcí ADS1115 je jeho schopnost provádět měření jednoduchých (jednostranných) i diferenciálních signálů. V režimu single-ended můžete připojit až čtyři nezávislé signály, zatímco v diferenciálním režimu můžete připojit dva páry signálů, což umožňuje měření záporných signálů.
Technické vlastnosti ADS1115
ADS1115 obsahuje několik pokročilých funkcí, které z něj dělají vynikající volbu pro projekty, kde je potřeba analogová měření s vysokým rozlišením:
- 16bitové rozlišení: To znamená, že může měřit až 65,536 10 různých úrovní signálu. Díky tomu je mnohem přesnější než XNUMXbitové ADC zabudované do většiny mikrokontrolérů.
- I2C rozhraní: Umožňuje zařízení snadno komunikovat s mikrokontroléry. Navíc je možné připojit až čtyři ADS1115 na jednu sběrnici díky jeho ADDR konfigurovatelnému adresnímu pinu.
- Režimy měření: Zařízení nabízí jak jednostranná (4 nezávislé kanály), tak diferenciální (2 kanály) měření. V diferenciálním režimu je redukován šum a lze měřit záporné signály.
- Programovatelné PGA: El zesilovač s programovatelným ziskem (PGA) Nastavuje zisk v rozsahu od ±6.144V do ±0.256V, což umožňuje větší přesnost při měření nízkých napětí. Je třeba poznamenat, že ačkoli PGA umožňuje manipulaci až do ±6.144V, nelze naměřit více, než je napájecí napětí zařízení (ve většině případů 5V).
- Napěťový komparátor: ADS1115 obsahuje programovatelný komparátor, který může generovat výstrahu prostřednictvím kolíku ALERT, když signál překročí softwarově definovanou prahovou hodnotu.
Provozní režimy
ADS1115 má dva hlavní režimy provozu, které lze upravit podle potřeb projektu:
- Průběžná konverze: V tomto režimu zařízení pokračuje v neustálém přijímání dat, což je ideální pro aplikace nepřetržitého monitorování.
- Režim jednoho snímku: Zařízení provede měření a poté přejde do režimu nízké spotřeby, dokud nebude vyzváno k dalšímu měření. To je užitečné, když chcete minimalizovat spotřebu energie u projektů napájených bateriemi.
Režim programovatelného zisku (PGA).
ADS1115 má a zesilovač s programovatelným ziskem (PGA), který umožňuje upravit jeho rozsah měření. To je užitečné zejména při práci s nízkonapěťovými signály, protože můžete signál zesílit, abyste plně využili rozlišení ADC. Podporované rozsahy jsou od ±6.144V do ±0.256V, což nabízí flexibilitu v široké řadě aplikací. Však, Je bezpodmínečně nutné nepřekračovat napájecí napětí zařízení, což je obvykle 5V, protože byste mohli poškodit převodník.
Aplikace ADS1115
- Měření senzoru: Když potřebujete číst přesná data z analogových senzorů, jako jsou senzory teploty, světla nebo pH, stává se ADS1115 klíčovým nástrojem.
- Výzkumné projekty: V některých projektech, kde je třeba měřit jemné změny při malých napětích, poskytuje 16bitové rozlišení ADS1115 potřebnou přesnost.
- Monitorování baterie: Díky své schopnosti měřit rozdílové signály a vnitřnímu komparátoru lze ADS1115 použít také k vytvoření systémů monitorování baterií, kde může být generováno upozornění, když napětí klesne pod kritickou úroveň.
Spojení s Arduino
Připojení ADS1115 k desce Arduino je velmi jednoduché díky rozhraní I2C. Potřebujete pouze připojit SDA a SCL piny ADC k odpovídajícím na Arduinu, navíc k napájení zařízení 5V.
Níže vám ukážeme základní schéma zapojení:
VCC (ADS1115) -> 5V (Arduino)
GND (ADS1115) -> GND (Arduino)
SCL (ADS1115) -> SCL (Arduino)
SDA (ADS1115) -> SDA (Arduino)
Pro výběr I2C adresy ADC je nutné připojit pin ADDR ke GND, VDD, SDA nebo SCL, čímž získáte adresy 0x48, 0x49, 0x4A nebo 0x4B. V závislosti na tom, kolik ADS1115 chcete ve svém projektu použít, se tato možnost stává velmi užitečnou.
Použití knihovny Adafruit pro ADS1115
Pro zjednodušení použití ADS1115 s Arduinem lze nainstalovat knihovnu Adafruit. Tato knihovna poskytuje velmi jasné příklady, které vám pomohou začít. Níže je uveden základní příklad čtení čtyř kanálů v režimu s jedním koncem:
#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 * 0.1875);
Serial.print("AIN1: "); Serial.println(adc1 * 0.1875);
Serial.print("AIN2: "); Serial.println(adc2 * 0.1875);
Serial.print("AIN3: "); Serial.println(adc3 * 0.1875);
delay(1000);
}
Tento kód čte čtyři analogové kanály a převádí je na napětí pomocí odpovídajícího násobiče podle zesílení, které jsme vložili do ADC.
Diferenciální režim
Diferenciální režim ADS1115 je velmi užitečný pro měření záporných napětí nebo minimalizaci šumu. Toto je základní příklad provedení rozdílového čtení mezi kolíky A0 a A1:
#include <Wire.h>
#include <Adafruit_ADS1015.h>
Adafruit_ADS1115 ads;
void setup(void) {
Serial.begin(9600);
ads.begin();
}
void loop(void) {
int16_t results;
results = ads.readADC_Differential_0_1();
Serial.print("Diferencial: "); Serial.println(results * 0.1875);
delay(1000);
}
Pomocí tohoto alternativního režimu čtení můžete měřit rozdíl napětí mezi dvěma vstupy, což je ideální pro aplikace, kde může být problémem šum.
Závěrečné úvahy
ADS1115 nejenže poskytuje výjimečnou přesnost pro ADC tohoto typu, ale také se extrémně snadno používá. Jeho rozhraní I2C a schopnost měřit jednotlivé i rozdílové signály z něj činí cennou součást pro jakýkoli elektronický projekt, ať už měříte snímače s nízkým napětím nebo potřebujete větší přesnost, než poskytuje typický mikrokontrolér. Kromě, jeho vestavěný komparátor přidává další vrstvu obslužnosti tím, že umožňuje vytváření alarmů při překročení určitých prahových hodnot, takže je ideální pro monitorovací aplikace. Pokud hledáte přesnost a funkčnost ve svých analogových měřeních, ADS1115 je vysoce doporučená volba.