Вольтметр амперметр на Ардуино. Другой подход.

dorogoy

✩✩✩✩✩✩✩
7 Июн 2020
28
3
Итак вопрос. В прошивках на 3d принтерах температуру с термистора показывают на экранепросто по таблице соответствия вместо расчетов. Допустим мы делаем вольтамперметр допустим даже 4х канальный. Известные проблемы: при использование дешёвых ОУ для усилителя шунта типо lm324 имеем нелинейны данные. Рассчитывать их надо по трёх этажным формулам если охото соответствия хоть какого нибудь. Измерение напряженя при помощи делителя тоже имеет нелинейность в разных диапазонах не совпадает с мультиметром.
Сам вопрос идея. Берём мультиметр который к компу цепляется, пишем скрипт который делает таблицу соответствия типо 800 6.71в 801 6.72в так же с усилителем шунта. Получаем таблицу из 8000 значений на 4х канальный вольтамперметр. И это будет точно быстрее работать, чем математика с плавающей точкой которую Андуина крайне плохо переваривает. Будет точно и дёшево. Не надо спец микросхем и дорогих ОУ. В чем проблемы, подводные камни.
 

viktor1703

★★★✩✩✩✩
9 Дек 2021
611
145
Изменено:

dorogoy

✩✩✩✩✩✩✩
7 Июн 2020
28
3
У атмеги с законом ома сложные отношения.
 

viktor1703

★★★✩✩✩✩
9 Дек 2021
611
145
быстрее работать, чем математика с плавающей точкой которую Андуина крайне плохо переваривает
Ну переваривает же. Или вам нужно много тысяч высоконаиточнейших измерений в секунду? Любой, даже самый супер-пупер наиточнейший прибор измерения (абсолютно любой величины) имеет некоторую погрешность. И вся проблема в том, что погрешности заводского прибора и вашего не совпадают. Вот вы и задумались вопросом нивелировать расхождения этих погрешностей.
 

dorogoy

✩✩✩✩✩✩✩
7 Июн 2020
28
3
@viktor1703, Тут во всей этой теме основная проблема это амперметр. Нелинейность lm324 при однополярном питании просто ужасна и нормальных значений не получить. А раз взялись за таблицу с током, почему не сделать таблицу с напряжениями при в диапазоне от 0-25 точность будет 0.02в по-моему более чем достаточно


@viktor1703,
Точность заводского прибора на порядок выше. То есть погрешность там в третьем знаке это означает со 100% вероятностью что атмега показывает не точно и надо стремится к показаниям тестера. Тем более тестер это специализированный прибор он для этого придумывался. Если вам по технической части сказать нечего. Пожалуйста не захламляйте тему вашими мировоззренческими и концептуальными понятиями о правильном и неправильном . Вопрос чисто технический .
 

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
В чем проблемы, подводные камни.
Предлагаемый вами метод - это индивидуальная настройка практически каждого собранного экземпляра, для чего придётся под этот экземпляр писать свои таблицы. Ну, может не каждого, но если чипы будут из разных партий, то это точно потребуется.
 
Изменено:

dorogoy

✩✩✩✩✩✩✩
7 Июн 2020
28
3

@PiratFox,
Да я это понял, вот это кажется не проблемой. Есть у многих производителей например UNI-T мультиметры с подключением к ПК. На один ком порт цепляем мультиметр на второй ардуину которая пишет в порт значения. Крутим потихоньку напряжение или ток а скрипт делает таблицу автоматом. Думаю не больше 30секунд минуты это будет для канала.
 

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
@dorogoy, для индивидуального использования это вообще не проблема, а вот при более - менее серийном производстве это сильно повысит конечную стоимость.
 

dorogoy

✩✩✩✩✩✩✩
7 Июн 2020
28
3

