Качество АЦП важно потому, что именно уровень выбранной величины оцифровки и дает ту самую нестабильность, которую
программно побеждать равнозначно борьбе Дон Кихота с мельницами.
Программно можно исправить всё. С заданной точностью.
Качество АЦП состоит из линейности и стабильности. Или нет?
В моей реализации линейность АЦП не имеет ни какого значения. Значение имеет стабильность его работы. Со стабильностью у ESP вроде всё нормально. Пока мои экземпляры меня устраивают. У AMS1117 есть температурный дрейф, но это решается включением вольтметра заранее, «на прогрев».
Теперь о линейности.
Абстракция программы
Есть черный ящик: с одной стороны цифры моего любимого вольтметра, с другой -- цифры от АЦП.
Внутри чёрного ящика входные цепи и сам АЦП. Выполняя калибровку, я создаю таблицу соответствий цифр вольтметра с цифрами АЦП.
Вот кусок моей таблицы:
...
{volt:2.4, k:0.0, adc:17},
{volt:2.5, k:0.0, adc:31},
{volt:2.6, k:0.0, adc:45},
{volt:2.7, k:0.0, adc:57},
{volt:2.8, k:0.0, adc:68}...
Вот таблицы соответствия в графике:
Что происходит в чёрном ящике - мне совсем не интересно, мне очень важно чтоб всегда происходило одно и то же.
К слову, если возникнет необходимость, в чёрный ящик можно положить любые датчики с аналоговым выходом - температура, освещенность...
Провёл калибровку - всё работает, журналы пишутся, графики смотрятся.
Немножко изменив программу можно и цифровые датчики прикрутить.
Или есть надежды что цифровые датчики не врут во всём диапазоне значений? У меня нет. Пробовал синхронизировать два DallasTemperature от 20 до 80 градусов. Неоптимистичненеько
.
О "точности на ваше усмотрение"
Я предполагаю, что между точками таблицы, изменение соответствия вольты=>АЦП происходит линейно, по этому чем чаще точки - тем выше точность в промежутках.
И если читать сначала и вдумчиво...
Автор дал прекрасную идею защиты МК. Что он имел в виду - он имел в виду... Я лишь проверил идею - она достойно работает.
Во первых у Вас по идее должен использоваться и наверное используется аналоговый вход. И защита активным буферным каскадом Вам не подходит. Во вторых, защита должна ограничивать на уровне максимально допустимого для используемой микросхемы, а по приведенной схеме, вход в момент срабатывания защиты при R2=0 (так можно исходя из схемы), будет все равно сожжен, поскольку максимальное для ESP32 всего то 3,6V, а защита ограничит до 5V и этого будет достаточно, чтобы схема умерла.
Защита AMS1117 ограничит до 5V? Это вопрос, я действительно не знаю - не электронщик.
В моей схеме, AMS1117 - 3.3V. В схеме Рюмика - да, 7805.
Я предположил, что R2С2 - это фильтр пульсаций. Или они выполняют защитные функции? (Не электронщик)
Для моего случая фильтр вреден, т.к. по пульсациям я определяю «здоровье» исследуемых АКБ.
Возможно Вы замечательный программист, программу просто не смотрел, но аппаратную часть надо обязательно переделывать.
Успехов.
Спасибо! Успехи несомненно будут!
Схему переделывать не буду, 2 устройства работают почти не выключаясь уже пару месяцев - нареканий нет.
За это время, наверняка, и девяносто вольт прилетало неоднократно.
И немножко по итогам использования сих девайсов.
Я невероятно доволен, что руки дошли их сделать. То, что освободился стол, что мне не нужно 12-20 часов постоянно тыкать щупами и не забывать выключать вольтметры - (пикают, гады или батарейки в ноль высаживают) - это наименьшие из приобретений.
Самое важное - это неограниченные по времени и весьма точные графики процессов.
Я увидел, чем отличается «живой» АКБ от «уставшего» и от «дохлого», я понял как происходит разряд и почему не нужно разряжать ниже 12.
Увидел когда АКБ заряжен и всё можно останавливать...
Много ещё всякого интересного...