Перейти к содержанию
    

фильтр

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

Простое усреднение не сильно помогает. Есть возможность привязаться к импульсам синхронизации сетевого напряжения. 6 импульсов.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Когда на форуме появляется очередной новичёк и спрашивает что-нибудь эдакое :wacko: , уже не сильно удивляешься.

Но когда задаёт подобный вопрос человек, вроде не вчера занявшийся электроникой - не знаешь, что и ответить...

Что значит "не сильно помогает"? Что Вы хотите от фильтра? RMS? Что представляет собой, наконец, сигнал на выходе тиристорного регулятора: нарезанную синусоиду или ... ? Смотрели скопом? Делали ли анализ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Сигнал в схеме никак не фильтруется,заводиться сразу на ацп. Сама аналоговая схема помех не ловит, ослабление синфазного и по питанию

около 80-100дб. Сигал после тиристорного регулятора поступает на ацп. Форма сигнала обрезки синусоиды. Когда на выходе регулятора полная мощность то сигнал синусоида. Дополнительную проблему создает то что регулятор работает на ванну с раствором в которой происходит химический процесс, он тоже вносит колебания.

(Режима без регулировки, с заданным углом работы тиристоров)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Сигнал в схеме никак не фильтруется,заводиться сразу на ацп.

сделайте медианный фильтр для максимальных измеренных значений (если я вас правильно понял) .

http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%...%8C%D1%82%D1%80

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так я и не понял, причём здесь химический процесс и что за 6 импульсов...

Тем не менее, предложу не ставить аналоговый фильтр, а раз есть возможность синхронизироваться с сетью, оцифровывать многократно (сколько успеет ацп) тот отрезок синусоиды, что поступает на нагрузку, а затем проинтегрировать и получить СКВ участка. Усреднённое за несколько периодов значение должно получиться достаточно стабильным.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так я и не понял, причём здесь химический процесс и что за 6 импульсов...

Тем не менее, предложу не ставить аналоговый фильтр, а раз есть возможность синхронизироваться с сетью, оцифровывать многократно (сколько успеет ацп) тот отрезок синусоиды, что поступает на нагрузку, а затем проинтегрировать и получить СКВ участка. Усреднённое за несколько периодов значение должно получиться достаточно стабильным.

Химический процесс вот причем: угол открытия тиристоров стабилен, но в ванне образуются пузырьки и ток немного меняется, хотелось это тоже отсеять. Фильтр будет в плисе, в нее приходят 6 импульсов по 2импульса с каждой фазы. Выборок можно сделать 1000 за 10мс.

Получить скв это имеете ввиду корень? Вики дает такое описание )) ссылка

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Если Вас интересует ток (могу предположить, что скорее даже заряд (ака количество электричества)), то почему Вы измеряете напряжение?

Измеряйте ток (и интегрируйте его, если "скорее даже").

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если все запихивается в ПЛИС и не охота думать, что такое фильтры и какие они бывают и зачем и почему, но понятия, типа: частота дискретизации, частота среза, НЧ фильтр - есть, то я бы предложил следующее:

 

1) поставьте MATLAB

2) запустите. когда запустицца, даваните Start->Toolboxes->Filter Design HDL Coder (вот ведь разработчики матлаба издеваются, одно и то же суют в разные наборы)->Filter Design & Analysis Tools. Ну, или можно просто набрать fdatools в основном окне.

3) там выкинется менюшка, где можно выбрать все параметры фильтра. Крутите крутилки, пишите писалки и нажимайте кнопку Design Filter до тех пор, пока результат Вас не устроит, глядя на картинку с АЧХ (она - самая большая здесь).

4) нажимайте кнопку сверху Targets->Generate HDL... там выберите устраивающий Вас язык HDL.

5) результат будет в указанной Вами папке

 

PS: пожалуйста, не обижайтесь, это просто шутка :) Один хрен, я в очередной раз приду сюда узнавать подробности работы транзисторных схем :)

 

PPS: сгенерированный исходник стоит просмотреть. я сейчас сам посмотрел - да, действительно стоит :)

Изменено пользователем Stas-

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хотел попробовать fir iir но они слишком много требуют ресурсов плис.

Или слишком мало толку от него судя по ачх графику, если поставить ослабление сигнала 30дб.

Занимает больше 1500 логических элементов. в cyclone.

Для расчета использовал filter tool from matlab.

Фильтр нужен с такими характеристиками:

входной сигнал 12бит, полоса 2гц, частота среза 10-15гц 50дб можно больше,но занимать должен не больше 600-800 лог.

Может еще есть фильтры больше подходящие для фильтрации сигнала с ацп (сигнал 12бит) которые меньше требуют лог.?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Получить скв это имеете ввиду корень?

Cреднее квадратическое. Если делаете просто "показометр" или регулятор, а не измерительный прибор, то корень можете не брать. Получится намного проще и точнее, чем сможете получить после бессмысленных боданий с фильтрами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

боданий с фильтрами.

С этим понятно,просто хотелось попробовать, может фильтр покажет лучше себя чем усреднение. Да и так для самообразования.

Что то ни как не выходит понять как работает. Задаю входной сигнал 12 бит выходной матлаб генерирует 24 бита.

на входе вильтра сигнал в таком формате (std_logic_vector(11 0 ) )

+Full Scale 2.49878V 0111 1111 1111 7FF

Mid-Scale 0V 0000 0000 0000 000

Mid-Scale –1LSB –0.00122V 1111 1111 1111 FFF

–Full Scale –2.49878V 1000 0000 0000 800

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

Входной сигнал пульсирует +- 2 отсчета, а на выходе фильтра от 2000 до -2000 и постоянно дергается все.

В чем может быть проблема на что обратить внимание?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть еще вопрос: Выбирать разрядность (на вкладке (Input/Output) ) входного выходного сигнала можно любое ?

На вкладке (Filter Internals) задается разрядность аккумулятора и тип округления данных. Ка выбирать разрядность аккумулятора ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Разобрался, на вход нужно подавать signet я и думал что так и есть, а оказалось unsigned.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...