@PiratFox,
Кстати сильно сомневаюсь. Такой процесс довольно просто автоматизировать такая подстройка во время прошивки одноканльного вольтамперметра займет ну 30 секунд
 

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
@dorogoy, это на первый взгляд. Потребуется какой-никакой стенд для снятия характеристики и записи таблиц, как и ПО к нему. Опять же, каждый контроллер придётся прошивать 2 раза: первый раз тестовой прошивкой для снятия показаний, второй - заливка прошивки с полученной таблицей. А это всё время и деньги. Дело ваше.
 
Изменено:

Bruzzer

★★★✩✩✩✩
23 Май 2020
472
133
@dorogoy,
Если эта проблема остро стоит при 3d печати, то возможно на специализированных форумах по 3d печати есть обсуждения и решения.
Ваш вопрос относится к холиварным из разряда - с какой точностью достаточно измерять параметры.
Всегда есть тот кто говорит, что ему надо измерять абсолютную температуру с точностью до 0,1 С (или 0,01С) чтобы готовить сувид, гнать самогон ... И есть те кто говорят, что достаточно (условно) обычного термометра.
Если обсуждать - надо ли это в вашем случае - то повторюсь - наверное есть специализированные форумы со специалистами.
Если обсуждать как это сделать, то вы предложили простое для вас решение в котором нет технических проблем. Надо брать и делать.
Если обсуждать - получится ли достичь желаемых характеристик - то нужны исходные характеристики, целевые характеристики и бюджет. Но на данном форуме это перейдет в обсуждение стоит ли это усилий. Мое ДИЛЕТАНТСКОЕ мнение, что абсолютная точность точно не важна (до 1 С наверняка), МОЖЕТ БЫТЬ важно разрешение по температуре (повторяемость результатов).
 

dorogoy

✩✩✩✩✩✩✩
7 Июн 2020
28
3

@rkit,
Сейчас глянул лучше делать на lgt8f328p-lqfp32 у нее есть опорное напряжение на 4в и АЦП 12бит можно обойтись без внешнего источника опорного напряжения . А схема стандартная напряжение измеряем через делитель на резисторах, ток меряем как падение напряжения на шунте усиленном 4х канальным дешманским lm324. Просто ничего не считаем контроллером, потому что не получится ток нормально считать а дешёвом ОУ с однополярным питанием из за нелинейности, и большой нагрузки на 8 каналов АЦП которые ещё усрднять надо, а меряем заранее и пишим в массив . Получается никаких операций с плавающей точкой, высокая скорость работы высокая точность. Так же это работает в прошивке MARLIN при измерении температуры. Я спер оттуда эту часть кода, кода писал прошивку для своего другого проекта https://dzen.ru/a/YnDuX7ya4jKodGPb. До этого атмега просто тормозила при расчете температуры с усредением. Так же работает бутлфорс паролей на видеокартах но это уже другая история.
 
Изменено:

poty

★★★★★★✩
19 Фев 2020
3,230
940
@dorogoy, когда мало знаний и для расчёта резистивного делителя приходится обращаться к "калькуляторам", то вывод, конечно, можно сделать любой. Резистивный делитель не может являться нелинейным элементом, как и правильно включённый ОУ. Вход любого АЦП действительно имеет погрешность, особенно на низких разрядах, но она чётко прописана в datasheet и надеяться её преодолеть за счёт таблиц - гиблое дело.
Вот в видео, используется внутренний опорный источник и постулируется 2 проблемы: напряжение скачет и предел измерений не тот. Для устранения первой проблемы служит описанная в datasheet мера - подключение конденсатора к AREF (то, что сделано для 431-го в результате). Для устранения второй - увеличение коэффициента резистивного делителя (что по факту и было сделано далее в видео для 431). Кстати и номиналы резисторов тоже как-то вдруг на несколько порядков похудели "для большей точности". Это, кстати, тоже довольно точно описано в datasheet. И метод приведён для исключения этого. Профанация? Конечно.
@technotrasher не даст соврать: для ЦМУ мы делали 16 измерений (по 8 для каждого канала) + небольшая компенсация, эмулирующая экспоненциальную характеристику больше 50 раз за секунду. Кстати, там и усреднение есть.
То, что для обычного применения ещё и температурная компенсация важна, точность применяемых резисторов, байпасы, буферы, нормальное питание... говорить уже здесь не приходится.
 
  • Лойс +1
