У энтузиастов, использующих данный модуль для сборки электронных весов "по-умолчанию", с пяти-вольтовым питанием, проблем не возникает.
Я-же который раз сталкиваюсь с несоответствиями мануалов — притом ладно, линейный регулятор сгорает при вдвое меньшем входном напряжении, или настройки модуля Ai-Thinker не сохраняются, но перепутать формулу в документации — это перебор.
О модификации платы 24-битного конвертера АЦП для работы от "батареек" под катом.
Для исключения необходимости во внешнем стабилизированном источнике напряжения, микросхема содержит внутренний эталонный регулятор (1.25V).
Напряжение, подаваемое на измерительный мост Уитстона(тензодатчики) задается делителем напряжения на R1,R2 (первое фото).
Правильная формула следующая Vavdd=Vbg*(R1+R2)/R2, где Vbg и есть 1.25V.
При значениях "по умолчанию" 20k и 8.2k на датчики подается 4.2V то-есть при напряжении питания схемы ниже 4.3V (согласно документации) мы получим ложные значения веса, гуляющие с просадкой источника питания.
Для того, что-бы схема правильно работала от 3.3V, нужно уменьшить номинал R1(верхнего на рисунке резистора), тогда на мост будет подаваться меньшее напряжение.
Казалось-бы, тут и сказочке конец, тем более, что о такой модификации уже писали
Но нет, "земля" уже не та!
С первых дней радио-кружка нас учили, что "масса" — она в схеме общая!
Китайцев видимо — нет.
В итоге, став щупами тестера на выходы питания моста E+ и E-, картина против использования входной линии "земли" меняется.
Может это из-за специфики разводки именно данной платы, но падение напряжения составляет 750mV (а не 100, как в доке).
Таким образом, если следовать совету статьи, и впаять вместо 20к, десять, напряжение на мосту начнет просаживаться уже с 3.5V.
Выход — в делителе на R1,R2 использовать одинаковые номиналы, тогда мост будет питаться от 2.5V, и стабильно работать при просадке входного напряжения до 3.25V.
Спросите — зачем такие сложности?
Все просто — я таки собираю систему мониторинга ульев (на фото — отладочный стенд).
Пчеловоды меня убедили, что им важна в первую очередь масса.
В итоге решил для начала сделать простые автономные СМС-весы сразу для 3 ульев.
Схема нормально засыпает, самый пожиратель батареи — GSM-модуль — все железо потребляет ~1.8мА при хорошем сигнале оператора связи.
Но основная суть, что информация по модулю HX711 может пригодиться кулибиным, не интересующимся пчелами, поэтому и написал отдельную статью.
P.S. А "центр управления полетами" опишу отдельно уже в ближайшее время.
UPD — ВЫВОД — НЕ ПОКУПАЙТЕ ТАКУЮ ПЛАТУ ВООБЩЕ!!!
Именно как на фото — E- не подключен к GND, VSUP микросхемы висит в воздухе, вместо резисторов по 100 Ом на все измерительные входы (4 шт), тут стоят по 1.2k на A+, B+.
Посмотрел фотографии других модулей на HX711 — что зеленых, что красных -все в порядке — и по количеству элементов, и по номиналам.
Визуально отличить легко — вся тыльная сторона нормальной платы — проводник (земля) к которому подключены E- и GND, есть варианты с экраном, что предпочтительней.
PPS, для нормальной работы регулятора напряжения моста при питании от 3.3В, R1, R2(рядом с транзистором) перепаяйте на резисторы одинакового номинала 2-10k
До новых встреч на страницах Хабра, Андрей.
Комментарии (46)
justhabrauser
04.02.2019 11:50Поправьте, если я ошибаюсь: 24 бита = точность 0.3 uV (при питании 5V).
Правда, что ли?
Оно же от щелчка пальцем в метре от АЦП наводок будет больше.amartology
04.02.2019 12:06+124-битные АЦП делаются при помощи многократных измерений и усреднения полученных результатов.
dlinyj
04.02.2019 12:30Плюс хорошая фильтрация выходных значений
amartology
04.02.2019 12:36Это уже частности, интересные только тем, кто в курсе волшебного буквосочетания «дельта-сигма» )
justhabrauser
04.02.2019 12:52При соотношении сигнал/шум < 1 это ни разу не поможет.
Даже при мостовой схеме.
Поэтому в нормальных условиях (без специальной математики и/или схемотехники) минимум 8 младших бит выдают ерунду (скорее всего).
24 честных китайских бита за 350 рублей? Не смешите мои тапки.
Если само железо «врёт» — что с этим поделать?
Здесь даже нелинейный фильтр 3-го порядка не поможет, потому что исходные данные не торт.Alexeyslav
04.02.2019 16:03+1От соотношения сигнал/шум зависит только время необходимое для усреднения и требуемая точность. 24 бита там как раз нужны чтобы получить после матобработки честных 16..18 бит которые можно стабильно вывести на дисплей.
Собственно дельта-сигма АЦП сами по себе прямо во время измерения неплохо усредняют. В итоге имеем стабильные весы с диапазоном до 50кГ и разрешением в 1 грамм.
Nikopol_86
05.02.2019 09:18Все не так просто с дельта-сигма АЦП в 24-бита. Вот к примеру пару отличных статеек по теме, очень все доходчиво изложено.
1. www.kit-e.ru/articles/dac/2008_09_42.php
2. www.analog.com/media/ru/technical-documentation/application-notes/438603552716788154AN615R.pdf
3. www.kit-e.ru/articles/dac/2006_5_176.php
В последней статье очень неплохо описан алгоритм для обработки сигнала с АЦП.
gerasimenkoao Автор
04.02.2019 12:30С точностью у китайцев проблемы.
В самом АЦП можно установить три коэффициента усиления 128, 64 и 32.
Но в итоге на 64 некоторые пользователи отмечают более стабильные показания и выше точность против 128.Nikopol_86
05.02.2019 09:27Если честно, то шума у него хватает на всех коэффициентах. Я проводил небольшие исследования по изучению плотности распределения выдаваемых кодов АЦП при закороченных входных цепях, так вот там разброс до 1000 LSB и нифига не нормальный закон распределения, что говорит о том, что либо с разводкой платы беда, либо с АЦП, либо все вместе взятое. Так же заметил, что температурной стабилизации у него тоже нет, а заявленный рабочий диапазон температур не соответствует действительности. Хотя бы потому, что при подключении к АЦП тензодатчика на 5 кг изменение температуры в комнате на 1 градус уводят показания на 2 грамма, а если подогреть микросхему банально пальцем, то показания улетают до 5-7 грамм. В общем для себя сделал выводы, о том, что на этом устройстве можно сделать только дозатор для кошачьего корма, где точность в одну трамвайную остановку будет более чем достаточно. А нормальные решения увы, дешевыми не получаются, потому как приходиться использовать качественные АЦП от AD или TI.
FGV
04.02.2019 12:06+1В итоге, став щупами тестера на выходы питания моста E+ и E-, картина против использования входной линии "земли" меняется.
так и не понял, что это значит? что и где поменялось то?
Может это из-за специфики разводки именно данной платы, но падение напряжения составляет 750mV (а не 100, как в доке).
эм, падение где? на каком элементе?
gerasimenkoao Автор
04.02.2019 12:21Если измерять между точками GND и E+ напряжение падает на 100мВ против GND и VCC, независимо от номиналов делителя на R1, R2.
E+ и E- напряжение задается делителем, но ниже чем входное на 750мВ.
Дока-же гласит:
The output voltage is equal to VAVDD=VBG*(R1+R2)/ R1 (Fig. 1). This voltage should be designed with a minimum of 100mV below VSUP voltage.
То-есть VAVDD — это напряжение на контактах E+ и E-, VSUP — входное напряжение
FGV
04.02.2019 14:05+1The output voltage is equal to VAVDD=VBG*(R1+R2)/ R1 (Fig. 1). This voltage should be designed with a minimum of 100mV below VSUP voltage.
Странный у Вас перевод документации. Я больше сию фразу понял так:
Выходное напряжение равно /далее формула/. Это напряжение должно быть рассчитано (задано разработчиком) как минимум на 100мВ ниже чем напряжение VSUP.
gerasimenkoao Автор
04.02.2019 14:22Перевели мы ее правильно, просто эти строки советуют выбирать значение выходного напряжения минимум на 100мВ ниже чем напряжение питания схемы.
По-сути они правы, ибо на 750мВ — еще ниже ;-), но пользователи берут за основу число из документации.FGV
04.02.2019 14:44вопрос, на сей чудной плате E- с GND не соединен?
gerasimenkoao Автор
04.02.2019 16:52Сказать по правде, — не соединен :-(
Только что еще одним тестером перепроверил.
Плата — однослойная — дорожек не наблюдается.
В доке тоже все туманно:
То-есть земля должна быть вроде одна, но на плате начертили MCU GND и ADC GND
FGV
04.02.2019 17:15+1Сказать по правде, — не соединен :-(
Так соедините, иначе у Вас схема не соответствует datasheet-у.
То-есть земля должна быть вроде одна, но на плате начертили MCU GND и ADC GND
Ну они правильно нарисовали, цифровую землю и аналоговую, они соединяются вместе в одной точке (как правило разводят от точки подачи питания), а дальше каждая идет в свою часть платы. Это один из методов борьбы с помехами.
Alexeyslav
04.02.2019 17:21+2А она там по всей видимости одна, только с разных точек подключения. Все аналоговые сигналы отсчитываются относительно AGND, хоть она и соединена с цифровым общим проводом но разница в милливольты запросто может набежать.
Судя по картинке, E- должен сидеть на AGND. И на реальной платке он на AGND.
esaulenka
05.02.2019 09:50Так это должен быть основной вывод всей вашей статьи — китаец накосячил с разводкой платы, и для корректной работы надо её допиливать.
Сейчас, насколько я понимаю, вся эта конструкция питается через защитный диод на какой-то из ножек.
В общем, киньте перемычку с площадки Gnd на ногу AGnd микросхемы (эта же цепь, насколько я понимаю — левые ноги C8, C7).
wwladimir
04.02.2019 14:11+2Извините, но я тоже ничего не понял…
Да, напряжение задается делителем. но регулируется оно внешним биполярным
транзистором — Q2 на вашей плате.
На его переходах, мне кажется. должно что то «падать»…gerasimenkoao Автор
04.02.2019 14:15Вот как раз данный момент (большее падение на полупроводниках) меня и смутил, заставив взяться за тестер, поскольку по мануалу напряжение насыщения для транзистора S8550 — 0.5В
FGV
04.02.2019 18:13напряжение насыщения для транзистора S8550 — 0.5В
Это при токе коллектора = 500мА. Боюсь исправный тензомост такой ток не обеспечит.
esaulenka
05.02.2019 09:42Скоро вы осознаете дзен китайских даташитов — им верить нельзя.
Потому что в даташите транзистор dirtypcbs.com/assets/datasheets/S8550-2TY.pdf (верю на слово, т.к. маркировку на фото не вижу) на графике collector-emitter saturation voltage этот самый вольтадж измеряется в вольтах (не милли!) и доходит до 500.
При малом токе (типовое потребление АЦП — 1.5 мА + мост ещё какая-то доля мА) напряжение насыщения типичного мелкого биполярного транзистора меньше сотни мВ.
Alexeyslav
04.02.2019 17:53Если биполярный, упадёт там около 0.5В, тогда делитель надо рассчитать на напряжение не более 2.6В(при питании 3.3В), лучше с запасом — 2.3-2.2В. Второй резистор должен быть не более 6кОм.
Sabubu
04.02.2019 14:57А точность резисторов не влияет на точность измерения? Что-то мне кажется, что даже для 16-битного АЦП нужны не обычные резисторы, где сопротивление может отличаться от указанного на корпусе, а какие-то особые, или может даже не резисторы вовсе.
Alexeyslav
04.02.2019 15:55Точность — не влияет. там разве что важна стабильность их номинала. Всёравно всё это в целом калибруется по месту по образцовому весу.
aleks_proj
05.02.2019 09:10+1Этой статье не место на Хабре. Ей место на форуме ардуинщиков.
После прочтения статьи становиться ясно, что автор профан в электронике.
Я-же который раз сталкиваюсь с несоответствиями мануалов — притом ладно, линейный регулятор сгорает при вдвое меньшем входном напряжении, или настройки модуля Ai-Thinker не сохраняются, но перепутать формулу в документации — это перебор.
Документацию пишут люди. Людям свойственно ошибаться. Ошибки в документации встречаются и у более именитых производителей. Как говориться доверяй, но проверяй. Формула приведена к рисунку 1, где сам рисунок?
С первых дней радио-кружка нас учили, что «масса» — она в схеме общая
Данное утверждение в корне не верно, все зависит от схемотехники.
Удивление автора, по поводу трассировки платы от дядюшки Ляо из Чайнариладж, вообще странные. Сам купил поделие за копейки, не проверил трассировку и удивляется, что она через одно место работает (что снова указывает на дилетантство). Покупать надо было хотя бы от нормальных производителей, например SparkFun.Dima_Sharihin
05.02.2019 09:40Даташит — это входные параметры тестирования чипа. Если характеристики микросхемы не соответствуют документации, значит это или брак, или сам производитель не проверял свой продукт по своему даташит.
Собственно это и ключевое отличие дорогих TI и AD от более доступных китайских аналогов
aleks_proj
05.02.2019 09:52В даташите на данную микросхему, просто банальная опечатка (формула расчета резистивного делителя). Про параметры электрические, временные и прочие, разговор не шел.
VT100
05.02.2019 13:01+1
Без типовой схемы применения HX711 — нельзя судить о правильности формулы.
Без схемы отладочного модуля на ней и сличения с типовой — нельзя понять о каких таких «землях» и «лунах» ведёт речь автор.
Borjomy
05.02.2019 10:47+1Я бы не рекомендовал пчеловодам покупать ваши весы. Это не прибор, а игрушка. В данном продукте используется, в качестве измерительного устройства схема на самых дешевых компонентах. То, о чем автор говорит- это схема уставки опорного напряжения. Источник опорного напряжения — это ключевой компонент, обеспечивающий точность и стабильность измерений. Автор думает, поставил резисторы и все тип-топ. Только про стабильность измерений можно забыть. И ладно, это отдельные измерения, но автору нужна ретроспектива, т.е изменение по времени. А точностью этих измерений огромные проблемы- в первую очередь, из за внешней температуры и стабильности источника питания. А про то, что ставить надо прецизионные резисторы, как минимум, автор не догадывается. Вообще-то для таких задач используют отдельные источники опорного напряжения. Такая микросхема обеспечивает сверхвысокостабильное напряжение и сверхнизкий шум напряжения, относительно которого производятся вычисления. И стоит она дороже самого АЦП, а для этого- на порядок дороже. Только таким образом можно достичь заявленной точности преобразований. Резисторы, кстати, имеют свой тепловой шум. Настоятельно советую автору непожмотиться и приобрести настоящий комплект измерений на 24 бита, сделанный профессионалами. И сравнить. Измерения с точностью выше 16 бит с наскока и без глубоких знаний схемотехники не решаются.
Alexeyslav
05.02.2019 11:18+2Ни прецезионные резисторы, ни прецезионный ИОН там не нужны. Там более важна стабильность параметров резисторов и ИОН во времени и от температуры. Весы можно откалибровать потом использовав программное масштабирование, а вот с зависимостью от температуры ничего не поделать. И даже внешний датчик не поможет — он будет всегда отставать от реальной и для стабильности измерений нужен будет термостат с «прогреванием» перед работой.
У резисторов делителя ТКС будет почти одинаковый и компенсируется, остаётся только один элемент — встроенный ИОН. Но и тут можно обойти требованием калибровки перед использованием и отсутствие сквозняков. Дополнительно можно наколхозить термостат для чипа, прогревать его до 50 градусов и при этой температуре откалибровать.
graphican
05.02.2019 19:46Тут случай, когда в коментах информации больше, чем в статье. Нередкий случай.
dmitryrf
06.02.2019 16:43+1Очень странное решение — три преобразователя на 4 тензодатчика, как так?
Делал подобную игрушку из напольных весов, там все 4 датчика объединены в мост и измерение делает одна микросхема. Будет существенная разница при разных схемах включения?gerasimenkoao Автор
06.02.2019 17:17Ничего не странное — используемые 50кг датчики содержат по половинке моста и подразумевают 3 возможные схемы включения:
1. 4 датчика на один тензомодуль (как в напольных весах) — тогда каждый полумост разворачивается в одно плечо.
2. 2 датчика нормально соединяются в один мост
3. 1 датчик включается на E+, E- и выходом на А+, вторая половина моста образуется килоомными резисторами с E+, E- на A-
У меня один датчик по второй схеме, и два — по третьей.
Разница — есть — амплитуда сигнала во втором случае падает вдвое, в последнем — вчетверо против использования 4 модулей в одном мосту.
То-есть это я для удобства отладки собрал такой стенд, а вообще 3 улья взвешиваться будут.
Dioxin
Раньше ничего не было, либо не достать, либо дорого.
Теперь все есть, дешево, но мусор.
gerasimenkoao Автор
Но суть осталась одна — перед сборкой схемы и тогда, и сейчас компоненты надо дополнительно проверять тестером.
Dioxin
Не совсем — раньше готовые решения как правило не предлагались, только детали.
Сейчас огромное кол-во готовых решений в цену которых как раз и заложена готовость и проверять еще раз все мало того что не рентабельно, так еще и не всегда есть когда.
vassabi
я подозреваю, что появление «все есть, дешево, но мусор», не исключает «либо дорого».
по теме — вот прибыль меда весной\летом — понятный процесс и для чего. А мониторинг убыли веса зимой пчеловодам не интересен?
gerasimenkoao Автор
Отчего-же неинтересен?
Смотрят!
Нет никакой проблемы оставлять систему включенной на зиму.
AllexIn
Это не правда.
Раньше не было ничего, сейчас есть много всего, и среди этого много мусора.
Dioxin
Ну что за бинарное мышление, я утрировал же в том плане что все сложнее в куче мусора найти качество + не понятна адекватная цена за это самое качество.