|
Анализатор спектра ультразвукового диапазона, Анализатор спектра до 100кГц |
|
|
|
Mar 7 2010, 11:13
|

Участник

Группа: Участник
Сообщений: 39
Регистрация: 8-12-09
Из: Новочебоксарск
Пользователь №: 54 124

|
На сайте http://www.zetms.ru/catalog/analyzers/a19.php есть описание анализатора спектра. Требуется проделать подобное, но на один канал (без аналогового выхода, цифрового выхода, коэффициенты усиления программируемые так же не нужны) с несколько измененными характеристиками: 1) Частота входного сигнала до 100кГц. 2) Частота дискретизации до 250кГц. 3) Количество разрядов АЦП 16. 4) Для отображения сигнала в частотную область использую БПФ (на ADSP 21375). 5) Динамический диапазон то же - 85дБ.Возникли вопросы по алгоритму:1) Если сигнал случайный (музыка, речь и.т.д), то как определить частоту гармоники с наибольшей амплитудой в спектре? 2) Как наиболее достоверно (погрешность от 2 до 5%) отобразить спектр? 3) Какую фильтрацию использовать? 4) Можно ли обойтись без октавных фильтров, а использовать скажем оконную фильтрацию (при условии, что накапливаю несколько периодов сигнала основной частоты)?
Сообщение отредактировал Nukers - Mar 7 2010, 11:16
|
|
|
|
|
 |
Ответов
|
Mar 24 2010, 18:30
|

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

