АЦП HX711 от 3.3V — не верьте китайской документации и не только

    Плата конвертера


    У энтузиастов, использующих данный модуль для сборки электронных весов "по-умолчанию", с пяти-вольтовым питанием, проблем не возникает.


    Я-же который раз сталкиваюсь с несоответствиями мануалов — притом ладно, линейный регулятор сгорает при вдвое меньшем входном напряжении, или настройки модуля 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, вместо резисторов по 100 Ом на все измерительные входы (4 шт), тут стоят по 1.2k на A+, B+.


    Посмотрел фотографии других модулей на HX711 — что зеленых, что красных -все в порядке — и по количеству элементов, и по номиналам.


    Визуально отличить легко — вся тыльная сторона нормальной платы — проводник (земля) к которому подключены E- и GND, есть варианты с экраном, что предпочтительней.


    PPS, для нормальной работы регулятора напряжения моста при питании от 3.3В, R1, R2(рядом с транзистором) перепаяйте на резисторы одинакового номинала 2-10k


    До новых встреч на страницах Хабра, Андрей.

    Поделиться публикацией

    Похожие публикации

    Комментарии 49

      +3
      Раньше ничего не было, либо не достать, либо дорого.
      Теперь все есть, дешево, но мусор.
        +3
        Но суть осталась одна — перед сборкой схемы и тогда, и сейчас компоненты надо дополнительно проверять тестером.
          0
          Не совсем — раньше готовые решения как правило не предлагались, только детали.
          Сейчас огромное кол-во готовых решений в цену которых как раз и заложена готовость и проверять еще раз все мало того что не рентабельно, так еще и не всегда есть когда.
          +2
          я подозреваю, что появление «все есть, дешево, но мусор», не исключает «либо дорого».

          по теме — вот прибыль меда весной\летом — понятный процесс и для чего. А мониторинг убыли веса зимой пчеловодам не интересен?
            0
            Отчего-же неинтересен?
            Смотрят!
            Нет никакой проблемы оставлять систему включенной на зиму.
            +6
            Это не правда.
            Раньше не было ничего, сейчас есть много всего, и среди этого много мусора.
              0
              Ну что за бинарное мышление, я утрировал же в том плане что все сложнее в куче мусора найти качество + не понятна адекватная цена за это самое качество.
            +1
            Поправьте, если я ошибаюсь: 24 бита = точность 0.3 uV (при питании 5V).
            Правда, что ли?
            Оно же от щелчка пальцем в метре от АЦП наводок будет больше.
              +1
              24-битные АЦП делаются при помощи многократных измерений и усреднения полученных результатов.
                +1
                Плюс хорошая фильтрация выходных значений
                  +1
                  Это уже частности, интересные только тем, кто в курсе волшебного буквосочетания «дельта-сигма» )
                    +1
                    «дельта-сигма»


                    Как много в этом звуке.
                  +1
                  При соотношении сигнал/шум < 1 это ни разу не поможет.
                  Даже при мостовой схеме.
                  Поэтому в нормальных условиях (без специальной математики и/или схемотехники) минимум 8 младших бит выдают ерунду (скорее всего).
                  24 честных китайских бита за 350 рублей? Не смешите мои тапки.
                  Если само железо «врёт» — что с этим поделать?
                  Здесь даже нелинейный фильтр 3-го порядка не поможет, потому что исходные данные не торт.
                    +1
                    От соотношения сигнал/шум зависит только время необходимое для усреднения и требуемая точность. 24 бита там как раз нужны чтобы получить после матобработки честных 16..18 бит которые можно стабильно вывести на дисплей.
                    Собственно дельта-сигма АЦП сами по себе прямо во время измерения неплохо усредняют. В итоге имеем стабильные весы с диапазоном до 50кГ и разрешением в 1 грамм.
                    +1
                    Все не так просто с дельта-сигма АЦП в 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
                    В последней статье очень неплохо описан алгоритм для обработки сигнала с АЦП.
                    0
                    С точностью у китайцев проблемы.

                    В самом АЦП можно установить три коэффициента усиления 128, 64 и 32.

                    Но в итоге на 64 некоторые пользователи отмечают более стабильные показания и выше точность против 128.
                      0
                      Если честно, то шума у него хватает на всех коэффициентах. Я проводил небольшие исследования по изучению плотности распределения выдаваемых кодов АЦП при закороченных входных цепях, так вот там разброс до 1000 LSB и нифига не нормальный закон распределения, что говорит о том, что либо с разводкой платы беда, либо с АЦП, либо все вместе взятое. Так же заметил, что температурной стабилизации у него тоже нет, а заявленный рабочий диапазон температур не соответствует действительности. Хотя бы потому, что при подключении к АЦП тензодатчика на 5 кг изменение температуры в комнате на 1 градус уводят показания на 2 грамма, а если подогреть микросхему банально пальцем, то показания улетают до 5-7 грамм. В общем для себя сделал выводы, о том, что на этом устройстве можно сделать только дозатор для кошачьего корма, где точность в одну трамвайную остановку будет более чем достаточно. А нормальные решения увы, дешевыми не получаются, потому как приходиться использовать качественные АЦП от AD или TI.
                        0
                        Начальник делает на этом АЦП автоматический самогонный аппарат, у него показания что температуры, что массы при подогревании микросхемы пальцем сохраняют стабильность, специально проверили. Видимо, это лотерея: зависит от того, где покупать.
                    +3
                    В итоге, став щупами тестера на выходы питания моста E+ и E-, картина против использования входной линии "земли" меняется.

                    так и не понял, что это значит? что и где поменялось то?


                    Может это из-за специфики разводки именно данной платы, но падение напряжения составляет 750mV (а не 100, как в доке).

                    эм, падение где? на каком элементе?

                      0
                      Если измерять между точками 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 — входное напряжение
                        0
                        блин. нетуда ткнул при ответе
                      +1
                      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.

                      Странный у Вас перевод документации. Я больше сию фразу понял так:


                      Выходное напряжение равно /далее формула/. Это напряжение должно быть рассчитано (задано разработчиком) как минимум на 100мВ ниже чем напряжение VSUP.

                        0
                        Перевели мы ее правильно, просто эти строки советуют выбирать значение выходного напряжения минимум на 100мВ ниже чем напряжение питания схемы.

                        По-сути они правы, ибо на 750мВ — еще ниже ;-), но пользователи берут за основу число из документации.
                          +2

                          вопрос, на сей чудной плате E- с GND не соединен?

                            0

                            Сказать по правде, — не соединен :-(
                            Только что еще одним тестером перепроверил.
                            Плата — однослойная — дорожек не наблюдается.


                            В доке тоже все туманно:


                            такой он китай


                            То-есть земля должна быть вроде одна, но на плате начертили MCU GND и ADC GND

                              +2
                              Сказать по правде, — не соединен :-(

                              Так соедините, иначе у Вас схема не соответствует datasheet-у.

                              То-есть земля должна быть вроде одна, но на плате начертили MCU GND и ADC GND

                              Ну они правильно нарисовали, цифровую землю и аналоговую, они соединяются вместе в одной точке (как правило разводят от точки подачи питания), а дальше каждая идет в свою часть платы. Это один из методов борьбы с помехами.
                              +3
                              А она там по всей видимости одна, только с разных точек подключения. Все аналоговые сигналы отсчитываются относительно AGND, хоть она и соединена с цифровым общим проводом но разница в милливольты запросто может набежать.
                              Судя по картинке, E- должен сидеть на AGND. И на реальной платке он на AGND.
                                0
                                del
                                +2
                                Так это должен быть основной вывод всей вашей статьи — китаец накосячил с разводкой платы, и для корректной работы надо её допиливать.
                                Сейчас, насколько я понимаю, вся эта конструкция питается через защитный диод на какой-то из ножек.
                                В общем, киньте перемычку с площадки Gnd на ногу AGnd микросхемы (эта же цепь, насколько я понимаю — левые ноги C8, C7).
                          +3
                          Извините, но я тоже ничего не понял…
                          Да, напряжение задается делителем. но регулируется оно внешним биполярным
                          транзистором — Q2 на вашей плате.
                          На его переходах, мне кажется. должно что то «падать»…
                            0
                            Вот как раз данный момент (большее падение на полупроводниках) меня и смутил, заставив взяться за тестер, поскольку по мануалу напряжение насыщения для транзистора S8550 — 0.5В
                              0
                              напряжение насыщения для транзистора S8550 — 0.5В

                              Это при токе коллектора = 500мА. Боюсь исправный тензомост такой ток не обеспечит.
                                0
                                Скоро вы осознаете дзен китайских даташитов — им верить нельзя.
                                Потому что в даташите транзистор dirtypcbs.com/assets/datasheets/S8550-2TY.pdf (верю на слово, т.к. маркировку на фото не вижу) на графике collector-emitter saturation voltage этот самый вольтадж измеряется в вольтах (не милли!) и доходит до 500.
                                При малом токе (типовое потребление АЦП — 1.5 мА + мост ещё какая-то доля мА) напряжение насыщения типичного мелкого биполярного транзистора меньше сотни мВ.
                                +1
                                Если биполярный, упадёт там около 0.5В, тогда делитель надо рассчитать на напряжение не более 2.6В(при питании 3.3В), лучше с запасом — 2.3-2.2В. Второй резистор должен быть не более 6кОм.
                                  0
                                  существует такая вещь, как обратная связь. и она может легко компенсировать подобные мелочи.
                                  0
                                  А точность резисторов не влияет на точность измерения? Что-то мне кажется, что даже для 16-битного АЦП нужны не обычные резисторы, где сопротивление может отличаться от указанного на корпусе, а какие-то особые, или может даже не резисторы вовсе.
                                    0
                                    Точность — не влияет. там разве что важна стабильность их номинала. Всёравно всё это в целом калибруется по месту по образцовому весу.
                                    +5
                                    Этой статье не место на Хабре. Ей место на форуме ардуинщиков.
                                    После прочтения статьи становиться ясно, что автор профан в электронике.

                                    Я-же который раз сталкиваюсь с несоответствиями мануалов — притом ладно, линейный регулятор сгорает при вдвое меньшем входном напряжении, или настройки модуля Ai-Thinker не сохраняются, но перепутать формулу в документации — это перебор.

                                    Документацию пишут люди. Людям свойственно ошибаться. Ошибки в документации встречаются и у более именитых производителей. Как говориться доверяй, но проверяй. Формула приведена к рисунку 1, где сам рисунок?

                                    С первых дней радио-кружка нас учили, что «масса» — она в схеме общая

                                    Данное утверждение в корне не верно, все зависит от схемотехники.

                                    Удивление автора, по поводу трассировки платы от дядюшки Ляо из Чайнариладж, вообще странные. Сам купил поделие за копейки, не проверил трассировку и удивляется, что она через одно место работает (что снова указывает на дилетантство). Покупать надо было хотя бы от нормальных производителей, например SparkFun.
                                      0

                                      Даташит — это входные параметры тестирования чипа. Если характеристики микросхемы не соответствуют документации, значит это или брак, или сам производитель не проверял свой продукт по своему даташит.


                                      Собственно это и ключевое отличие дорогих TI и AD от более доступных китайских аналогов

                                        0
                                        В даташите на данную микросхему, просто банальная опечатка (формула расчета резистивного делителя). Про параметры электрические, временные и прочие, разговор не шел.
                                          0
                                          а может там, некстати, и опечатки нет.
                                        0
                                        +1
                                        Без типовой схемы применения HX711 — нельзя судить о правильности формулы.
                                        Без схемы отладочного модуля на ней и сличения с типовой — нельзя понять о каких таких «землях» и «лунах» ведёт речь автор.
                                        +2

                                        Я бы не рекомендовал пчеловодам покупать ваши весы. Это не прибор, а игрушка. В данном продукте используется, в качестве измерительного устройства схема на самых дешевых компонентах. То, о чем автор говорит- это схема уставки опорного напряжения. Источник опорного напряжения — это ключевой компонент, обеспечивающий точность и стабильность измерений. Автор думает, поставил резисторы и все тип-топ. Только про стабильность измерений можно забыть. И ладно, это отдельные измерения, но автору нужна ретроспектива, т.е изменение по времени. А точностью этих измерений огромные проблемы- в первую очередь, из за внешней температуры и стабильности источника питания. А про то, что ставить надо прецизионные резисторы, как минимум, автор не догадывается. Вообще-то для таких задач используют отдельные источники опорного напряжения. Такая микросхема обеспечивает сверхвысокостабильное напряжение и сверхнизкий шум напряжения, относительно которого производятся вычисления. И стоит она дороже самого АЦП, а для этого- на порядок дороже. Только таким образом можно достичь заявленной точности преобразований. Резисторы, кстати, имеют свой тепловой шум. Настоятельно советую автору непожмотиться и приобрести настоящий комплект измерений на 24 бита, сделанный профессионалами. И сравнить. Измерения с точностью выше 16 бит с наскока и без глубоких знаний схемотехники не решаются.

                                          +3
                                          Ни прецезионные резисторы, ни прецезионный ИОН там не нужны. Там более важна стабильность параметров резисторов и ИОН во времени и от температуры. Весы можно откалибровать потом использовав программное масштабирование, а вот с зависимостью от температуры ничего не поделать. И даже внешний датчик не поможет — он будет всегда отставать от реальной и для стабильности измерений нужен будет термостат с «прогреванием» перед работой.
                                          У резисторов делителя ТКС будет почти одинаковый и компенсируется, остаётся только один элемент — встроенный ИОН. Но и тут можно обойти требованием калибровки перед использованием и отсутствие сквозняков. Дополнительно можно наколхозить термостат для чипа, прогревать его до 50 градусов и при этой температуре откалибровать.
                                          0
                                          Тут случай, когда в коментах информации больше, чем в статье. Нередкий случай.
                                            +1
                                            Очень странное решение — три преобразователя на 4 тензодатчика, как так?
                                            Делал подобную игрушку из напольных весов, там все 4 датчика объединены в мост и измерение делает одна микросхема. Будет существенная разница при разных схемах включения?
                                              0
                                              Ничего не странное — используемые 50кг датчики содержат по половинке моста и подразумевают 3 возможные схемы включения:
                                              1. 4 датчика на один тензомодуль (как в напольных весах) — тогда каждый полумост разворачивается в одно плечо.

                                              2. 2 датчика нормально соединяются в один мост

                                              3. 1 датчик включается на E+, E- и выходом на А+, вторая половина моста образуется килоомными резисторами с E+, E- на A-

                                              У меня один датчик по второй схеме, и два — по третьей.

                                              Разница — есть — амплитуда сигнала во втором случае падает вдвое, в последнем — вчетверо против использования 4 модулей в одном мосту.

                                              То-есть это я для удобства отладки собрал такой стенд, а вообще 3 улья взвешиваться будут.
                                                +1
                                                Понял, спасибо.

                                            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                            Самое читаемое