RodionGork 0 18 апреля, 2009 Опубликовано 18 апреля, 2009 · Жалоба Товарищи, привет! В общем интерес сейчас малопрактический - вспомнил один давнишний проект и задумался в выходной день, как он мог быть сделан "по другому"... Каким образом можно (в программе) "получить представление" о спектре сигнала, например, непрерывно поступающего на АЦП? Ну то есть я в курсе, например, чем прославился Фурье в этой области... Но ряд Фурье показывает спектр по частоте линейно ведь, а нас вроде чаще интересует логарифмическая шкала... Другой вариант, насколько я понимаю, напустить на идущий сигнал вычисление нескольких формул соответствующих формулам фильтров? Подскажите просто направление или пару умных слов для домашнего чтения. Ну за другие комментарии тоже спасибо заранее... ;-) с уважением, Родион Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Джеймс 4 18 апреля, 2009 Опубликовано 18 апреля, 2009 · Жалоба ряд Фурье показывает спектр по частоте линейно ведь, а нас вроде чаще интересует логарифмическая шкала... Ну так вроде 20*log10 (или я чего-то не допонял) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RodionGork 0 18 апреля, 2009 Опубликовано 18 апреля, 2009 (изменено) · Жалоба Ну так вроде 20*log10 (или я чего-то не допонял) ;-))) Я в том смысле говорю, что например если некий программист Непейвода решил узнать примерное соотношение в сигнале частот ниже 100 Гц, выше 1кГц и в промежутке 100-1000Гц, то если он будет действовать напрямую, то он получит немножко коэффициентов ряда фурье для первого промежутка, в девять раз больше для второго и в девяносто раз больше для третьего... разве не так? там же разложение на кратные гармоники, да... А казалось бы более правильно если бы оценка присутствия каждого из диапазонов по одинаковому количеству коэффициентов получалась... или я чего-то недопонял? Изменено 18 апреля, 2009 пользователем RodionGork Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Herz 6 18 апреля, 2009 Опубликовано 18 апреля, 2009 · Жалоба Так Гугл Вам в руки, как говорится... Можно взять стандартную прогу, типа CoolEdit, например, и проанализировать спектр - там наглядно это. Или я чего-то недопонял? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RodionGork 0 18 апреля, 2009 Опубликовано 18 апреля, 2009 (изменено) · Жалоба Так Гугл Вам в руки, как говорится... Можно взять стандартную прогу, типа CoolEdit, например, и проанализировать спектр - там наглядно это. Или я чего-то недопонял? Гы-гы-гы... Я думал я один только CoolEdit пользую... Думал уж страшно устаревшая штука... Впрочем, товарищ Герц тоже не дитя 21 века... (это беззлобная шутка, не подумайте плохого - просто удивился увидав название любимого редактора, который мне еще по фидо когда-то прокинули друзья)... ;-))) Я имею в виду анализировать сигнал (низких, звуковых частот) в реальном времени... Силами контроллера, например... Впрочем, как я понимаю, простейшие цифровые фильтры даже 8-разрядный чип не затруднится сосчитать, после чего надо амплитудки оценить и ура... Вот мне такое решение возможное видится... Разумеется оценка в этом случае получается по нескольким конкретно определенным программистом (с помощью нескольких цифровых фильтров) диапазонам... Вроде нормальное решение... Но меня все время преследует подозрение, что я чего-то не так понял... или недопонял... ;-) Изменено 18 апреля, 2009 пользователем RodionGork Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Microwatt 2 18 апреля, 2009 Опубликовано 18 апреля, 2009 · Жалоба В лоб - читать выходы узкополосных фильтров. Если задачка исследоватьельская, то можно. Фильтры строятся просто и дешево. А если это серийно-встроенное.. морщить лоб и искать прграммные изощрения. Вспоминать БПФ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DRUID3 0 19 апреля, 2009 Опубликовано 19 апреля, 2009 · Жалоба 2RodionGork Ход мыслей Ваш верен. Вот программа рассчитывающая 8-и битные фильтры. Еще можно на основе фильтра скользящего суммирования сделать полосовые. Ну о-о-о-очень мало ресурсов они забирают - хотя и рахитные, низкая точность, и проблемы с устойчивостью... Но вопрос - зачем? Вы на "тини" собрались это делать? Меня уже задолбало это цитировать :( , но вот наш друг из страны восходящего солнца демонстрирует на что способна "мега" как DSP. У него там еще коллекция FFT для Mega... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RodionGork 0 19 апреля, 2009 Опубликовано 19 апреля, 2009 · Жалоба Да, программу я еще вчера нашел и поиграться успел... На нее прям все ссылки ведут... ;-) За ссылку на работу товарища (ту, где он спектр вокруг частоты 455кГц изучает) спасибо - вообще впечатляет, безусловно, хотя меня-то интересуют приложения на порядок проще... ;-))) Собственно смысл именно в том чтобы не гонять пушкой воробьев... Тогда давно я использовал в проекте по-моему чип mega8 и довольно глубокомысленным образом накрутил к нему несколько несложных аналоговых фильтров - в сумме получилось десятка полтора резюков и конденсаторов ну и четыре операционника (LM324)... А сейчас я подумал, что это прямо как-то глупо получилось, учитывая что можно было ту же работу возложить на сам контроллер без ущерба даже для остальных выполняемых им задач (он там не слишком нагружен получался) - избавившись от лишних компонент. Конечно, оптовая цена вопроса, наверное, рублей 10 на компоненты и столько же на точки пайки, плюс место на плате... Но меня как разработчика совесть гнетет... Неудовлетворенность... ;-) Осознание приходит поздно, но лучше позже, чем никогда... ;-))) А за подробные рекомендации - спасибо! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
eugen_pcad_ru 0 20 апреля, 2009 Опубликовано 20 апреля, 2009 · Жалоба А есть еще по-моему некий кепстральный анализ... Он не подходит? P.S.: Просто о таком слышал... Больше ничего сказать не могу:) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Herz 6 20 апреля, 2009 Опубликовано 20 апреля, 2009 · Жалоба А есть еще по-моему некий кепстральный анализ... Он не подходит? P.S.: Просто о таком слышал... Больше ничего сказать не могу:) Может, ректальный? Криптоанализ? Нет, наверное, не подходит... Если ещё о чём услышите - сообщите, ждём. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mdmitry 0 20 апреля, 2009 Опубликовано 20 апреля, 2009 · Жалоба Может, ректальный? Это из медицины :laughing: Кепстральный анализ для ознакомления у Гоноровского в учебнике есть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RodionGork 0 20 апреля, 2009 Опубликовано 20 апреля, 2009 (изменено) · Жалоба А есть еще по-моему некий кепстральный анализ... Он не подходит? P.S.: Просто о таком слышал... Больше ничего сказать не могу:) Гм... Я с гугла прочел некое краткое описание... Ну любопытно, даже позабавился над названиями "кепстр", "рахмоника" и "кьюфренси"... Утверждают что кепстр - спектр спектра (точнее, первоначальный спектр по логарифмической шкале берется к тому же)... Ну и что для чего-то его можно использовать... Но поскольку я интересуюсь то как раз тем, как бы получить собственно простейшую спектральную информацию о сигнале... Думаю тонкости собственно использования кепстрального анализа мне как козе баян... ;-) Но спасибо, посмотреть было интересно. Изменено 20 апреля, 2009 пользователем RodionGork Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться