2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3, 4, 5  След.
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение15.01.2019, 07:55 
Аватара пользователя


11/12/16
14037
уездный город Н
Dmitriy40 в сообщении #1368760 писал(а):
Причины п.4 мне откровенно непонятны.


При питании детектора от Кроны его земля оказалась никак не связана с землей остальной части устройства. Может быть с этим связано? Вообще дифф. вход АЦП должен был спасти, так что эффект мне тоже не понятен.

Dmitriy40 в сообщении #1368760 писал(а):
Уменьшение шума в п.3 - звоночек что ловится эфир, а значит надо аккуратнее ему подавать сигнал и экранировать всю плату детектора (с подключением к его земле).

Один из вариантов у меня в планах - это засунуть детектор и АЦП в экран от ВЧ-блока от телевизора, там выходы выводятся через проходные конденсаторы. Должно хорошо уменьшить наводки по эфиру, в том числе и на провода. Но это позже, сначала проведу эксперимент с подключением всего устройства к автомобильному аккумулятору (на неделе или на выходных).

сейчас параллельно дифф. входу АЦП стоит конденсатор 0.1 мкФ. Вот он сильно снижает шум. Увеличивать его, а тем более вводить еще сопротивления очень не хочется. Выборка будет считаться безумно долго. Разве что в качестве эксперимента... Но не очень понятно, что делать с результатами этого эксперимента.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение15.01.2019, 15:33 
Заслуженный участник


20/08/14
11867
Россия, Москва
EUgeneUS в сообщении #1368792 писал(а):
При питании детектора от Кроны его земля оказалась никак не связана с землей остальной части устройства. Может быть с этим связано? Вообще дифф. вход АЦП должен был спасти, так что эффект мне тоже не понятен.
Так к сожалению нельзя: диф.вход не совсем "честный", он конечно измеряет разницу потенциалов между собой, но реально оба потенциала измеряются относительно земли АЦП. Т.е. землю кроны таки надо соединять с землёй АЦП (но можно через резистор или индуктивность для изоляции шумов), иначе на входах АЦП может появиться потенциал выше его питания или ниже его земли, что недопустимо. А ещё он при этом имеет право как угодно плавать ... Так что без подтяжки одного из диф.входов к потенциалу АЦП (или земле или питанию, без разницы, хотя по шумам лучше к земле, там их меньше) для выравнивания потенциалов не обойтись.
Это легко пронаблюдать глазками: подключить к диф.входу батарейку и не подтягивая её к земле коснуться любого её вывода пальцем - будет офигенная наводка на вход АЦП. Подтянув минус батарейки к земле АЦП резистором 1кОм (понятно ток через него нулевой) касание пальцем эффект даст на порядки меньший.

EUgeneUS в сообщении #1368792 писал(а):
Разве что в качестве эксперимента... Но не очень понятно, что делать с результатами этого эксперимента.
Именно в таком качестве. Задача: отделить шум самого АЦП от шума входного сигнала и убедиться что шум появляется таки до АЦП. Впрочем Вы в этом вроде бы уже практически убедились. Меня смутил п.2 - какие такие "другие 5В устройства кроме ардуины"? Это генератор (в варианте AD9850) и АЦП, других не вижу. И если кондёр по питанию АЦП (ведь генератор я так понял внешний) снижает выходной шум ... Значит что-то с АЦП не так радужно как Вы говорили.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение15.01.2019, 15:55 
Аватара пользователя


11/12/16
14037
уездный город Н
Dmitriy40 в сообщении #1368857 писал(а):
Меня смутил п.2 - какие такие "другие 5В устройства кроме ардуины"?


Есть ещё экран Nextion. Кушает 0.5-0.6 А (с подсветкой).

Dmitriy40 в сообщении #1368857 писал(а):
И если кондёр по питанию АЦП (ведь генератор я так понял внешний) снижает выходной шум ...


Да, в этом случае генератор был внешний.
Dmitriy40 в сообщении #1368857 писал(а):
Так к сожалению нельзя: диф.вход не совсем "честный", он конечно измеряет разницу потенциалов между собой, но реально оба потенциала измеряются относительно земли АЦП.

Понятно, спасибо. Но у меня сейчас MCP3304, а про неё пишут "• Full Differential Inputs".

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение15.01.2019, 17:29 
Заслуженный участник


20/08/14
11867
Россия, Москва
EUgeneUS в сообщении #1368866 писал(а):
Но у меня сейчас MCP3304, а про неё пишут "• Full Differential Inputs".
Простой тест на вшивость: посмотрите можно ли ей подать на входы напряжения +1000В и +1001В относительно земли АЦП? Ведь разница между ними в измеряемый диапазон укладывается. :mrgreen: Подсказки из pdf: "All inputs and outputs w.r.t. Vss ............... -0.3V to Vdd+0.3V" и "Absolute Input Voltage CH0-CH7 -0.3 — Vdd+0.3V", плюс Fig.1-5 Full Differential Test Configuration Example и Fig.1-6 Pseudo Differential Test Configuration Example не зря прямо намекают на подтяжку потенциалов источников к земле АЦП.
Конечно киловольты Вы вряд ли пальцем посадите, но вот десятки и даже сотни вольт - легко. А уж несколько вольт между землями вполне могут образоваться и из-за наводок (если земли ну совсем изолированы) и от протекающих токов.

Обычно под выражением "Full differential" понимают одновременное измерение (точнее выборку в УВХ/Sample&Hold) обоих входов (разности между ними), вместо двух последовательных измерений с последующим вычитанием уже полученных кодов (или совсем уж редкость: накопление заряда с первого входа, потом донакопление (возможно со знаком) со второго входа и лишь потом оцифровка полученной аналоговой разницы).

