Цифровые сигнальные процессоры Вопросы, связанные с применением цифровых сигнальных процессоров: программирование, отладочные средства, алгоритмы... |
09.03.2020, 11:53
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,058
Сказал спасибо: 2,563
Сказали Спасибо 11,890 раз(а) в 5,964 сообщении(ях)
|
Re: Детектирование частоты
an-sver, посмотрите в сторону цифровой (программной) фильтрации.
Во вложении ДОСовский вариант расчета коэффициентов, но удобней я ничего не нашел более современного. Не сочтите время на запуск этой вещи излишне потраченным, оно того стоит. Сам пользуюсь. Запускается модулем DISPRO25.EXE
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
Эти 3 пользователя(ей) сказали Спасибо akegor за это сообщение:
|
|
|
09.03.2020, 16:10
|
|
Временная регистрация
Регистрация: 30.05.2005
Сообщений: 53
Сказал спасибо: 1
Сказали Спасибо 15 раз(а) в 11 сообщении(ях)
|
Re: Детектирование частоты
Вам дело предложил Maxymen. Алгоритм Герцеля по сути урезанный Фурье. Фурье позволяет определить амплитуду составляющей спектра, а Герцеля - наличие. Тянул это раньше простой Z80 - вспомните АОНы.
|
|
|
Сказали "Спасибо" Ioann_II
|
|
|
09.03.2020, 21:50
|
|
Прописка
Регистрация: 22.08.2006
Сообщений: 168
Сказал спасибо: 8
Сказали Спасибо 16 раз(а) в 11 сообщении(ях)
|
Re: Детектирование частоты
Сообщение от kreking
|
А как дело обстоит на переключаемых конденсаторах? MAX74xx и другие работают не плохо.
|
Переключаемые конденсаторы фактически и можно реализовать программно на микроконтроллере..
|
|
|
|
09.03.2020, 22:15
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.02.2013
Сообщений: 1,038
Сказал спасибо: 43
Сказали Спасибо 273 раз(а) в 214 сообщении(ях)
|
Re: Детектирование частоты
Сообщение от Ioann_II
|
Алгоритм Герцеля по сути урезанный Фурье. Фурье позволяет определить амплитуду составляющей спектра, а Герцеля - наличие.
|
Там не только дело в определении наличия частоты. Преамбула передается импульсами, промодулированными 10кГц (после которой следует паузы разной длительности).
То есть важно также определять время окончания преамбулы с определённой точностью (чтобы начать анализировать время паузы) - а это уже временное разрешение.
|
|
|
|
09.03.2020, 23:04
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,058
Сказал спасибо: 2,563
Сказали Спасибо 11,890 раз(а) в 5,964 сообщении(ях)
|
Re: Детектирование частоты
Сообщение от dgrishin
|
промодулированными
|
Заполненными. Это 10 кГц промодулированы импульсами.
Сообщение от dgrishin
|
То есть важно также определять время окончания преамбулы с определённой точностью
|
После полосового фильтра достаточной для подавления помех добротности, когда в наличии только заполняющая частота, неточность определения может быть до трети минимального интервала. Такой точности вполне достаточно (это из опыта) при правильно построенном алгоритме.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
12.03.2020, 15:25
|
|
Временная регистрация
Регистрация: 10.11.2016
Сообщений: 53
Сказал спасибо: 6
Сказали Спасибо 16 раз(а) в 13 сообщении(ях)
|
Re: Детектирование частоты
Сообщение от akegor
|
an-sver, посмотрите в сторону цифровой (программной) фильтрации.
Во вложении ДОСовский вариант расчета коэффициентов, но удобней я ничего не нашел более современного. Не сочтите время на запуск этой вещи излишне потраченным, оно того стоит. Сам пользуюсь. Запускается модулем DISPRO25.EXE
|
Есть Winfilter http://www.winfilter.20m.com/ халявный и под винду.
|
|
|
|
12.03.2020, 16:54
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,058
Сказал спасибо: 2,563
Сказали Спасибо 11,890 раз(а) в 5,964 сообщении(ях)
|
Re: Детектирование частоты
Сообщение от sanya
|
Есть Winfilter
|
Я достаточно умело пользуюсь интернетом. Однако,
Сообщение от akegor
|
удобней я ничего не нашел более современного
|
чем то, что я выкладывал.
Для примера, так, навскидку... Скажите, какого порядка нужен фильтр для выделения полосы 19...21 Гц и подавления на 60 дБ от 0 до 18 и от 22 до бесконечности герц?
Вот той программулине, которую я дал, не надо рассказывать всякие сказки, ей достаточно того, что я сказал. Порядок и прочее она посчитает сама.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
20.04.2020, 21:08
|
|
Прописка
Регистрация: 22.08.2006
Сообщений: 168
Сказал спасибо: 8
Сказали Спасибо 16 раз(а) в 11 сообщении(ях)
|
Re: Детектирование частоты
Спустя некоторое время и пару недель экспериментов, нашел удачный алгоритм для детектирования нужной частоты. Факт начала и конца передачи, а также паузы между посылками. Принцип оказался прост как все гениальное. Оказалось достаточно по прерыванию от компаратора измерять период частоты, заносить его в массив сдвигать элементы массива на 1 и сравнивать все элементы массива. Если они примерно равны - идет несущая... Если последние периоды сильно отличаются от предыдущих - несущая пропала. Также она считается пропавшей если таймер по которому отсчитывается переполнился.... Начало несущей также отсчитывается по тому что элементы массива снова стали "равны" между собой. количество элементов в массиве и величина отклонения регулируют "точность" обнаружения. По количеству переполнений таймера между проявлениями несущей определяются стартовый бит и биты данных. Может кому данный алгоритм и пригодится в дальнейшем...
|
|
|
|
20.04.2020, 21:19
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,058
Сказал спасибо: 2,563
Сказали Спасибо 11,890 раз(а) в 5,964 сообщении(ях)
|
Re: Детектирование частоты
Сообщение от an-sver
|
Принцип оказался прост как все гениальное.
|
Обкатано на реальном сигнале с реальной линией?
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
20.04.2020, 21:34
|
|
Прописка
Регистрация: 22.08.2006
Сообщений: 168
Сказал спасибо: 8
Сказали Спасибо 16 раз(а) в 11 сообщении(ях)
|
Re: Детектирование частоты
Да, на реальном сигнале и линии... аналоговые фильтра по входу все-таки остались. По осцилограмме на входе компаратора есть импульсные помехи, но они при таком алгоритме не влияют на детектирование, поскольку не имеют "повторяемости". Такой алгоритм работает на пиках даже младшего семейства и практически не зависит от искажения формы сигнала- синус, меандр, пила - ему все равно.... Главное - зацепиться за сигнал с одинаковым расчетным периодом...
Последний раз редактировалось an-sver; 20.04.2020 в 21:39.
|
|
|
Сказали "Спасибо" an-sver
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:51.
|
|