Реакции: technotrasher

dorogoy

✩✩✩✩✩✩✩
7 Июн 2020
28
3

@Эдуард Анисимов,
Да насчёт точности по вольтам все просто сойдёт 0.1 в диапазоне 0-25в потому что третий знак в разряде все равно будет скакать из за помех. По току думаю надо хотя бы 50ма в диапазоне 0-5а. Или 100ма 0-10а. Хочу к 4х канальной зарядке с qc которые продаются на алике прикрутить мониторинг. Потому что когда что нить подключаеш в глубоком разряде или с КЗ хотелось бы видеть кто сколько потребляет. Сейчас пользуюсь типо флешки такой с экранчиком. Но она одноканальная и торчит все время. Видел я зарядки на 6 каналов с вольтметром амперметром однако они без qc
 

poty

★★★★★★✩
19 Фев 2020
3,230
940
@dorogoy, но оно приводится Вами, как доказательство Вашей правоты. Эксперименты я лично приветствую и часто они дают много пищи для размышлений, не всё можешь предусмотреть теоретически. Но если на практике получаются результаты далеко отстоящие от теоретических, то настаёт время задуматься над методами, применёнными в экспериментах.
 

Эдуард Анисимов

★★★★★★✩
23 Сен 2019
2,410
976
58
Марий-Эл
используется внутренний опорный источник и постулируется 2 проблемы: напряжение скачет и предел измерений не тот.
Думаете я зря топлю за STM?
У неё есть встроенный источник напряжения. Сначала меряешь его, потом внешний сигнал. Внутренний источник имеет напряжение ниже порога рабочего напряжения питания. Поэтому какое бы питание не было, напряжение питания внутреннего источника остаётся постоянным. Причём от чипа к чипу оно стабильно, так как подгоняется индивидуально. Далее по формуле рассчитываешь измеренное напряжение.
Кроме этого они содержат на кристалле довольно хорошие дифференциальные усилители. Так что во внешних надобность отпадает.
 

poty

★★★★★★✩
19 Фев 2020
3,230
940
@Эдуард Анисимов, в Atmel тоже источник опорного напряжения имеет напряжение ниже порога рабочего напряжения питания - 1,1В. Отличие только в том, что он напрямую является референсом для АЦП, а не через промежуточное измерение.
И ровно так же, для уменьшения импеданса этого источника требуется включать конденсатор на внешних пинах, только у Atmel он подключается фактически параллельно источнику опорного напряжения, а у STM, получается, параллельно напряжению аналогового питания.
Точность у них несравнимая, здесь спорить бесполезно, но поддаётся корректировке, только в ручном режиме, а не на заводе, как в STM:
STM: 1.202 (-1.8%) - 1.224 - 1.242 (+1.8%)
Atmega 328p 1.0 (-10%) - 1.1 - 1.2 (+10%) первоначальная; стабильность 1.095 (-0,5%) - 1.1 - 1.101 (+0,1%) при напряжении 5В (СТАБИЛЬНОМ!), (-0,63%) - (+0,3%) на всём интервале напряжений
 

Эдуард Анисимов

★★★★★★✩
23 Сен 2019
2,410
976
58
Марий-Эл
в Atmel тоже источник опорного напряжения имеет напряжение ниже порога рабочего напряжения питания - 1,1В
А как же атмел меряет напряжение более 1.1 вольта?
Только при внешнем напряжении Vref = 5.
Разве только через делитель.
И у STM нет промежуточного измерения. Метод, что я описал используется только когда напряжение питания плавает.
Например при питании от аккумулятора, чип может питаться от 2.8 до 3.3 вольт. Когда высасываешь аккум досуха.
 

poty

★★★★★★✩
19 Фев 2020
3,230
940
@Эдуард Анисимов, более 1,1В - только через делитель (потому и референс). Делитель в любом случае нужен в большинстве случаев.