Pavel_SSS 0 6 марта, 2012 Опубликовано 6 марта, 2012 (изменено) · Жалоба Спасибо всем за советы и желание помочь. О базе для экспериментов. Думаю что для начала можно отработать алгоритм и на одном канале, не обязательно сразу браться за все три канала. Сейчас у меня под руками есть: стандартный генератор синусоидальных сигналов, 12 разрядный АЦП, контроллер ATmega128 с LCD индикатором 2X16. Неужели этого не хватит для начала ? По крайней мере, для отработки алгоритма измерения действующего напряжения одной фазы. Для отработки измерения сдвига фазы, наверное без второго канала уже не обойтись. А три канала понадобятся уже в самом конце. Или я заблуждаюсь? Я правильно Вас понял, что для измерения достаточно за период сети сделать 20 измерений мгновенных значений каждой фазы, и обработать их по определённому алгоритму ? Точность измерения действующего значения 1% вполне устроит. Повидимому точность измерения будет сильно зависеть от количества измерений за период, или она больше зависит от точности измерения мгновенных значений, т.е. от точности АЦП. Для точности 1%, 20 измерений за период, и 12 разрядного АЦП будет достаточно? Скажите, вычислительных возможностей контроллера ATmega128, при частоте 16МГц, для такой задачи будет достаточно, или придётся осваивать ещё и сигнальный процессор? При условии, что результат измерения нужно получать за каждый период сети. Обьясните пожалуйста, почему обязательно будет нужен графический экран и логарифмический масштаб. Без них никак нельзя обойтись? Действующее значение (корень суммы квадратов) не вычисляйте - вычисляйте средневыпрямленное (сумма модулей деленная на число измерений) и умножайте на поправочный коэффициент. Если сделать число измерений равным степени двойки, то деление можно заменить сдвигом результата сложения. Насчет частоты - как я уже и писал 50 герц измеряйте путем вычисления времени между переходами через 0. Лет десять назад я делал такой приборчик на ПИКе, как раз он мерил частоту, напряжение, показывал порядок фаз... Лучше для экспериментов используйте звуковую карту компьютера - запишите сигнал, далее его обрабатывайте в Матлабе или Симулинке. Главная операция, которая есть в DSP и которой нет в контроллерах - это умножение с накоплением в аккумулятор повышенной разрядности, а также возможность производить арифметические операции с насыщением и округлением результата. Не знаю, есть ли в Атмеге это, если нет, то Вам тяжело будет реализовывать алгоритмы ЦОС на ней. Изменено 6 марта, 2012 пользователем Pavel_SSS Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nikkolaj 0 12 марта, 2012 Опубликовано 12 марта, 2012 · Жалоба Спасибо всем за ответы. Вы правы, вначале надо изучить теорию, этим и займусь. SPACUM Дата Mar 6 2012, 15:12 А какой период измерения нужен? Результат надо получать за каждый период сети, т.е. 20мс. SPACUM Дата Mar 6 2012, 15:12 3.Совершенно не обязательно делать все на микропроцессоре. Достаточно связать Ваше устройство с ПК и сделать обработку там или воспользоваться готовыми программами. Да, Вы правы, действительно делать обработку на ПК удобнее. Так и сделаю. О каких готовых программах обработки Вы пишете, и где их можно посмотреть? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SPACUM 0 12 марта, 2012 Опубликовано 12 марта, 2012 · Жалоба О каких готовых программах обработки Вы пишете, и где их можно посмотреть? В основном это Матлаб и Симулинк. Можете скачать или купить. Но я разбираюсь в ЦОС только потому, что их не использую. Если привыкнете к ним - не сделаете ничего нового. Будет чистый соблазн состряпать все из готовых блоков не думая и не разбираясь. В моей области делается прибор на микропроцессоре для сбора информации и оперативной диагностики. К нему пишется программа на ПК для хранения множества измерений и уточненной диагностики по изменениям во времени. Учитывая ограниченность Вашего первичного прибора рекомендую написать на ПК на Билдере программу обработки и визуализации и связать Ваш прибор с ПК для начала по COM. Таким образом и микропроцессор и ПК будут объектом Вашей деятельности. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nikkolaj 0 13 марта, 2012 Опубликовано 13 марта, 2012 · Жалоба Спасибо за ответ, подумаю как это сделать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TigerSHARC 0 13 марта, 2012 Опубликовано 13 марта, 2012 · Жалоба Результат надо получать за каждый период сети, т.е. 20мс. РЗиА? РАС? Для получения 1% погрешности на столь коротком временном интервале необходим адаптивный алгоритм, так как спектр ферье при изменении частоты сети даже в маленьких пределах даст погрешность. Когда-то считал в матлабе - максимальная погрешность при интервале изменения частоты 45-55Гц составила порядка нескольких процентов. А вообще нужно иметь ТЗ(хотябы составленное вами для себя же) и задаться значением входного сигнала (в пром сетях далеко не чистый синус). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nikkolaj 0 13 марта, 2012 Опубликовано 13 марта, 2012 · Жалоба Да, я понимаю что при изменении частоты в диапазоне 45 - 55Гц, ДСП даст погрешность существенно выше, чем 1%. Поэтому я планировал помимо измерения, следить за частотой, и соответственно, периодически корректировать время между отсчётами. Интересно, при каком изменении частоты, нужно начинать коррекцию. К сожалению, я пока не знаю что такое адаптивный алгоритм. Это то, что я написал, или что то другое? Да, Вы правы, в пром сетях действительно далеко не чистый синус. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TigerSHARC 0 13 марта, 2012 Опубликовано 13 марта, 2012 (изменено) · Жалоба Да, я понимаю что при изменении частоты в диапазоне 45 - 55Гц, ДСП даст погрешность существенно выше, чем 1%. Поэтому я планировал помимо измерения, следить за частотой, и соответственно, периодически корректировать время между отсчётами. Интересно, при каком изменении частоты, нужно начинать коррекцию. К сожалению, я пока не знаю что такое адаптивный алгоритм. Это то, что я написал, или что то другое? Да, Вы правы, в пром сетях действительно далеко не чистый синус. Обычно ваша задача решается путём применения "алгоритма герцеля(БИХ-фильтр для вычисления одного отсчёта фурье)" или "ДФП и ресемплер - фильтр дробной задержки)" или "оконное взвешивание, но тогда придётся взять выборку периодов в 20 сначала а потом скользящим окном вычислять многоточечное БФП, получая результат каждые 20мс". навскидку тут герцель предпочтительней. Адаптивный алгоритм в вашем случае - это когда вы по изменению частоты вы меняете коэффициенты фильтра (ресемплера или Герцеля) для нужного шага сетки частот фурье преобразования и тогда ваша искомая амплитуда не "растёчётся" из-за изменения частоты сети. Изменено 13 марта, 2012 пользователем TigerSHARC Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
petrov 7 13 марта, 2012 Опубликовано 13 марта, 2012 · Жалоба В основном это Матлаб и Симулинк. Можете скачать или купить. Но я разбираюсь в ЦОС только потому, что их не использую. Если привыкнете к ним - не сделаете ничего нового. Будет чистый соблазн состряпать все из готовых блоков не думая и не разбираясь. Не надо бредовые мифы распространять. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TigerSHARC 0 13 марта, 2012 Опубликовано 13 марта, 2012 (изменено) · Жалоба Согласен с предыдцщим постом. Matlab меня выручает часто когда надо на скорую руку посмотреть погрешность того или иного метода. Изменено 13 марта, 2012 пользователем TigerSHARC Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Uruloce 0 26 марта, 2012 Опубликовано 26 марта, 2012 (изменено) · Жалоба В основном это Матлаб и Симулинк. Можете скачать или купить. Но я разбираюсь в ЦОС только потому, что их не использую. Если привыкнете к ним - не сделаете ничего нового. Будет чистый соблазн состряпать все из готовых блоков не думая и не разбираясь. если работа ведётся в рамках конкретного проекта и на горизонте маячит необходимость зашить матлабовскую модель в железо, никакого соблазна состряпать из готовых блоков не будет. напишешь все блоки сам и ещё будешь удивляться - надо же, как замудрили эти встроенные функции, у меня-то проще и понятней. а по поводу бездумного использования блоков: некоторые из них не тривиальны даже в использовании, не то что в понимании. в них без хорошего теоритического знания не разобраться з.ы. матлаб исключительно удобен для отладки алгоритмов Изменено 26 марта, 2012 пользователем mad_physicist Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться