Модуль 4-х аналоговых входов I2C на ADS1115 (Geekmatic)

Компактный и удобный модуль для подключения 4-х аналоговых сигналов к микроконтроллеру по шине I2C.Основан на высокоточной АЦП-микросхеме ADS1115 и отлично подходит для проектов автоматизации, IoT, PLC-логикина Arduino / ESP32 / ESP8266 / STM32.

Ключевые особенности

  • 4 аналоговых входа на ADS1115 (I2C АЦП)
  • Двойные винтовые клеммники на каждом из 4 каналов — надежное подключение проводов
  • Контакт ALERT (вывод компаратора/готовности/событий ADS1115) для быстрого реагирования без постоянного опроса
  • На нижней стороне платы:
    • 2 посадочных места под резисторы подтяжки I2C (SCL/SDA) — если в системе нет подтяжек
    • Джамперы выбора I2C-адреса (4 варианта)

Адреса I2C (выбор джамперами снизу платы)

  • 0x48
  • 0x49
  • 0x4A
  • 0x4B

Варианты исполнения (опции на выбор)

Доступно 3 опции модуля под разные типы входных сигналов:

  • 4 × 0–20 мА  (4-20мА) — входные делители/шунты: 120 Ом / 100 Ом
    Подходит для токовых датчиков и промышленных сигналов 0–20 мА.
  • 4 × 0–10 В — входные делители на SMD резисторах: 5.1K и 1.2K
    Для датчиков и контроллеров с напряжением до 10 В.
  • 4 × без шунтирующих резисторов
    Универсальный вариант: можно установить свои резисторы/делители под нужный диапазон.

Где пригодится

  • Считывание аналоговых датчиков в системах автоматики и IoT
  • Подключение промышленных сигналов 0–20 мА и 0–10 В
  • Расширение аналоговых входов при нехватке ADC на контроллере
  • Проекты с несколькими модулями на одной шине I2C (удобный выбор адреса)

Комплектация

  • Модуль 4-х аналоговых входов I2C на ADS1115 — 1 шт.
  • Опция исполнения выбирается при заказе (0–20 мА / 0–10 В / без шунтов)

Пример программы под диапазоны входного сигнала 0-10В

#include <Wire.h>
#include <Adafruit_ADS1015.h>

Adafruit_ADS1115 ads(ч;

// коэффициент делителя 5.1k / 1.2k
// Vin = Vadc * (R1 + R2) / R2
// (5100 + 1200) / 1200 = 5.25
#define DIVIDER_GAIN 5.25

// LSB для ADS1115 при PGA = ±2.048V (GAIN_TWO): 0.0625 mV/bit
#define LSB_MV_GAIN_TWO 0.0625

void setup()
{
  Serial.begin(115200);
  Wire.begin();

  if (!ads.begin(0x48))
  {
    Serial.println("ADS1115 not found!");
    while (1) {}
  }

  // диапазон ±2.048V
  ads.setGain(GAIN_TWO);

  Serial.println("ADS1115 0-10V ready (PGA=±2.048V)");
}

float readVoltage(uint8_t ch)
{
  int16_t raw = ads.readADC_SingleEnded(ch);

  // напряжение на входе ADS1115
  float v_adc = (raw * LSB_MV_GAIN_TWO) / 1000.0; // перевод mV -> V

  // восстановление реального входного напряжения
  float v_in = v_adc * DIVIDER_GAIN;

  return v_in;
}

void loop()
{
  float ch0 = readVoltage(0);
  float ch1 = readVoltage(1);
  float ch2 = readVoltage(2);
  float ch3 = readVoltage(3);

  Serial.println("------");
  Serial.printf("CH0: %.2f V\n", ch0);
  Serial.printf("CH1: %.2f V\n", ch1);
  Serial.printf("CH2: %.2f V\n", ch2);
  Serial.printf("CH3: %.2f V\n", ch3);

  delay(1000);
}

Пример программы под диапазоны входного сигнала 0-20мА

#include <Wire.h>
#include <Adafruit_ADS1X15.h>

Adafruit_ADS1115 ads(0x4A);

#define SHUNT_RESISTOR 220.0   // Ом (120Ω + 100Ω)

// LSB для ADS1115 при PGA = ±2.048V (GAIN_TWO): 0.0625 mV/bit
#define LSB_MV_GAIN_TWO 0.0625

void setup()
{
  Serial.begin(115200);
  Wire.begin();

  if (!ads.begin())
  {
    Serial.println("ADS1115 not found!");
    while (1);
  }

  // диапазон ±2.048V (увеличенная точность для 0–20мА)
  ads.setGain(GAIN_TWO);

  Serial.println("ADS1115 0-20mA ready (PGA=±2.048V)");
}

float readCurrent(uint8_t ch)
{
  int16_t raw = ads.readADC_SingleEnded(ch);

  // напряжение на шунте
  float v = (raw * LSB_MV_GAIN_TWO) / 1000.0; // Вольты

  // перевод в ток: I = V / R
  float current_mA = (v / SHUNT_RESISTOR) * 1000.0;

  return current_mA;
}

void loop()
{
  float ch0 = readCurrent(0);
  float ch1 = readCurrent(1);
  float ch2 = readCurrent(2);
  float ch3 = readCurrent(3);

  Serial.println("------");
  Serial.printf("CH0: %.2f mA\n", ch0);
  Serial.printf("CH1: %.2f mA\n", ch1);
  Serial.printf("CH2: %.2f mA\n", ch2);
  Serial.printf("CH3: %.2f mA\n", ch3);

  delay(1000);
}

Написать отзыв

Примечание: HTML разметка не поддерживается! Используйте обычный текст.
    Плохо           Хорошо

Модуль 4-х аналоговых входов I2C на ADS1115 (Geekmatic)

  • Модель G-AIN4-ADS1115
  • Код: ID-908
  • Наличие Есть в наличии
  • 203.34грн.


Доступные варианты


<< Проекты << Все товары >> Статьи, уроки >>

Рекомендуемые товары

АЦП ADS1115 4-х канальный

АЦП ADS1115 4-х канальный

АЦП ADS1115 4-х канальный ADS1115 — это 4-х канальный 16-разрядный аналого-цифровой преобразовате..

99.62грн.

АЦП ADS1115 обзор микросхемы

АЦП ADS1115 обзор микросхемы

Привет, друзья! У нас на обзоре очень полезная микросхема – ADS1115. Это 16-битный аналогово-цифрово..

0.00грн.