Сводный список записей блога

--->>>> Сводный список записей блога <<<<---

15 марта 2024

Блок питания с функцией записи

Картинка из интернета

Характеристики

  • Входное напряжение 12 В
  • Выходное напряжение 1,5 - 5,5 В
  • Выходной ток до 250 мА*
  • Дискретность измерения выходного напряжения 5мВ
  • Дискретность измерения тока 1 мкА в диапазоне 0 - 1,1 мА, 0.1 мА в диапазоне выше 1,1 мА**
  • Количество измерений/сек - 1000/500/250
  • Буфер - 50 000 измерений
  • Отображение графика потребления на дисплее
  • 2 варианта масштаба графика - абсолютный (от 0 и до максимума) и с адаптивным нижним пределом.
  • 2 варианта отображения каждой экранной точки графика - среднее или минимальное+максимальное значение
  • Приостановка записи в буфер и просмотр сохраненных в буфере данных с возможностью увеличения масштаба и перемещения по графику
  • Сохранение измерений на SD(TF)-карту.
  • Усреднение данных при записи на SD(TF)-карту - 1, 10 или 50 измерений
  • Часы реального времени (для файловой системы)

*Программное ограничение, при превышении тока выход БП отключается в течении секунды. Долговременный выходной ток устройства определяется рассеиваемой мощностью микросхемы стабилизатора. При рассеиваемой мощности 500 мВт рекомендуемый средний ток не должен превышать 65мА при выходном напряжении 1.5 вольт, при напряжении 5 вольт - 125мА. 

**Данное устройство не является точным измерительным прибором и предназначено прежде всего для оценки потребляемого нагрузкой тока в динамике. Погрешность измерений может колебаться в пределах 1-2 дискретных единиц.

История создания и маленький кусочек теории

Иногда мне приходится разрабатывать и тестировать различные автономные устройства. А одно из основных требований к автономному устройству - низкое энергопотребление.

Соответственно, возникает необходимость как то померять потребляемый устройством ток. Если это какое то устройство, которое потребляет энергию постоянно - можно взять мультиметр и просто измерить потребляемый ток. 

А если устройство большую часть времени находится в энергосберегающем режиме и только изредка включается в активный режим на короткое время? Тогда мультиметр не поможет, поскольку не сможет нормально измерить кратковременное повышение потребления.

Как вариант, в цепь питания устройства можно включить шунт и через соответствующий усилитель его подключить к АЦП. Преобразователь будет оцифровывать значения потребляемого тока, например, каждую миллисекунду. И далее эти значения будут где то сохраняться. Потом сохраненные значения можно будет просмотреть и проанализировать.

А что бы падение напряжения на шунте не влияло на выходное напряжение, шунт нужно включить в цепь обратной связи стабилизатора напряжения.


Это пример простейшего стабилизатора напряжения. Здесь выходное напряжение через делитель сравнивается с опорным напряжением и операционный усилитель вырабатывает управляющий сигнал для регулирующего транзистора. Поскольку шунт находится перед делителем - падение напряжения на нем на выходное напряжение не влияет.
Напряжение с шунта усиливается и передается на АЦП.

Выглядит все очень красиво. но первые вопросы возникают при выборе сопротивления шунта. Ведь тестируемое устройство в режиме ожидания может потреблять 1-2-5 мкА, а в активном - до 50-100-200 мА. 
Если взять шунт с низким сопротивлением, то падение напряжения на нем при малых токах будет низкое. Это напряжение будет сложно усилить без влияния помех и шумов. Если взять шунт с высоким сопротивлением - то при больших токах на шунте будет достаточно большое напряжение. Что потребует достаточно высокого входного напряжения. Кроме того, на шунте будет выделяться достаточно большая мощность. А нагрев шунта может вызвать изменение его сопротивления, что негативно скажется на точности измерений.

Например, шунт 1 Ом. При токе 100 мА падение напряжения будет 100 мВ. На шунте будет выделяться мощность 10 мВт. Это достаточное напряжение для усиления и дальнейшей оцифровки.
Теперь посмотрим, что будет при токе 1 мкА. Падение напряжения составит всего 1 мкВ. Это достаточно маленькое напряжение и для его усиления уже нужно думать о защите от помех, а так же применять малошумящие усилители.

Можем попробовать взять шунт 100 Ом. Тогда при токе 1 мкА падение будет уже 100 мкВ. Это напряжение уже гораздо легче усилить и отфильтровать от помех.
Но при токе в 100 мА на шунте будет падение напряжения 10 вольт. И мощность будет 1 Ватт. Это очень много.