-- 15.01.2019, 17:43 --

EUgeneUS в сообщении #1368866 писал(а):
Есть ещё экран Nextion. Кушает 0.5-0.6 А (с подсветкой).
Экран запитать от общей цифровой части, хоть от USB (если выдаёт такой ток), хоть от любого БП. Его шум вообще никак не должен проникать в аналоговую часть. Потому я его даже не рассматриваю. Как и саму ардуину, она тоже в Вашем включении вся цифровая и к шумам в аналоге не должна быть причастна. Конечно есть вопрос наводок и проникновения помех из цифры в аналог в рамках одной микрушки (АЦП, AD9850) или платой с ними, но его будем решать лишь по необходимости (ибо пайки много).

-- 15.01.2019, 17:44 --

Кстати, ещё одно. Я не уследил, оказывается у АЦП опора внешняя, как она выполнена на вашей плате? Может ли она пропускать шум из питания платы АЦП? Или со входов АЦП (перекрёстная наводка)? Или с цифровых выводов? Может в опору добавить фильтр или вообще подать опору от батарейки с кондёром в доли мкФ (хотя бы для теста)?

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение16.01.2019, 10:25 
Аватара пользователя


11/12/16
14037
уездный город Н
Dmitriy40 в сообщении #1368896 писал(а):
Обычно под выражением "Full differential" понимают одновременное измерение (точнее выборку в УВХ/Sample&Hold) обоих входов (разности между ними), вместо двух последовательных измерений с последующим вычитанием уже полученных кодов


Понятно, спасибо за разъяснение. Правильно ли понимаю, что, второй вариант (последовательное измерение двух входов и вычитание кодов) называют "Pseudo differential"?

Dmitriy40 в сообщении #1368896 писал(а):
Экран запитать от общей цифровой части, хоть от USB (если выдаёт такой ток), хоть от любого БП. Его шум вообще никак не должен проникать в аналоговую часть. Потому я его даже не рассматриваю. Как и саму ардуину, она тоже в Вашем включении вся цифровая и к шумам в аналоге не должна быть причастна


USB порт не тянул одновременно Ардуину и экран. Поэтому экран питался от тех же 5В, что и вся остальная часть схемы, включая аналоговую. Сейчас по-другому - см. ниже.

Dmitriy40 в сообщении #1368896 писал(а):
Конечно есть вопрос наводок и проникновения помех из цифры в аналог в рамках одной микрушки (АЦП, AD9850) или платой с ними, но его будем решать лишь по необходимости (ибо пайки много).

Есть еще вариант "проникновения из цифры в аналог" в рамках макетки. Макетка - Ардуиновская, без пайки. Шины земли и питания макетки использовалась для раздачи 5В. На самой макетке - АПЦ (с опорой) и AD9850 (генератор).

Dmitriy40 в сообщении #1368896 писал(а):
Кстати, ещё одно. Я не уследил, оказывается у АЦП опора внешняя, как она выполнена на вашей плате? Может ли она пропускать шум из питания платы АЦП? Или со входов АЦП (перекрёстная наводка)? Или с цифровых выводов? Может в опору добавить фильтр или вообще подать опору от батарейки с кондёром в доли мкФ (хотя бы для теста)?


Опора - TL431, включенный по самой простой схеме. Находится в непосредственной близости к АЦП. Кондер 0.1 мкФ между опорой и Agnd подключал - на уровень шума влияния не заметил.

Вчера собрал линейный стабилизатор. И конфигурация питания теперь такая:

1. Первая обмотка трансформатора - 7805 - питание цифры (экран, ардуино, энкодер, цифровая часть АЦП), кроме генератора.
2а. Вторая обмотка трансформатора - 7809 - питание модуля с детектором.
2б. Вторая обмотка трансформатора - 7809 (та же самая, что и в 2а) - 7805 - питание аналоговой части АЦП (Vref и Agnd), генератор - и аналоговая и цифровая часть (они итак на плате генератора соединяются).
3. Земли источников соединяются в БП через резистор 10 Ом. И на плате генератора (см. выше).
4. Электролиты:
а) Питание цифры: 100 мкФ перед 7805 для цифры и 200 мкФ после неё,
б) Питание аналоговой части: 200 мкФ перед 7809, 470 мкФ после неё, 100 мкФ после 7805. Керамические конденсаторы 0.1 мкФ после всех КРЕНок имеются.
5. Детектор в фольге, после предыдущих экспериментов.

Результат:
1. Шумы (визуально) заметно упали, особенно заметно при низких уровнях сигнала. Какую-то числовую информацию по уровню шумов предоставлю позже.
1.1. Если может у Вас есть какие-то советы, в каком виде предоставить? Пока планирую посчитать среднее и дисперсию по выборкам для нескольких уровней входного сигнала.
2. Уже бы можно и успокоиться, но хочется лучшего. В частности, при высоких уровнях сигнала некоторый шум есть, а хочется, чтобы не было :mrgreen:
3. Паттерна "50 Гц" в шумах не заметил (но может быть вылезет после усреднений, проверю позже).

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение16.01.2019, 16:18 
Заслуженный участник


20/08/14
11867
Россия, Москва
EUgeneUS в сообщении #1369054 писал(а):
Правильно ли понимаю, что, второй вариант (последовательное измерение двух входов и вычитание кодов) называют "Pseudo differential"?
Э, вот тут я не уверен в терминологии, возможно всё что не Full называют Pseudo ... Или просто не указывают что Full ... Подозреваю что может быть и "кто во что горазд", а стандарта нет (или я про него не в курсе).

