Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: на чем лучше выделить частоту 265 Гц?
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Схемотехника
Метценгерштейн
т.е. из звукового сигнала выделить небольшой полосой, и выдавать лог.1.

Есть ли спец. микросхемы под это, или тут DSP нужен?
kovigor
Цитата(Метценгерштейн @ Aug 25 2012, 23:43) *
т.е. из звукового сигнала выделить небольшой полосой, и выдавать лог.1.

Обычной АВРки , скорее всего, хватит. Скачайте MatLab, книжку Сергиенко по ЦОС и спроектируйте фильтр. Да, кроме мощных DSP есть ведь еще и DSPic'и ...
Метценгерштейн
Я АВР только владею. А есть ли что на АВР с ДСП совместное?

А идеально было бы, чтобы показывал частоту от 30-500 Гц, на которой сигнал пошел.

Может здесь мне частотомер нужен? Задача показывать частоту звукового сигнала выше какого-то порога.
=AK=
Цитата(Метценгерштейн @ Aug 26 2012, 06:50) *
Задача показывать частоту звукового сигнала выше какого-то порога


Для определения порога можно использовать два одновибратора (с перезапуском по фронту) последовательно. Один настроен на период сигнала пороговой частоты. А второй - на несколько больший период. Если частота ниже порога, то на выходе первого одновибратора идет пачка импульсов, которые все время устанавливают второй одновибратор в 1. А если частота выше порога, то на выходе первого идет непрерывная 1 (он перезапускается не успев сработать), из-за чего второй одновибратор сбрасывается в 0.
kovigor
Цитата(Метценгерштейн @ Aug 26 2012, 00:20) *
А идеально было бы, чтобы показывал частоту от 30-500 Гц, на которой сигнал пошел.

Вам нужно нечто вроде анализатора спектра ? Его вполне можно сделать на основе БПФ. И такие проекты в сети есть, поищите ...
_pv
Цитата(Метценгерштейн @ Aug 26 2012, 03:43) *
т.е. из звукового сигнала выделить небольшой полосой, и выдавать лог.1.
Есть ли спец. микросхемы под это, или тут DSP нужен?
А идеально было бы, чтобы показывал частоту от 30-500 Гц, на которой сигнал пошел.

авр тут вполне достаточно,
гуглить goertzel и, как пример, dtmf decoder

если по частоте надо хорошее разрешение то можно и fft посчитать, начиная с определённого количества частотных отсчётов будет быстрее чем Герцель (ДПФ)
http://elm-chan.org/works/akilcd/report_e.html
XVR
Цитата(Метценгерштейн @ Aug 26 2012, 00:43) *
т.е. из звукового сигнала выделить небольшой полосой, и выдавать лог.1.

Есть ли спец. микросхемы под это, или тут DSP нужен?

Есть спец микросхемы - выбирайте
Метценгерштейн
Микросхемы мне более подойдут. БПФ, думаю, мне избыточно- мне не надо из видеосигнала на частоты его раскладывать и узнавать из каких он состоит.

Посмотрел на микрухи- они от 1 Килогерца. Мне бы герц от 200 хотя бы.
XVR
Цитата(Метценгерштейн @ Aug 27 2012, 20:57) *
Посмотрел на микрухи- они от 1 Килогерца. Мне бы герц от 200 хотя бы.
Они от 0.1Hz. Смотрите в даташите - в таблице приведены несколько отфонарные числа rolleyes.gif
_pv
Цитата(Метценгерштейн @ Aug 27 2012, 22:57) *
БПФ, думаю, мне избыточно- мне не надо из видеосигнала на частоты его раскладывать и узнавать из каких он состоит.

при чём тут видео сигнал?
не нравится быстрое преобразование, делайте обычное / герцеля.
Метценгерштейн
Я думал, что есть два вида сигналов- определенной частоты (радиосигнал) и произвольной формы (термин его видеосигнал).
БПФ раскладывает видеосигнал на радиосигналы определенной амплитуды и частоты, возможно и фазы.
Поправьте меня, если ошибаюсь где-то.
_pv
Цитата(Метценгерштейн @ Aug 29 2012, 00:00) *
Я думал, что есть два вида сигналов- определенной частоты (радиосигнал) и произвольной формы (термин его видеосигнал).
БПФ раскладывает видеосигнал на радиосигналы определенной амплитуды и частоты, возможно и фазы.
Поправьте меня, если ошибаюсь где-то.

ну так почему бы и не разложить неизвестный входной сигнал на набор гармонических сигналов с разными частотами и посмотреть у сигнала с какой частотой будет максимальная амплитуда? в случае если исходный сигнал просто синус, ненулевая амплитуда после преобразования фурье будет только у одной гармоники на частоте которою и надо найти? разве не это требуется?
при этом необязательно делать быстрое преобразование Фурье которое посчитает весь спектр, можно обойтись обычным преобразованием для небольшого набора частот.
Метценгерштейн
Про последнюю фразу не понял.
под обычным преобразованием мы что понимаем ( обычное / герцеля)?

Тогда, как Вы описали, так все и надо.
_pv
Цитата(Метценгерштейн @ Aug 29 2012, 03:07) *
Про последнюю фразу не понял.
под обычным преобразованием мы что понимаем ( обычное / герцеля)?

быстрое преобразование Фурье всегда считается для всего массива, то есть на входе N точек, на выходе N амплитуд спектральных составляющих.
обычное преобразование Фурье \int f(t)*exp(-iwt)dt, не обязательно считать для всех частот w. если нужна только определённая часть спектра (265+-50Гц), можно только для этих частот и считать, например w=215, 240, 265, 290, 315Гц. шаг зависит от необходимой точности и длины выборки.
алгоритм Герцеля просто упрощает вычисления интеграла Фурье, заменяя вычисления синуса/косинуса на вот это

Код
K = 2*cos(2*PI*f);
for(i=0...){
  y = x[i] + K * y1 - y2;
  y2 = y1;
  y1 = y;
}
alexdos
посмотрите на микросхему LM567
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.