реклама на сайте
подробности

 
 
> С чего начать изучение ЦОС ?, Нужен совет.
Nikkolaj
сообщение Mar 5 2012, 08:23
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 147
Регистрация: 25-09-08
Пользователь №: 40 467



Добрый день.
Мне впервые досталась задача, для решения которой надо применить ЦОС.
Вообще с електроникой и контроллерами работаю давно.

Задача такая: измерение трёхфазного напряжения промышленной частоты.
Надо выделить из напряжения каждой фазы основную частоту,
и измерить её действующее значение и фазу.

Посоветуйте пожалуйста, с чего лучше начать изучение алгоритмов ЦОС.
Что почитать, какие сайты посмотреть.
Go to the top of the page
 
+Quote Post
2 страниц V  < 1 2  
Start new topic
Ответов (15 - 24)
Pavel_SSS
сообщение Mar 6 2012, 17:22
Сообщение #16


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 11-10-10
Из: Москва
Пользователь №: 60 055



Цитата(Nikkolaj @ Mar 6 2012, 13:34) *
Спасибо всем за советы и желание помочь.



О базе для экспериментов.
Думаю что для начала можно отработать алгоритм и на одном канале,
не обязательно сразу браться за все три канала.
Сейчас у меня под руками есть:
стандартный генератор синусоидальных сигналов,
12 разрядный АЦП,
контроллер ATmega128 с LCD индикатором 2X16.
Неужели этого не хватит для начала ?
По крайней мере, для отработки алгоритма измерения действующего напряжения одной фазы.
Для отработки измерения сдвига фазы, наверное без второго канала уже не обойтись.
А три канала понадобятся уже в самом конце.
Или я заблуждаюсь?



Я правильно Вас понял,
что для измерения достаточно за период сети сделать 20 измерений мгновенных значений каждой фазы,
и обработать их по определённому алгоритму ?



Точность измерения действующего значения 1% вполне устроит.
Повидимому точность измерения будет сильно зависеть от количества измерений за период,
или она больше зависит от точности измерения мгновенных значений, т.е. от точности АЦП.
Для точности 1%, 20 измерений за период, и 12 разрядного АЦП будет достаточно?



Скажите, вычислительных возможностей контроллера ATmega128, при частоте 16МГц,
для такой задачи будет достаточно, или придётся осваивать ещё и сигнальный процессор?
При условии, что результат измерения нужно получать за каждый период сети.




Обьясните пожалуйста, почему обязательно будет нужен графический экран и логарифмический масштаб.
Без них никак нельзя обойтись?

Действующее значение (корень суммы квадратов) не вычисляйте - вычисляйте средневыпрямленное (сумма модулей деленная на число измерений) и умножайте на поправочный коэффициент. Если сделать число измерений равным степени двойки, то деление можно заменить сдвигом результата сложения.
Насчет частоты - как я уже и писал 50 герц измеряйте путем вычисления времени между переходами через 0. Лет десять назад я делал такой приборчик на ПИКе, как раз он мерил частоту, напряжение, показывал порядок фаз...
Лучше для экспериментов используйте звуковую карту компьютера - запишите сигнал, далее его обрабатывайте в Матлабе или Симулинке.
Главная операция, которая есть в DSP и которой нет в контроллерах - это умножение с накоплением в аккумулятор повышенной разрядности, а также возможность производить арифметические операции с насыщением и округлением результата. Не знаю, есть ли в Атмеге это, если нет, то Вам тяжело будет реализовывать алгоритмы ЦОС на ней.

Сообщение отредактировал Pavel_SSS - Mar 6 2012, 17:24
Go to the top of the page
 
+Quote Post
Nikkolaj
сообщение Mar 12 2012, 15:34
Сообщение #17


Частый гость
**

Группа: Участник
Сообщений: 147
Регистрация: 25-09-08
Пользователь №: 40 467



Спасибо всем за ответы.
Вы правы, вначале надо изучить теорию, этим и займусь.

Цитата
SPACUM Дата Mar 6 2012, 15:12
А какой период измерения нужен?

Результат надо получать за каждый период сети, т.е. 20мс.


Цитата
SPACUM Дата Mar 6 2012, 15:12
3.Совершенно не обязательно делать все на микропроцессоре. Достаточно связать Ваше устройство с ПК и сделать обработку там или воспользоваться готовыми программами.

Да, Вы правы, действительно делать обработку на ПК удобнее.
Так и сделаю.
О каких готовых программах обработки Вы пишете, и где их можно посмотреть?
Go to the top of the page
 
+Quote Post
SPACUM
сообщение Mar 12 2012, 20:59
Сообщение #18


Частый гость
**

Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531



Цитата(Nikkolaj @ Mar 12 2012, 19:34) *
О каких готовых программах обработки Вы пишете, и где их можно посмотреть?

В основном это Матлаб и Симулинк. Можете скачать или купить. Но я разбираюсь в ЦОС только потому, что их не использую. Если привыкнете к ним - не сделаете ничего нового. Будет чистый соблазн состряпать все из готовых блоков не думая и не разбираясь.

В моей области делается прибор на микропроцессоре для сбора информации и оперативной диагностики. К нему пишется программа на ПК для хранения множества измерений и уточненной диагностики по изменениям во времени.