EUgeneUS в сообщении #1369054 писал(а):
Опора - TL431, включенный по самой простой схеме. Находится в непосредственной близости к АЦП. Кондер 0.1 мкФ между опорой и Agnd подключал - на уровень шума влияния не заметил.
Совсем без кондёра плохо хуже, всё же быстродействие TL431 не слишком высоко и она хорошо работает лишь в (около)линейном режиме (до единиц, ну может десятка кГц), а всё что выше десятка кГц она достаточно подавить не сможет. Но подозреваю кондёр всё же где-то и так уже есть, или около неё, или около АЦП.

EUgeneUS в сообщении #1369054 писал(а):
Вчера собрал линейный стабилизатор. И конфигурация питания теперь такая:
А собственно зачем две 7809? Они по моему лишние, на плате AD8310 кренка и так есть, туда вполне можно подавать прямо с кондёра выпрямителя, а вторая работает на 7805 - что тоже смысла не имеет, столь высокое подавление пульсаций по входу (от выпрямителя) вам тут не нужно, одной 7805 хватит за глаза. Нагрев одной 7805 (АЦП и генератор) тоже мал и делить его на два корпуса нет необходимости.
Разве что вам попалась аномально плохая 78L05 на плате AD8310 и она отвратно давит пульсации по входу, ну тогда да, можно дополнить и 7809, но я в её пользе сомневаюсь. Можете проверить ради интереса, коротнув её.

Нет ли третьей 7805 чтобы запитать генератор отдельно? Не очень мне нравится единое питание шумного ВЧ генератора (да ещё и с цифрой) и аналога АЦП (и как это Вы поделили АЦП на аналог и цифру?! Там же одно общее питание, лишь земли разные, кстати объединённые внутри АЦП через 10Ом, на что намекает FIGURE 5-11: Separation of Analog and Digital Ground Pins.MCP3302/04). Впрочем это можно будет проверить и с внешним генератором, хотя бы для теста. Если лишней кренки нет - запитайте АЦП через RC фильтр, 510Ом на 470мкФ хорошо подавит всё выше единиц кГц (до 1LSB АЦП). А 0.2В падения на резисторе на работу АЦП не повлияет.

EUgeneUS в сообщении #1369054 писал(а):
Есть еще вариант "проникновения из цифры в аналог" в рамках макетки. Макетка - Ардуиновская, без пайки. Шины земли и питания макетки использовалась для раздачи 5В. На самой макетке - АПЦ (с опорой) и AD9850 (генератор).
Вещь удобная, но это одна большая антенна. Да и падение вдоль неё очень приличное (десятки мВ) для аналоговых цепей, имейте в виду на будущее (здесь-то вроде это не повлияет). Не зря везде говорят что для высокочастотных и микровольтовых схем надо собирать не макетки, а в реальном конструктиве. Вам это важно для AD8310 ну и может быть АЦП, по крайней мере аналоговые цепи лучше кинуть проводами (коаксиалом) без контакта с макеткой. Цифре не страшно.

EUgeneUS в сообщении #1369054 писал(а):
1.1. Если может у Вас есть какие-то советы, в каком виде предоставить? Пока планирую посчитать среднее и дисперсию по выборкам для нескольких уровней входного сигнала.
Ну так как я не заказчик, то и требований к данным о шумах у меня нет. ;-) По идее хватит двух оценок буквально "на глаз": величина и доля в десятках процентов отдельных выбросов; величина основного массива шума. Отдельно стоит проверить величину гармоники 50/100Гц. ИМХО хорошим уровнем будет ±1..3LSB основной шум и достаточно редкие пики хоть до десятка LSB - потому что это всё потом срежется даже простым усреднением х8 (при суммировании как раз получится удобное int16). Если будет видна 50Гц - с ней придётся бороться, причём либо экранами (на АЦП и генератор), либо алгоритмически, т.к. по питанию в этом плане у Вас и так всё уже хорошо.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение16.01.2019, 19:59 
Аватара пользователя


11/12/16
14037
уездный город Н
Dmitriy40 в сообщении #1369121 писал(а):
А собственно зачем две 7809? Они по моему лишние, на плате AD8310 кренка и так есть, туда вполне можно подавать прямо с кондёра выпрямителя


Это одна 7809 (выше в пункта 2а и 2б - это одна и та же 7809), после неё идет разветвление.
Её смысл в том, что после кондера и выпрямителя получилось 16-17 Вольт, боязно подавать их на питание детектора, может 78L05 на нём вскрыться.

Dmitriy40 в сообщении #1369121 писал(а):
Нет ли третьей 7805 чтобы запитать генератор отдельно?

нет свободной обмотки трансформатора - надо будет его перемотать с 2х12 вольт на 2х6 и 1х9 вольт. Пока с шумами разбираемся, и используется внешний генератор, синтезатор с макетки могу просто выдернуть.

Dmitriy40 в сообщении #1369121 писал(а):
Вещь удобная, но это одна большая антенна.

да, я понимаю.

Итак. Сделал выборки с разным входным сигналом и вот, что получилось.
Условия:
1. Питание, как сделал вчера.
2. Радиочастота - 4 МГц
3. Внешний генератор с аттенюатором.
4. Выборки по 500 измерений, делается примерно за 0.5 секунды (но основное время на точку уходит на работу с синтезатором, который сейчас работает в холостую).
5. Алгоритмической обработки нет.

Вот что получилось:

