Автопортал || Авто - статьи

Сельскохозяйственная техника
Чтение RSS

Електронні ваги на базі HX711

  1. список радіоелементів

На сьогоднішній день у продажу є необхідні інструменти, щоб буквально «на коліні» зібрати свої електронні ваги: мікросхема АЦП HX711 (продається на AliExpress ), Спеціально призначена для застосування в вагах розрядністю 24 біта і датчик маси, що представляє собою мостовий або полумостовой вимірювач на базі тензорезисторов як чутливий елемент.

Якщо при підборі елементної бази мікросхеми HX711 представлені практично одними і тими ж модулями, то датчики маси можна підібрати різної конфігурації. Головний параметр таких датчиків - це вимірювана маса (1 кг, 3 кг, 5 кг, 50 кг і так далі), в залежності від цього параметра датчики можуть мати так же різну форму і виконання. По суті, датчики маси вимірюють прикладена зусилля щодо площини датчика - вага тіла, але за допомогою нескладних фізичних формул можна обчислити масу тіла. А раз ми вимірюємо силу, з якою тіло тисне на датчик, то і сфера застосування подібних схем різко збільшується. У найпростішому випадку - це звичайні ваги, для яких маса тіла буде пропорційна даними, що отримуються від АЦП. У більш складних випадках за допомогою схем на основі даної елементної бази можна вимірювати, наприклад, швидкість вітру (сила, з якою вітер тисне на опору датчика, буде пропорційна розміру опори і швидкості вітру) або регулювати прикладається силу до якого-небудь предмету щодо одержуваних даних .

При вимірюванні маси тіла даним методом варто враховувати при розробці деякі нюанси. Як уже зазначалося, датчик реєструє вагу тіла, а вага тіла це маса, помножена на прискорення вільно падіння або силу тяжіння (~ 9,8 м / c2). Таким чином, бачимо, що виміряна маса тіла буде залежати від значення сили тяжіння планети, що означає, що в різних точках Землі, а також зі збільшенням висоти (відстані від поверхні землі) сила тяжіння буде змінюватися, що вплине на те, що маса тіла в різних умовах може бути в невеликому ступені різна. Хоча маса тіла незмінна, але спосіб вимірювання пов'язаний цими фізичними явищами, тому це може бути причинами похибки вимірювань крім основних причин.

Як же ми все-таки вимірюємо масу (вага) тіла цим датчиком, на вигляд нагадує залізну болванку?

Для початку необхідно мати поняття про чутливому елементі цього датчика - тензорезистори.

Тензорезистор - це резистор, опір якого змінюється в залежності від його деформації.

З цим зрозуміло - є якийсь резистор (зазвичай це гнучка платівка - плівковий тензорезистор, на який напилю провідні елементи), який при вигині, розтягуванні і інших деформаціях змінює свій опір. На датчику маси тензорезистор розташовується під шаром білого захисного полімеру. Підстава датчика - алюмінієвий брусок з отворами для кріплення і великим отвором для завдання модуля пружності бруска таким чином, щоб тензорезистор вловлював пружну деформацію цього бруска в заданому діапазоні вимірювання маси. Отже, збираючи воєдино здатність тензорезистора змінювати свій опір при його деформації і здатність металу бруска при пружною деформації розтягуватися або стискатися (деформуватися) при впливі сили, отримуємо датчик, який вимірює деформацію при доданої силі до цього датчику. А так як модуль пружності в найпоширенішому варіанті має лінійний характер (закон Гука), отримуємо цілком точний датчик, за допомогою якого можна вимірювати зусилля, яке до датчика в заданій площині, і, отже, вага тіла (і масу), прикладаючи вантаж перпендикулярно датчика.

Напрямок зусилля (додатки вантажу) вказується на самому датчику, там же вказується і вага, на який розрахований цей датчик. Схема вимірювача на цьому датчику є полумостовой - один тензорезистор зверху, другий знизу, при додатку зусилля один тензорезистор розтягується, другий стискається. Схема здатна реєструвати вагу до сотої грама, але в цьому діапазоні дуже багато шумів, тому схема цілком стабільно здатна реєструвати вагу до десятих часток грама. Однак, це стосовно до датчика FZ0967 на 5 кг, якщо взяти датчик на 1 кг, то теоретично мінімально стабільний поріг буде менше. І аналогічно при застосуванні датчиків на більшу вагу мінімально стабільний поріг збільшиться. Таким чином, при виборі датчика варто враховувати сферу застосування для отримання максимально точного результату.

Для вимірювання маси різних тел був зроблений вимірювальний столик з підручних матеріалів, а саме старої коробки DVD дисків і самих дисків (або підкладних болванок).

Для вимірювання маси різних тел був зроблений вимірювальний столик з підручних матеріалів, а саме старої коробки DVD дисків і самих дисків (або підкладних болванок)

