Например TDA7294

Форум РадиоКот • Просмотр темы - R2R ЦАП: калибровка при использовании дешевых резисторов.
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Сб июл 05, 2025 07:54:30

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: R2R ЦАП: калибровка при использовании дешевых резисторов.
СообщениеДобавлено: Пт мар 28, 2025 23:45:03 
Родился

Зарегистрирован: Пт мар 08, 2024 01:30:56
Сообщений: 12
Рейтинг сообщения: 0
Доброго времени суток! Пока не находил в инете описаний, в которых бы предлагалось выполнить калибровку для R2R ЦАПа. Поэтому выложил заметку про калибровку на pikabu. Основное соображение - делаем R2R ЦАП из самых обычных непрецензионных резисторов. Затем измеряем все возможные значения с помощью АЦП большей размерности, чем количество битов у ЦАПа. АЦП может быть медленный, главное чтобы бы было много бит.

Получаем набор всех возможных выходных значений для конкретного получившегося R2R ЦАПа. В теории для идеальной схемы выходные значения должны быть монотонны и линейны (прямо пропорциональны битовому значению). Но на практике выходные значения не будут полностью монотонны и не будут полностью пропорциональны. Вижу, что большей идеальности пытаются добиться за счет дорогих прецензионных резисторов. Но если после калибровки есть фактическая табличка значений, то главное, чтобы набор фактических значений более или менее равномерно распределялся по выходному диапазону. Тогда для любого выходного значения по табличке подбираем такую комбинацию бит, чтобы на выходе получилось бы наиболее близкое значение к требуемое. Соответственно фактическая битность ЦАПа будет определяться максимальным/средним скачком между двумя соседними выходными значениями. Фактическая битность будет чуть-чуть меньше, чем количество задействованных бит, но похоже что не сильно меньше (всего на 1 бит?).

Возможно данное соображение о калибровке ЦАПа будет полезным на практике.

Ссылка на заметку: https://pikabu.ru/story/yet_another_rea ... 6_12516484


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Сб мар 29, 2025 08:29:51 
Опытный кот

Зарегистрирован: Вс мар 23, 2025 14:56:55
Сообщений: 700
Рейтинг сообщения: 0
температура


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Сб мар 29, 2025 17:46:23 
Родился

Зарегистрирован: Пт мар 08, 2024 01:30:56
Сообщений: 12
Рейтинг сообщения: 0
температура

Возможно. Возьму данные отсюда:
https://www.radiokot.ru/articles/11/?ys ... 5867285432
Цитата:
Но ТКС у них довольно большой: от +350 до минус 2500 ppm/° ... в бытовой аппаратуре, которая в комнатных условиях работает

В комнатных условиях разброс температуры оценим от +15° до +35°, то есть +/- 10°. Возьмем "худшее" значение,
Код:
10° * 2500 ppm/° = 10*2.5*10^-3 = 0.025 = 2.5%

Значит на 10° сопротивление будет плавать на +/- 2.5%. Сильно ли это будет влиять на параметры схемы? Если все резисторы изменят свое сопротивление в k-раз одновременно, то параметры не изменятся (но это не точно), так как все соотношения сохранятся. Если же у разных резисторов (из одной сборки) будут ТКС разные, причем сильно разные, то наверное это окажет влияние. В принципе была идея положить платку в морозилку, а потом наоборот подуть на нее феном и посмотреть как изменится набор выходных значений. В конце концов датчик температуры ведь тоже стоит недорого? Но тут же речь не о научной работе :).


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Сб мар 29, 2025 18:48:22 
Опытный кот

Зарегистрирован: Вс мар 23, 2025 14:56:55
Сообщений: 700
Рейтинг сообщения: 1
Я к тому, что прецизионные резисторы могут выбирать не столько из-за значений, поскольку можно просто из кучи выбрать одинаковые и среди обычных, а потому что у них ТКС в на порядок-два меньше.


Вернуться наверх
 
Выбираем индустриальные и медицинские источники питания MEAN WELL в открытом исполнении

Использование модульных источников питания открытого типа широко распространено в современных устройствах. Присущие им компактность, гибкость в интеграции и высокая эффективность делают их отличным решением для систем промышленной автоматизации, телекоммуникационного оборудования, медицинской техники, устройств «умного дома» и прочих приложений. Рассмотрим подробнее характеристики и особенности трех самых популярных вариантов AC/DC-преобразователей MW открытого типа, подходящих для применения в промышленных устройствах - серий EPS, EPP и RPS представленных на Meanwell.market.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Сб мар 29, 2025 21:27:22 
Модератор
Аватар пользователя