Код:
100 mV    30 mV     10 mV      3 mV     1 mV   0.3 mV   0.1 mV  0.03 mV   0.01 mV 0.003 mV    RF
533 ms     534 ms   533 ms    534 ms   533 ms   533 ms   533 ms   534 ms    533 ms   534 ms    Время выборки
                              
  3702     3279     2862     2458     2039     1621     1202      714      721      707       Среднее                 
  0,90      0,46     1,23     2,14    10,49   151,97   868,54  1854,11  1692,97  1665,57       Дисперсия             
  0,95      0,68     1,11     1,46     3,24    12,33    29,47    43,06    41,15    40,81       Ср. кв. откл.           
  2259      2001     1747     1500     1245      990      733      435      440      432       mV IN ADC             
   0,0     -10,7    -21,3    -31,6    -42,2    -52,9    -63,5    -76,0    -75,8    -76,1       dB


Что вижу.
1. от 100mV до 10mV - примерно "полочка" по уровню шума. Думаю, что это шум АЦП, наводки на провода от детектора до АЦП и шум выходного усилителя детектора. И он меня вполне устраивает.
2. 0.01 mV и 0.003mV детектор просто "не видит". Ниже чувствительности.
3. 0.03 mV находится ещё на линейном участке, предел чувствительности детектора где-то рядом.
4. от 3 mV до 0.03 mV уровень шума растет экспоненциально. То есть это шум на детекторе (наводки на RF вход, в том числе и через паразитные ёмкости на плате, и его собственный шум).

50\100 Гц не наблюдаю (визуально, на графике-"осциллограмме").

Что хочется: чтобы уровень шума на 0.03 mV был таким же, как сейчас на 0.3 mV. То есть шум надо уменьшить на 20 дБ.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение16.01.2019, 21:52 
Заслуженный участник


20/08/14
11867
Россия, Москва
EUgeneUS в сообщении #1369167 писал(а):
нет свободной обмотки трансформатора
Она и не нужна, можно вообще всё питать от одной обмотки и выпрямителя с электролитом. Не настолько огромные токи и их пульсации у вас в схеме чтобы делить обмотки.
Тем более все критичные к шуму части "развязаны" кренками, которые в прямую сторону (в сторону понижения напряжения) давят пульсации активно, а в обратную выступают не хуже RC фильтра, где резистором является регулирующий транзистор кренки, а ёмкостями - электролиты. При падении на кренке 10В (возьму грубо) и токе 10мА сопротивление регулирующего транзистора 1кОм, что на 200мкФ ёмкости после выпрямителя даёт подавление до 1LSB начиная уже от пары кГц и выше. И потом ещё наложится прямое подавление кренок. Т.е. взаимопроникновение шумов (до сотен и тысяч МГц, которые полезут уже по паразитным ёмкостям между выводами до первой керамики на пути) по цепям питания исключено.

Про 7809 я неправильно понял из Ваших слов поначалу. Ну если боязно - не помешает. Хотя 78L05 допускает до 30В, по крайней мере в моём pdf от ST. И от 10мА тока AD8310 греться она будет незначительно, даже с падением на ней в 25В это лишь 250мВт, что для корпуса SOT89 даёт меньше жалких 4°С нагрева.

EUgeneUS в сообщении #1369167 писал(а):
Вот что получилось:
Надеюсь цифры в LSB. Что вижу в них я.
Вижу что начиная от 1мВ RF и менее шум начинает резко расти. И это не АЦП т.к. на нём напряжение меняется незначительно.
И не 50Гц в АЦП т.к. в 533мс укладываются десятки периодов и они бы дали увеличение дисперсии и ср.кв.отклонения на всех диапазонах, включая и самые грубые - не настолько резко падает напруга на входе АЦП.
Наводку 50Гц до АЦП (на AD9850 и AD8310) исключить нельзя, она может быть типа 10мкВ и существенно влиять лишь при малых входных уровнях детектора. Но если Вы её действительно не наблюдаете в данных даже на малых уровнях ... Наверное в таком случае можно исключить наводку из эфира на вход детектора, там 50Гц должны превалировать над всем прочим.
Не слишком нравится увеличение шума на 0.3мВ и 0.1мВ RF, вот тут и надо ловить источник шумов. Если это не шум самой AD8310, я до конца не уверен.
Диапазоны 0.03мВ и ниже - чистый шум, полезного сигнала там уже нет. Об этом просто кричит стабилизация ср.кв.отклонения и дисперсии. Очень похоже что и 0.1мВ обильно забит шумом.

Теперь про уровень шума относительно диапазонов.
При уровне на входе АЦП меньше 0.45В говорить о шумах бессмысленно - это минимум что выдаёт AD8310. Фактически можно считать что при выходе AD8310 менее 0.5В (Output Voltage Input = -91 dBV (-78 dBm) 0.4V - но это лишь typical, у вас реально получилось 0.44В) данные о входе неадекватны или их просто нет. Т.е. что-то мерить в этих точках - неразумно, допустима лишь очень грубая оценка (и то с большими оговорками). Это отсекает все диапазоны менее 0.1мВ RF. Вот такая вот "правда жизни".
Если "размаха" измерений от 0.1мВ до 100мВ по входу (непонятно почему не до допускаемых AD8310 2.2В) Вам мало - придётся ставить малошумящий широкополосный усилитель перед AD8310 и доводить размах до ±2В на самом грубом пределе. Или повышайте размах сигнала генератора. Иначе диапазон не расширить, уходить в область менее 0.1мВ AD8310 не даст - будете мерить не входной сигнал, а произвольные шумы (с неизвестным и непостоянным спектром! их и не отфильтруешь).
И ещё насчёт 0.1мВ. AD8310 даёт нормальную точность лишь от -80dbV по входу (согласно Fig.7 и 8), измерять что-то слабее - погрязть в шумах. -80dBV составит $10^{-4}$ от 1В (The use of dBV, defined as decibels with respect to a 1V rms sine wave), т.е. 0.1мВ rms. И все что слабее - будет зашумляться детектором. Реально данные значительно зашумляются уже от 0.3мВ, а в 0.1мВ шума уже больше сигнала. Вот здесь и надо искать откуда он такого уровня.

