add wishlist add wishlist show wishlist add compare add compare show compare preloader
Article

ADS1115 16 bit 4 channel ADC with Programmable Gain Amplifier

What is ADS 1115?

It is a 16 bit ADC with PGA, which means that the device is an Analog to digital converter with a programmable gain amplifier, which basically means that the device is capable of boosting small signals. The device has a 16 bit resolution, meaning it is capable of detecting very small or minute changes in the voltage. It is perfectly suitable for applications where even minute changes in particular aspects (ultimately voltage ) are supposed to be detected and reported. For example in incubators and medicine production, where even the slightest change in temperature and humidity are to be detected, such converters are preferred as these are precision systems which require constant monitoring. The module works on an I2C bus and is very easy to use. This converter has 4 inputs, namely A0,A1,A2 and A3 and is useful for development boards or IC’s which have only one Analog input, for instance using this module with ESP8266 which has only one Analog input, we get 4 extra Analog inputs, to connect other devices to the same board. The module has 4 I2C addresses which can be accessed by connecting the address pin of the module to either the SCL, SDA, VCC or GND pins of the microprocessor/micro-controller based development kit.

 

ADS1115 16-Bit ADC – 4 Channel with Programmable Gain Amplifier is mostly used for microcontrollers project which needs an analog-to-digital converter or when you want a higher-precision ADC.

How to use the module?

Connections: 

• Connect the SDA and SCL pins of the OLED display and the ADS 1115 to the SDA and the SCL pins of the Arduino NANO.
• Connect the GND of the OLED display to the GND of the Arduino.
• Connect the VDD of the OLED display to the 5V pin of the Arduino (please make sure that the OLED display has an on-board regulator if connecting it to a 5V supply, if the OLED display does not have a regulator connect it to the 3.3V pin of the Arduino).
• Connect the GND of the ADS1115 module to the GND of the Arduino.
• Connect the VDD of the ADS1115 to the 5V pin of the Arduino.

• Connect the pins of the potentiometer to the 5V and the GND of the Arduino.
• Connect the middle pins of the potentiometer to A0, A1, A2 and A3 of the ADS 1115 module.
• We can regulate the potentiometer to get various voltages across the Analog pins, the output of which can be seen on the OLED display.
Connect the circuit using the above instructions and follow the schematic given above to easily use the ADS 1115 module.

(ii) Code:

 //=========================== //ADS1115 four
inputs example //===========================
#include <Wire.h>
#include <Adafruit_SSD1306.h>
#include <Adafruit_ADS1015.h>
Adafruit_ADS1115 ads; //OLED=================================================================== #define
SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET 4
Adafruit_SSD1306 display(SCREEN_WIDTH,
SCREEN_HEIGHT, &Wire, OLED_RESET); //=======================================================================
void setup(void)
{
Serial.begin(9600);
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C))
{
Serial.println(F("SSD1306 allocation failed"));
for (;;); // Don't proceed, loop forever
} display.clearDisplay();
analogReference(INTERNAL);
ads.begin(); } //=========================================
=============================
 void loop(void)
{ int16_t adc0, adc1, adc2, adc3;
float Vadc0, Vadc1, Vadc2, Vadc3;
adc0 = ads.readADC_SingleEnded(0);
adc1 = ads.readADC_SingleEnded(1);
adc2 = ads.readADC_SingleEnded(2);
adc3 = ads.readADC_SingleEnded(3);
display.setTextColor(WHITE);
 display.setTextSize(2);
display.clearDisplay();
display.setCursor(30,0);
display.print(adc0);
display.setCursor(30,15);
display.print(adc1);
display.setCursor(30,30);
display.print(adc2);
display.setCursor(30,45);
display.print(adc3);
display.display();
delay(1000);
}

According to the above code we will be able to see the voltage across the Analog pins on the OLED display and manipulate them with the help of a potentiometer.

Applications:

• Portable instrumentation
• Battery monitoring
• Current monitoring
• Temperature measurement systems
• Factory automation and process control

Leave a comment

Logo
Logo
Logo
Logo
Logo
Logo
Logo
Logo
Your Cart