|
Полосовой фильтр на микроконтроллере, с наименьшими ресурсами. |
|
|
|
Aug 26 2013, 16:29
|
Частый гость
 
Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146

|
Цитата(AlexandrY @ Aug 26 2013, 17:13)  Для STM32 надо взять библиотеку CMSIS DSP и просто измерить быстродействие фильтров.
А у MSP430 гарантированно не хватит быстродействия на такой фильтр. Я предпологала не использовать готовые функции из CMSIS, а написать свой алгоритм с использованием ассемблера, причем заранее спросила про упрощенный или оптимизированный алгоритм под полосовой фильтр.
|
|
|
|
|
Aug 27 2013, 08:37
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(STAR_IK @ Aug 27 2013, 06:54)  А почему про частоту дискретизации ни слова? видимо в качестве Fs подразумевается эта частота Цитата для полосовой фильтрации на частоте 144КГц
|
|
|
|
|
Aug 27 2013, 12:52
|
Частый гость
 
Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146

|
Цитата(STAR_IK @ Aug 27 2013, 07:54)  А почему про частоту дискретизации ни слова? Я же привела типы микроконтроллеров - MS430F5418 можно однобитную оцифроку использовать для упрощения или внешний ADC на 1Ms, а в STM32F303 два параллельных по 5Ms можно использовать поочередно, да и 5Ms вполне достаточно. Для MSP430F5418 есть задумка для однобитного семплирования использовать порт SPI - в него последовательно опрашивать DI и использовать DMA канал для накопления массива двухбайтных слов. Но по существу вопроса так никто и не ответил до сих пор  Если не хватает вводных - спрашивайте.
Сообщение отредактировал Alla_student - Aug 27 2013, 12:57
|
|
|
|
|
Aug 29 2013, 14:59
|

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

|
Цитата(Alla_student @ Aug 27 2013, 16:52)  Я же привела типы микроконтроллеров - MS430F5418 можно однобитную оцифроку использовать для упрощения или внешний ADC на 1Ms, а в STM32F303 два параллельных по 5Ms можно использовать поочередно, да и 5Ms вполне достаточно. Для MSP430F5418 есть задумка для однобитного семплирования использовать порт SPI - в него последовательно опрашивать DI и использовать DMA канал для накопления массива двухбайтных слов. Но по существу вопроса так никто и не ответил до сих пор  Если не хватает вводных - спрашивайте. Как бы доказано, что для таких фильтров самое то схема Костаса на SIN/COS. Всего-то надо сгенерить синус и косинус, помножить на входной поток и дальше 2*ФНЧ над каждой компонентой отдельно. Причем ФНЧ можно сделать каскадный с понижением частоты оцифровки, вплоть до 40... 50 кГц (при полосе 10 кГц больше 40 кГц сэмплинг - излишество).
|
|
|
|
|
Sep 1 2013, 23:32
|
Частый гость
 
Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146

|
Цитата(Corner @ Aug 29 2013, 18:59)  Как бы доказано, что для таких фильтров самое то схема Костаса на SIN/COS. Всего-то надо сгенерить синус и косинус, помножить на входной поток и дальше 2*ФНЧ над каждой компонентой отдельно. Причем ФНЧ можно сделать каскадный с понижением частоты оцифровки, вплоть до 40... 50 кГц (при полосе 10 кГц больше 40 кГц сэмплинг - излишество). Прошу прщения, болела, поэтому не отвечала. Спасибо, за комментарий, а то остальные специалисты здесь молчат то ли из за моих глупых вопросов, то ли из за того, что не знают что ответить  . Вы бы не могли привести более подробное описание реализации фильтра Костаса и каскадного ФНЧ с понижением частоты оцифровки или хотя бы ссылки по этим темам?
|
|
|
|
|
Sep 2 2013, 22:55
|
Частый гость
 
Группа: Участник
Сообщений: 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 не съест... Да, прекрасненько, спасибо - я понимаю, но можно привести практическую реализацию фильтра Костаса и каскадного ФНЧ с понижением частоты оцифровки?
|
|
|
|
|
Sep 3 2013, 12:01
|
Знающий
   
Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730

|
Цитата Alla_student: Да, прекрасненько, спасибо - я понимаю, но можно привести практическую реализацию фильтра Костаса и каскадного ФНЧ с понижением частоты оцифровки? Нельзя. Ибо тупняк. Зачем понижать частоту оцифровки если ее уже можно взять невысокой? Вам нужно преобразовывать несущую в 0?
|
|
|
|
|
Sep 3 2013, 13:51
|
Знающий
   
Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730

|
Цитата Fat Robot: Так делают, чтобы облегчить аналоговый фильтр на входе АЦП. Когда делают, когда нет. В данном случае офигенных требований к входному фильтру похоже не предвидится.
|
|
|
|
|
Sep 4 2013, 07:14
|
Частый гость
 
Группа: Участник
Сообщений: 84
Регистрация: 5-04-11
Пользователь №: 64 146

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