Итого.
При уровне входа от 1мВ и более пользоваться уже можно и так, разумеется добавив небольшое усреднение (5-8 отсчётов) или плюс другую простую фильтрацию (отбрасывание выбросов или медиану). Весь имеющийся шум уйдёт ниже 1LSB.
Уровни 0.3мВ и 0.1мВ под вопросом, второй под большим, надо смотреть спектр шума и искать его причину. Усреднение может помочь, а может и нет (особенно на 0.1мВ). Зависит от источника шума. Возможно придётся делать честный перестраиваемый цифровой фильтр, на примерно определённую (или заранее точно известную) входную частоту AD8310. Тут я гоню, забыл про пиковый детектор.
На уровнях менее 0.1мВ сигнала нет (AD8310 его не видит), мерить нечего.

PS. Вообще спасибо за подробные данные, и в LSB, и дисперсия, и мВ на АЦП. Заметно легче разобраться в происходящем.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение17.01.2019, 10:26 
Аватара пользователя


11/12/16
14037
уездный город Н
Dmitriy40 в сообщении #1369185 писал(а):
Она и не нужна, можно вообще всё питать от одной обмотки и выпрямителя с электролитом.

...
Dmitriy40 в сообщении #1369185 писал(а):
Про 7809 я неправильно понял из Ваших слов поначалу. Ну если боязно - не помешает.

Да, похоже в этих вопросах я дую на воду.

Dmitriy40 в сообщении #1369185 писал(а):
Не слишком нравится увеличение шума на 0.3мВ и 0.1мВ RF, вот тут и надо ловить источник шумов.

Согласен.
Dmitriy40 в сообщении #1369185 писал(а):
Если это не шум самой AD8310, я до конца не уверен.

Хотелось бы верить...

Dmitriy40 в сообщении #1369185 писал(а):
Если "размаха" измерений от 0.1мВ до 100мВ по входу (непонятно почему не до допускаемых AD8310 2.2В)


а) Следующий диапазон (300 мВ) уже приводит к зашкалу - АЦП отсчитывает 4096. Надо увеличивать опору с 2.5 В, до 2.6 В, или до 3 В (но не больше). Может посоветуете хороший ИОН на такое напряжение? Или банального стабилитрона на 3В будет достаточно? Это даст 4 или чуть более дБ в размахе АЧХ. Помню про них :)
б) Размах для измерения АЧХ хотелось бы получить не меньше 70 дБ, а лучше 80 :D Дело в том, что, например, кварцевые фильтры имеют подобные значения подавления внеполосного сигнала. Что хочется видеть на этом показометре.

Dmitriy40 в сообщении #1369185 писал(а):
Вам мало - придётся ставить малошумящий широкополосный усилитель перед AD8310 и доводить размах до ±2В на самом грубом пределе. Или повышайте размах сигнала генератора.

Это понятно. В посылке из Китая неспешно идут управляемый аттенюатор и широкополосный усилитель. Сейчас вопрос в максимальном размахе АЧХ в дБ, который обеспечит показометр. А уровни сигнала туда будут загоняться усилителем и-или аттенюатором.


Про точку 0.03mV. Если построить график выходного сигнала детектора (по средним) и логарифмом уровня сигнала, то эта точка лежит как раз на изломе графика, на переходе от линейной части к постоянной "полочке", когда чувствительности детектора уже не хватает. Скорее всего, при снижении уровня шумов, он окажется "в рабочей области". Но в любом случае, рабочая область со стороны слабых сигналов закончится ближе к ней, чем к 0.1mV. Могу провести серию измерений вокруг неё с меньшим шагом по уровню сигнала.

Еще прошу совета по экранированию.
Понятно, что детектор нужно экранировать очень хорошо, и вводы в экран максимально "затыкать" по ВЧ, проходные конденсаторы, ферритовые бусинки. Вопросы:
1. АЦП лучше размещать в том же экране или отдельно?
2. Если отдельно, то можно ли использовать проходные конденсаторы и ферритовые бусинки на выходе детектора\входе АЦП?

Dmitriy40 в сообщении #1369185 писал(а):
Уровни 0.3мВ и 0.1мВ под вопросом, второй под большим, надо смотреть спектр шума и искать его причину.

БПФ, встроенное в Ексель для анализа спектра шума подойдет?
Сколько лучше отсчетов делать на выборку? 500 хватит, или до нескольких тысяч поднять?

Пока провожу эксперименты, могу выкинуть с макетки AD9850 и отключить LCD-экран. Наверное, так и сделаю и посмотрю, что произойдет с шумом.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение17.01.2019, 12:02 
Аватара пользователя


11/12/16
14037
уездный город Н
UPD. Для информации. Внешний генератор (Г4-102) ремонтировался несколько раз, а поверялся - ни разу. Так что
1. Относительные значения уровня сигнала, скорее всего содержат небольшую ошибку. То есть уровни сигнала (по напряжению) в "1 mV" и "10 mV" отличаются в 10 раз с хорошей точностью (скажем, в несколько, до 10, процентов). Ибо в пассивном аттенюаторе нечему ломаться и туда никто не лазил.
2. А вот абсолютные значения могут сильно отличаться от того, что "написано", может на десятки процентов. АФАИР, реальный уровень заметно выше, чем "написано".

