Фильтр Чебышёва 1 рода
-
- beginner
- Сообщения: 12
- Зарегистрирован: 12 апр 2017, 17:25
- Версия LabVIEW: 2016
- Контактная информация:
Фильтр Чебышёва 1 рода
Здравствуйте, хочу спросить совета и помощи в построении фильтр Чебышёва 1 рода чётного порядка.
Конечно, в LabView есть реализованный фильтр, но у меня стоит задача самостоятельной реализацией данного фильтра.
Почитав множество статей я так и не нашел нужного мне решения. Полагаю, что сама фильтрация сводится к домножению входного сигнала на определенные коэффициенты.
По этому мой вопрос сводится к тому как рассчитать данные коэффициенты.
Пользуясь Википедией я посчитал коэффициенты как в ней указано, но у меня со временем выходное значение уходит в ± бесконечность.
Прикрепляю архив с тем что наработал, главный файл main.vi
Делал в LabView 2016, но сохранял под 2012-ю версию, надеюсь откроется в 2012-ой.
Прошу помочь доработать и объяснить ошибки.
Конечно, в LabView есть реализованный фильтр, но у меня стоит задача самостоятельной реализацией данного фильтра.
Почитав множество статей я так и не нашел нужного мне решения. Полагаю, что сама фильтрация сводится к домножению входного сигнала на определенные коэффициенты.
По этому мой вопрос сводится к тому как рассчитать данные коэффициенты.
Пользуясь Википедией я посчитал коэффициенты как в ней указано, но у меня со временем выходное значение уходит в ± бесконечность.
Прикрепляю архив с тем что наработал, главный файл main.vi
Делал в LabView 2016, но сохранял под 2012-ю версию, надеюсь откроется в 2012-ой.
Прошу помочь доработать и объяснить ошибки.
- Вложения
-
- Chebyshev.zip
- (96.7 КБ) 243 скачивания
-
- beginner
- Сообщения: 12
- Зарегистрирован: 12 апр 2017, 17:25
- Версия LabVIEW: 2016
- Контактная информация:
Re: Фильтр Чебышёва 1 рода
Почувствовал, что ничего не знаю в этой теме.Shamrel писал(а):Свертку делайте. Свертку сигнала и коэффициентов.
Вы можете мне полностью объяснить, что и как делается? Как коэффициенты считать и как свертку делать?
В интернете простого объяснения не найти, а в учебниках слишком долго копаться...
Re: Фильтр Чебышёва 1 рода
Цифровая фильтрация -- это есть математическая операция "Свертка" фильтруемого сигнала с коэффициентами фильтра. Уровня википедии будет достаточно для нужной глубины погружения.
По буржуйски "свертка" -- это "convolution". Вот по этому слову и ищите в LabVIEW нужную функцию. Там их должно быть много. С примерами. (у меня на домашнем компутере LabVIEW нет, потому глянуть оперативно не могу).
Коэффициенты фильтра можно посчитать в MatLab, там, помнится, годный инструмент был. Либо найти какой-другой онлай/офлайн калькулятор.
Ну и смайлик вам, что б так грустно не было:
По буржуйски "свертка" -- это "convolution". Вот по этому слову и ищите в LabVIEW нужную функцию. Там их должно быть много. С примерами. (у меня на домашнем компутере LabVIEW нет, потому глянуть оперативно не могу).
Коэффициенты фильтра можно посчитать в MatLab, там, помнится, годный инструмент был. Либо найти какой-другой онлай/офлайн калькулятор.
Ну и смайлик вам, что б так грустно не было:
-
- beginner
- Сообщения: 12
- Зарегистрирован: 12 апр 2017, 17:25
- Версия LabVIEW: 2016
- Контактная информация:
Re: Фильтр Чебышёва 1 рода
Ок, но мне то самому надо реализовать фильтр, так что придется и свертку самому делать. Хотя её то я сделал вроде как...Shamrel писал(а): По буржуйски "свертка" -- это "convolution". Вот по этому слову и ищите в LabVIEW нужную функцию.
Коэффициенты мне нужно считать в самой программе ибо я сам указываю порядок фильтра перед работой программы.Shamrel писал(а): Коэффициенты фильтра можно посчитать в MatLab, там, помнится, годный инструмент был.
По этому то и спрашиваю: "Как правильно считать коэффициенты для фильтра Чебышева 1-го рода?" Это моя основная проблема.
Re: Фильтр Чебышёва 1 рода
Это, пардон, онанизм какой-то. Писать на LabVIEW, но использовать лишь простейшие арифметические операции -- движение есть, а толку не много.
Предвижу, что вам даже нельзя использовать готовые блоки для получения этих коэффициентов.
Ваш преподаватель немножко не верно представляет назначение инструмента LabVIEW. С таким подходом гораздо удобнее писать на Великом Могучем (если кто не понял, то я про Си).
В этом случаее ваш вопрос:
Тут без спец.литературы не обойтись.
Предвижу, что вам даже нельзя использовать готовые блоки для получения этих коэффициентов.
Ваш преподаватель немножко не верно представляет назначение инструмента LabVIEW. С таким подходом гораздо удобнее писать на Великом Могучем (если кто не понял, то я про Си).
В этом случаее ваш вопрос:
лежит не в области LabVIEW, а в области цифровой обработки сигналов.Как правильно считать коэффициенты для фильтра Чебышева 1-го рода?
Тут без спец.литературы не обойтись.
-
- beginner
- Сообщения: 12
- Зарегистрирован: 12 апр 2017, 17:25
- Версия LabVIEW: 2016
- Контактная информация:
Re: Фильтр Чебышёва 1 рода
А где такие блоки взять?Shamrel писал(а):Предвижу, что вам даже нельзя использовать готовые блоки для получения этих коэффициентов.
1) Преподаватель не признает Си.Shamrel писал(а): С таким подходом гораздо удобнее писать на Великом Могучем (если кто не понял, то я про Си).
2) Просто у меня такая тема РГР и предмет такой
1) По этому пишу в ветку "Обработка сигнала"Shamrel писал(а): В этом случаее ваш вопрос:лежит не в области LabVIEW, а в области цифровой обработки сигналов.Как правильно считать коэффициенты для фильтра Чебышева 1-го рода?
Тут без спец.литературы не обойтись.
2) А LabView разве не позволяет раскрыть тему обработки сигналов?
Так вот я ни как не могу найти кто бы с формулами помог, по сути то прикладная математика..
Жаль, что никто больше не заходит в мою тему с предложениями по решению
- zxc_pavel
- adviser
- Сообщения: 242
- Зарегистрирован: 02 июн 2016, 12:07
- Версия LabVIEW: 15
- Благодарил (а): 9 раз
- Поблагодарили: 23 раза
- Контактная информация:
Re: Фильтр Чебышёва 1 рода
В 1 файле написано, что такое свертка
Во 2 файле немного про фильтры Чебышева, что-то рассчитывается даже, может поможет
Во 2 файле немного про фильтры Чебышева, что-то рассчитывается даже, может поможет
- Вложения
-
- dsp01-Введение в цифровую обработку сигналов.doc
- (181 КБ) 208 скачиваний
-
- dsp10-Рекурсивные частотные фильтры.doc
- (249.5 КБ) 228 скачиваний
-
- beginner
- Сообщения: 12
- Зарегистрирован: 12 апр 2017, 17:25
- Версия LabVIEW: 2016
- Контактная информация:
Re: Фильтр Чебышёва 1 рода
Вроде помогло а вроде и нет, я видимо настолько туп что ничего не понимаю..zxc_pavel писал(а):В 1 файле написано, что такое свертка
Во 2 файле немного про фильтры Чебышева, что-то рассчитывается даже, может поможет
По предыдущим ответам понятно, что LabView для такого не предназначен. Даже в LabView все эти блоки основаны на библиотеках написанных на "С".
И ведь действительно в обработке сигналов я не шарю ничего, но РГР вот такая у меня. Очень прошу помочь.
Если есть тут кто-то кто может мне объяснить всю эту математику цифровой обработки сигналов, то очень прошу написать мне.
Самому очень интересно все это решить, но из общих учебников не понятно, статей кучу перерыл, нашел проект фильтра на с++ но там, все так разрозненно по классам раскидано что чёрт ногу сломит.
Наверно скоро я
Re: Фильтр Чебышёва 1 рода
Как раз для такого LabVIEW и предназначен. Для построения "боевых" приложений, где выполняется фильтрация и обработка сигналов. Для этого есть множество инструментов.GoodSimon писал(а):zxc_pavel писал(а): По предыдущим ответам понятно, что LabView для такого не предназначен. Даже в LabView все эти блоки основаны на библиотеках написанных на "С".
Наверно скоро я
А то, что большинство функций в конечном итоге выходят на использование dll, это вполне закономерно. Назначение LabVIEW (в моем понимании) -- это сделать удобный интерфейс для вызова этих функции. С чем, она (или он? LabVIEW какого рода? У меня стойкая ассоциация, что это "девушка") успешно справляется. Ваша техническая задача, решается в лоб при использовании готовых модулей фильтрации. Причем решается с приемлемым быстродействием и возможностью запускать на разных платформах.
У вас же стоит академическая задача, где результат -- это не готовая программа, а ваше понимание учебного материала.
Математику эту для решения именно учебной задачи в двух словах не объяснить. От вас требуется знания в области высшей математики и общей теории сигналов. Это несколько семестровых курсов. Читайте книжки.
-
- beginner
- Сообщения: 12
- Зарегистрирован: 12 апр 2017, 17:25
- Версия LabVIEW: 2016
- Контактная информация:
Re: Фильтр Чебышёва 1 рода
1)
2)
3) Так трудно дать хотя бы последовательность математических уравнений? Я полагаю, что рас уж на "С" написано, то алгоритм мат. действий должен быть. Но почему-то всех тянет рассказать замысловатую теорию, а дальше выводите сами... такое напрягает. К примеру в файлах что скинул zxc_pavel один алгоритм расчета, в Википедии другой, вот тут третий, вот пример человека с GitHub написанный на "С++" и он тоже считает по своему.
Под этим я подразумевал, что LabView не предназначен для написания в лоб всех этих блоков фильтрации, т.к. они реализуются на "С".По предыдущим ответам понятно, что LabView для такого не предназначен. Даже в LabView все эти блоки основаны на библиотеках написанных на "С".
2)
В нашем курсе высшая математика была на первом курсе и чуточку на втором, про теорию сигналов пока-что вообще ничего подобного не рассказывается, точнее её пока что не было. И пожалуйста, хватит посылать за книжками, я уже читал, к примеру Сергиенко А. Б., но он все коэффициенты в матлабе считает, но я так и не понял формул.Shamrel писал(а):От вас требуется знания в области высшей математики и общей теории сигналов. Это несколько семестровых курсов. Читайте книжки.
3) Так трудно дать хотя бы последовательность математических уравнений? Я полагаю, что рас уж на "С" написано, то алгоритм мат. действий должен быть. Но почему-то всех тянет рассказать замысловатую теорию, а дальше выводите сами... такое напрягает. К примеру в файлах что скинул zxc_pavel один алгоритм расчета, в Википедии другой, вот тут третий, вот пример человека с GitHub написанный на "С++" и он тоже считает по своему.
-
- professor
- Сообщения: 3406
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 176 раз
- Контактная информация:
Re: Фильтр Чебышёва 1 рода
И даже в лоб "предназначена". - вполне себе полнофункциональный язык программирования, что означает возможность написания на этом языке любой программы по обработке массива данных. Вопрос только в сложности построения формул.GoodSimon писал(а):1)Под этим я подразумевал, что LabView не предназначен для написания в лоб всех этих блоков фильтрации, т.к. они реализуются на "С".По предыдущим ответам понятно, что LabView для такого не предназначен. Даже в LabView все эти блоки основаны на библиотеках написанных на "С".
То, что в конченом итоге фильтр «спрятан» в dll – всего лишь следствие того, что сама LV пишется на С (или С++). и код, написанный на С работает немного быстрее, чем тот же самый, написанный на LV.
По большому счёту любой язык программирования – это всего лишь арифметические операции, обёрнутые в удобную оболочку. И в LV, как ни странно, все арифметические операции есть.
может, дело в вашей способности понять эти формулы?2)В нашем курсе высшая математика была на первом курсе и чуточку на втором, про теорию сигналов пока-что вообще ничего подобного не рассказывается, точнее её пока что не было. И пожалуйста, хватит посылать за книжками, я уже читал, к примеру Сергиенко А. Б., но он все коэффициенты в матлабе считает, но я так и не понял формул.Shamrel писал(а):От вас требуется знания в области высшей математики и общей теории сигналов. Это несколько семестровых курсов. Читайте книжки.
вы себе противоречите.3) Так трудно дать хотя бы последовательность математических уравнений? Я полагаю, что рас уж на "С" написано, то алгоритм мат. действий должен быть. Но почему-то всех тянет рассказать замысловатую теорию, а дальше выводите сами... такое напрягает. К примеру в файлах что скинул zxc_pavel один алгоритм расчета, в Википедии другой, вот тут третий, вот пример человека с GitHub написанный на "С++" и он тоже считает по своему.
сами назвали минимум 4 истояника формул. Чем эти формулы васне устраивают? и какие магические формулы вы ожитдаете от нас?
-
- beginner
- Сообщения: 12
- Зарегистрирован: 12 апр 2017, 17:25
- Версия LabVIEW: 2016
- Контактная информация:
Re: Фильтр Чебышёва 1 рода
может и так..может, дело в вашей способности понять эти формулы?
Тем, что везде по разному написано, не понятно, где правда. И вообще не понятно как считать.Artem.spb писал(а):вы себе противоречите.
сами назвали минимум 4 истояника формул. Чем эти формулы васне устраивают? и какие магические формулы вы ожитдаете от нас?
Re: Фильтр Чебышёва 1 рода
Там везде одинаково написано. Вы просто щупаете слона в темноте.
Расчет рекурсивных фильтров это не такая тривиальная вещь, существует общая теория и множество методов реализаций на различных этапах. Ту же передаточную функцию можно получить разными способами и в разных видах.
Начните с изучения КИХ фильтров. Там гораздо проще. Как при реализации, так и для понимания.
Расчет рекурсивных фильтров это не такая тривиальная вещь, существует общая теория и множество методов реализаций на различных этапах. Ту же передаточную функцию можно получить разными способами и в разных видах.
Начните с изучения КИХ фильтров. Там гораздо проще. Как при реализации, так и для понимания.
-
- beginner
- Сообщения: 12
- Зарегистрирован: 12 апр 2017, 17:25
- Версия LabVIEW: 2016
- Контактная информация:
Re: Фильтр Чебышёва 1 рода
Ок, а КИХ топологии Чебышева можно сделать? Или Чебышев это только БИХ?Shamrel писал(а):Начните с изучения КИХ фильтров. Там гораздо проще. Как при реализации, так и для понимания.