|
Цитата(TigerSHARC @ Mar 24 2010, 20:12)  Да, кстати про зеркальный канал. В реальных девайсах вообще стоит RC-цепь первого порядка... Ну это Вы загнули... Может в "китайщине" какой... Цитата(TigerSHARC @ Mar 24 2010, 20:12)  кстати про децибелы. 40 - это опять по книгам. Это если хотите, чтобы максимально возможная погрешность от наложения спектра составила 0,01%. А так нужно выбрать в зависимости от требуемой точности (но это опять же теория) 40 dB это 100 раз, следовательно 1%, а не 0,01%... Вообще DR=85dB и подавление зеркалки <100 dB - смешно. Но для учебного проекта сойдет и так  ... Цитата(TigerSHARC @ Mar 24 2010, 20:12)  to DRUID3 А что значит +1024 (просто интересно, чтоб знать) ну все +1 если чо "зачОтное" прочтут... если "очень зачОтное" то +1000... Ну а у нас же форум такой... блоки должны быть кратны степени 2-ки потому +1024 )))... Nukers я позавчера кажется обещал Вам ответить, но не сдержал обещания - был занят, но то что я тогда напЕйсал - сохранил. Отсылаю сейчас...Цитата(Nukers @ Mar 15 2010, 15:09)  Уважаемый DRUID3. Есть к вам вопрос. Досточтимый Nukers, йа отвечать Вам...
Цитата(Nukers @ Mar 15 2010, 15:09)  Уолт Кестер в Главе 5, стр. 22 Быстрое Преобразование Фурье http://www.analog.com.ru/Public/5.pdf пишет, что максимальное время выполнения БПФ при реализации в реальном масштабе времени рассчитывается как: Tmax=N/fs Ну начнем с того, что смысл этих расчетов показать за сколько максимум должно успевать отрабатывать FFT что-бы не началась потеря блоков.
Если честно - Вам не о чем волноваться, процессор который выбран для проекта рассчитан на заведомо большие скорости. Но... Пусть у Вас Fs = 250 kHz. Хм... Кстати, для удобства - а не подогнать ли нам тактовую под кратность блоку длинной степень 2-ки? Чуть затруднит физическую реализацию - но облегчит восприятие. Тогда 1024 * 25 = 256 000 sps. Очевидно, что нужно успевать отработать одно БПФ за 1/25 s = 0.04 s. 40ms = 40 000 us;
Цитата(Nukers @ Mar 15 2010, 15:09)  (Для ADSP-21375 при 266МГц и 1024 точках это занимает ~27мкс) Теоретически - без учета расходов на пересылку памяти (а они там мизерные) - успеваем...
Цитата(Nukers @ Mar 15 2010, 15:09)  Таким образом при N=1024 и fs=250кГц получаем Tmax=4096мкс. Где-то вкралась оБшиПка...
Цитата(Nukers @ Mar 15 2010, 15:09)  Я понял так:
1) Включили прибор 2) Подождали неск. тактов пока закончатся переходные процессы (в осн. для аналоговой части). И как Вы собираетесь это делать? NOP-ами? А зачем? Переходные процессы в аналоговой части, а параллельно ей загрузка и инициализация в цифровой... Ну мигнет пару раз экранчик выдавая билеберду. Но от своего ПК Вы же не требуете загрузки за микросекунды?
Цитата(Nukers @ Mar 15 2010, 15:09)  3) Копим первые 1024 отсчета с fs=250кГц - это и занимает 4096мкс. (В это время подпрограмма выполнения БПФ просто не вызывается=процессор простаивает). Вообщем и целом - верно...
Цитата(Nukers @ Mar 15 2010, 15:09)  4) Обрабатываем 1024 полученных отсчета по алгоритму БПФ. (Для ADSP-21375 при 266МГц и 1024 точках это занимает ~27мкс). 5) На пункт 3. ...и.т.д.
Цитата(Nukers @ Mar 15 2010, 15:09)  Скажите, я не ошибся? Верно ли, что пока копятся первых 1024 отсчета у меня есть 4096мкс, чтобы выполнить БПФ на 1024 точки, а так же на сопутствующие операции? слегонца...
P.S.: я так понял - от моего чудесного квазискользящего чудо-буфера Вы отказались. Ну и правильно... В конце-концов это же учебный проект и тут главное показать, что Вы осознаете что делаете...
P.P.S.: Кстати, йа кажеЦЦо понял зачем Вы упоминали FIR... Это же диплом - и нужно будет привести расчет чего-нибудь на пару страниц крупным шрифтом. А у Вас в Т.з. ДД 85 dB. Нужно будет "доказать", что требование выполняется. Так?
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
Сообщений в этой теме
Nukers Анализатор спектра ультразвукового диапазона Mar 7 2010, 11:13 DRUID3 Цитата(Nukers @ Mar 7 2010, 13:13) 1) Есл... Mar 7 2010, 11:28 Nukers Цитата..мало того, можно его отобразить с достовер... Mar 7 2010, 12:16 DRUID3 Цитата(Nukers @ Mar 7 2010, 14:05) Знаю, ... Mar 7 2010, 12:39 Nukers ЦитатаЦитата
Думаю, понятно что он делает.
Да, он... Mar 7 2010, 15:09 DRUID3 Цитата(Nukers @ Mar 7 2010, 17:09) Фильтр... Mar 7 2010, 19:04 Nukers
Тут я постарался графически отобразить мое поняти... Mar 7 2010, 21:00 DRUID3 Цитата(Nukers @ Mar 7 2010, 23:00) Тут я ... Mar 7 2010, 22:18 TigerSHARC Цитата(Nukers @ Mar 8 2010, 00:00)
Тут я... Mar 8 2010, 07:11  Nukers Кто-нибудь может дать ссылку, где можно найти инфо... Mar 13 2010, 17:15   DRUID3 Цитата(TigerSHARC @ Mar 8 2010, 09:11) До... Mar 13 2010, 17:51    Nukers Спаасибо огромное. Но я нашел лишь для 21364. А дл... Mar 13 2010, 18:25     DRUID3 Цитата(Nukers @ Mar 13 2010, 20:25) Спаас... Mar 13 2010, 18:45    TigerSHARC Цитата(DRUID3 @ Mar 13 2010, 20:51) Надум... Mar 14 2010, 06:50 Nukers Уважаемый DRUID3. Есть к вам вопрос.
Уолт Кестер в... Mar 15 2010, 13:09 Nukers Господа форумчане подскажите!
Собираюсь испол... Mar 22 2010, 18:16 анатолий Цитата(Nukers @ Mar 22 2010, 21:16) Собир... Mar 24 2010, 13:02 TigerSHARC а кокой смысл делать БПФ до фильтрации... как я по... Mar 22 2010, 18:25 DRUID3 Nukers
я часа в 3-4 ночи просыпаюсь, тогда вам и о... Mar 22 2010, 18:50 TigerSHARC всё таки применение FIR в данном случае оправдано ... Mar 22 2010, 19:34 Nukers Я о том же, что и говорит анатолий.
Мне непременно... Mar 24 2010, 16:06 DRUID3 Цитата(анатолий @ Mar 24 2010, 15:02) КИХ... Mar 24 2010, 17:19 TigerSHARC Корректировать - это просто внести поправку. напри... Mar 24 2010, 17:07 Nukers ЦитатаПросто умножаешь выборку на весовую функцию ... Mar 24 2010, 17:17 Nukers ЦитатаУ Анатолия уже в теплице видимо новый урожай... Mar 24 2010, 17:35 TigerSHARC Сань, ну нахрена спектр умножать на окно?
для ... Mar 24 2010, 17:47 DRUID3 Цитата(TigerSHARC @ Mar 24 2010, 19:47) С... Mar 24 2010, 18:05 Nukers Согласен, ошибся. Поторопился. Теперь все вроде но... Mar 24 2010, 17:56 TigerSHARC теперь DRUID3 точно больше ничего не напишет)))) Mar 24 2010, 18:01 Nukers ЦитатаНу начнем с того, что смысл этих расчетов по... Mar 25 2010, 06:40 DRUID3 Цитата(Nukers @ Mar 25 2010, 08:40) 1024*... Mar 25 2010, 07:33 Nukers ЦитатаУмножение на функцию окна гораздо легковесне... Mar 25 2010, 07:55
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|