Учитывая ограниченность Вашего первичного прибора рекомендую написать на ПК на Билдере программу обработки и визуализации и связать Ваш прибор с ПК для начала по COM. Таким образом и микропроцессор и ПК будут объектом Вашей деятельности.


--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
Go to the top of the page
 
+Quote Post
Nikkolaj
сообщение Mar 13 2012, 06:40
Сообщение #19


Частый гость
**

Группа: Участник
Сообщений: 147
Регистрация: 25-09-08
Пользователь №: 40 467



Спасибо за ответ, подумаю как это сделать.
Go to the top of the page
 
+Quote Post
TigerSHARC
сообщение Mar 13 2012, 08:47
Сообщение #20


Знающий
****

Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195



Цитата(Nikkolaj @ Mar 12 2012, 19:34) *
Результат надо получать за каждый период сети, т.е. 20мс.

РЗиА? РАС?
Для получения 1% погрешности на столь коротком временном интервале необходим адаптивный алгоритм, так как спектр ферье при изменении частоты сети даже в маленьких пределах даст погрешность.
Когда-то считал в матлабе - максимальная погрешность при интервале изменения частоты 45-55Гц составила порядка нескольких процентов.

А вообще нужно иметь ТЗ(хотябы составленное вами для себя же) и задаться значением входного сигнала (в пром сетях далеко не чистый синус).
Go to the top of the page
 
+Quote Post
Nikkolaj
сообщение Mar 13 2012, 11:09
Сообщение #21


Частый гость
**

Группа: Участник
Сообщений: 147
Регистрация: 25-09-08
Пользователь №: 40 467



Да, я понимаю что при изменении частоты в диапазоне 45 - 55Гц,
ДСП даст погрешность существенно выше, чем 1%.
Поэтому я планировал помимо измерения, следить за частотой,
и соответственно, периодически корректировать время между отсчётами.
Интересно, при каком изменении частоты, нужно начинать коррекцию.

К сожалению, я пока не знаю что такое адаптивный алгоритм.
Это то, что я написал, или что то другое?

Да, Вы правы, в пром сетях действительно далеко не чистый синус.
Go to the top of the page
 
+Quote Post
TigerSHARC
сообщение Mar 13 2012, 12:53
Сообщение #22


Знающий
****

Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195



Цитата(Nikkolaj @ Mar 13 2012, 15:09) *
Да, я понимаю что при изменении частоты в диапазоне 45 - 55Гц,
ДСП даст погрешность существенно выше, чем 1%.
Поэтому я планировал помимо измерения, следить за частотой,
и соответственно, периодически корректировать время между отсчётами.
Интересно, при каком изменении частоты, нужно начинать коррекцию.

К сожалению, я пока не знаю что такое адаптивный алгоритм.
Это то, что я написал, или что то другое?

Да, Вы правы, в пром сетях действительно далеко не чистый синус.

Обычно ваша задача решается путём применения "алгоритма герцеля(БИХ-фильтр для вычисления одного отсчёта фурье)" или "ДФП и ресемплер - фильтр дробной задержки)" или "оконное взвешивание, но тогда придётся взять выборку периодов в 20 сначала а потом скользящим окном вычислять многоточечное БФП, получая результат каждые 20мс".
навскидку тут герцель предпочтительней.
Адаптивный алгоритм в вашем случае - это когда вы по изменению частоты вы меняете коэффициенты фильтра (ресемплера или Герцеля) для нужного шага сетки частот фурье преобразования и тогда ваша искомая амплитуда не "растёчётся" из-за изменения частоты сети.

Сообщение отредактировал TigerSHARC - Mar 13 2012, 17:50
Go to the top of the page
 
+Quote Post
petrov
сообщение Mar 13 2012, 13:14
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(SPACUM @ Mar 13 2012, 00:59) *
В основном это Матлаб и Симулинк. Можете скачать или купить. Но я разбираюсь в ЦОС только потому, что их не использую. Если привыкнете к ним - не сделаете ничего нового. Будет чистый соблазн состряпать все из готовых блоков не думая и не разбираясь.


Не надо бредовые мифы распространять.
Go to the top of the page
 
+Quote Post
TigerSHARC
сообщение Mar 13 2012, 17:43
Сообщение #24


Знающий
****

Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195



Согласен с предыдцщим постом. Matlab меня выручает часто когда надо на скорую руку посмотреть погрешность того или иного метода.

Сообщение отредактировал TigerSHARC - Mar 13 2012, 17:45
Go to the top of the page
 
+Quote Post
mad_physicist
сообщение Mar 26 2012, 05:30
Сообщение #25





Группа: Новичок
Сообщений: 6
Регистрация: 26-03-12
Пользователь №: 71 000



Цитата(SPACUM @ Mar 13 2012, 03:59) *
В основном это Матлаб и Симулинк. Можете скачать или купить. Но я разбираюсь в ЦОС только потому, что их не использую. Если привыкнете к ним - не сделаете ничего нового. Будет чистый соблазн состряпать все из готовых блоков не думая и не разбираясь.

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

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

Сообщение отредактировал mad_physicist - Mar 26 2012, 05:32
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 06:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01461 секунд с 7
ELECTRONIX ©2004-2016