Карма: 159
Рейтинг сообщений: 4042
Зарегистрирован: Пт янв 23, 2009 19:20:05
Сообщений: 44755
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
...Единственное "но": микросхема ЦАП с той же битностью будет на пару порядков дешевле, чем эта самоделка, и заметно точнее... :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Сб мар 29, 2025 23:43:04 
Родился

Зарегистрирован: Пт мар 08, 2024 01:30:56
Сообщений: 12
Рейтинг сообщения: 0
...Единственное "но": микросхема ЦАП с той же битностью будет на пару порядков дешевле, чем эта самоделка, и заметно точнее... :)


Основной посыл не в том, что R2R ЦАП лучше и дешевле готовых микросхем. Хотя про два порядка - это что же есть микросхемы ЦАП за 1 рубль что-ли, где такие продаются?
Кроме того, R2R и на 20 бит точно также делается (благо недорогие АЦП на 24 бита для калибровки есть), и на 32 бита (только не понятно как его калибровать). Да и кроме битности есть еще и частота. Это тоже иногда важный параметр.

Самое главное же в данном случае - было просто интересно поэксперементировать. Можно ли повысить точность R2R ЦАПа. Зачем? Скажите тогда, сначала, а зачем в принципе делают и продают R2R ЦАПы :)?

Что касается прецензионных резисторов и зависимости по ТКС. Возможно. Но все ли так плохо с ТКС? Пишут весьма разное. И потом ну будет хорошая ТКС - это частично решит вопрос по температуре. А калибровка значит на резисторах с малой ТКС не повысит РЕАЛЬНУЮ битность? Подобрать одинаковые, ну тут похоже даже доли процента ломают монотонность и линейность. И складывается такое впечатление - это принципиальная неустойчивость схемы. А калибровка в свою очередь требования к идеальности номиналов снижает так раз на порядки. Но это так - впечатления профана. Если есть другие экспериментальные данные, то всегда любопытно узнать что-нибудь новое :).


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Вс мар 30, 2025 00:22:22 
Опытный кот

Зарегистрирован: Вс мар 23, 2025 14:56:55
Сообщений: 700
Рейтинг сообщения: 1
Не получится простым способом откалибровать кучу дискретных резисторов. У каждого свой ТКС, каждый припаян индивидуально, плюс громадная площадь...

Что касается стоимости, то на резисторах действительно дороже. Во-первых, прецизионные стоят в розницу немного дороже обычных, во-вторых, нужно учитывать всё: стоимость точки пайки, площадь и т.д. Радиолюбители почему-то считают только чек на радиодетальки, а это неверно. Та же калибровка, опять затраты.

Почему их до сих пор делают? Ну, возможно, с хорошими резисторами и ОУ можно получить какой-то индивидуальный ЦАП под какую-то определённую задачу, под которую не подходят готовые. Ещё два варианта: образовательная цель и аудиофильская (противоположная образовательной, получается :) )


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Вс мар 30, 2025 01:36:08 
Родился

Зарегистрирован: Пт мар 08, 2024 01:30:56
Сообщений: 12
Рейтинг сообщения: 0
У меня цель была в основном скорее образовательная.

Также обращаю внимание - калибруется не резисторы по отдельности. А вся итоговая схема ЦЕЛИКОМ. И программно, т.е. автоматически и "мгновенно". Может слово калибровка вводит отчасти в заблуждение. Хотя есть же понятие калибровки измерительного прибора?

В общем собрали ЦАП. Далее как черный ящик измеряем. Подали битовое значение x1 -> измерили на выходе y1, занесли в табличку пару (x1,y1). И так для всех битовых значений. Для 10 бит - калибровка менее секунды в автоматическом режиме. С помощью программы. (Использовал только одну платку stm32f103c6t6, там и биты ставятся для R2R ЦАПа и встроенный 12-битный АЦП там же, при этом по uart передавал значения на комп.)

Далее. Хотим на выходе получить значение z - ищем в табличке самое близкое значение y_k, и подаем на вход тогда битовое значение x_k. Да, да, это все при фиксированной температуре. Нагрелось все на 10 градусов и нужна другая табличка или перекалибровка. Но это скорее образовательная задачка. При этом измерение ТКС никаких одиночных резисторов не выполняется!!! Если только всю схему целиком при новой температуре измерить.