Однією стороною датчик прикручується до центру коробки від дисків, до другого кінці датчика прикручується диск, на якій будуть ставитися вантажі (диски хоча і гнучкі, але при додатку надмірної сили тендітні, це варто враховувати при свердлінні отворів в них, щоб не розколоти). Таким чином, один кінець датчика зафіксовано, а вага прикладається до іншого кінця - прикладений вантаж як би діє на вигин датчика, хоча цього ви не помітите.

Для роботи з такими датчиками була спеціально розроблена мікросхема АЦП HX711.

На базі цієї мікросхеми в піднебесній робиться кілька видів модулів: копійчані модулі без екрану і трохи дорожче з екрануванням елементів. Модуль з екрануванням теоретично повинен давати більш стабільний результат вимірювань.

Основні параметри мікросхеми АЦП HX711:

  • Два вхідних каналу для вимірювання
  • Регульований коефіцієнт посилення 32, 64, 128
  • Простий цифровий інтерфейс, що не вимагає програмування (так говорить даташит, хоча за великим рахунком програмування параметрів присутній)
  • Регульоване кількість вибірок 10 або 80
  • Розрядність АЦП 24 біт
  • Фільтр на 50 і 60 Гц харчування
  • Споживання струму до 1,5 мА
  • Напруга живлення від 2,7 до 5,5 вольт
  • Діапазон робочих температур від мінус 40 до плюс 85 градусів Цельсія
  • Знакові вихідні дані від 800000h до 7FFFFFh

Для підключення до мікроконтролеру використовується простий цифровий інтерфейс, схожий з I2C, але має з ним мало спільного, тому доведеться керувати висновками інтерфейсу висновками мікроконтролера (в народі ногодриг), так як апаратного інтерфейсу ні на одному мікроконтролері немає - це деяка імпровізація для спрощення роботи мікросхемою , хоча насправді, йдучи від стандартів, це все тільки ускладнює. Приклад використання цього інтерфейсу присутня в даташіте, тому все можна робити просто за прикладом і аналогії.

Після того, як отримаємо дані від АЦП необхідно врахувати два нюанси. Перше, значення являє собою чисті дані АЦП, тобто кількість відліків щодо прикладеного ваги. Що б не забивати собі голову перерахунками кількості відліків в значення ваги або маси, згадуємо, що все залежить у нас лінійні, а значить пропорційні, тому нам потрібен всього один загальний коефіцієнт для цього перерахунку. Для мого екземпляра коефіцієнт дорівнює 430 при перерахунку в одиниці грам. Як це дізнатися? Є два способи - строгий математичний, з пошуком різних довідкових даних по матеріалу з якого виготовлений датчик, пошуку параметрів тензорезисторов для виведення залежності модуля пружності матеріалу в даній геометричній конфігурації до опору тензорезисторів при пружною деформації датчика. Другий спосіб не найточніший, але вкрай швидкий і простий. Необхідно просто заміряти скільки відліків АЦП доводиться на одиницю доданої маси. Для цього необхідно врахувати другий нюанс - сама конструкція має деяку вагу і перед вимірами його потрібно просто прибрати - відняти і отримати «нуль» на вагах. Далі поставити на ваги гирьку певної відомої маси і отримати деяке значення АЦП. Це кількість відліків буде доводиться на одиницю маси на вагах:

К = (кількість відліків з масою гирьки - кількість відліків без доданої маси) / маса гирьки

Далі цей коефіцієнт використовується після кожного вимірювання АЦП для перекладу в значення одиниць маси і виводиться на дисплей. Для мого примірника цей коефіцієнт дорівнює 430.

Для складання ваг використовуємо мікроконтролер STM32.

Вихідний код для мікроконтролера знаходиться в кінці статті. Схему зручно збирати на мінімальній отладочной платі, тому що в цьому випадку необхідно мінімум деталей для зборки - з'єднуємо між собою плату з мікро контролером, дисплей і модуль АЦП з датчиком, підключаємо до харчування.

Для оцінки точності вимірювань, а також для визначення коефіцієнт для переведення значення АЦП в масу найкраще використовувати вантаж зі свідомо точно відомої масою. Для цієї мети добре підійдуть мірні гирьки. Ось такий раритетний екземпляр, наприклад.

Як бачимо, схема показує досить непогані результати точності вимірювання (невелике відео знаходиться в кінці статті). Варто пам'ятати також про те, що датчик розрахований на вимірювання маси до 200 кг не дасть такої точності до сотих часток грама як датчик, розрахований на вимірювання маси до 100 г. Тому при виборі датчика обов'язково потрібно враховувати сферу застосування ваг для отримання найбільш оптимальних результатів.

Тому при виборі датчика обов'язково потрібно враховувати сферу застосування ваг для отримання найбільш оптимальних результатів

список радіоелементів

Завантажити список елементів (PDF)

Прикріплені файли:

Теги:

Як же ми все-таки вимірюємо масу (вага) тіла цим датчиком, на вигляд нагадує залізну болванку?
Як це дізнатися?