|
|
|
|
rx3apf: А, я глянул реализацию от chav1961- красиво. Но - это работоспособно только на микроконтроллере с умножением частоты для PWM, на мегу это принципиально не переносимо Недостаток всех ЦАП основанных на DDS заключается в том, что гармоники пораждаеммые ЦАПом лежат как выше, так и ниже генерируемой частоты, что существенно усложняет дальнейшую фильтрацию полезного сигнала. Зато ШИМ ЦАП порждает гармоники намного выше генерируемой частоты, что существенно облегчает фильтрацию полезного сигнала. Так что я все-таки склоняюсь к ШИМ ЦАП. Ладно, если с атмегой облом, давайте подберём распространенный тини. И опять, зачем гнаться за синусоидой в10 кГц, выигрыш не большой, а мороки уйма. Если кому и нужен ESR конденсаторов, то частота в 10кГц (во многих приложениях использования конденсаторов где действительно надо знать ESR) не столь информативна. Мне на работе, к примеру, хватает предела и 1кГц. Я к тому, что если уж так сложно сделать хорошие 10кГц то можно пожертвовать точностью измерений пусть хоть и 5% погрешность измерений будет, зато сохранить простоту устройства. rx3apf: И подбор резисторов для 16-битного разрешения - тоже не самое приятное дело (это все в теории гладко, реально 16 бит так не получить Ну, давайте прикинем какую максимальную частоту и разрядность можно получить с 16 разрядного таймер счетчика, который стоит, к примеру, в атмеге8? Я просто затрудняюсь произвести расчёт. Интересно тогда с чего chav1961 снял осциллограмму сигнала, и на какой частоте лежит максимум ближайшей гармоники и какой её уровень. Блин нет в Протеусе тини45 не могу я построить АЧХ этого ЦАПа.
|
|
|
ads1252 the bandwidth of the analog input signal must be band limited; the bandwidth is a function of the system clock frequency. With a system clock frequency of 16MHz, the data-output rate is 41.667kHz with a –3dB frequency of 9kHz Полоса пропускания входного сигнала должна быть ограничена. При 41КГц выборок полоса должна быть 9кГц. |
|
|
A Sinc5 digital low-pass filter processes the output of the delta-sigma modulator it is important to note that the –3dB point of the filter is 0.216 times the data output rate Цифровой фильтр пятого порядка применен на выходе. Важно что полоса пропускания этого фильтра равна 0,2 от частоты выборок |
|
|
the number of system clocks required for the digital filter to fully settle is 5 • 64 • 6, or 1920 CLKs.This means that any significant step change at the analog input requires five full conversions to settle Количество тактов для заполнения фильтра - 1920 Это значит что изменение вх сигнала требует 5 циклов конвертации для установления
|
|
|
Galizin: Цифровой фильтр пятого порядка применен на выходе. Важно что полоса пропускания этого фильтра равна 0,2 от частоты выборок
Вот АЧХ 16 разрядного ЦАП который применён в звуковых картах компьютера. Обратите внимание на соотношение сигнал/шум (SNR) оно равно 96дБ. Как фильтр в ads1252 уберёт 3,5,7 гармоники? Фильтр, примененный в АЦП ads1252 необходим чтобы увеличить разрядность АЦП, но не как не спасает от шума на входе АЦП.
|
|
|
GM: Прошу высказываться строго по существу. Вы хотите напрямую умножать оцифрованный синус с ЦАП на опорный синус или косинус. Если частота синуса ЦАП и синуса в МК будет отличаться, то результат произведения будет равен sin(2*pi*f1)*sin(2*pi*f2)=1/2*(cos(2*pi*f1-2*pi*f2)- cos(2*pi*f1+2*pi*f2)). Это выражение распространяется также на все гармоники приходящие на вход МК для дальнейшего умножения. Так что без цифрового фильтра в МК не обойтись, а скорость процессора в МК не позволит задействовать приемлемый алгоритм фильтрации результата произведения. Поэтому хочу вынести на обсуждение классическую схему построения иммитанса с квадратурными сигналами и пиковыми детекторами и с интегратором.
Функцию пикового детектора в данной архитектуре будет выполнять устройство выборки хранения находящейся в МК и чёткий запуск начала преобразования АЦП от фронтов квадратурных сигналов. Интегрирование полученных измерений от АЦП программно. Ну и дальше как в классике, нахождение коэффициентов А.Б.С.Д. и вычисление активной и реактивной составляющей. Вот такая схема мне нравится её простота и дешевизна должна стать народной. Прошу высказывать за и против? |
|
|
А при 12 битном ЦАП добиться 146,26дБ я не знаю можно ли? Вероятней всего, поэтому и стоят элептические фильтры 8 порядка после DDS. Это, само собой, нереально. Это нереально вообще при любом генераторе. Но нам-то не нужно 24 бита при измерении, нужно хотя бы 10 эффективных бит. 24 бита - это запас по динамике, чтобы не использовать дополнительные PGA. Недостаток всех ЦАП основанных на DDS заключается в том, что гармоники пораждаеммые ЦАПом лежат как выше, так и ниже генерируемой частоты, что существенно усложняет дальнейшую фильтрацию полезного сигнала. Я плохо разбираюсь в ЦОС, но интуитивно подозреваю, что этот эффект есть, когда генерируемая частота не кратна частоте семплирования. По крайней мере, CollEdit, в котором я проверял уровень гармоник, показывает именно такую картину. А я пытался сделать генератор с квадратурными каналами, там хочешь-не хочешь, но частоты кратные, поэтому есть только старшие гармоники, с уровнем менее -80 dB. Естественно, масса ограничений на выбор частоты семплирования и набор генерируемых частот. Это все равно DDS, но с иной логикой. Но, на самом деле, проблем в внеполосном шуме нет ни для схемы с синхронными детекторами, ни с синхронным семплированием. А при использовании синхронного семплирования и с гармониками тоже проблем нет, так что подошел бы и генератор с 8-битным DAC. |
|
|
Ну, давайте прикинем какую максимальную частоту и разрядность можно получить с 16 разрядного таймер счетчика, который стоит, к примеру, в атмеге8? Не стремясь задрать тактовую до 20 MHz, остановимся на 16. Ну и будет частота семплирования 62.5 kHz (против 250 kHz у варианта на tiny45). Не то, чтобы это было совсем плохо, но 10 kHz будет безобразным (шесть точек на период). При 20 MHz - 78 kHz. Ничего хорошего... |
|
|
Вот такая схема мне нравится её простота и дешевизна должна стать народной. Прошу высказывать за и против? 17 битов динамического диапазона. Это вообще ни в какие ворота, практического смысла не имеет. Даже и с переключением токоизмерительного резистора будет только 27 бит. Это, правда, уже существенно лучше, хоть и на порядок не дотягивает до RLC-2. Выборка-хранение, кстати, тоже не бесконечного быстродействия, синхронное семплирования по нескольким каналам невозможно в принципе - ADC только один, и мультиплексер на входе, а быстродействия встроенного ADC (в AVR) в лучшем случае хватит на один канал при частоте измерения 10 kHz. Не, все это не так просто, авторы RLC-2 и порядком схем готовых приборов перелопатили, и обсуждали не меньше, чем в от этой ветке. Не знаю, как в действительно серьезных и дорогих современных приборах от, скажем, Agilent, но в приборах стоимостью до полуштуки - аппаратные синхронные детекторы. Не просто так и не от хорошей жизни, я полагаю... Нет, пардон, я чуть наврал: E7-22, генератор DDS c 7-битным DAC (и довольно слабенький фильтр) и синхронный семплер (14-битный AD7894, 5 uS, перед ним слабенький антиалиасный фильтр). Все по одному переключаемому каналу. Однако этот ADC весьма недешевый, и даже его 12-битный аналог тоже. Но в результате - сертифицированный прибор точности 0.15%. А, да - этот самый E7-22 имеет один "токовый" резистор 1000 Ом, общая динамика входа 24 бита, так что 24 бит и в самом деле хватает по крайней мере для достижения класса точности. Но - это с быстрым ADC. BTW, там вход простой - ИУ на двух операционниках, а преобразователь I->U - на одном. И довольно красиво решена проблема неидеальности (кросстолка и "пролезания") коммутатора (4053) при переключении каналов U/I. Да, там только 100 Hz и 1 kHz. |
|
|
rx3apf: Но, на самом деле, проблем в внеполосном шуме нет ни для схемы с синхронными детекторами, ни с синхронным семплированием. А при использовании синхронного семплирования и с гармониками тоже проблем нет, так что подошел бы и генератор с 8-битным DAC. Согласен с одной оговоркой, чем меньше разрядность ЦАП тем больше времени необходимо для накопления синхронным детектором результата. Хорошо итого - синхронное детектирование (квадратурными) сигналами подавляет в близь лежащие гармоники, можно применить интегральный ЦАП, но откуда мы тогда будем брать квадратурные сигналы? Всё ровно надо ЦАП делать на МК пусть он хоть будет DDS c R-2R матрицей, шум при синхронном детектировании не вносит существенной погрешности в измерения. Просто надо дольше накапливать результат. rx3apf: Выборка-хранение, кстати, тоже не бесконечного быстродействия, синхронное семплирования по нескольким каналам невозможно в принципе - ADC только один, и мультиплексер на входе, В классической схеме измерения импеданса нет необходимости одновременно измерять напряжение и ток. Просто интегрируют и измеряют напряжение при 0гр и при 90гр семплировании, потом ток при 0гр и при 90гр семплировании. (с углами я может, и ошибся просто инструкция от имметанса на работе, по памяти плохо помню) Потом обыкновенной арифметикой (без синусов и косинусов) в МК вычисляют результат. rx3apf: а быстродействия встроенного ADC (в AVR) в лучшем случае хватит на один канал при частоте измерения 10 kHz. Давайте понизим частоту до 5кГц, честно не пойму какие преимущества даёт 10кГц?
|
|
|
|
|