Как подключить датчик нагрузки через INA128: пошаговый практический гид

Как подключить датчик нагрузки через INA128: пошаговый практический гид

Ты купил датчик нагрузки (тензодатчик), подключил его к ардуине — а сигнал почти нулевой. Или шумит, как радио на старой батарейке. Не переживай: это не твоя вина. Просто ты не подключил усилитель. И если ты хочешь измерять вес с точностью до грамма — без дифференциального усилителя INA128 тебе не обойтись.

Я не буду рассказывать, что такое тензометрический мост или коэффициент усиления. Я покажу, как сделать так, чтобы твой датчик заработал — и работал стабильно. Без лишней теории. Только то, что нужно, чтобы собрать устройство и не тратить недели на эксперименты.

Почему именно INA128?

Датчики нагрузки выдают сигнал в диапазоне от 1 до 30 мВ при полной нагрузке. Ардуина или STM32 читают напряжение от 0 до 5 В. То есть тебе нужно усилить сигнал в 100–500 раз. Но не просто усилить — нужно усилить дифференциально.

Почему именно дифференциально? Потому что тензодатчик — это мост Уитстона. Он выдаёт разность напряжений между двумя выходами. А шум, помехи, колебания питания — одинаковы на обоих проводах. Если ты подключишь один вывод к обычному усилителю, ты усилешь и сигнал, и весь этот шум. А INA128 — он отфильтровывает общий шум. Он «видит» только разницу между двумя проводами. Это как слушать разговор в шумном кафе: ты фокусируешься на голосе друга, а не на криках за соседним столом.

INA128 — это не самый дешёвый, но самый надёжный вариант для датчиков нагрузки. Он:

  • имеет очень низкий дрейф нуля — важен для точности;
  • работает от однополярного питания (3–12 В) — подходит для Arduino и Raspberry Pi;
  • не требует внешних резисторов для базового усиления — всё встроено;
  • позволяет точно настроить коэффициент усиления одним резистором.

Если ты хочешь собрать весы для кухни, лабораторные весы или систему контроля нагрузки на прессе — INA128 твой лучший выбор. Не ищи «более современные» чипы. Они могут быть точнее, но сложнее в настройке. А тебе нужно — просто и надёжно.

Как подключить INA128 к датчику нагрузки: пошагово

Предположим, у тебя 4-проводной датчик нагрузки (обычный тип, как в кухонных весах): красный — питание, чёрный — земля, зелёный — сигнал +, белый — сигнал -.

Вот как подключить его к INA128:

  1. Питание INA128: подключи V+ к 5 В (от Arduino или стабилизатора), V- — к GND. Не используй напряжение выше 12 В — чип перегреется.
  2. Подключение датчика:
    • Красный (V+) → входы 1 и 2 INA128 (они внутри соединены)
    • Чёрный (GND) → входы 3 и 4 INA128 (они тоже соединены)
    • Зелёный (Signal +) → вход 5 (IN+)
    • Белый (Signal -) → вход 6 (IN-)
  3. Установка усиления: между выводами 1 и 8 впаяй резистор. Вот формула: Gain = 1 + (50 kΩ / Rg). Если хочешь усиление 1000 — выбери Rg = 50 Ω. Если 500 — 100 Ω. Начни с 100 Ω (усиление ~500) — это безопасно для большинства датчиков.
  4. Выход: сигнал с вывода 6 (OUT) иди к аналоговому входу Arduino (A0).
  5. Фильтр: между OUT и GND поставь конденсатор 0.1 мкФ — это сгладит высокочастотный шум.

Вот и всё. Никаких сложных схем. Никаких операционников в каскадах. Просто подключил — и готово.

Как выбрать резистор усиления: таблица для быстрого выбора

Желаемое усиление Значение Rg (Ом) Подходит для
100 500 Датчики с высоким выходом (например, 10 мВ/В), грубые измерения
250 200 Бытовые весы, точность ±10 г
500 100 Лабораторные весы, точность ±1 г
1000 50 Точные измерения, но требует стабильного питания и экранирования

Если ты не знаешь, какое усиление тебе нужно — начни с Rg = 100 Ом. Это безопасный выбор для большинства датчиков. Потом, если сигнал всё ещё слабый — уменьши Rg. Если шумит — увеличь.

Что выбрать: INA128, HX711 или другой усилитель?

Ты, наверное, слышал про HX711. Он тоже используется с датчиками нагрузки. Чем он отличается?

  • HX711 — это готовый модуль с встроенным усилителем и АЦП. Подключаешь его по SPI, читаешь цифровые значения. Просто, но не гибко. Он работает только с 2.6–5.5 В, не позволяет менять усиление вручную, и если он перегревается — начинает глючить. Хорош для «сделай и забей».
  • INA128 — аналоговый усилитель. Ты сам контролируешь усиление, фильтрацию, питание. Ты можешь подключить его к любой микросхеме: Arduino, STM32, Raspberry Pi. Точность выше, если ты сделаешь правильную схему. Но нужно собрать схему вручную.

Выбирай HX711, если:

  • ты хочешь собрать весы за час;
  • не хочешь разбираться в аналоговых схемах;
  • точность ±5 г — тебе достаточно.

