Jump to content

    
Sign in to follow this  
Eugene37

Помогите рассчитать пиковый детектор

Recommended Posts

27 minutes ago, Arlleex said:

Такая схема позволяет мне измерять ток до 20А с точностью примерно 0.1А.

Если  без калибровки - не верю. Там погрешность коэффициента передачи 1,5%.

Share this post


Link to post
Share on other sites
On 11/21/2018 at 10:56 PM, Arlleex said:

Частота семплирования у меня 60кГц, что дает 1200 выборок на один период 50Гц. После взятия текущего отсчета, возвожу его в квадрат и добавляю к предыдущему квадрату выборки и т.д. до конца. На 1200-й цикл вычисляю квадратный корень из этой суммы и делю на 1200, получаю RMS.

Прошу любой критики...

 

Скользящий (кольцевой) буфер нужно делать. И КАЖДЫЙ ОТСЧЕТ находить среднеквадратичное значение.

Share this post


Link to post
Share on other sites

Зачем кольцевой буфер делать? У меня вообще нет буферов для отсчетов. Для каждого текущего отсчета я вычисляю добавку к RMS. В конце 1200-го сэмпла всего лишь вычисляю корень из получившейся суммы, деленной на 1200 (количество выборок). Получившееся значение RMS записываю в структуру сообщений блока измерения и отправляю нуждающимся.

Share this post


Link to post
Share on other sites
2 hours ago, Herz said:

А кольцевой-то почему?

Потому что скользящее окно. Пишем по кругу, считаем в любом порядке. Окно прямоугольное.

37 minutes ago, Arlleex said:

 У меня вообще нет буферов для отсчетов.

Это я кагбэ понял. Фиксирование окна эквивалентно прореживанию выходных отсчетов.

У Вас проблемы с потреблением и бОльшую часть времени МК спит?

Share this post


Link to post
Share on other sites
39 минут назад, my504 сказал:

Потому что скользящее окно. Пишем по кругу, считаем в любом порядке. Окно прямоугольное.

Это я кагбэ понял. Фиксирование окна эквивалентно прореживанию выходных отсчетов.

У Вас проблемы с потреблением и бОльшую часть времени МК спит?

Не совсем понимаю, как прореживаются отсчеты... Мой АЦП молотит на 60кГц, каждый отсчет я обрабатываю.

Никаких проблем с потреблением - Вы это о чем? У меня параллельно работают 12 таких каналов оцифровки:

- входное напряжение 220В, 50Гц;

- потребляемые токи по 5 независимым каналам 220В, 50Гц;

- фазные напряжения трехфазной сети 200В, 400Гц;

- фазные токи этой трехфазной сети.

Все прекрасно считается и никаких прореживаний.

Share this post


Link to post
Share on other sites
50 minutes ago, Arlleex said:

никаких прореживаний.

Quote

 

- Ты суслика видишь?

- Нет!

- А он ЕСТЬ!!!

 

Количество отсчетов на входе в 1024 раза больше, чем на выходе. Это и есть прореживание.  Но если скорость передачи данных не превышает 50 результатов в секунду, то прореживание не принципиально...

Про потребление я говорил в связи с отказом от  скользящего окна. Вычислительное время экономится. А значит и потребление.

ЗЫ. Если не секрет, это расчет потребления силовой сети или чистый мониторинг токов и напряжений?

Share this post


Link to post
Share on other sites
8 минут назад, my504 сказал:

Количество отсчетов на входе в 1024 раза больше, чем на выходе. Это и есть прореживание.

ЗЫ. Если не секрет, это расчет потребления силовой сети или чистый мониторинг токов и напряжений?

А, ну если с такого бока смотреть, то да, результаты выдаются реже, чем принимаются и обрабатываются отдельные выборки сигнала.

Не секрет - это делалось для мониторинга питающих напряжений и токов:smile:

Share this post


Link to post
Share on other sites

Кстати, может подскажет кто: вопрос чисто для понимания сути происходящего.

Есть АЦП. И в даташите вижу такое:

image.png.1dd1f29873f207fe9ce1734101fad9b9.png

В одной умной книжке написано(1), что условием монотонности передаточной функции АЦП/ЦАП, а также условием отсутствия пропуска кодов является |DNL| < 1 LSB.

Вот и кому верить? Самое интересное, книгу писала та же компания, чья и микросхема АЦП, на которую выше приведена вырезка из даташита.

 

(1)Книга "Проектирование систем цифровой и смешанной обработки сигналов" от Analog Devices, с. 26.

Edited by Arlleex

Share this post


Link to post
Share on other sites
22 hours ago, my504 said:

Потому что скользящее окно. Пишем по кругу, считаем в любом порядке. Окно прямоугольное.

Если считать кумулятивное скользящее среднее, то достаточно одной ячейки.

Share this post


Link to post
Share on other sites
On 11/26/2018 at 12:36 PM, Herz said:

Если считать кумулятивное .

Мы говорим о конкретной проблеме или вообще о чем то?

Автор не считает среднее. Автор считает среднеквадратичное значение. И поскольку квадрат суммы не равен сумме квадратов, с кумулятивностью может и не сложиться...

Share this post


Link to post
Share on other sites
CurrentValue = CALCULATION_SAMPLE_CONVERSION(ADC.Group1.Data, EEPROM.ADC220C1.Zero, ADCTransferRatio.ADC220C1); // нормализуем отсчет
Sample220C1 += CurrentValue*CurrentValue;                                                                       // копим сумму квадратов

if(ADCSampleCounter == (HW_ADC_50HZ_SAMPLE_QUANTITY - 1))                                                       // по достижению нужного числа отсчетов
  RMS.RMS220C1 = sqrtf(Sample220C1/(float)HW_ADC_50HZ_SAMPLE_QUANTITY);                                         // делим на количество отсчетов и извлекаем корень

Как-то так.

Share this post


Link to post
Share on other sites
В 25.11.2018 в 16:02, Arlleex сказал:

В одной умной книжке написано(1), что условием монотонности передаточной функции АЦП/ЦАП, а также условием отсутствия пропуска кодов является |DNL| < 1 LSB.

Вот и кому верить?

... необходимым, но не достаточным условием. Если DNL < 1 LSB, пропуска кодов не будет. А если DNL = 1.5, монотонность и пропущенные коды можно иметь, а можно и не иметь.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this