Есть еще один аспект - разрядность АЦП. Диапазон 1 мкА - 100 мА с шагом 1 мкА - это 100000 точек. Т.е. нужен АЦП с разрешением не менее 17 бит (131 тысяча точек). А с учетом шумов и погрешностей - желательно взять АЦП 18..20 бит. Для уменьшения помех желательно для каждой точки проводить несколько преобразований и потом их усреднять. А такие АЦП, да со скоростью не менее 2000 SPS (выборок в секунду) - достаточно дороги.

Напрашивается другой вариант. Нужно взять 2 шунта и переключать их в зависимости от измеряемого тока. Причем переключать как то автоматически.


Осталось придумать, как переключать шунты. 
Приведенная выше схема достаточно сложна в реализации. Ведь нужно иметь какой то быстродействующий переключатель, что бы он успевал среагировать даже на короткие импульсы потребляемого тока. И помнить каждый раз, данные от какого шунта у нас идут на АЦП.

Попробуем несколько переработать данную схему.


Здесь мы соединили последовательно два шунта. Первый, низкоомный, предназначен для измерения больших токов. Второй шунт с более высоким сопротивлением - для измерения малых токов. 
И сигнал от усилителя первого шунта управляет ключом, пропускающим ток в обход второго шунта. В качестве такого ключа можно попробовать применить какой то полевой транзистор.
Нужно придумать какую то пороговую схему, управляющую этим транзистором. 

И тут к нам на помощь приходит обычный кремниевый диод. А точнее - его пороговая характеристика в области низких напряжений.


Диод ставится параллельно второму шунту. При увеличении тока на шунте будет возрастать падение напряжения. И начиная с определенного момента, диод будет открываться и пропускать часть тока через себя. Т.е. при любых токах падение на втором шунте будет ограничено падением на диоде. Для кремниевого диода это напряжение порядка 0.6-0.7 В.

Тогда первый шунт можно взять сопротивлением 1 Ом. Этот шунт будет отвечать за измерение токов в диапазоне от 1 мА и выше. Второй шунт, сопротивлением 200 Ом, будет применяться для измерения малых токов, до 1 мА. При токе 1 мкА на шунте будет падать 200 мкВ. При токе 1 мА - 200 мВ. При таких напряжениях кремниевый диод не оказывает практически никакого влияния. Он начнет открываться где то при 350-400 милливольтах. И полностью откроется, стабилизируя напряжение на втором шунте на уровне 0.7 вольт. Мощность, выделяющаяся на втором шунте при этом будет в районе 2.5 мВт.

Разделение на два диапазона позволит применить более дешевые АЦП. 
Слаботочный диапазон 0 - 1000 мкА с шагом 1 мкА, сильноточный - 0 - 200 мА с шагом 0.1 мА. 
Для таких интервалов будет достаточно даже 12-битного АЦП, встроенного в STM32.

Недостаток такой схемы - более грубые измерения на сильноточном шунте.

Еще есть нюанс. После шунтов подключен делитель для обратной связи. И через него течет ток, который так же создает падение напряжения на шунтах. Но поскольку далее планируется цифровая обработка данных, данный ток можно при калибровке учесть, он линейно зависит от выходного напряжения стабилизатора.

После вот таких теоретических изысканий настал черед макетирования.

В качестве стабилизатора я взял ADP3334 от Analog Devices с отдельным входом обратной связи, что позволило мне сделать регулируемый стабилизатор и включить шунты перед делителем обратной связи. 


В качестве усилителя сигнала с шунтов был применен прецизионный двухканальный ОУ AD8626 с высоким входным сопротивлением. Тоже Analog Devices.

Оцифровку и обработку данных выполнял STM32F411CE на отладочной плате (BlackPill).
Результаты тестов меня удовлетворили и настал черед создания готового устройства.

Микроконтроллер никак не управляет стабилизатором, а выполняет только функции измерителя и регистратора. Т.е. по сути - это аналоговый регулируемый источник питания, к которому подключен цифровой вольтметр и цифровой миллиамперметр.

Эксперименты показали, что на результаты измерений влияет помеха от мобильного телефона. Поэтому в готовом устройстве, возможно, есть смысл закрыть область стабилизатора и операционных усилителей жестяным экраном, подключив его, например, к 39 пину платы микроконтроллера...

Схема.


Схема в PDF.

Питание.

Устройство питается от напряжения 12 вольт. Эти 12 вольт поступают на вход устройства и через фильтрующий дроссель попадают на линейный стабилизатор IC3. На выходе этого стабилизатора 9 вольт, от которых питается вся аналоговая часть устройства. Нефильтрованное напряжение 12 вольт используется для питания реле, включающего и выключающего выход.

Аналоговая часть.

Стабилизатор IC4 - ADP3334, включен по типовой схеме. Делитель обратной связи включает в себя 4 резистора. 2 переменных резистора с линейной характеристикой (B) отвечают за грубую и точную регулировку выходного напряжения. Резисторы подобраны таким образом, что бы выходное напряжение регулировалось в диапазоне 1.5 - 5.5 вольт. C16 - фильтр, R8 - нагрузочный резистор для нормальной работы стабилизатора.

