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

 
 
 
Reply to this topicStart new topic
> ФВЧ для сигнала на MSP430
kkobru
сообщение May 16 2018, 13:49
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 3-04-14
Пользователь №: 81 207



Добрый день!

Передо мной стоит такая задача - MSP430 с тактовой частотой 20МГц собирает данные с трёх оптических каналов со скоростью 1000Гц. Данные имеют выраженную наводку 50Гц и высокочастотные шумы. Сбор данных производится в прерывании. Мне нужно получить сигнал на выходе с частотой 10Гц, из которого убраны все помехи. С алгоритмами ЦОС я не знаком, вычислительная мощность слабая. Что посоветуете?

Спасибо!
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение May 16 2018, 16:53
Сообщение #2


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



Советую вам промоделировать в матлабе , заодно уточнив такие нужные параметры как подавление за полосой, сама полоса сигнала и т.д.
http://www.dsplib.ru/contentfilters.html
(и вам нужен ФНЧ)


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
kkobru
сообщение May 22 2018, 09:17
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 3-04-14
Пользователь №: 81 207



К сожалению, мне там ничего не понятно. Есть ли пример кода?
Go to the top of the page
 
+Quote Post
kovigor
сообщение May 22 2018, 10:33
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(kkobru @ May 22 2018, 12:17) *
К сожалению, мне там ничего не понятно. Есть ли пример кода?

Лет 10 назад попал в такую же ситуацию, что и вы - нужен ЦФ, а я никогда этим не занимался. Я сделал вот что:
- Почитал книжку Сергиенко, ту часть, где пишут про ЦФ. Мне хватило КИХ - фильтра. И еще, у него очень приятно описано, как работать с МатЛаб'ом и строить в нем ЦФ, и как их затем моделировать. Начать советую именно с Сергиенко - почитайте теорию, синтезируйте посредством МатЛаб пару-тройку ЦФ и в этом же МатЛаб их поисследуйте, и тогда вам станет понятно, как их программировать.
http://www.studmed.ru/sergienko-ab-cos-cif...248baaee64.html

- Почитал вот этот апп.ноут:
http://www.electroscheme.ru/datasheet/ATME...0with%20AVR.pdf

- И вот этот материал:
http://www.analog.com/en/analog-dialogue/a...simplified.html
Там есть пример ЦФ на Си, правда, БИХ, а не КИХ.

Была еще статейка каких-то индийских специалистов по обработке кардиограммы с помощью ЦФ. Там был очень удачный пример и код на Си. Но это было давно, я не могу вспомнить название. Сегодня вечером буду дома и попробую порыться в архивах, если будет время.

И еще апп. ноут, там внутри ссылочка на исходники:
http://www.ti.com/lit/an/slaa486a/slaa486a.pdf

Go to the top of the page
 
+Quote Post
_pv
сообщение May 22 2018, 12:28
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



20МГц на 3 канала по 1кГц это 6666 тактов на каждый отсчёт, за это время сделать с сигналом что угодно можно.
даже преобразование Фурье, зануление всех частот выше 10Гц и преобразование обратно.
хотя начать надо с требований к фильтру, "убраны все помехи" - не годится.
потом можно попробовать простые бих фильтры первого порядка: y += (x-y)/K
или простое усреднение по 20 точкам, чтобы 50Гц заодно задавить, этого может и хватит.
если нет, потом можно почитать про cic фильтры, они довольно простые, несколько сложений/вычитаний. https://github.com/EsonJohn/CIC-filter - не самый удачный пример для msp430, но уж какой под руку попался, динамическое выделение памяти, произвольную длину фильтра и вообще плюсы убрать, останется несколько сточек.

у аналоговых девайсов вроде неплохой букварь был "Mixed signal and dsp design techniques"

ну ещё есть вариант взять какой-нибудь qedesign, задать в него параметры фильтра, и получить готовые коэффициенты, он там вроде даже какой-то C код генерить умел, если вылечить от жадности, не помню только как там насчёт целочисленной арифметики.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 27th April 2024 - 20:06
Рейтинг@Mail.ru


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