Dmitriy40 в сообщении #1369185 писал(а):
PS. Вообще спасибо за подробные данные, и в LSB, и дисперсия, и мВ на АЦП. Заметно легче разобраться в происходящем.

Так мне же самому тоже приходится разбираться :D, с Вашей помощью, конечно.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение17.01.2019, 17:46 
Заслуженный участник


20/08/14
11867
Россия, Москва
EUgeneUS в сообщении #1369237 писал(а):
а) Следующий диапазон (300 мВ) уже приводит к зашкалу - АЦП отсчитывает 4096.
Вот тут что-то не понял. Из доки на AD8310 видно, что 2.5В она выдаёт при входе -3dBV (примерно), что соответствует 0.71В RMS или 1.0В амплитуде (или 2.0В пик-то-пик). Сколько это на генераторе мне не понять (выход 0.5В это у него амплитуда или пик-то-пик или RMS?). Где-то настолько сильно сбилась калибровка?
Калибровку генератора можно и проверить (не слишком точно, но всё же): так как сама AD8310 работает вплоть от 0Гц, то подать ей прямо на вход (уже после проходных кондёров!) напругу с 1.3В батарейки (взять подсевшую) и сравнить её вход и выход мультиметром - т.е. фактически поверить AD8310 в диапазоне 1В RMS. А потом сравнить её выход с расчётным при подаче сигнала с генератора.

EUgeneUS в сообщении #1369237 писал(а):
Надо увеличивать опору с 2.5 В, до 2.6 В, или до 3 В (но не больше). Может посоветуете хороший ИОН на такое напряжение?
Зачем что-то советовать если у Вас и так использована прекрасная TL431, которую можно настроить на любое напряжение от 2.5В до 30В? Добавьте подстроечник и регулируйте как душе угодно. А измерять опору при желании можно и ардуиной. Да и менять опору можно вплоть до питания АЦП (т.е. до 5В).

EUgeneUS в сообщении #1369237 писал(а):
б) Размах для измерения АЧХ хотелось бы получить не меньше 70 дБ, а лучше 80 :D Дело в том, что, например, кварцевые фильтры имеют подобные значения подавления внеполосного сигнала. Что хочется видеть на этом показометре.
При высоком коэффициента ослабления между генератором и пиковым детектором у Вас в любом случае лишь два выхода: или ставить малошумящий широкополосный усилитель перед AD8310, или повышать выходное напряжение генератора (где шумность усилителя уже роли не играет). Строить самому или пользоваться китайскими не поверенными усилитель перед AD8310 я бы категорически не советовал - это довольно специфичная область знаний (ВЧ сигналы малого уровня), где очень много подводных камней и ни у меня, ни у Вас таких знаний и опыта нет. А вот отрицательный опыт у меня (не совсем личный, коллеги на работе) есть, когда пытались измерять сигналы ADSL с уровнем типа -40..-60dB и не самодельными приборами.
Упс, Вы прямо дальше пишете про китайский усилитель и аттенюатор ... Ну, играйтесь, мороки будет мно-о-о-ого. :-)

EUgeneUS в сообщении #1369237 писал(а):
1. АЦП лучше размещать в том же экране или отдельно?
Или снаружи, или в отдельном. АЦП меряет практически постоянный сигнал, пусть даже меняемый каждые 10мкс или сколько Вы там будете усреднять одну частотную точку, но на этом интервале - постоянный. При нормальном подводе сигнала (коаксиал или хотя бы диф.пара, а лучше конечно её и в экране, но коаксиала ИМХО и так за глаза) и коротких цепях от коаксиала до выводов АЦП и наличии около них фильтрующих элементов (кондёр и возможно последовательные резисторы) для подавления ВЧ - наводок на вход АЦП с эфира быть не должно вообще (они будут сильно меньше 1LSB). И убирать его в экран смысла мало. Экран нужен когда сигналы слабые и сравнимые с наводками с эфира. Но попробовать чисто для теста можно.

EUgeneUS в сообщении #1369237 писал(а):
2. Если отдельно, то можно ли использовать проходные конденсаторы и ферритовые бусинки на выходе детектора\входе АЦП?
Проходные конденсаторы?! Чтобы отрезать НЧ и оставить лишь ВЧ?! Зачем?! Там надо наоборот, отрезать всю ВЧ и оставить лишь НЧ - вплоть до частоты перестройки генератора и не выше. Потому проходные резисторы и кондёр впараллель входу АЦП. Вы говорили последний там и так есть, 0.1мкФ, вполне.
Ферритовые бусинки теоретически правильно, практически смысла нет - они не давят ничего до сотен МГц (т.к. применяются в USB и DVI/HDMI), а таких наводок на выходе AD8310 у Вас нет. А если и есть - подавятся кондёром на входе АЦП.

EUgeneUS в сообщении #1369237 писал(а):
БПФ, встроенное в Ексель для анализа спектра шума подойдет?
Не пользовался, не знаю. Попробуйте, уж ПФ Вы точно понимаете лучше меня. ;-)
EUgeneUS в сообщении #1369237 писал(а):
Сколько лучше отсчетов делать на выборку? 500 хватит, или до нескольких тысяч поднять?
Тут зависит от алгоритма подавления шумов. Простое усреднение перестаёт давать эффект где-то после сотни отсчётов. Помнится при усреднении точность увеличивается не быстрее $\sqrt{N}$ (и то лишь при соблюдении ряда условий) и увеличение N с 100 до 1000 даст улучшение точности лишь втрое. Под точностью я тут понимаю не абсолютную точность измерения, а лишь дисперсию или флуктуацию выходного кода после фильтра. Если хочется сделать длинное усреднение, то сделайте усреднение ровно за 20мс - убьёте сетевую наводку. Делать длиннее смысла нет. Я бы вообще ограничился 8-16-32, но может повторил бы их дважды со смещением ровно на 10мс (опять же ради убивания сетевой наводки). Фактически Вам надо лишь увести шум АЦП ниже 1LSB и всё, повышать именно точность измерения АЦП не нужно.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение17.01.2019, 18:31 
Аватара пользователя