Рабочий ток ADP3334 - 500 мА, пиковый до 800 мА. Выходной ток ограничен программно на уровне 250 мА. При превышении тока выход БП отключается в течении секунды. Следует учесть, что долговременный выходной ток устройства определяется рассеиваемой мощностью ADP3334, при выходном напряжении 1.5 вольт рекомендуемый средний ток не должен превышать 65мА, при напряжении 5 вольт - 125мА. Это расчеты для рассеиваемой мощности 500 мВт. ADP3334 имеет встроенную защиту от перегрева, при 165°C стабилизатор выключается. Для лучшего охлаждения под стабилизатором предусмотрен небольшой полигон из меди, а так же отсутствует маска. При монтаже ADP3334 можно на ее нижнюю поверхность даже нанести совсем немножко термопасты.
Отдельной защиты от КЗ не предусмотрено

Шунты. R9 - это сильноточный шунт. Резистор R12 - слаботочный шунт.

IC6A, IC6B - усилители сигнала с шунтов. Усилители включены по схеме дифференциального усилителя. Для правильно работы усилителей необходимо максимально точно подобрать пары резисторов: R20 и R21, R22 и R23, R24 и R25, R26 и R27. Абсолютное значение резисторов не так важно, как идентичность пар.

Сопротивления подобраны таким образом, что бы напряжения с шунтов в рабочих диапазонах токов попадали в рабочий диапазон АЦП микроконтроллера.

С выхода усилителей через фильтры R29C12 и R30C13 усиленный сигнал уходит на АЦП микроконтроллера.

IC7 - повторитель для измерения напряжения. R31R34C14 - фильтрация и приведение диапазона выходного напряжения к допустимому для АЦП микроконтроллера.

Реле K1 включает и отключает выход устройства. 

Питание цифровой части.

Питание микроконтроллера обеспечивает стабилизатор IC1. 

Стабилизатор IC2 обеспечивает отдельное питание для подсветки дисплея и SD-карты. 
Когда напряжение на шунтах превышает рабочее, выходное напряжение на усилителях IC6 может превысить рабочее напряжение микроконтроллера 3.3 вольта. В этом случае излишек напряжения через диоды D3D4 попадет в шину питания подсветки дисплея и SD-карты, повышая их приблизительно до 3.5 вольт. Именно поэтому используются два отдельных стабилизатора питания, для микроконтроллера и для подсветки дисплея и карты.

Цифровая часть.

Микроконтроллер обеспечивает измерение и регистрацию значений тока и напряжения. Применен микроконтроллер STM32F411CE на отладочной плате (BlackPill). Сигналы от усилителей шунтов и повторителя напряжения попадают на аналоговые входы МК. 

У МК в данном корпусе в качестве опорного напряжения используется напряжение питания.
Поскольку стабильность напряжения IC1 может оказаться недостаточной, дополнительно к микроконтроллеру подключен отдельный источник опорного напряжения IC8 - TL431A.
Его стабильность гораздо выше, чем у стабилизатора напряжения. Это позволяет программно корректировать искажения, вносимые флуктуациями напряжения питания МК.

Каждую миллисекунду МК несколько раз проводит серии оцифровок значений на аналоговых входах. Далее происходит усреднение оцифрованных значений и их коррекция.
Рассчитанные значения потребляемого тока сохраняются в буфер в оперативной памяти МК. 

Информация отображается на монохромном ЖК-дисплее разрешением 128х64 пикселя с контроллером Sitronix ST7565.

Так же к МК подключен слот для microSD(TF)-карты памяти. Это позволяет сохранять на карту измеренные значения тока и напряжения. Сохранение производится с частотой выборки - 1000, 500 или 250 раз в секунду. Размер сохраняемых данных колеблется от 1 до 1.5 мб/минута при 1000 измерений в секунду. Так же можно включить режим усреднения каждых 10 или 50 измерений и сохранения на карту усредненных значений. Это позволят уменьшить размер сохраняемого на карту файла.

EEPROM-память IC9 предназначена для сохранения настроек и калибровочных данных.

Управление устройством производится восемью кнопками SW1-SW8.

Детали и замена.

Микроконтроллер. Тут без вариантов - BlackPill с чипом STM32F411CE. Например, вот.


Дисплей. Разрешение 128*64, контроллер ST7565, диагональ 2.2", SPI-интерфейс.  Например, вот.

Дисплей должен быть на переходной плате, трехвольтовая версия (без стабилизатора). 

Слот для SD/TF-карты. Простой слот без защелки с доп. контактами наличия карты. Например, такой.

Стабилизаторы. AMC1117-33 - в корпусе SOT-223, 7809 - в корпусе SOT89.

