Измерения | Дизайн народного RLC-метра (RLC-3) |
|
---|---|---|
Neekeetos: прошу прощения за наивные вопросы: когда я учился на ФизТехе, DSP еще не было. Так что с терминологией надо чуть подтянуться. Для меня непрерывная функция - ИНТЕГРАЛ Фурье, а для периодической РЯД Фурье. Получаемый дискретным преобразованием aka DTF. У которого есть оптимизированная имплементация FFT в случае если отсчетов 2**N. Как я теперь понял вы делаете не полное DTF a только для одного бина с 10000 отсчетов, так? Т.е. не столько преобразование сколько кросс-корреляцию или matched filter. Т.е. я думал собрать те же 10000 точек за 0.1 сек для 100 кГц для набора лишних бит. На 1 КГц конечно столько не собрать быстро. |
|
|
alexf58: Neekeetos: прошу прощения за наивные вопросы На меня тут особо ссылаться нельзя так как я вообще с машфака, просто книжки читал alexf58: Получаемый дискретным преобразованием aka DTF= DFT , Дискретное преобразование от интеграла отличается тем что оно применяется не к непрерывной функции а к набору точек сигнала, больше разницы нету. FFT можно использовать не только на блоках с размером кратным степени двойки, просто массив точек дополняется до ближайшей степени 2ки нулями. alexf58: Как я теперь понял вы делаете не полное DTF a только для одного бина с 10000 отсчетов, так? Т.е. не столько преобразование сколько кросс-корреляцию или matched filter. Тут я немного запутался, если речь об измерителе который я сделал, то там набирается 20к точек и далее свертка с синусом и косинусом одной частоты. Если же вопрос по картинкам , которые я недавно постил, то там 10к точек и полноценный БПФ со всеми без исключения гармониками. alexf58: Вы наверное сравнивали точность и пришли с своему методу, или еще стоит подумать? Да нету никакого моего метода, все уже придумано задолго до меня. Я исходил из простых соображений, что чем хуже сигнал тем лучше его надо фильтровать, чтобы получить чтото вменяемое. АЦП в F100 шумное , на это накладываются еще искажения и шум квантования, они за счет дизера конечно отвязываются от полезного сигнала , но все таки присутствуют в спектре в виде опять же шума. Поэтому собрал максимальное количество замеров и уже с ними работал. ДПФ действует как полосовой фильтр, чем больше точек тем уже полоса и меньше шума туда попадает и соотв меньше шум измерений . Если бы был вариант замерить 4-8 точек на периоде но максимально точно и без шума, я бы его использовал, это более логично . Так что конечно стоит обдумать варианты, посчитать. |
|
|
Neekeetos: Дискретное преобразование от интеграла отличается тем что оно применяется не к непрерывной функции а к набору точек сигнала, ОК, с терминологией разобрались, мы говорим об одном и том же. Я имел в виду ваш измеритель на STM32F100C4xx. Честно говоря кода не читал: а есть 3.10 сорс или diff с опубликованым 3.06? |
|
|
alexf58: Честно говоря кода не читал: а есть 3.10 сорс или diff с опубликованым 3.06?6.10 отличается от 6.03 лишь тем, что там есть калибровка разбаланса каналов измерения. Исходников от нее я не выкладывал, она еще не доделана. alexf58: Понятно что во втором случае намного дольше время сбора данных, но намного быстрее вычисления Я бы не стал заморачиваться сложностью вычислений, полноценная свертка занимает сейчас порядка 30% времени процессора и создание синуса для цап порядка 20%. Если использовать 4 точки на период, то при равном количестве точек данных теоретически эффект улучшения с\ш (~ добор битов) будет тот же, но у получившегося фильтра будет не одна полоса как у свертки с синусом, а гребенка со всеми нечетными гармониками. Соотв. если на этих частотах чтото есть (что скорее всего), то все это наложится на измерения, в целом будет хуже. |
|
|
Neekeetos: эффект улучшения с\ш (~ добор битов) будет тот же, но у получившегося фильтра будет не одна полоса как у свертки с синусом, а гребенка со всеми нечетными гармониками. ОК. Значит я все правильно понимаю У меня была идея поставить на входе 2 умножителя (MC1496) что (хочется верить) улучшило бы разбаланс по сравнению с детектором на ключах. Но раз все так хорошо складывается с чисто програмной обработкой, не стоит заморачиватся. |
|
|
alexf58: Для меня непрерывная функция - ИНТЕГРАЛ Фурье, а для периодической РЯД Фурье. Получаемый дискретным преобразованием aka DTF Тут уж слишком всё перепутано, попробую, в дополнение к уже сказанному Neekeetos, немного прояснить терминологию Непрерывная функция - грубо говоря, функция, график которой не имеет скачков и разрывов (более формальное определение даётся через равенство предела в точке значению самой функции в этой же точке). Непрерывная фунция может быть периодической. Например, sin. То есть противопоставление непрерывная - периодическая неверно. Коэффициенты разложения непрерывной периодической функции в ряд Фурье получаются интегрированием. Т.е. комплексная амплитуда каждой гармоники - интеграл (не путать с интегралом Фурье). Интеграл Фурье - предельный случай ряда Фурье, когда период функции устремляется к бесконечности. Чем больше период, тем меньше расстояние между частотами соседних гармоник. В пределе вместо дискретных коэффициентов (показывающих в том числе распределение энергии по дискретным гармоникам) получаем непрерывную функцию, которую можно интерпретировать как функцию спектральной плотности энергии. Эта функция получается из интеграла Фурье. Это всё было для непрерывных функций. Дискретные сигналы тоже могут быть периодическими и не периодическими (не периодический = бесконечно большой основной период). Обычно размер выборки конечный, и тут можно применить трюк - периодом можно считать длину выборки. Коэффициенты разложения в ряд Фурье дискретной периодической функции получаются дискретным преобразованием Фурье (или его оптимизированным вариантом - БПФ). |
|
|
alexf58: У меня была идея поставить на входе 2 умножителя (MC1496) что (хочется верить) улучшило бы разбаланс по сравнению с детектором на ключах. Тут две вещи смешались. В моей схеме есть разбаланс, связан он с тем, что вычитание сигналов происходит не с помощью дифусилителя а математически внутри мк, при этом сигнал отдельных каналов, которые мк анализирует, отличается по амплитуде и фазе из за разных компонентов. Поэтому там , где при вычитании должен получаться ноль, получается некая ненулевая величина. В принципе я сейчас пришел к выводу, что было бы разумнее все таки поставить в этой схеме дифусилители для напряжения на шунте и измеряемой детали, было бы меньше проблем при том же количестве деталей. Вторая вещь - детектор на ключах. Это идея больше относящаяся к рлц-3 и тому что я сейчас делаю на 373 процессоре. У него задача преобразовать сигнал по частоте так, чтобы его можно было измерить имеющимся ацп. Например в рлц-2 такой детектор преобразует входной сигнал в постоянное напряжение. У 373 ацп несколько быстрее чем просто интегрирующее в рлц2, так что было бы лучше преобразовать входной сигнал ( из диапазона ~100гц - 1МГц) к какому то низкочастотному в пределах 1-20кГц, тогда и время измерения не будет зависеть от тестовой частоты и шум/помехи будут меньше влиять. Почему именно ключи а не интегральные смесители объясняется просто, у интегральных смесителей очень небольшой динамический диапазон, порядка 60дб и даже в нем они нелинейны. Сигналы меньше нижней границы диапазона утонут в шуме, а выше верхней будут сильно искажены по амплитуде. Аналогично с фазой, по диапазону амплитуд она не будет постоянной. Перемножитель, собраный на ключах - вещь линейная и в нем подобные искажения будут минимальны. boo2: немного прояснить терминологию получилось, спасибо |
|
|
boo2: Непрерывная функция - грубо говоря Спасибо. Я это все знаю (или по крайней мере знал). Использовал термин "непрерывная" некорректно в смысле противоположности "дискретного". Короче все стало на места. Neekeetos: у интегральных смесителей очень небольшой динамический диапазон Об этом не подумал. Бывают же приемники с прямым преобразованием где прямо на входе микровольты идут на балансный смеситель. Нелинейность - это да. Постораюсь больше глупостей не писать |
|
|
Еще одно соображение. Во всех приборах о которых я читал так или иначе используется на входе усилитель. Если я правильно понимаю, то 16 бит в 373-м помогают не переключая усиления мерять в широком диапазоне. Хотя имеются недорогие усилители с программируемым усилением, казалось бы можно взять скажем один фиксированный усилитель скажем на 250. Не обязательно переключать выходы: у STM32 достаточно переключаемых входов ADC. |
|
|
alexf58: Выбирая канал с усилением 1 или 250, не получим ли мы "бесплатно" 8 бит диапазона? Насколько я могу судить, усилитель нужно обязательно, как и переключаемые шунты. Если взять за основу то, что я намерил по 16бит ацп в 373 выходит следующее: - для АЦП С/Ш 100дб - эквивалентно диапазону 1 - 100000 отсчетов ацп без шума - границы диапазона измерения (обусловленые шумом ацп ) для отн. погрешности в 0,1% для шунта 100 Ом : 100 Ом - 10 кОм для шунта 10 кОм : 10 кОм - 1 МОм Грубо говоря, для двух переключаемых шунтов и без каких либо усилителей получим диапазон 100 Ом - 1 МОм , где погрешность укладывается в 0,1%. Довольно небольшой. Если поставить усилитель с максимальным ку 100 , то диапазон расширится в эти 100 раз и составит 1 Ом - 100 МОм для 0,1% ( естественно это не полный диапазон измерения прибора, он будет в сотню раз шире для погрешности в 10% ). Это все только ограничение по ацп. Вообще я предполагал сделать почти классику жанра по такой схеме - на выходе умножителя получаем сигнал с фиксированной частотой в пределах 1к-10к не зависящий от частоты измерения, фильтруем его и усиливаем с помощью усилителя с переключаемым коэффициентом усиления. Бонус такой схемы в том, что поскольку не требуется усиливать во много раз частоты из рабочего диапазона прибора (а они запланированы примерно как 100Гц - 1МГц ), то и не нужно много каскадов усиления (их наличие связано с тем, что для полного диапазона частот обычно нельзя обеспечить большой коэффициент усиления ), достаточно поставить недорогой управляемый усилитель , у меня в виде семплов есть PGA112, так что я ориентируюсь на него. Пока что мои изыскания в этом деле забуксовали на преобразователе ток-напряжение. Я сделал его на MCP6022, но на частоте 1МГц он фактически не работает, на точке виртуального нуля присутствует сигнал всего в 4 раза меньше по амплитуде чем входной. То есть балансировки не получается. Очевидно для данного блока придется подыскивать ОУ с полосой не 10МГц а несколько больше либо с более шустрым выходом (slew rate тоже влияет). |
|
|
Форум про радио — сайт, посвященный обсуждению электроники, компьютеров и смежных тем. pro-radio.online | Обратная связь |
© 2003—2024 |