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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Полосовой фильтр на микроконтроллере, с наименьшими ресурсами.
Alla_student
сообщение Aug 26 2013, 10:18
Сообщение #1


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

Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146



Уважаемые специалисты по DSP, скажите какие ресурсы и какой лучше алгоритм использовать для полосовой фильтрации на частоте 144КГц с полосой в 10КГц 4-го и выше порядка (желательно 8-го порядка)?
Предпологается использовать один из следующих микроконтроллеров:
1) MSP430F5418 25МГЦ аппаратный умножитель 32x32, DMA(предпочтительней)
2)STM32F303 Cortex M4 72МГц

Желательно описать подробно алгоритм, так как я пока до сих пор не разобралась во всех азах сигнальной обработки. - Книги читала/читаю
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Aug 26 2013, 13:13
Сообщение #2


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Alla_student @ Aug 26 2013, 13:18) *
Уважаемые специалисты по DSP, скажите какие ресурсы и какой лучше алгоритм использовать для полосовой фильтрации на частоте 144КГц с полосой в 10КГц 4-го и выше порядка (желательно 8-го порядка)?
Предпологается использовать один из следующих микроконтроллеров:
1) MSP430F5418 25МГЦ аппаратный умножитель 32x32, DMA(предпочтительней)
2)STM32F303 Cortex M4 72МГц

Желательно описать подробно алгоритм, так как я пока до сих пор не разобралась во всех азах сигнальной обработки. - Книги читала/читаю



Для STM32 надо взять библиотеку CMSIS DSP и просто измерить быстродействие фильтров.

А у MSP430 гарантированно не хватит быстродействия на такой фильтр.
Go to the top of the page
 
+Quote Post
Alla_student
сообщение Aug 26 2013, 16:29
Сообщение #3


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

Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146



Цитата(AlexandrY @ Aug 26 2013, 17:13) *
Для STM32 надо взять библиотеку CMSIS DSP и просто измерить быстродействие фильтров.

А у MSP430 гарантированно не хватит быстродействия на такой фильтр.

Я предпологала не использовать готовые функции из CMSIS, а написать свой алгоритм с использованием ассемблера, причем заранее спросила про упрощенный или оптимизированный алгоритм под полосовой фильтр.
Go to the top of the page
 
+Quote Post
STAR_IK
сообщение Aug 27 2013, 03:54
Сообщение #4


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

Группа: Свой
Сообщений: 136
Регистрация: 10-04-09
Из: Омск
Пользователь №: 47 461



А почему про частоту дискретизации ни слова?
Go to the top of the page
 
+Quote Post
Serg76
сообщение Aug 27 2013, 08:37
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(STAR_IK @ Aug 27 2013, 06:54) *
А почему про частоту дискретизации ни слова?

видимо в качестве Fs подразумевается эта частота
Цитата
для полосовой фильтрации на частоте 144КГц
Go to the top of the page
 
+Quote Post
Alla_student
сообщение Aug 27 2013, 12:52
Сообщение #6


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

Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146



Цитата(STAR_IK @ Aug 27 2013, 07:54) *
А почему про частоту дискретизации ни слова?

Я же привела типы микроконтроллеров - MS430F5418 можно однобитную оцифроку использовать для упрощения или внешний ADC на 1Ms, а в STM32F303 два параллельных по 5Ms можно использовать поочередно, да и 5Ms вполне достаточно.
Для MSP430F5418 есть задумка для однобитного семплирования использовать порт SPI - в него последовательно опрашивать DI и использовать DMA канал для накопления массива двухбайтных слов.

Но по существу вопроса так никто и не ответил до сих пор sad.gif Если не хватает вводных - спрашивайте.

Сообщение отредактировал Alla_student - Aug 27 2013, 12:57
Go to the top of the page
 
+Quote Post
Corner
сообщение Aug 29 2013, 14:59
Сообщение #7


Профессионал
*****

Группа: Участник
Сообщений: 1 072
Регистрация: 11-12-12
Пользователь №: 74 815



Цитата(Alla_student @ Aug 27 2013, 16:52) *
Я же привела типы микроконтроллеров - MS430F5418 можно однобитную оцифроку использовать для упрощения или внешний ADC на 1Ms, а в STM32F303 два параллельных по 5Ms можно использовать поочередно, да и 5Ms вполне достаточно.
Для MSP430F5418 есть задумка для однобитного семплирования использовать порт SPI - в него последовательно опрашивать DI и использовать DMA канал для накопления массива двухбайтных слов.

Но по существу вопроса так никто и не ответил до сих пор sad.gif Если не хватает вводных - спрашивайте.


Как бы доказано, что для таких фильтров самое то схема Костаса на SIN/COS. Всего-то надо сгенерить синус и косинус, помножить на входной поток и дальше 2*ФНЧ над каждой компонентой отдельно. Причем ФНЧ можно сделать каскадный с понижением частоты оцифровки, вплоть до 40... 50 кГц (при полосе 10 кГц больше 40 кГц сэмплинг - излишество).
Go to the top of the page
 
+Quote Post
Alla_student
сообщение Sep 1 2013, 23:32
Сообщение #8


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

Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146