Дроссель. Дроссель просто фильтрует помехи от внешнего БП. Типоразмер дросселя - 4D18 (CDRH4D18), индуктивность - чем больше, тем лучше. Минимальный ток дросселя - 500 мА.

Реле. LEG-12 или аналогичное. Одна переключающая или нормально открытая контактная пара, катушка 12 вольт DC. Например, вот или вот.

IC6 - ОУ усилителя сигнала с шунтов.  AD8626 - прецизионный малошумяший rail2rail двухканальный ОУ с КМОП-входами. Можно заменить чем то похожим, Совместимым по выводам. Требования - частота единичного усиления от 2 МГц, КМОП-входы, r2r, питание не менее 10 вольт (+/-5В), низкие шумы.
Следует учесть, что AD8262 может быть в корпусе MSOP. Этот корпус совместим по выводам с SOIC, требуется только коррекция печатной платы под этот корпус.

IC7 - повторитель напряжения питания. OP07C от Texas Instruments. Здесь требования к ОУ более низкие. Единичное усиление от мегагерца, желателен низкий дрейф и смещение.

Регулировочные резисторы. Резисторы 200 кОм и 10 кОм с линейной характеристикой (B).
Просто переменные резисторы. У меня вот такие

Ручки для резисторов я применил вот такие



Кнопки. Тактовые кнопки 6х6 мм для поверхностного монтажа, у меня применены высотой 12 мм + колпачки. Например, вот.

Разъем питания. Стандартный 5521 разъем на плату.

Выходные клеммы. Например, вот такие 4мм "бананы".



Печатная плата

Плата разведена в двух вариантах - для изготовления в домашних условиях и для заказа на производстве. В ручном варианте увеличен диаметр переходных отверстий. Так же добавлены переходные отверстия для тех деталей, которые сложно паять со стороны деталей (конденсаторы, микроконтроллер, дисплей и т.д.). Для деталей, которые легко паять с двух сторон (например, диод D2), отдельные переходные отверстия не предусмотрены.

Изображения платы (версия для заказа на производстве).



Платы рассчитаны под корпус Z-19 производства Maszczyk, Польша.
Аналогичные корпуса есть и у других производителей, например Kradex.


Корпус имеет размеры 129х94 мм с высотой 25 мм.

Прикидка размещения деталей устройства в указанном корпусе:


Плата устройства устанавливается на предусмотренных местах для крепления через 6-миллиметровые нейлоновые стойки.
Такое крепление позволяет поместиться разъему питания с нижней стороны платы.
Переменные резисторы регулировки напряжения крепятся непосредственно к плате и подключаются отрезками монтажного провода.

Единственная проблема выбранного корпуса - примененное реле Rayex LEG-12 не помещается при такой компоновке ни над платой, ни под ней.
Можно применить реле в меньшем корпусе. Но у меня в наличии были LEG-12. Поэтому я предусмотрел в плате вырез для возможности установки реле на монтажных перемычках.
Плата предусматривает оба варианта монтажа данного реле.


В остальном монтаж особенностей не имеет. 

Герберы для заказа на производстве.

Герберы для ручного изготовления платы

Прошивка.

Прошивка заливается посредством ST-Link v2 и программы STM32 ST-LINK Utility через интерфейс для программирования на плате микроконтроллера. 

Для прошивки МК  к программатору необходимо подключить 3 линии - Gnd, SWDIO и SWCLK. Так же на МК необходимо подать питание. Теоретически, питание можно тоже подать от программатора, но правильней подать питание на устройство.

Для заливки прошивки необходимо, подключив плату к программатору, программатор к ПК, запустить программу ST-LINK Utility. 

Выбрать Target - Connect
После успешного подключения выбрать Target - Erase chip
Выбрать File - Open file - выбрать файл с прошивкой.
Далее Target - Program & Verify
После успешной заливки программы в МК - Target - Disconnect

Прошивка, версия 1.0.526.

Работа с устройством.

При включении устройства после заставки появляется экран основного режима.

На экране можно выделить несколько областей.

Область текущих значений (выделена красным цветом). Здесь отображается выходное напряжение устройства и потребляемый нагрузкой ток.
Так же в левом верхнем углу отображается символ microSD-карточки (если она установлена в считыватель).

Остальные области относятся к сохраненным значениям потребляемого нагрузкой тока.

Голубая область - график потребления тока за весь период времени, сохраненный в буфере.
При 1000 выборок в секунду это 50 секунд, при 500 выборках в секунду - 100 секунд, при 250 выборках - 200 секунд.

Область графика точками разделена на квадраты. Каждый квадрат - это 5, 10 или 20 секунд, соответственно.

Зеленая область - временная шкала графика в секундах. В правой части отображается текущее время.