Выбирай INA128, если:

  • ты хочешь точность ±0.1–0.5 г;
  • планируешь использовать датчик в промышленной системе;
  • нужна стабильность при температурных колебаниях;
  • ты хочешь понять, как это работает — не просто «взял и подключил».

Частые ошибки — и как их избежать

Я видел сотни таких схем. Вот что ломает систему чаще всего:

  1. Нет конденсаторов на питании. INA128 чувствителен к шуму на питании. Обязательно поставь 10 мкФ электролит + 0.1 мкФ керамики между V+ и GND рядом с чипом. Без этого — шум, дрейф, непредсказуемые значения.
  2. Плохой земляной контакт. Датчик, INA128 и микроконтроллер должны иметь одну общую землю. Если ты заземляешь Arduino от USB, а датчик — от отдельного блока питания — получишь дрейф напряжения. Лучше питать всё от одного стабилизатора.
  3. Использование длинных проводов. Провода от датчика к INA128 должны быть короткими (не более 10–15 см). Если длиннее — используй экранированный кабель, заземлив экран только с одной стороны (у усилителя).
  4. Неправильный Rg. Слишком маленький резистор — усилитель насыщается, выход «залипает» на 5 В. Слишком большой — сигнал слишком слабый. Если выход стабильно 5 В — уменьши усиление.
  5. Игнорирование калибровки. Даже идеально собранная схема даст ошибку, если не откалибрована. Обязательно делай калибровку: взвесь датчик без нагрузки — запомни значение. Потом добавь известный груз (например, 1 кг) — запомни новое значение. Рассчитай коэффициент: кг = (значение - ноль) / (значение_с_грузом - значение_без_груза).

Как лучше сделать: 3 сценария

Вот как действовать в разных ситуациях:

Сценарий 1: Ты делаешь весы для кухни (точность ±5 г)

Используй INA128 с Rg = 100 Ом. Питание — 5 В от USB. Конденсаторы 10 мкФ и 0.1 мкФ. Провода от датчика — не длиннее 10 см. Калибруй на 1 кг гире. Вывод — на A0 Arduino. Программа: считай среднее за 100 измерений, отними ноль. Готово. Собираешь за 2 часа.

Сценарий 2: Ты создаёшь систему контроля нагрузки на прессе (точность ±0.1 г, температура меняется)

Используй INA128 с Rg = 50 Ом. Питание — от стабилизированного источника 12 В (например, LM7812). Добавь термодатчик (DS18B20) и компенсируй дрейф в коде. Используй экранированный кабель от датчика. Подключи к STM32 с 16-битным АЦП. Калибруй ежедневно. Собираешь за 3 дня, но результат — промышленный.

Сценарий 3: Ты экспериментируешь с несколькими датчиками

Не используй один INA128 для нескольких датчиков — они будут мешать друг другу. Лучше взять 4 INA128 и подключить их параллельно к одному микроконтроллеру. Или — если хочешь дешевле — используй HX711 для каждого датчика. Но помни: HX711 не умеет работать с разными коэффициентами усиления. Если датчики разного типа — INA128 единственный вариант.

Что делать, если сигнал всё ещё нестабильный?

Если после сборки ты видишь:

  • Постоянный дрейф — проверь питание и землю. Убедись, что нет помех от двигателей, светодиодов, реле.
  • Скачки на 10–20 единиц — добавь цифровой фильтр: скользящее среднее за 50–100 измерений. Или медианный фильтр.
  • Выход всегда 0 или 5 В — уменьши усиление (увеличь Rg). Возможно, ты перегрузил усилитель.
  • Шум, как «шум радио» — проверь, нет ли проводов рядом с моторами, трансформаторами, светодиодными лентами. Перенеси схему подальше.

Если всё сделано правильно — сигнал будет плавным. Даже если ты не видишь изменений на глаз — в цифрах он стабилен. Проверь это: взвесь датчик, подожди 5 минут — значение не должно меняться больше чем на ±1 единицу.

Что делать дальше?

Собери схему. Не жди идеальных условий. Начни с Rg = 100 Ом, питание 5 В, конденсаторы на месте. Подключи к Arduino. Загрузи простой скетч, который выводит значения на монитор порта. Взвесь что-нибудь известное — бутылку воды, гирю. Посмотри, как изменяется показание.

Если значение меняется плавно — ты всё сделал правильно. Если нет — проверь подключение датчика. Часто люди путают провода: зелёный и белый — не «плюс» и «минус» в обычном смысле. Это дифференциальный сигнал. Если ты перепутал — вместо роста при нагрузке ты увидишь падение. Просто поменяй местами зелёный и белый — и всё заработает.

Не трать время на поиск «идеального» усилителя. INA128 — это проверенный инструмент. Он не самый быстрый, не самый дешёвый, но он работает. И если ты хочешь надёжность, точность и понимание, что происходит внутри — это твой выбор.

Собери. Проверь. Откалибруй. И не бойся экспериментировать. Главное — не уходить от простоты. Чем проще схема — тем меньше шансов, что она сломается.

Информация в этой статье носит ознакомительный характер. При проектировании устройств, связанных с измерением веса или нагрузки, особенно в промышленных, медицинских или безопасностных системах, обязательно проконсультируйтесь с инженером или специалистом по измерительным системам.

Radio-Blog.ru