Свежие обсуждения
Измерения

Дизайн народного RLC-метра (RLC-3)

1 66 174

Link: В принципе насколько я понимаю надо усиливать измеряемый сигнал до приемлемой величины
Вполне с вами согласен. Однако если хотим сохранить возможность измерать емкость варикапов (PN переходов) подавать сигнал болшой амплитудой на DUT нельзя. Получается модуляция емкости PN перехода измерительним сигналом. Нелзя померить емкость вблизи нуля. В пром. приборов предусмотренна возможность менять амплитуду измерительного сигнала скажем 0.1в и 1.0в. Можно сделать так, усложнение будет небольшое.

Link: А всё таки в чём недостаток измерения синуса при 45гр. и 135гр. а не 0 и 90?
Никакого недостатка нет. Но и приимущества тоже. Ведь Z DUT получается в результате деления U/I т.е в конечном итоге Z DUT будет одно и тоже и с одинаковой нестабильностю.

Link: Если использовать преобразование Фурье и производить измерение сигнала (накопление результата измерений) на протяжении всего периода 50Гц помехи
Именно т.о делал свои експерименты, однако на практике свести к нулю помеху не удавалась. Причина скорее всего комплексная, плохая разводка, шумящая опора, конечная точность математики,шум ядра МК. Поетому для себя убежден что без применения ЦФ никак не получится хорошая стабильность неосновного параметра.

GM: Поверьте, этот быстрый МК с удобной системой команд, вполне справится с поставленной задачей
Сам не проверял по поводу загрузки МК AtmegaXXX, верил словам Bob1. Если проверили что можно реализировать считывание данных с двумя АЦП и пропускать через скажем FIR фильтр на 32 точек при 100KSPS я вполне согласен с выбором MK.

Pitty: Ну зачем мне точность в 0.01%?
Я разсматрываю немножко под другим углом. На примере RLC1 - там точность ~1% вполне прилично, и для дома до лампочки. Однако вся прелесть теряется когда смотриш на пригатню показания.