11/12/16
14037
уездный город Н
Видимо, местами возникли некоторые недопонимания.

1. Один из источников шума на низких уровнях сигнала, ИМХО, такой:
а) ВЧ шум наводится на проводах, подключенных к детектору (питание и сигнал на АЦП).
б) через них проникает на плату
в) через паразитные ёмкости платы доползает до ВЧ входа.

2. Именно для борьбы с ним хочется приспособить проходные конденсаторы и ферритовые бусинки (при размещении детектора в нормальный жесткий экран).

3. Проходной конденсатор это вот такая штука: http://forum.vegalab.ru/showthread.php?t=44552

4. Про выборки
а) для отрисовки АЧХ мне надо около 500 точек. Больше смысла нет (ограничения LCD-экрана), меньше - картинка будет хуже читаться с экрана.
б) эти 500 точек нужно считать\рассчитать и отрисовать не более чем за 1 секунду. Иначе не юзабельно. Отрисовку в расчет не берем (сейчас скорость работы с экраном 38400, можно до 115200 поднять, если будет медленно). То есть время на одну точку - 2 мс. Алгоритмически убивать 50 Гц никак не получается :-(
в) Около 0.5 секунды на эти 500 точек отъедает работа с синтезатором. То есть если частота двигается - это плюс 1 мс на точку.
г) Соответственно, АЦП на 500 отсчетов тратит 35-40 ms, есть некоторый запас, чтобы сделать пару десятков измерений на точку (без сдвига частоты в это время).

5. Мой вопрос про величину выборки был связан с тем: какое количество отсчетов на Ваш взгляд, было бы достаточно для анализа спектра (не на Ардуино, конечно).

Кстати, отключил экран и выдернул синтезатор. В точке 0.03mV стало интереснее. Проведу серию измерений, сведу в таблицу и отпишусь по результатам. Но позже, может завтра уже.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение17.01.2019, 20:51 
Аватара пользователя


11/12/16
14037
уездный город Н
EUgeneUS в сообщении #1369396 писал(а):
В точке 0.03mV стало интереснее.

Никаких чудес не случилось. Только стало хуже :shock:
Дисперсия на низких уровнях сильно возросла.

Однако, сделал усреднение по 16 измерениям на точку. И вот что получилось (кстати, чуть-чуть сдвинул уровень сигнала и 300мВ уже стало помещаться):

Код:
300mV   100mV    30mV    10mV     3mV     1mV   0.3mV   0.1mV  0.03mV  0.01mV  0.003mV RF
826ms   825ms   825ms   826ms   825ms   826ms   826ms   826ms   825ms   825ms    825ms Время выборки
                                 
4080    3672    3249    2835    2438    2026    1623    1263     685     714      689  Среднее
0,22    0,09    0,45    0,21    0,43    0,72   10,49   78,64  428,18  244,48   339,86  Дисперсия
0,47    0,30    0,67    0,46    0,66    0,85    3,24    8,87   20,69   15,64    18,44  Ср. кв. откл
2490    2241    1983    1731    1488    1237     991     771     418     436      420  mV IN ADC
10,4     0,0   -11,0   -21,5   -31,6   -42,1   -52,3   -61,5   -76,2   -75,4    -76,1  dB


1. Вы были правы: точка 0.03мВ выпадает из рабочего диапазона.
2. Если уровень шума (после усреднения) на точке 0.1mV считать приемлемым, то уже получается динамический 70 дБ. Плюс 4-5 дБ добавит увеличение опоры АЦП до 3В. (чтобы до 2.6 В покрывало). То есть размах получается больше 70 дБ, вот и хорошо.

Что делать дальше, понятно:

1. Алгоритмически: сделаю 20 отчетов на точку, буду выкидывать по 2 самых меньших и самых больших, по оставшимся 16 усреднять.
2. И "пилить железо": перемотать трансформатор, сделать хороший экран для детектора...

Спасибо большое! Очень помогли.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение17.01.2019, 21:24 
Заслуженный участник


20/08/14
11867
Россия, Москва
EUgeneUS в сообщении #1369396 писал(а):
3. Проходной конденсатор это вот такая штука: http://forum.vegalab.ru/showthread.php?t=44552
Хм, очень похоже на кусочек простого коаксиала. ;-) И честно говоря не понимаю чем керамический кондёр по питанию в 1нФ хуже этой штуки, он по идее срежет всё вплоть до сотен МГц.
А если речь про цифровые сигнальные провода, то в них достаточно поставить впослед 50Ом резюки (можно с кондёрами 0.1-1нФ на землю со стороны входов) чтобы ограничить скорость нарастания сигналов и убрать ВЧ гармоники (вместе с наводками если будет и кондёр). Бусинки по идее делают то же самое, только не регулируются по частоте и обычно (как думаю) гораздо более высокочастотны.
Впрочем вреда ни те ни другие не принесут, а я могу и не понимать их пользы, так что пробуйте. :-)

