• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Весы на HX711

Vypra

Member
ошибки измерения могут быть от емкости кабеля
т е у вас заваливается фронт в результате неустойчиво принимается логический уровень
можно увеличить задержку в программе перед чтением сигнала
либо согласовать кабель на концах
А вот это вариант. На коротких проводах проблем меньше. Как согласовать?

вы про какую-то схему согласования уровней написали
что за схема где стоит?
Такая:
60.03 руб. 10% СКИДКА|Бесплатная доставка 3,3 V 5V TXS0108E 8 канальный сетевой видеорегистратор логический уровень конвертер преобразует ttl двунаправленный взаимная преобразование TXS0108 TXS0108EPWR-in Интегральные схемы from Электронные компоненты и принадлежности on Aliexpress.com | Alibaba Group
Стоит для изменения уровня сигнала 3,3-5v между NodeMCU и HX711.
 

nikolz

Well-known member
это конечно избыточно для одного пина ставить.
даже сомневаюсь надо ли вообще согласовывать.
 

nikolz

Well-known member
Ну почему для одного? Я через него все пустил. 2 пина RTC, 2 пина весов, датчик DHT22, датчик DS18B20. У меня осталось 2 свободных пина.
все указанные вами датчики прекрасно работают от 3.3
можно конечно усложнять конструкцию.
 

Vypra

Member
все указанные вами датчики прекрасно работают от 3.3
можно конечно усложнять конструкцию.
Первая причина - датчики на длинных проводах. От 5 В себя комфортней чувствуют.
Вторая причина - развести печатную плату было легче так. Не нужно городить дорожки 5В от буста, 3.3В от ModeMCU, и еще накинуть 4,2 для SIM800.
Усложняя, упростил.
 

nikolz

Well-known member
Первая причина - датчики на длинных проводах. От 5 В себя комфортней чувствуют.
Вторая причина - развести печатную плату было легче так. Не нужно городить дорожки 5В от буста, 3.3В от ModeMCU, и еще накинуть 4,2 для SIM800.
Усложняя, упростил.
как я понял в дальнейшем вы все будете питать от батарейки
а они как правило 5 вольт не дают
 

nikolz

Well-known member
собрал схему с мостом из 1 ком и питанием 3.3 вольта
провод плоский кабель без экрана
провод до моста 20 см
провод до ESP 50 см
получил помеху на уровне 0.02%
 

nikolz

Well-known member
поднял 15 пин у HX711 и подключил его к +3.3
В результате время измерения сократилось с 90 ms до 11 ms.
попробуйте так сделать
в итоге вы получите 9 измерений вместо 1
в результате можете применить медианный фильтр что уменьшит ошибку 3-5 раз
при сохранении дискретности измерений
 

Vypra

Member
поднял 15 пин у HX711 и подключил его к +3.3
В результате время измерения сократилось с 90 ms до 11 ms.
попробуйте так сделать
в итоге вы получите 9 измерений вместо 1
в результате можете применить медианный фильтр что уменьшит ошибку 3-5 раз
при сохранении дискретности измерений
Я переключал на 80Гц. У меня на плате есть перемычка. Еще хуже. Все же думаю это емкость проводов. Подумаю как максимально укоротить длину провода. Уже изучил все что можно по этому модулю. Буду дорабатывать конструкцию.
 

nikolz

Well-known member
Я переключал на 80Гц. У меня на плате есть перемычка. Еще хуже. Все же думаю это емкость проводов. Подумаю как максимально укоротить длину провода. Уже изучил все что можно по этому модулю. Буду дорабатывать конструкцию.
если разбираетесь в программировании то проверьте программу
у меня нет никаких экранов и ошибка существенно меньше чем у вас.
увеличение частоты опроса не может повышать уровень помех
 

nikolz

Well-known member
Мой уровень в программировании на уровне "никакой". Я учусь помаленьку, но это новое для меня. )))
Я использую библиотеку bogde/HX711
если есть у вас вольтметр хороший то посмотрите все напряжения на предмет их стабильности
например я смотрел напряжение на моста оно 2470 мв
еще лучше осциллограф
 

pvvx

Активный участник сообщества
Все равно плюсует. При резете ESP8266 показания скидываются в начало и увеличивается по новой.
Что может быть? Не хочется верить в то, что сгорел модуль HX711.
1) Измерения у вас начинаются с подачи аналогового питания (?). Необходимо дождаться его стабилизации, а не сразу гнать замеры.
2) Чип HX711 не имеет ноги DGND. Любой ток вывода на шину данных будет отображаться на работе аналоговой части (ADC). В итого рекомендуется на цифровой выход ставить беземкостную нагрузку и использовать минимальный ток. Т.е. включать напрямую на ногу MCU минимальной дорожкой на плате с резистором в десятки Ом непосредственно у цифрового выхода HX711..
У входных цифровых сигналов должны быть ограничены скорости нарастания фронтов почти до полного "округления" и выбросы не должны превышать уровень питания. Т.е. соединение проводом не рекомендуется. Только короткой дорожкой с резистором в десятки Ом непосредственно у цифрового входа HX711..
 

nikolz

Well-known member
Мой уровень в программировании на уровне "никакой". Я учусь помаленьку, но это новое для меня. )))
Я использую библиотеку bogde/HX711
выкладываю прошивку для тестирования модуля
загрузите ее с нулевого адреса
--------------------------------
модуль подключаете к
GPIO15 - CLK
GPIO04 -DT
-----------------------------------
в программе вычисляется среднее значение(S), максимум(Max) и минимум(Min) и D=(Max-Min)/S для 1000 отсчетов
на терминал выводится - S и значение 100000*D;
вот картинка терминала
upload_2019-8-14_9-25-44.png
 

Вложения

nikolz

Well-known member
вот результат фильтрации медианным фильтром длиной в 7 отсчетов
разброс показаний уменьшился в 1.5 раза
обратите внимание ошибка на уровне 5-го знака
т е при 100 кг ошибка не более 10 гр даже без фильтра и без экранов
upload_2019-8-14_10-47-41.png
 

pvvx

Активный участник сообщества
вот результат фильтрации медианным фильтром длиной в 7 отсчетов
разброс показаний уменьшился в 1.5 раза
обратите внимание ошибка на уровне 5-го знака
А с чего так у вас колбасит показания hx711 ?
Синфазная помеха не давится?
 

nikolz

Well-known member
У меня модули припаяны к печатке. Чтоб переключиться нужно все выпаивать.
DOUT_PIN = 12;
SCK_PIN = 14;
Если не трудно, можно в прошивке поменять пины?
рекомендую провода к мосту от Hx711 разделить на два кабеля
сигнал по отдельной паре в экране
 
Сверху Снизу