Pitty: можно было бы использовать 2 процессора
Тоже возможность, насколько помню в Е7-20 сделанно именно так (один МК генерить синус, на второй идуть разчеты). Только надо придумать к.о сделать синхронизация м/у МК при том "железним" способом а не по прерываниях. Дело в том что на заход в прерывание будет уходить разное время (смотря какая инструкция выполняется) `to приведеть к фазовым шумам измеренной величиной (гармоники) тем самым увеличится нестабильность неосновного параметра.

Pitty: Упор именно на синхронность
+10

Pitty: .... 2 синхронных ЦАП 12 бит, 2 синхронных АЦП
В своих експериментах применял C8051F410 -> 50мГц SysCLC, 1хАЦП 12бит, 2хЦАП 12бит синхронизация "железним" способом по таймера. Считывание данных по прерыванию. 100KSPS, время измерения 0.5сек. Без применения ЦФ не удалось получить стабильность неосновного параметра. МК загружен на 80% на генерирование синуса, считывание данных и накопление. ПФ делалось за периодом измерения. Возможно что с АЦП на борту шум ядра портить измерения. С достаточной уверености не успел установить. Но везде производитель МК рекОмендовал останавливать ядро во время измерения. Eто не делалась из за нехватки времени на обработку.
В сваязи с етим лучше применить внешнее АЦП, нo тогда возникает проблемма с четкой синхронизации.

Pitty: В принципе, говорят TQFP вполне можно запаять (но сложно), а вот развести
Разводил TQFP32, плату делал ЛУТ-ом, поял несколко раз, правда дело не очень приятное, но сделать можно.

 

chav1961: ..если есть варианты по АЦП с "более другим" интерфейсом (что-нибудь SPI-подобное, например), попробую еще один заход

А.В., приглядитесь к ADS8509 от Тексаса, 16-бит, 250 ksps, SPI-подобный интерфейс, позволяющий каскадное включение (ВАЖНО), для снижения шумов преобразования может выдавать клоки изнутри. Сам не работал, только ДШ смотрел, но вроде то, что нужно белому человеку. Ещё есть ADS8317, интерфейс может чуток посложнее, а может и нет, надо думать.

Ну их в лес, эти кодеки, они заточены под аппаратную связку с DSP интерфейсами (sport для аналоговых девиц и mcbsp для тексаса).

 

-JonnS-: Сам не проверял по поводу загрузки МК AtmegaXXX, верил словам Bob1. Если проверили что можно реализировать считывание данных с двумя АЦП и пропускать через скажем FIR фильтр на 32 точек при 100KSPS я вполне согласен с выбором MK.

Ну я ж говорю, тут надо аккуратно выбирать периферию и крепко думать, в основном головой..., и вполне можно сделать на атмеге. Судите сами на примере применения двух ADS8509 от Тексаса. Их выходные сдвиговые регистры можно включить последовательно и соединить с SPI атмеги. Если выбрать клок 5 МГц (можно до 10 МГц), то АППАРАТНАЯ передача одного байта займёт 1.6 мкс, а четырёх - 6.5 мкс (135 тактов), вполне успеваем считать 16-битные показания с двух ацп. Но это не всё! Поскольку передача аппаратная, 100 тактов из этих 135 вы можете посвятить другим задачам. И это ещё не всё! Мы использовали только вход SPI, а если выход подключить к цапу, то можно в то же самое время обновлять цап генератора синуса. Опять же уйдёт только 10-20 тактов на загрузку регистра. Что будем иметь в итоге? 145 тактов из 200 свободны, их можно пустить на частное суммирование и раскладывание по буферу двух считанных ранее значений.

По фильтру. Ну просветите, не дайте помереть дурой, фильтр-то вам там зачем нужен? Что фильтровать будем?

 

chav1961: если есть варианты по АЦП с "более другим" интерфейсом
Как вариант можно посмотреть и AD7367. Правда у него 14р но за то два АЦП на борту. Интефейс тоже SPI похожей. (глубоко не копал)
Проблема однако к.о сктестить 14бит (16бит) слово выдаваемое АЦП с 8бит SPI на борту мегу8 скажем. Думаю что без участие ядра не получится. Да и вобщето не уверен что можно получить значения от АЦП частями!?
Кстати взглянул на один из простейший ARM -> AT91SAM7S64 про SPI:

One Master/Slave Serial Peripheral Interface (SPI)
– 8- to 16-bit Programmable Data Length, Four External Peripheral Chip Selects

Может есть AtmegaXXX с 16 разрядным SPI?

 

GM: АППАРАТНАЯ передача одного байта
и после получения ОДНОГО байта будем останавливать клок на SPI чтоб забрать значение байта из входного регистра SPI, так?
Ведь у меги не видел защелку на полученого байта!?

GM: Ну просветите, не дайте помереть дурой, фильтр-то вам там зачем нужен? Что фильтровать будем?
Шум в ИОУ, в усилителях, наводки "пойманые" самим DUT, вышие гармоники тестового синуса, шум опорой, не на последнее место ошибки самого АЦП (+-1 мл. разряд) Про 50 гц молчу.
Поверьте на теории ИОУ дОлжны убрать синфазную помеху в районе 100-120dB на практике не пОлучается!

 

-JonnS-: Никакого недостатка нет. Но и приимущества тоже. Ведь Z DUT получается в результате деления U/I т.е в конечном итоге Z DUT будет одно и тоже и с одинаковой нестабильностю.

Думаю преимущество есть.

Насколько я понимаю принцип измерения…
Вот картинка падения напряжения при измерении активного сопротивления.

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

Если сдвинуть фазу на +45градуссов, то проекция вектора на мнимую и реальную ось почти всегда (в большинстве случаев) будет больше нуля, в случае с резистором напряжение при 45 и 135 градусах будет меньше в корень из двух деленное по палам раз (сos45). Опять сервер картинок не работает. Прикрепил картинки к сообщению.
Сдвиг фазы, по моему мнению, хорош тем, что погрешность измерений связанная с дерганьем младших разрядов в АЦП уменьшается.

Pitty: 2) Link (я так понял) и мне тоже это нравится: применением методов ПФ добиться на одном контроллере приемлемых результатов с максимальным упрощением схемно-технических решений. Ну зачем мне точность в 0.01%? Если мне нужна будет такая точность, я пойду к метрологам и у них померяю что мне надо.

Я честно говоря наверно не правильно понял название темы, под словосочетанием дизайн народного RLC3 - я понимал как прибор который способен собрать любой начинающий радиолюбитель за умеренную цену, но видимо автор имел в виду прибор который соберут сообща люди (народ). Я хотел собрать RLC2 но его стоимость и доставаемость некоторых компонентов меня остановила.

У меня вообще была идея упростить этот имметанс до не могу, но я зашился с математикой да и в программировании не силён, формулы вывести не смог, идея состояла в том что в место генератора синуса использовать меандр, и по скорости нарастания напряжения и тока определять мнимую и реальную часть полного сопротивления, по большому счёту надо всего четыре точки измерений и с помощью МК вычислить пару натуральных логарифмов, но вот формулы по которым необходимо производить вычисления я так и не смог вывести. Сейчас имметанс мне не так интересен как пару лет назад.

Может всё таки подумаете об отказе от синуса?

 

Картинка при нуле градусов.

 

Спасибо за идеи по АЦП, но - засада! Ни в одном из тех инет-магазинов, где я отовариваюсь, ни ADS8509, ни ADS8317, ни AD7367 нет. Может быть, заодно и места подскажете, где они водятся

 

-JonnS-: Шум в ИОУ, в усилителях, наводки "пойманые" самим DUT, вышие гармоники тестового синуса, шум опорой, не на последнее место ошибки самого АЦП (+-1 мл. разряд) Про 50 Гц молчу. Поверьте на теории ИОУ дОлжны убрать синфазную помеху в районе 100-120dB на практике не получается!
Да я верю, верю. По-моему, разработчики Оу и ИУ интерпретируют Ксф следующим образом. Если на прямой и инверсный входы усилителя подать ОДИНАКОВЫЙ сигнал, то в теории на выходе должен быть ноль, однако этого нуля нет вследствие неидентичности двух входов. Вот Ксф и показывает степень неидентичности. Думаю, что идёт сиё от старых времён, когда ко входу диффусилителей подключали трансформатор, входы были эквипотенциальны и любая помеха наводилась на оба входа синфазно. В вашем случае трасформатора на входе нет, 50 Гц наводится по-разному, отсюда большое пролезание. Так что, рецепт простой: сделайте симметричный вход для помех и получите требуемое подавление.

-JonnS-: и после получения ОДНОГО байта будем останавливать клок на SPI чтоб забрать значение байта из входного регистра SPI, так? Ведь у меги не видел защелку полученyого байта!
Не так. Останавливать ничего не надо, контроллер сам останавливает процесс. После запуска SPI на передачу, мастер генерит 8 клоков, одновременно выталкивая 8 бит на передачу и принимая 8 бит на приём. Принятый байт переписывается в приёмный регистр SPDR, вот вам и защёлка!

SPI не волнуют длительности клоков, хоть в час по чайной ложке, фигурально выражаясь, SPI может читать 16 бит порциями по 8 бит. Сказанное справедливо, в частности, для указанного вами AD7367, поскольку клок не участвует в преобразовании аналог-цифра, специально посмотрел в ДШ.

 

Почему-то на мегуХ так никто и не смотрит. А ведь там есть все прелести в виде прямого доступа к памяти, аппаратный перемножитель и, насколько я понял, 16 битная арифметика (В 8 битном процессоре). А стоимость - порядка 150-200 рублей. С доставаемостью думаю будет всё лучше и лучше.