EUgeneUS в сообщении #1369396 писал(а):
4. Про выборки
Пишете что 1мс на точку отъедает управление синтезатором и 0.1мс АЦП. ОК. Получается легко можно сделать до 10-ти отсчётов АЦП на точку. 8 лучше - операции быстрее.
Да, напрямую тут не получается сделать фильтрацию 50Гц, слишком медленно вы отсылаете жалкие 40 битов в генератор. Если он у вас включен в байтовом режиме, то можно отсылать лишь три байта из пяти, уж наверняка точности частоты в 2кГц вам хватит. Но вообще говоря, написав отсылку частоты в генератор на асме (раз уж стандартные средства ардуины столь медленны) легко получить время отсылки новой частоты в последовательном коде порядка 250 тактов или жалкие 15-20мкс. Сами частоты в процессе не вычислять, заранее подготовить готовую табличку для отсылки (можно с фиксированным прореживанием по степени 2 чтобы промежуточные получать лишь сдвигами и сложениями). В общем пошаманить можно.
А ещё можно настроить генератор на частоту, сделать 4 отсчёта с накоплением, настроить на другую частоту, а спустя ровно 10мс снова повторить весь цикл с донакоплением в буфере снова по тем же частотам. Если перестройка генератора 1мс, то буфер будет длиной всего 10 частот. В секунду правда не уложитесь.
Если экран позволяет выдавать данные не строго последовательно, то можно и тут пошаманить типа отрисовать сначала чётные частоты, потом нечётные. Или с другим шагом. Тогда общая картинка будет появляться быстро, но огрублённой, а потом детализироваться. В общем простор для творчества есть. ;-)

EUgeneUS в сообщении #1369396 писал(а):
5. Мой вопрос про величину выборки был связан с тем: какое количество отсчетов на Ваш взгляд, было бы достаточно для анализа спектра (не на Ардуино, конечно).
Дык тут три противоречивых требования: теорема Котельникова о минимальной длине выборки; ширина спектральных полос (кажется из неё же); и время накопления данных. Видели время получения красивых спектров в pdf на AD9850? Где времена справа под спектрами подписаны 183с, 399с, 762с ... Вот потому они и красивые. Помню когда со звуком имел дело, никогда не мог получить острые пики при окнах менее десятка тысяч отсчётов. Вот сейчас запустил редактор, сгенерил сигнал 1кГц с дискретизацией 44.1кГц, так красиво пик в спектре выглядит лишь при FFT size 8192 и более. :-(

-- 17.01.2019, 21:52 --

EUgeneUS в сообщении #1369415 писал(а):
Если уровень шума (после усреднения) на точке 0.1mV считать приемлемым,
С дисперсией в 10% от абсолютной величины? Не многовато? Насколько понимаю это где-то пара-тройка процентов точности (по АЦП, ко входу надо пересчитывать).

Вот кстати из-за усреднения вижу уменьшение шума почти в $\sqrt{16}=4$ раза на 0.3мВ и 1мВ, как и должно быть, лишь на 0.1мВ диапазоне всего в 3 раза. На более грубых диапазонах вмешивается битность самого АЦП (а oversampling не работает) и потому шум совсем в ноль не уходит.

 Профиль  
                  
 
 Re: AD9850+AD8310+MCP3304=АЧХметр (шум на АЦП)
Сообщение18.01.2019, 08:55 
Аватара пользователя


11/12/16
14037
уездный город Н
Dmitriy40 в сообщении #1369424 писал(а):
Хм, очень похоже на кусочек простого коаксиала. ;-) И честно говоря не понимаю чем керамический кондёр по питанию в 1нФ хуже этой штуки, он по идее срежет всё вплоть до сотен МГц.

Это и есть "кусок коаксиала", только керамический и ёмкостью от сотен до тысяч пФ.
Чем лучше... Уменьшает распространение шума по проводам, входящим в экран. А вот с каких частот их имеет смысл использовать можно спорить. Сотни МГц - уже обязательны. Единицы МГц - видимо, достаточно обычных кондеров. Однако, детектор-же работает до сотен МГц...

Dmitriy40 в сообщении #1369424 писал(а):
Дык тут три противоречивых требования: теорема Котельникова о минимальной длине выборки; ширина спектральных полос (кажется из неё же); и время накопления данных. Видели время получения красивых спектров в pdf на AD9850? Где времена справа под спектрами подписаны 183с, 399с, 762с ... Вот потому они и красивые. Помню когда со звуком имел дело, никогда не мог получить острые пики при окнах менее десятка тысяч отсчётов. Вот сейчас запустил редактор, сгенерил сигнал 1кГц с дискретизацией 44.1кГц, так красиво пик в спектре выглядит лишь при FFT size 8192 и более. :-(

Так размером и скоростью выборки я ограничен только при работе всего устройства - при съеме АЧХ. А при анализе спектра шума размер выборки ограничен только памятью Ардуины, а сейчас Ардуина Мега и 8к точек легко влезет. Если нужно больше - можно делать выборки по несколько тысяч точек, а потом склеивать их на компе. Тогда длина выборки вообще ничем не ограничена. Ну, кроме продолжительности жизни :mrgreen:

Dmitriy40 в сообщении #1369424 писал(а):
С дисперсией в 10% от абсолютной величины? Не многовато? Насколько понимаю это где-то пара-тройка процентов точности (по АЦП, ко входу надо пересчитывать).

Лучший способ решения проблем - решить, что так и надо :mrgreen:
Если привести ко входу RF, то может и десятки процентов получиться :-(
Если без шуток, то не вижу дальнейших путей для кардинального снижения шума. Что-то даст откидывание минимумов\максимумов при подсчете среднего значения на точку, что-то более тщательное экранирование детектора. От обоих методов кардинальных улучшений не ожидаю.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 69 ]  На страницу Пред.  1, 2, 3, 4, 5  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

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


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

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group