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

 
 
 
Reply to this topicStart new topic
> Цифровой фильтр/спектроанализатор?, Для звуковой частоты...
trancer1019
сообщение Dec 12 2010, 11:24
Сообщение #1





Группа: Новичок
Сообщений: 7
Регистрация: 12-12-10
Пользователь №: 61 570



Здравствуйте!
На входе имею: звуковой сигнал 20Гц-20кГц
Необходимо: разбить данный участок на 3 диапазона и получить на выходе 3 числа равных амплитуде сигналов на каждом из этих участков (для последующего формирования ШИМ)...
Прикрепленное изображение

На рис. показаны примерные АЧХ фильтров которые желательно получить... (каждый цвет - свой фильтр; там где полосы пропускания пересекаются необходимо)

Подскажите как это реализовать? Что использовать лучше микроконтроллер или ПЛИС??
Раньше с цифровыми фильтрами не сталкивался.. так что буду рад любой информации (в том числе и направления в которое нужно копать)
Заранее спасибо...

Сообщение отредактировал trancer1019 - Dec 12 2010, 11:29
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Dec 12 2010, 11:25
Сообщение #2


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



Светомузыка? sm.gif


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
trancer1019
сообщение Dec 12 2010, 11:30
Сообщение #3





Группа: Новичок
Сообщений: 7
Регистрация: 12-12-10
Пользователь №: 61 570



Цитата(DRUID3 @ Dec 12 2010, 14:25) *
Светомузыка? sm.gif

Ага sm.gif
Вот решил, для общего развития сваять цифровую а не на 3х ОУsm.gif Да и с характеристикой заодно не прямоугольной а линейной...

Сообщение отредактировал trancer1019 - Dec 12 2010, 11:31
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Dec 12 2010, 11:40
Сообщение #4


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



Цитата(trancer1019 @ Dec 12 2010, 13:30) *
Ага sm.gif
Вот решил, для общего развития сваять цифровую а не на 3х ОУsm.gif

Похвально...

Цитата(trancer1019 @ Dec 12 2010, 13:30) *
Да и с характеристикой заодно не прямоугольной а линейной...

А вот с этим сложно... Да и линейность в логарифмический шкале частот и амплитуд или линейной?

А так - любой мкроконтроллер с АЦП, возможностью получить 3-и канала ШИМ(даже софтово) и который потянет 3-и IIR фильтра... AVR ATmega 8, Или новые LPC младших серий... FPGA, как по-мне так слишком жирно для такой задачи...


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Dec 12 2010, 11:56
Сообщение #5


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(trancer1019 @ Dec 12 2010, 14:24) *
Раньше с цифровыми фильтрами не сталкивался.. так что буду рад любой информации (в том числе и направления в которое нужно копать)

Например, глянуть на готовое решение - http://www.airylight.nm.ru/ и его основу (http://elm-chan.org/works/akilcd/report_e.html).
Go to the top of the page
 
+Quote Post
trancer1019
сообщение Dec 12 2010, 12:16
Сообщение #6





Группа: Новичок
Сообщений: 7
Регистрация: 12-12-10
Пользователь №: 61 570



Цитата(DRUID3 @ Dec 12 2010, 14:40) *
А вот с этим сложно... Да и линейность в логарифмический шкале частот и амплитуд или линейной?

По частоте логорифмический масштаб...
Цитата(DRUID3 @ Dec 12 2010, 14:40) *
и который потянет 3-и IIR фильтра... AVR ATmega 8, Или новые LPC младших серий... [

А Мега 8 потянет?
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Dec 12 2010, 13:10
Сообщение #7


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



Цитата(trancer1019 @ Dec 12 2010, 14:16) *
А Мега 8 потянет?

Да... Если не ставить условием изменение цвета с частотой в районе 20 kHz. Но если такое условие важно - тогда и вправду FPGA sad.gif ...

Кстати - вот...


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
trancer1019
сообщение Dec 15 2010, 07:21
Сообщение #8





Группа: Новичок
Сообщений: 7
Регистрация: 12-12-10
Пользователь №: 61 570



Цитата(DRUID3 @ Dec 12 2010, 19:10) *
Да... Если не ставить условием изменение цвета с частотой в районе 20 kHz. Но если такое условие важно - тогда и вправду FPGA sad.gif ...

Благодарю всех за информационную поддержку, помогает потихонечку...

Как я понимаю алгоритм моих действий должен быть таким:
1) АЦП контролера считываем звуковой сигнал с частотой порядка 40 кГц (что бы получить диапазон до 20кГц)?
2) Делаем 2000 отчетов ((40 000Гц/20Гц=2000раз) что бы нижняя граница получилась 20 Гц)?
3) Далее делаем что то типа "дискретного преобразования Фурье" и получаем спектр сигнала? (Контролер такую задачу вытянет??? Именно преобразование Фурье использовать нужно, и вообще его ли? Подкиньте формул если есть)
4) Далее полученный спектр, с каким то шагом (20 Гц 40Гц 80Гц 120Гц... 20кГц), домножим на линейные функции (график: красный, желтый, синий), в результате получаем 3 числа для каждой точки (пример: красный "0" желтый "3" синий "7")
Потом выбираем максимальную амплитуду в спектре для каждого цвета, и присваиваем ее в ШИМ..
Либо суммируем все амплитуды в спектре для каждого цвета и сумму отправляем в ШИМ...
(что посоветуете выбрать?)

