Мир измерительных приборов, робототехники и систем взвешивания значительно развился за последние годы благодаря интеграции датчиков и электронных модулей, которые облегчают взаимодействие между физическим миром и микроконтроллерами. Одним из ключевых компонентов этой технологической революции является тензодатчик и его обычный спутник, модуль усилителя HX711. Оба стали практически незаменимыми элементами для тех, кто хочет построить точные цифровые весы, автоматизированные системы контроля веса и все типы проектов, где измерение сил и весов имеет важное значение.
Если когда-нибудь вы задавались Как можно преобразовать силу, приложенную к объекту, в электронное значение, которое может быть интерпретировано Arduino, ESP8266 или любым другим микроконтроллером?В этой статье вы найдете самое полное, простое и понятное объяснение. Вы подробно узнаете, что такое тензодатчик, как он работает, его типы, как подключить его к модулю HX711 и как вывести свои проекты по взвешиванию на новый уровень, интегрируя оборудование и программное обеспечение, как настоящий профессионал.
Что такое тензодатчик и почему он играет ключевую роль в электронном измерении веса?
Una тензодатчик По своей сути это преобразователь, преобразующий приложенную к нему силу или давление в электрический сигнал. Принцип действия основан на явлении изменения электрического сопротивления при деформации ячейки под действием нагрузки.. Вот почему их также называют преобразователи силы.
Термин «преобразователь» вам знаком, поскольку в электронике это компонент, способный преобразовывать физическую величину (такую как давление, звук или свет) в обрабатываемый сигнал. В этом случае тензодатчик обнаруживает силы: когда вы прикладываете к нему вес, он претерпевает крошечную деформацию, почти незаметную на первый взгляд, но достаточную для изменения электрического сопротивления тензодатчиков, которые он содержит.
Лас- тензодатчики Они являются сердцем тензодатчика. Это листы или нити чрезвычайно тонкого проводящего материала, которые изменяют свое сопротивление в зависимости от удлинения или сжатия, испытываемого материалом, к которому они прикреплены. Это изменение, хотя и небольшое, может быть обнаружено и усилено до тех пор, пока оно не станет сигналом напряжения, который, будучи должным образом оцифрован, информирует нас с помощью точность от приложенной силы.
Чтобы эффективно преобразовать это едва заметное изменение в полезный сигнал, датчики размещаются в конфигурации, называемой Мост УитстонаЭта схема, классическая в измерении сопротивления, позволяет усиливать небольшие различия в сопротивлении и получать дифференциальный сигнал. Таким образом, простое растяжение материала вызывает изменение натяжения, которое можно измерить и точно соотнести с приложенным весом.
Не все тензодатчики одинаковы. Существует несколько типов:
- Гидравлические ячейки: Основан на сжатии жидкости с помощью поршня и цилиндра.
- Пневматические ячейки: Они используют давление воздуха на диафрагму, измеряя возникающую деформацию.
- Ячейки тензодатчиков: Наиболее распространены в электронике и робототехнике из-за простоты интеграции и точности.
Хотя существуют и другие технологии (пьезоэлектрические, емкостные и т. д.), тензодатчики Они наиболее часто используются в бытовых весах и промышленных системах взвешивания из-за своей стоимости, надежности и простоты калибровки.
Внутреннее устройство: мост Уитстона и проблема слабых сигналов
Основным элементом, позволяющим использовать минимальное изменение сопротивления, создаваемое датчиками, является Мост УитстонаЭта схема, изобретенная в XIX веке, основана на балансе четырех резисторов, расположенных в форме ромба. Когда один или несколько из этих резисторов изменяются (как это происходит в тензодатчике при его деформации), мост становится несбалансированным и генерирует разность потенциалов, пропорциональную изменению.
На практике, Типичный тензодатчик содержит четыре тензодатчика, расположенных на ножках моста Уитстона.При приложении силы к ячейке два датчика растягиваются (увеличивая свое сопротивление), а два сжимаются (уменьшая его). Таким образом, мост максимизирует полученную разность потенциалов и повышает чувствительность.
Несмотря на эту умную конструкцию, изменения сопротивления остаются чрезвычайно маленький. Например, на манометре 120 Ом значительное давление может изменить сопротивление всего на 0.12 Ом. Это небольшое количество создает две проблемы: высокоточная электроника Чтобы различить эти изменения, сигнал, кроме того, должен быть усилен перед оцифровкой и обработкой микроконтроллером, который вряд ли может обнаружить такие слабые сигналы напрямую.
Именно здесь Усилитель HX711.
Модуль HX711: мост между тензодатчиком и микроконтроллером
El Модуль HX711 Это небольшая интегральная схема, которая выполняет основную функцию в цифровых системах взвешивания: усиливает, обуславливает и преобразует сигнал, полученный от тензодатчика, в цифровой, Таким образом, Можно получить точные измерения веса и силы для интерпретации с помощью Arduino, ESP8266, PIC или любого другого микроконтроллера..
Некоторые из его основных функций:
- Разрешение до 24 бит: позволяет получить очень высокая точность в показаниях веса.
- Аналого-цифровое преобразование (АЦП): преобразует усиленный аналоговый сигнал в цифровое значение, готовое к обработке.
- Программируемое усиление: можно регулировать в диапазоне от 128x до 64x, что позволяет адаптировать его к различным приложениям.
- Очень низкое потребление энергии: Идеально подходит для портативных приложений или систем с питанием от аккумуляторов.
- Гибкость подключения: Он взаимодействует через два цифровых контакта (Clock/SCK и Data/DT), аналогично протоколу I2C или SPI.
- Диапазон напряжения питания от 2.6 В до 5.5 В: совместим с различными электронными платформами.
Благодаря этим функциям HX711 стал Фактический стандарт для считывания показаний тензодатчиков в проектах DIY и в промышленном секторе, так как это значительно облегчает жизнь разработчикам: им не нужно проектировать сложные схемы усиления и они могут сосредоточиться на разработке программного обеспечения и логики системы взвешивания.
Модуль HX711 обычно имеет два основных разъема: один для тензодатчика и один для микроконтроллера. Соединение осуществляется на основе четырех основных кабелей:
- Красный (E+, VCC): положительное напряжение возбуждения.
- Черный (E-, GND): отрицательное напряжение возбуждения.
- Белый (А-): Вход отрицательного сигнала (Выход -).
- Зеленый (А+): положительный входной сигнал (Выход +).
В некоторых моделях добавлен пятый провод (желтый, YLW), который обычно выполняет функцию заземления или не используется в стандартных конфигурациях.
Типы и модели тензодатчиков: как выбрать правильный
Выбор подходящего тензодатчика Датчики веса имеют решающее значение для получения точных показаний в вашем проекте по взвешиванию. Датчики веса различаются в зависимости от их максимальной мощности, физического форм-фактора и чувствительности:
- Максимальная емкость: Существуют тензодатчики на 1 кг, 5 кг, 20 кг, 50 кг и даже больше. оптимальная точность, хорошей идеей будет выбрать ячейку с максимальным диапазоном, максимально приближенным к максимальному весу вашего приложения. Например, если вы хотите взвешивать до 4 кг, ячейка на 5 кг подойдет идеально. Использование ячейки на 20 кг в этом диапазоне даст вам более низкие показания точности.
- Механическая конфигурация: Наиболее распространенными являются прямоугольные штанги для установки на кухонные весы, но также можно встретить модели в форме буквы S, дисковые, двухбалочные и т. д. Каждая из них лучше подходит для различных сценариев взвешивания.
- Качество и чувствительность: Точность также будет зависеть от качества датчиков и внутренней конструкции. Качественные ячейки обычно обеспечивают лучшие результаты и меньший дрейф.
- Тип моста: HX711 может работать как с полномостовыми, так и с полумостовыми ячейками и даже поддерживает подключение до двух ячеек в конфигурации с двумя мостами.
Монтаж ячейки также имеет решающее значение. Убедитесь, что центральная область (чувствительная часть стержня) свободна от препятствий, чтобы она могла правильно деформироваться под нагрузкой, и следуйте стрелке, чтобы установить ее в направлении силы, которую вы собираетесь измерить.
Механическая конструкция и подключение: как собрать цифровые весы с HX711
Переходя к практике, важно понимать Как физически соединены и собраны тензодатчик и модуль HX711. Вот общие шаги:
- Механический монтаж: Используйте распорки для фиксации тензодатчика между основанием и контейнером или платформой, которая будет поддерживать вес. Центр датчика должен оставаться свободным и быть единственной частью, которая прогибается под нагрузкой.
- Направление силы: Обратите внимание на стрелку, выгравированную на ячейке, которая указывает направление, в котором следует прикладывать груз.
- Электрическое соединение: Подключите каждый из проводов ячейки к соответствующим контактам на HX711, следуя цветовому коду (красный к E+/VCC, черный к E-/GND, зеленый к A+/Output+, белый к A-/Output-). Для получения более подробной информации см. руководство по тензодатчикам.
- Подключение к микроконтроллеру: Из другого ряда контактов на HX711 подключите контакты GND и VCC к источнику питания, а контакты DT (данные) и SCK (тактовый сигнал) — к любым двум цифровым контактам на Arduino или любой другой плате, которую вы используете.
В напольных весах или более сложных проектах они часто используются четыре простых тензодатчика расположены в углах, кабели которых должны быть объединены с помощью модуль объединителя или следуя схеме ручного подключения (точная работа, при которой вам придется внимательно изучить техническое описание и измерить сопротивление, чтобы идентифицировать каждый провод).
Для тех, кто ищет максимальную точность, существуют модули-комбинаторы от таких брендов, как SparkFun, которые упрощают подключение и позволяют легко объединять сигналы со всех четырех датчиков в один вход, совместимый с HX711.
Мост Уитстона на практике: преимущества и соображения
Использование Мост Уитстона Это не совпадение: он позволяет точно усиливать изменения сопротивления в тензодатчиках, разрешая даже очень небольшие различия и достигая превосходной линейности измерений.
В системах, где используется только один четырехпроводной тензодатчик, мост уже настроен, и нет необходимости усложнять ситуацию. Если вы хотите построить более точный баланс, объединив несколько датчиков, вам нужно будет соединить их проводами, чтобы сформировать один мост Уитстона, следуя четко определенной топологии, или использовать модули-комбинаторы. Инверсия выходного сигнала Это может произойти, если при увеличении веса показания уменьшаются или ведут себя противоположно ожидаемому; в этом случае просто поменяйте местами соединения кабелей A+ и A-.
Расширенные технические характеристики HX711
Этот модуль предлагает множественные преимущества что делает его очень популярным:
- разрешение: До 24 бит, что позволяет обнаруживать минимальные изменения веса.
- Программируемое усиление: Вы можете выбрать 128x или 64x в зависимости от ваших потребностей в чувствительности.
- Регулируемая частота дискретизации: От 10 Гц до 80 Гц, что позволяет адаптировать скорость измерения к стабильности приложения.
- Совместимость: Поддерживает датчики веса с полным или полумостовым подключением, с возможностью считывания показаний до двух датчиков в двойной конфигурации.
- Очень низкое потребление энергии: В активном режиме менее 1.5 мА; идеально подходит для устройств с питанием от батареи.
- Рабочая Температура: Очень широкий диапазон: от -40ºC до +85ºC.
- Компактный формат: Его размер позволяет легко интегрировать его в платы и прототипы, поскольку выводы готовы к пайке или установке на макетную плату.
Его документация обширна, и существует большое сообщество разработчиков, что обеспечивает его доступность. примеры кода, библиотеки и онлайн-руководства для быстрого завершения вашего проекта.
Как запрограммировать и откалибровать цифровые весы на базе HX711 и Arduino
Монтаж оборудования — это только половина работы. Чтобы получить весовые измерения точный, вам нужно правильно запрограммировать и, прежде всего, откалибровать систему. Давайте посмотрим как это сделать шаг за шагом:
Установка библиотеки HX711
Первый шаг — установить библиотеку, которая обеспечивает связь с HX711. Самый популярный и надежный вариант — библиотека, созданная Bogde, доступная на GitHub. Вы можете загрузить ее вручную или установить напрямую с Менеджер книжного магазина из Arduino IDE, набрав «HX711».
Основные функции библиотеки HX711
- begin(PinData, PinClock): Инициализируйте HX711, указав контакты данных и синхронизации, используемые на вашем микроконтроллере.
- set_scale(масштаб с плавающей точкой): Назначает значение шкалы или коэффициент пересчета. Это необходимо для того, чтобы показания соответствовали фактическому весу.
- задача(ы): Выполняет тарирование, то есть устанавливает измерение на ноль при текущем весе. n указывает количество образцов, взятых для определения массы тары.
- читать(): Выполняет однократное считывание сигнала с внутреннего АЦП HX711.
- среднее_прочитанное(n): Возвращает среднее значение n показаний; увеличивает стабильность y точность измерения.
- получить_значение(n): Возвращает значение показания за вычетом веса тары. Если вы передадите n, он усреднит это число показаний.
- получить_единицы(n): Рассчитайте вес, вычтя массу тары и разделив результат на коэффициент масштабирования.
Эти функции охватывают полный цикл инициализации, калибровки, тарирования и считывания показаний весов.
Калибровка: важный шаг для точного измерения
La калибровка Это включает в себя настройку масштабного коэффициента таким образом, чтобы цифровые показания HX711 соответствовали фактическим значениям веса в желаемых единицах (обычно килограммах или граммах). Обычная методика выглядит следующим образом:
- Без какого-либо предмета на весах, запускает программу калибровки, которая выполняет тарирование (установку весов на ноль).
- Поместите предмет известного веса. (в идеале он должен быть близок к максимальному весу, который вы собираетесь измерить) на весах.
- Запишите немасштабированное значение показания. что вам показывает серийный монитор. Обычно принято усреднять несколько показаний.
- Рассчитайте масштабный коэффициент используя формулу: считанное_значение / фактический_вес = коэффициент_масштабирования, принимая во внимание нужные вам единицы измерения (например, если вы используете вес 4 кг, а показание равно 1.730.000 432500 XNUMX, коэффициент масштабирования будет равен XNUMX XNUMX).
- Измените программу так, чтобы в функцию set_scale вы вводили вычисленное значение.
- Повторите измерение. Добавьте или уберите вес, чтобы проверить точность измерения.
Калибровка чувствительна к положению ячейки, жесткости опоры, качеству электрического контакта и другим факторам. Если вы меняете ячейку, метод установки или модель, вам нужно будет выполнить повторную калибровку.
Пример кода калибровки и взвешивания
Типичный скетч Arduino включает две части: калибровку и измерение. Скетч калибровки позволяет вам интерактивно настраивать коэффициент с помощью последовательного монитора (+ или – для точной настройки значения шкалы). Скетч взвешивания просто отображает считанный вес на экране с использованием полученного коэффициента.
Базовая структура кода будет выглядеть следующим образом (адаптированная и обобщенная, чтобы не повторять дословно содержание примеров):
- Включает библиотеку HX711.
- Определяет выводы DATA и CLOCK.
- Инициализирует HX711 и выполняет тарирование.
- В основном цикле используйте get_units() для отображения веса, считываемого каждые полсекунды.
- Позволяет изменять коэффициент калибровки с помощью последовательного монитора, если вы хотите точно настроить точность.
Этот метод, популяризированный SparkFun и другими разработчиками, обеспечивает идеальную калибровку, даже если ячейка не совсем такая же, как другие ячейки той же модели.
Расширенная интеграция: напольные весы, Интернет вещей и промышленные системы
В домашних проектах тензодатчики часто восстанавливаются из коммерческих напольных весов (они обычно поставляются с четырьмя отдельными датчиками). Чтобы объединить их и подключить к HX711, вы можете использовать модуль-комбинатор или следовать специальным схемам подключения, которые позволяют сформировать мост Уитстона со всеми четырьмя датчиками. Если у вас нет модуля-комбинатора, вам нужно будет идентифицировать провода (обычно три на датчик) и объединить их, используя внутреннее опорное сопротивление между парами.
Интеграция HX711 не знает границ. Это довольно распространено в проектах IoT (Интернет вещей), где вес, контролируемый цифровыми весами, отправляется в облако с помощью ESP8266, NodeMCU или аналогичного. Это позволяет выполнять автоматическое взвешивание, удаленно управлять инвентарем, контролировать газовые баллоны, резервуары и другие системы, вес которых является критическим параметром.
В промышленном секторе надежность и точность HX711 позволяют использовать его в автоматических системах дозирования, системах автоматического управления технологическими процессами, упаковочном оборудовании и медицинских приложениях, поскольку его разрешение достаточно для измерения от граммов до десятков килограммов с большой точностью.
Рекомендации и решение распространенных проблем
При создании собственной системы взвешивания помните следующие советы:
- Избегайте чрезмерных ударов или вибрации на тензодатчике., так как они могут повредить датчики или повлиять на калибровку.
- Обеспечивает правильную механическую фиксацию чтобы избежать ошибочных или нестабильных показаний. Центральная зона должна быть свободной, а сила должна быть идеально выровнена с указанным направлением.
- Проверьте электрические соединенияПлохой контакт может привести к колебаниям или шуму сигнала, что затруднит калибровку.
- Если показания нестабильны или изменяются под действием вакуума, выполните новое тарирование и убедитесь, что источник питания стабилен.
- Если результат чтения меняется в обратном направлении (уменьшается с весом), инвертирует соединения A+ и A-.
Также, если ваш проект требует измерения различных диапазонов веса в разное время, не забудьте соответствующим образом скорректировать коэффициент калибровки. Всегда сохраняйте значения калибровки, полученные для каждой ячейки и конфигурации.
Возможности модуля HX711 и торговые возможности
На рынке представлен широкий ассортимент совместимых модулей HX711, как в специализированных магазинах, так и на универсальных платформах. Обычно они поставляются с тензодатчиками разных диапазонов (1 кг, 5 кг, 20 кг, 50 кг) и имеют штырьки или разъемы для легкой интеграции. Примечательные особенности этих модулей включают:
- Функциональное значение: от 2.6 В до 5.5 В, что позволяет использовать их с платами как 3.3 В, так и 5 В.
- Очень низкое потребление энергии: менее 1.5 мА.
- Компактные форматы: идеально подходит для интеграции в проекты «сделай сам» и прототипы.
- Документация и поддержка: Сообщество и производители часто предоставляют учебные пособия, технические описания и примеры использования как для Arduino, так и для других платформ.
Практические примеры использования и применения
Благодаря универсальности тензодатчиков и HX711 они подходят для самых разных областей применения:
- Цифровые бытовые и кухонные весы: для взвешивания ингредиентов или продуктов с максимальной точностью.
- Системы контроля газовых баллонов: Они позволяют удаленно контролировать состояние заполнения, чтобы избежать исчерпания запасов.
- Контроль запасов на складах и в магазинах: Благодаря постоянному взвешиванию можно контролировать остаток товара в режиме реального времени.
- Весы, подключенные к облаку: Используя такие платы, как ESP8266, собранные данные можно визуализировать или обрабатывать на веб-платформах для расширенного анализа.
- Медицинское оборудование: такие как весы для больничных коек, системы дозирования и контроля веса в лабораториях.
- Робототехника и автоматические системы дозирования: для дозирования нужного количества сырья в каждом процессе.
Во всех этих случаях протокол подключения и программирования очень похож. После калибровки ячейки вы получите надежные и точные измерения, которые улучшат автоматизацию и управление вашими системами.
Как выбрать правильную систему для вашего проекта
Решение об использовании ячейки 1 кг, 5 кг, 20 кг или 50 кг, тип крепления и калибровка будут зависеть от ваших конкретных потребностей. Вот как выбрать правильный вариант: некоторые критерии для принятия наилучшего решения:
- Диапазон взвешивания: Выберите тензодатчик с максимальной грузоподъемностью, немного превышающей максимальный вес, который вы обычно измеряете.
- Требуемая точность: Если вам нужна точность до грамма, ищите тензодатчики с высокой чувствительностью и низким диапазоном. Если ваше приложение допускает погрешность в несколько граммов или десятков граммов, вы можете выбрать модели с более высоким диапазоном.
- Сложность механической сборки: Модели с креплением на бар для кухонных весов проще в установке. Для четырех датчиков на напольных весах вам придется поработать над сборкой кабелей или приобрести комбинированный модуль.
- Поддержка микроконтроллеров: Модули HX711 совместимы практически с любой картой, но убедитесь, что напряжение питания и уровни логики правильные.
Модульность и низкая цена HX711 и его тензодатчиков демократизировали технологию электронного взвешивания, позволяя любому производителю, студенту или профессионалу создать собственную измерительную систему с гарантированным успехом.
Правильный выбор, калибровка и механическая сборка определяют успех вашего проекта. Благодаря надежным и стабильным измерениям вы можете интегрировать системы управления, автоматизации и мониторинга с профессиональными результатами как в домашних, так и в промышленных приложениях.