В заметке на pikabu (ссылка в начале темы) у меня есть gnuplot-графки, когда просто перебираются битовые значения подряд, и когда для линейной функции подбираются наиболее подходящие битовые значения. Так вот на графиках - земля и небо. Если переупорядочить последовательность битовых значений, то можно добиться почти "идеальной" линейной функции. На втором графике линейная функция и дискретная 10-битная при полном масштабе сливаются в одну прямую. Сравните, что на первом графике. При этом графики составлены из фактических значений, полученных с помощью АЦП.

Затем перепроверил на осциллографе. И на качественном уровне гипотеза подтвердилась. Данные с графиков подтвердились (в заметке есть видео с показаниями осциллографа). Ну, да, Ваша правда, только при фиксированной температуре :). Но цели-то образовательные. Однако, при фиксированной температуре после калибровки точность-то выросла ого-го :)!!! О чем и речь.

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

Добавлено after 21 minute 30 seconds:
Re: R2R ЦАП: калибровка при использовании дешевых резисторов.
Изображение Изображение Изображение

Добавлено after 3 minutes 50 seconds:
Re: R2R ЦАП: калибровка при использовании дешевых резисторов.
Первый график. Данные АЦП для выходе R2R-ЦАПа, когда битовые значения x идут подряд.

Второй график. Зеленым - линейная функция, фиолетовым - график данных АЦП, если битовые значения специально подбирать по табличке вместо использования прямой битовой последовательности, которая получается из теории при идеальных номиналах. Фиолетовый график под зеленым по сути не виден.

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

Добавлено after 21 minute 4 seconds:
Re: R2R ЦАП: калибровка при использовании дешевых резисторов.
Что касается первого графика. На экране осциллографа этот график сразу наблюдался. Только данные АЦП в gnuplot гораздо лучше демонстрируют фактические скачки R2R ЦАП, там где в теории при идеальных номиналах резисторов их быть не должно.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Вс мар 30, 2025 09:01:31 
Опытный кот

Зарегистрирован: Вс мар 23, 2025 14:56:55
Сообщений: 700
Рейтинг сообщения: 0
Ну, любой метод повышения точности вызовет её повышение :)
Можно ещё сложнее: запихнуть ЦАП в некий термос с подогревом до определённой температуры. Видел подобное в некоторых приборах, там так генератор кварцевый термостатировали.


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Вс мар 30, 2025 09:39:33 
Друг Кота
Аватар пользователя

Карма: 26
Рейтинг сообщений: 773
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 5000
Рейтинг сообщения: 1
Долго и тщательно подбираем резисторы, а потом... узнаем про разброс параметров ключей которыми резисторы коммутируются...

_________________
Астролябия-сама меряет, было бы что мерять!!!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Вс мар 30, 2025 09:45:13 
Опытный кот

Зарегистрирован: Вс мар 23, 2025 14:56:55
Сообщений: 700
Рейтинг сообщения: 0
Asmodey, да. Этот момент, к своему стыду, я упустил.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Вс мар 30, 2025 22:02:48 
Держит паяльник хвостом
Аватар пользователя

Карма: 16
Рейтинг сообщений: 196
Зарегистрирован: Вс дек 02, 2012 16:58:33
Сообщений: 915
Откуда: от туда
Рейтинг сообщения: 0
При всём моём уважении к самостоятельно произведённым экспериментам, вы не учли вариант, когда данные вашего R-2R ЦАП будут не перекрываться, а идти с разрывами. То есть, когда погрешности резисторов будут иметь отклонения в другую сторону. Тогда вы просто не будете иметь возможности воспроизвести некоторые значения напряжения, и калибровка здесь не поможет.
И ещё, одно соображение: при калибровке перекрывающихся значений вы получите меньшую разрядность выходного сигнала, чем разрядность АЦП. Это факт.
Но вопрос поднят занятный. Всегда нужно думать нестандартно. Спасибо, мне было интересно.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Вт апр 01, 2025 00:02:41 
Родился

Зарегистрирован: Пт мар 08, 2024 01:30:56
Сообщений: 12
Рейтинг сообщения: 0
И ещё, одно соображение: при калибровке перекрывающихся значений вы получите меньшую разрядность выходного сигнала, чем разрядность АЦП. Это факт.
Но вопрос поднят занятный.

Спасибо!

На счет меньшей разрядности полностью согласен. Здесь сугубо эксперимент. Если грубо, то вместо 10 бит получим скажем 9 бит, значит нужно брать битность с небольшим запасом. Если же калибровки не делать и использовать "наивные" коды, вот тогда реальная битность похоже действительно падает значительно, если под реальной "битностью" понимать максимальное отклонение реального выходного значения от требуемого. Т.е. погрешность установки значения.