Я в правильную сторону иду?
Делитесь идеями ПЛЗ?

Сообщение отредактировал trancer1019 - Dec 15 2010, 07:22
Go to the top of the page
 
+Quote Post
toweroff
сообщение Dec 15 2010, 14:43
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



bb-offtopic.gif trancer1019, прошу прощения, что здесь напишу
а вообще, сделать не только спектроанализ, но и еще всякие психоакустические модели? Или это вообще делается визуальный ряд специально только под конкретную композицию?
Go to the top of the page
 
+Quote Post
trancer1019
сообщение Dec 17 2010, 08:52
Сообщение #10





Группа: Новичок
Сообщений: 7
Регистрация: 12-12-10
Пользователь №: 61 570



Цитата(toweroff @ Dec 15 2010, 20:43) *
bb-offtopic.gif trancer1019, прошу прощения, что здесь напишу
а вообще, сделать не только спектроанализ, но и еще всякие психоакустические модели? Или это вообще делается визуальный ряд специально только под конкретную композицию?

Лично я пока хочу просто что бы у меня получилась равномерная радуга от красного (20Гц) до синего (20кГц); и что бы каждая нота отличалась по температуре свечения от соседней..
Но в принципе имея спектральный анализ можно много что придумать...
Go to the top of the page
 
+Quote Post
trancer1019
сообщение Dec 21 2010, 14:20
Сообщение #11





Группа: Новичок
Сообщений: 7
Регистрация: 12-12-10
Пользователь №: 61 570



Цитата(trancer1019 @ Dec 15 2010, 13:21) *
Благодарю всех за информационную поддержку, помогает потихонечку...

Как я понимаю алгоритм моих действий должен быть таким:
1) АЦП контролера считываем звуковой сигнал с частотой порядка 40 кГц (что бы получить диапазон до 20кГц)?
2) Делаем 2000 отчетов ((40 000Гц/20Гц=2000раз) что бы нижняя граница получилась 20 Гц)?
3) Далее делаем что то типа "дискретного преобразования Фурье" и получаем спектр сигнала? (Контролер такую задачу вытянет??? Именно преобразование Фурье использовать нужно, и вообще его ли? Подкиньте формул если есть)
4) Далее полученный спектр, с каким то шагом (20 Гц 40Гц 80Гц 120Гц... 20кГц), домножим на линейные функции (график: красный, желтый, синий), в результате получаем 3 числа для каждой точки (пример: красный "0" желтый "3" синий "7")
Потом выбираем максимальную амплитуду в спектре для каждого цвета, и присваиваем ее в ШИМ..
Либо суммируем все амплитуды в спектре для каждого цвета и сумму отправляем в ШИМ...
(что посоветуете выбрать?)

Я в правильную сторону иду?
Делитесь идеями ПЛЗ?


Ауу!! Эксперты! ХЭЛП! smile3046.gif
Go to the top of the page
 
+Quote Post
diglook
сообщение Dec 21 2010, 14:56
Сообщение #12


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

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



для 3 и 4 пунктов
В 7 топике DRUID3 дал Вам ссылочку, замечательная штучка. Думаю она Вам поможет.
можно попробовать на АВР .
Где-то в сети были анализаторы спектра( аля эквалайзер)на АВРке для звуковых частот с отображением на дисплей.
Гугль выдает кучу ссылок "анализатор спектра на AVR".

Сообщение отредактировал diglook - Dec 21 2010, 15:04
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 5th August 2025 - 08:16
Рейтинг@Mail.ru


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