Желтая область - диапазон графика в миллиамперах. Верхний предел подбирается автоматически по максимальному сохраненному в буфере току. 
Нижний предел, в зависимости от режима либо всегда 0 (фиксированный режим), либо подбирается по минимальному сохраненному значению тока в буфере (адаптивный режим).
В фиксированном режиме нижний предел графика подписан как 0 (fix).

Единица измерения - миллиамперы. Напротив графика находится значение тока, соответствующее правой границе графика.

Пример адаптивной нижней границы. Видно, что ток колебался в пределах от 810 до 832 мкА. Соответственно, пределы графика были автоматически подобраны для отображения графика в максимально детальном масштабе.


Нажатие на кнопку On/Off включает и выключает подачу тока на нагрузку. При включенной нагрузке светится контрольный светодиод.

Значения тока постоянно сохраняются во встроенный буфер на 50 000 измерений, заменяя там самые старые значения.

Нажатие на кнопку Zoom In переключает режим вертикального масштаба графика - фиксированный или адаптивный. При этом появляется соответствующее информационное сообщение.


Нажатие на кнопку Zoom Out переключает режим отрисовки графика - усредненный или минимальный+максимальный. Когда в одной точке графика умещается более одного значения в буфере (а в основном режиме на одну точку графика приходится 500 значений буфера).
При усреднении для каждой точки графика по соответствующим значениям в буфере рассчитывается среднее и далее рисуется одна точка графика.
При отображении минимального и максимального значений для каждой точки графика находятся минимальное и максимальное значения в буфере и на графике рисуется вертикальная линия от минимального к максимальному значению.

При переключении режима графика на экран так же выводится соответствующее информационное сообщение.

Режимы масштабирования и отображения графика так же можно переключить через меню настроек.

Нажатие на кнопку Hold переключает устройство в режим просмотра сохраненных в буфер данных. При этом сохранение новых данных в буфер приостанавливается

В режиме просмотра буфера меняется область с временной шкалой. Там вместо меток времени появляется диапазон отображенных значений в миллисекундах.

Так же там, при увеличении масштаба, появляется полоса прокрутки, отмечающая положение видимой области графика.
Чуть выше отображается число миллисекунд, соответствующее одной клетке графика.
В правой части будет мигать надпись HOLD.


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

В режиме просмотра кнопками Zoom In/Zoom Out можно менять масштаб графика вплоть до 10 значений буфера на клетку графика (одно значение буфера на пиксель дисплея).
Кнопками Shift left/Shift Right можно перемещать график к интересующей области.

Кнопка On/Off включает и выключает подачу тока на нагрузку. При этом выхода из режима просмотра не происходит.

Повторное нажатие кнопки HOLD возвращает устройство в основной режим, при этом возобновляется запись в буфер. 

В обоих вышеописанных режимах нажатие на  кнопку Ok вызывает меню настроек. 

Перемещение по пунктам меню выполняется кнопками  Zoom In/Zoom Out.

Изменение выбранного пункта меню производится кнопкой Ok.

Кнопка Hold - выход из меню или отмена в диалоговых режимах.

Первые два пункта меню меняют режимы масштабирования и отображения графика.

Третий пункт меню - SAMPLES/SEC - отвечает за количество измерений тока в секунду. Нажатие Ok циклически переключает значения 1000, 500 и 250.

Следующий пункт меню - SAMPLES/LOG LINE - отвечает за усреднение данных при записи на карту памяти. Доступны варианты 1, 10 и 50 измерений, переключаются циклически, кнопкой Ok. Т.е. на карту может сохраняться каждое измерение, 10 усредненных измерений и 50 усредненных измерений.
Данный пункт недоступен, если производится запись данных на карту памяти.

Пункт меню DATE AND TIME отвечает за установку времени. Выбор пункта меню открывает диалог изменения даты-времени:


Изменение значений производится кнопками Zoom In/Zoom Out, выбор изменяемого значения - кнопками Shift left/Shift Right. Сохранение даты-времени - кнопка Ok, выход без изменения времени - кнопка Hold.

Следующий пункт меню - настройка контрастности дисплея. Настройка выполняется аналогично установке времени.


Так же в режим настройки контрастности дисплея можно попасть, если держать нажатой кнопку Shift left при включении устройства.

Пункт меню CREDITS - информация о версии программы, а так же контакты автора.



Калибровка измерителя тока и напряжения.

Калибровка производится через пункт меню CALIBRATION - калибровка измерителя тока и напряжения. Данный пункт недоступен, если производится запись данных на карту памяти.


Для калибровки требуется максимально точный вольтметр, миллиамперметр и резисторы сопротивлением 100 Ом и 2 кОм...