Есть такое впечатление, что фактические значения будут распределены более или менее равномерно (если только значение сопротивлений гуляет не на 10-20%, а всего лишь на 1-2%). И реальная достижимая битность после калибровки (без учета изменения ТЕМПЕРАТУРЫ :)) ) возможно теряет не более 1 бита. Наверное, даже можно сделать модель в разных симуляторах, когда сопротивление каждого резистора вместо
Код:
 R(k) = R0

будет равно
Код:
 R(k) = R0 + epsilon_k

и как максимальное по модулю значение epsilon_k с одной стороны приводит к деградации битности R2R ЦАП при использовании "наивных" битовых кодов. А с другой стороны какая битность реально все-таки достижима, если использовать калибровку. Т.е. максимальная погрешность. Может быть даже аналитическую формулу можно вывести. Кстати, используя модель с epsilon_k, наверное, можно оценить влияние температуры, если в модель заложить ТКС резисторов. Но такое не умею :). В лучшем случае нагреть/охладить R2R и заново провести калибровку сразу после нагрева/охлаждения.

В конце концов первый график намекает на четкую закономерность скачков - эти степени двоек, когда в битовом коде происходят переходы вида
Код:
  011111b -> 100000b

т.е. когда много резисторов выключается и один старший включается. И чем больше выключается, тем сильнее скачок - самый большой по середине. И видимо это в принципе ахиллесова пята (если не считать ТЕМПЕРАТУРЫ :)) ) для R2R ЦАПов.

Вот есть заметка от 2015 года (https://habr.com/ru/articles/260999/). Там точно также на экране осциллографа хорошо заметен скачок ровно по середине. Но там осциллограф похоже с люминофорным экраном. Думаю там есть и другие скачки - просто они уже на экране не так заметны. Кроме того скачки хорошо становятся видны именно после замеров на АЦП и построения графика, когда каждое выходное значение измеряется несколько раз и результаты измерений усредняются (иначе они просто размазываются).
Изображение

Добавлено after 33 minutes 35 seconds:
То есть, когда погрешности резисторов будут иметь отклонения в другую сторону. Тогда вы просто не будете иметь возможности воспроизвести некоторые значения напряжения, и калибровка здесь не поможет.


Не сразу понял что имеются в виду. Наверное, речь о том, что при переходе
Код:
011111b -> 100000b

будет не снижение выходного напряжения, а наоборот - повышение. И тогда будет непреодолимый разрыв. Но тут какое дело. С одной стороны, на практике, наверное, все-таки (из свойств самой схемы R2R) как правило будет понижение выходного напряжения. А с другой стороны, подобрать два резистора так, чтобы у них номиналы совпали на 0.00001% тяжело, а вот подобрать их так, чтобы при примерном равенстве, сопротивление одного было совсем чуть-чуть, но больше сопротивления второго - несравненно более простая задача. А значит, на практике гарантировать скачок в нужную сторону п. н. всегда получится .

Добавлено after 4 minutes 32 seconds:
Re: R2R ЦАП: калибровка при использовании дешевых резисторов.
вот еще картинки (из той же заметки от 2015 года), на которых если присмотреться хорошо заметны скачки
Изображение Изображение

Добавлено after 52 minutes 10 seconds:
Re: R2R ЦАП: калибровка при использовании дешевых резисторов.
Усе УКРАДЕНО до нас :((

Похоже еще в 2016 году вот здесь меня "опередили" с калибровкой:
https://www.eevblog.com/forum/projects/ ... you-think/
Только со своим знанием аглицкого языка не понял удалось ли автору темы ее провести. Но там тоже хорошо видны скачки вниз.

Добавлено after 1 minute 43 seconds:
Re: R2R ЦАП: калибровка при использовании дешевых резисторов.
Изображение

В общем и статьи в науных журналах похоже есть, и даже какие-то патенты в "недружественных" странах :)).


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: R2R ЦАП: калибровка при использовании дешевых резисторов
СообщениеДобавлено: Ср апр 02, 2025 09:18:30 
Грызет канифоль
Аватар пользователя

Зарегистрирован: Вс дек 18, 2011 14:41:24
Сообщений: 295
Откуда: Ангарск
Рейтинг сообщения: 0
Если и городить R2R ЦАП... И не заморачиваться с калибровками, подбором одинаковых резисторов, термостатированием, и прочими удорожаниями, то вес младшего разряда не имеет смысла делать меньше допуска используемых компонентов. То есть, 4 бита при допуске 5%, 6-7 бит при допуске 1%


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y