Цитата(Corner @ Aug 29 2013, 18:59) *
Как бы доказано, что для таких фильтров самое то схема Костаса на SIN/COS. Всего-то надо сгенерить синус и косинус, помножить на входной поток и дальше 2*ФНЧ над каждой компонентой отдельно. Причем ФНЧ можно сделать каскадный с понижением частоты оцифровки, вплоть до 40... 50 кГц (при полосе 10 кГц больше 40 кГц сэмплинг - излишество).

Прошу прщения, болела, поэтому не отвечала. Спасибо, за комментарий, а то остальные специалисты здесь молчат то ли из за моих глупых вопросов, то ли из за того, что не знают что ответитьsad.gif. Вы бы не могли привести более подробное описание реализации фильтра Костаса и каскадного ФНЧ с понижением частоты оцифровки или хотя бы ссылки по этим темам?
Go to the top of the page
 
+Quote Post
Corner
сообщение Sep 2 2013, 15:03
Сообщение #9


Профессионал
*****

Группа: Участник
Сообщений: 1 072
Регистрация: 11-12-12
Пользователь №: 74 815



Цитата(Alla_student @ Sep 2 2013, 03:32) *
Прошу прщения, болела, поэтому не отвечала. Спасибо, за комментарий, а то остальные специалисты здесь молчат то ли из за моих глупых вопросов, то ли из за того, что не знают что ответитьsad.gif. Вы бы не могли привести более подробное описание реализации фильтра Костаса и каскадного ФНЧ с понижением частоты оцифровки или хотя бы ссылки по этим темам?

Уже много лет на МК ничего не пишу - все на ПЛИС делаю.
Go to the top of the page
 
+Quote Post
thermit
сообщение Sep 2 2013, 15:21
Сообщение #10


Знающий
****

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



Думаю, msp. У него есть встроенный 12-бит ацп. Выбираем чд исходя из условия (2*144-10)/m> чд >(2*144+10)/(m+1) m - целое. Например 45 кгц. Полосовой рекурсивный фильтр 8-го порядка с 2-ой точностью даже половины ресурса msp не съест...
Go to the top of the page
 
+Quote Post
Alla_student
сообщение Sep 2 2013, 22:55
Сообщение #11


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

Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146



Цитата(Corner @ Sep 2 2013, 18:03) *
Уже много лет на МК ничего не пишу - все на ПЛИС делаю.

Без проблем, приведите пожалуйста пример на Verilog или VHDL? если вам не сложно!

Цитата(thermit @ Sep 2 2013, 18:21) *
Думаю, msp. У него есть встроенный 12-бит ацп. Выбираем чд исходя из условия (2*144-10)/m> чд >(2*144+10)/(m+1) m - целое. Например 45 кгц. Полосовой рекурсивный фильтр 8-го порядка с 2-ой точностью даже половины ресурса msp не съест...

Да, прекрасненько, спасибо - я понимаю, но можно привести практическую реализацию фильтра Костаса и каскадного ФНЧ с понижением частоты оцифровки?
Go to the top of the page
 
+Quote Post
thermit
сообщение Sep 3 2013, 12:01
Сообщение #12


Знающий
****

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



Цитата
Alla_student:
Да, прекрасненько, спасибо - я понимаю, но можно привести практическую реализацию фильтра Костаса и каскадного ФНЧ с понижением частоты оцифровки?



Нельзя. Ибо тупняк. Зачем понижать частоту оцифровки если ее уже можно взять невысокой? Вам нужно преобразовывать несущую в 0?
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение Sep 3 2013, 13:43
Сообщение #13


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



Так делают, чтобы облегчить аналоговый фильтр на входе АЦП.

Цитата(thermit @ Sep 3 2013, 15:01) *
Зачем понижать частоту оцифровки если ее уже можно взять невысокой?


А вообще девушка с колоссальным инженерным кругозором: и ЦОС, и плохое самочувствие, и проблемы индукционного нагрева, и гнутые корпуса из SolidWorks, и С#, и воспитательная работа среди посетителей форума. Для полноты картины не хватает катышков и присыпок для грудничков.
Go to the top of the page
 
+Quote Post
thermit
сообщение Sep 3 2013, 13:51
Сообщение #14


Знающий
****

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



Цитата
Fat Robot:
Так делают, чтобы облегчить аналоговый фильтр на входе АЦП.


Когда делают, когда нет. В данном случае офигенных требований к входному фильтру похоже не предвидится.
Go to the top of the page
 
+Quote Post
Alla_student
сообщение Sep 4 2013, 07:14
Сообщение #15


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

Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146



Цитата(Fat Robot @ Sep 3 2013, 16:43) *
Так делают, чтобы облегчить аналоговый фильтр на входе АЦП.
А вообще девушка с колоссальным инженерным кругозором: и ЦОС, и плохое самочувствие, и проблемы индукционного нагрева, и гнутые корпуса из SolidWorks, и С#, и воспитательная работа среди посетителей форума. Для полноты картины не хватает катышков и присыпок для грудничков.

На большее не способны?! - По существу вопроса ответить не можите? - Тогда можете в другой теме в чужом "грязном белье" ковыряться...
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th June 2025 - 13:15
Рейтинг@Mail.ru


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