Калибровка выполняется за четыре этапа.

  1. Калибровка измерителя напряжения по двум точкам, первая точка.
    К выходу устройства подключается вольтметр, ручками регулировки необходимо выставить напряжение на выходе ровно 1,500 вольт и нажать Ok.
    На дисплее будет выводиться черновое значение АЦП вольтметра, нормальным будет диапазон 700-800 единиц АЦП.
    После нажатия Ok в течении нескольких секунд будет сохраняться первая точка для измерителя напряжения, а так же первые точки калибровки нуля для измерителей тока. 
    На дисплее при этом будут выводиться соответствующие сообщения.


  2. Калибровка измерителя напряжения по двум точкам, вторая точка.

    Все точно так же, как и для первой точки, но нужно выставить выходное напряжение 5,000 вольт и нажать Ok. При этом сохранится вторая точка для измерителя напряжения и вторые точки калибровки нуля измерителей тока.
    Нормальное черновое значение АЦП - 2450-2550 единиц.

  3. Калибровка слаботочного измерителя тока.
    К выходу устройства необходимо подключить резистор в районе 2 кОм через точный миллиамперметр и добиться тока через этот резистор ровно 1,000 мА. 
    Если нет точного миллиамперметра, то можно измерить омметром сопротивление резистора и по формуле U = I* R рассчитать напряжение, которое должно быть на резисторе при токе 1 мА. Например, для резистора 2,000 кОм это будет ровно 2 вольта.
    Нормальное черновое значение АЦП  - в районе 2700-2800 единиц АЦП.
    После нажатия Ok будут сохранены данные для слаботочного измерителя тока.

  4. Калибровка сильноточного измерителя.
    Необходимо подключить к выходу устройства резистор в районе 100 Ом и добиться тока через него ровно 50,00 мА, после чего нажать Ok
    Нормальное черновое значение АЦП в районе 620-730 единиц АЦП.

После завершения четвертого этапа появится суммарная картинка измеренных значений АЦП.


IL:Z1/2 и IH:Z1/2 - это калибровочные значения для нулевых точек измерителей тока, они вычисляются на первом и втором этапах. Они как раз и учитывают паразитный ток через резисторы обратной связи регулятора напряжения, а так же утечку через резисторы обвязки ОУ.

Нажатие Ok сохранит измеренные значения в энергонезависимую память. 

В любой момент, нажав кнопу Hold, можно выйти из режима калибровки без сохранения значений. 

Почти во всех режимах кнопка On/Off работает независимо - включает и выключает нагрузку.

Запись на SD(TF)-карту.

Запись на карту включается и выключается кнопкой SD LOG. Запись работает независимо от режима устройства и при переходе в режим просмотра буфера не останавливается.

При включенной записи светится контрольный светодиод. Не рекомендуется вынимать карту памяти из устройства при включенной записи! Это может привести к повреждению файловой системы карты и потере данных.

Данные сохраняются в текстовые файлы с именами LOGxxxxx.TXT, где xxxxx - это числовой счетчик от 00001 до 99999. Перед началом записи устройство ищет на карте файл с максимальным номером, добавляет к номеру единицу и начинает сохранение в файл с таким номером.

В файле в первых трех строках указывается информация о файле и дате его создания.

Четвертая строка - указание единиц измерения.

Все последующие строки - это счетчик миллисекунд, напряжение и ток, разделенные символом табуляции.

Пример файла:

# Supply Current Monitor 1.0.524 log file
# (c) 2024 by GoldenAndy
# Log started at 2024-03-06 23:34:48
ms mV uA
1 1600 820
2 1600 821
3 1600 820
4 1600 820
5 1600 820
6 1600 821
7 1600 820
8 1600 821
9 1600 820
10 1600 820
11 1600 821
12 1600 821
13 1600 820
14 1600 821
15 1600 821
16 1600 821
17 1600 820
18 1600 821
19 1600 821
20 1600 820

Данные файлы можно загрузить в табличный процессор (MS Excel и другие) для дальнейшей обработки.


На графике очень хорошо видна шумовая погрешность АЦП 😕

Скриншоты.

Что бы не делать фотографии экрана и не рисовать картинки в редакторе, я добавил в устройство функционал сохранения изображения экрана на карту памяти.

Все вышеприведенные изображения экрана - реальные, сохранены самим устройством.

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

Снимок экрана сохраняется на карту памяти при нажатии кнопки KEY на плате микроконтроллера.

Для удобства можно взять отдельную кнопку и подключить ее к контакту A0 платы микроконтроллера.

Файлы снимков экрана сохраняются на карте памяти. Имена снимков - SCRxxxxx.BMP.
xxxxx - нумерация файлов от 00001 до 99999. Алгоритм подбора - аналогичный алгоритму подбора для файлов с данными.

Фото в интерьере.








Видео

Коротенький ролик



37 комментариев:

  1. Фундаментальный труд! Очень интересная работа.Несколько дней буду вникать.
    Случайно сделал ,недавно, нечто подобное, но много упрощенней и примитивней https://youtu.be/OkDvMUZ41xo?si=8Af4qF_9dYJZSrYm В описании есть ссылка на авторскую статью.Применена интересная микросхема INA226,делающая очень точные измерения по напряжению и току, на шунте 0.01ом.Приспособил для "ладошечного" БП на аккуме18650(на канале есть его описание).
    Постараюсь вникнуть в ваше устройство.Хотелось бы повторить .Это всегда очень интересно.
    Спасибо, с интересом изучаю вашу идею.

    ОтветитьУдалить
    Ответы
    1. ИНАшки хороши для малых шунтов. А на шунте даже 1 Ом начинают появляться нюансы. Если бы инашки можно было применить, я бы применил. Их есть у меня.

      Удалить
    2. Кстати, не увидел в видео ничего о калибровке.... 0.01 Ом - достаточно мелкий шунт и правильно проверить/подобрать его сопротивление с учетом монтажных дорожек и т.д. - тот еще метрологический изыск. А без подбора можно получить достаточно большую погрешность.
      И вы говорите - нет платы. Есть рисунок платы с обеих сторон в исходной статье.. Нету в скачиваемом виде, но это ж не беда. Это не разводить с нуля, а просто обвести....

      Удалить
  2. Анонимный17 марта, 2024 00:14

    Андрей, поздравляю! Как всегда, полезная и тщательно проработанная конструкция. Такую хочется повторить, в хозяйстве пригодится. Спящие и малопотребляющие устройства всегда хочется помониторить, чтобы оценить время работы от батарейки или аккумулятора, особенно в век умных вещей, ну и заодно
    оценить правильность написания прошивок в части, относящейся к засыпанию. сну и пробуждению автономного девайса.

    ОтветитьУдалить
  3. Не меняю своей позиции.Делать все ваши интересные устройства.Сейчас смотрю плату, если она пройдет по размерам под мою УФ-матрицу-то буду делать сам.Нет, придется где то заказывать, а это 2/3" упущенного интереса"🙂

    ОтветитьУдалить
  4. Конструкция весьма интересна и статья читается, как детектив - понятно и приятно. Спасибо Андрей!

    ОтветитьУдалить
    Ответы
    1. Самое интересное.... hackaday.io мне недавно подсунул устройство на INAшке со схожим функционалом, PIN сделал что то похожее.... Вот только проблема - не умеет INA в микротоки. у нее собственный втекающий ток от 40 мкА, плюс зависит и от приложенного напряжения...
      Вот и пришлось на ОУ делать....

      Удалить
    2. Да, как раз измерением и запоминанием микротоков и заинтересовался. Помню у метеодатчика очень проблематично было померять потребление во сне, да и процесс измерения и выкидыша данных, для тестера тоже был "жутким". Здесь, как я понимаю, можно все отследить по графикам?

      Удалить
    3. Да, конечно. Именно для таких задач я и создавал данный БП. У меня уже есть лабораторник с похожим функционалом. Но он неповторяемый. Там как раз инашка стоит и жуткий геморняк по коррекции ее показаний в зависимости от выходного напряжения. Ну и еще куча нюансов была. Не предназначена она для таких вещей.
      А тут достаточно шустрый и дешевый СТМ с отвратным АЦП.
      Пришлось делать 480 измерений каждую миллисекунду (480 000 измерений в секунду) и потом усреднять. И все равно, младший бит скачет. Область микротоков - такая нежная...
      На графике видно, как пляшет младший разряд АЦП.
      но с другой стороны - это оценочное устройство, а не измерительный прибор.
      Так что если надумаете повторять или будут вопросы - милости прошу. Телеграм доступен. Вайбер и Скайп тоже, но в них менее удобно.

      Удалить
    4. Игорь Dadigor, вероятно, будет заказывать платы в Китае. Я ему скомпоновал этот БП и щуп-"звонилку". Если между вами почта ходит, может договоритесь насчет плат.

      Удалить
    5. К сожалению, тут с почтой, переводами и детальками почти полный абзац.

      Удалить
  5. К сожалению, плата большого размера, больше моей УФ матрицы.Буду думать, что делать.

    ОтветитьУдалить
    Ответы
    1. Спишитесь с Игорем, возможно закажете платы напополам.
      А платы у меня обычно укладываются в бесплатный лимит Орла - 80*100мм.
      Ну и в акционный размер фабрики.

      Удалить
  6. Да, спасибо, с Игорем спишусь. Я еще немного подумаю по своей.Как то делал одну плату с "половинчатой", чередующейся засветкой.

    ОтветитьУдалить
  7. Жду ответа Игоря.
    Если отвязать от сети и использовать аккум типа 18650 с повышайкой?Может мой последний "ладошечник", в нем все это есть.Будет еще дублирующая запись эл. параметров.
    .Есть ЛБП, небольшой, но все одно, габаритный.

    ОтветитьУдалить
    Ответы
    1. Данный БП является приставкой, ему нужен свой, первичный БП.
      Собственное потребление устройства - 80-90 ма по 12 вольтам без учета реле.
      Добавляйте КПД повышайки и считайте, сколько будет потребляться от 18650...
      Я бы предложил батарею из нескольких 18650... Вы можете проанализировать все входные цепи по питанию и определить, какое минимальное и максимальное питание можно подать на вход.

      Удалить
  8. Сделал несущественные изменения в плате, убрав не важную шелкографию и вписался в размер платы 81х101, а это уже можно пробовать самому сделать.Сейчас редактирую дорожки под 0.4мм(фоторезист неважный, подстрахуюсь).Посмотрю, что в итоге получится и окрнчательно решу.

    ОтветитьУдалить
  9. В SL6 из герберов, плата создается 119,95х97,24, т.к. плюсуется выступающая шелкография, я ее убрал и выделил "чистую плату.Размер ее , вы правильно обозначаете.У меня, к вашим платам интерес не менее 1/2, от общего удовольствия🙂.Высока вероятность, что буду делать сам.В зону, где у меня меньше уверенность в качественном УФ, я буду направлять часть платы с потенциометрами, там нет ответсвенных дорожек.УФ должно хватить.
    По готовым платам большое сомнение.
    Источник внешнего питания подберу после изготовления.Это уже проще.

    ОтветитьУдалить
    Ответы
    1. По готовым платам хотя б не будет вопросов, почему вдруг не работает. Поскольку платы проходят на заводе электроконтроль. Но то ваше право. Я герберы под ручное изготовление сделал тоже. Но там надо внимательно смотреть, некоторые детали паяются с двух сторон и выполняют роль перемычек.

      Удалить
  10. По этой плате, я не спорю.Желательна заводская, габариты, не для моего производства.
    Несколько дней, еще подожду, может кто из друзей поможет заказать.
    Детали заказаны, отступать некуда. Не будет заводской-буду пробовать делать.

    ОтветитьУдалить
  11. Андрей, с Игорем постояннно общаюсь.У него, пока не получается.Ищет варианты.

    ОтветитьУдалить
    Ответы
    1. ну он сказал, что будет пробовать заказывать, я ему готовлю файлы сейчас

      Удалить
  12. Все таки вынужден делать подготовку для своей платы.Возник небольшой вопрос.Андрей,ощущение, что отсутствует два переходных отверстия, для контакта не принципиально, но по рисунку платы проситсяСм. на фото https://drive.google.com/file/d/176FAWM6yvQKj0Pw-6dkegOWlXstGWSQG/view?usp=drivesdk

    ОтветитьУдалить
    Ответы
    1. А нормально писать в телеграм, вайбер или скайп не?
      Неудобно через комментарии.
      Игорь вроде заказывает платы.
      По переходным - там они не нужны. Это экранирующие дорожки.

      Удалить
  13. Конечно, можно писать в Скайпе, я думал вам сдесь лучше.

    ОтветитьУдалить
    Ответы
    1. здесь сложно картинки , нет оперативного диалога. Мы с Игорем в телеграмме общаемся постоянно. Он, кстати, сегодня заказ делать будет.

      Удалить
  14. Добрый день.Андрей, а pdf разметки верхней панели корпуса не сохранился?Сложновато стало делать замеры.

    ОтветитьУдалить
    Ответы
    1. Так у меня заводской корпус. А отверстия я размечал, просто распечатав рисунок платы без дорожек и шилом наколов центры отверстий.

      Удалить
  15. Мне удалось купить заводской корпус, не буду сам делать. Посмотрю плату "вживую", решу что и как.

    ОтветитьУдалить
  16. По плате пока тишина.Почему и делаю часто сам, слишком большое ожидание.Подожду еще 5-7дней, не будет известий-начну сам.

    ОтветитьУдалить
    Ответы
    1. Ваше право. Но Игорь говорит, что уже вроде даже отправили платы. Попросите у него трекномер и отслеживайте вместе.

      Удалить
  17. Да я не капризничаю 🙂. Пока жду, а там посмотрю.

    ОтветитьУдалить
  18. Анонимный15 апреля, 2024 19:47

    Добрый день. Интересная разработка. Подскажите сигнал SDPRES со слота под микро SD карту это именно определение вставлена карта или нет? Правильно понимаю?

    ОтветитьУдалить

======= !!! ВНИМАНИЕ !!! ======================================================================
Гугл умный и боится спама. Поэтому иногда ваши комментарии Гугл отправляет мне на премодерацию. Отправлять или нет - решаю не я, а алгоритмы Гугла. Если ваш комментарий не появился сразу, значит я получу уведомление и опубликую ваш комментарий через некоторое время. Я стараюсь это делать достаточно оперативно.