|
Детектирование сигнала частотой 30 Гц, Помогите советом |
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 24)
|
Mar 28 2007, 17:02
|

Знающий
   
Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206

|
Цитата(Karl @ Mar 28 2007, 18:24)  Задача: Есть передатчик, генерирующий частоту 30 Гц и приемник. Необходимо с помощью контроллера определять наличие передатчика вблизи приемника. То есть нужно как - то выделить нужный сигнал из шума. Вопрос: как лучше это реализовать и хватит ли для этих целей контроллера типа AVR, или нужен мощнее? Опыта в этой сфере никакого, поэтому с нетерпением жду советов. сначала уточните, какая связь между приемником и передатчиком. На микроконтроллере можно, тут больше вопрос к условиям задачи и схемотехнике. Какое соотношение сигнал/шум на входе приемника ожидается и что с этим сигналом нужно делать, просто определить наличие или еще что-то?
--------------------
Пасу котов...
|
|
|
|
|
Mar 29 2007, 05:58
|
Частый гость
 
Группа: Свой
Сообщений: 179
Регистрация: 4-02-05
Пользователь №: 2 429

|
Цитата(Andy Mozzhevilov @ Mar 28 2007, 20:02)  сначала уточните, какая связь между приемником и передатчиком. На микроконтроллере можно, тут больше вопрос к условиям задачи и схемотехнике. Какое соотношение сигнал/шум на входе приемника ожидается и что с этим сигналом нужно делать, просто определить наличие или еще что-то? передача идет по ралиоканалу. Необходимо просто определить, что передатчик прошел вблизи приемника. Соотношение сигнал/шум пока неизвестно. Цитата(anton @ Mar 28 2007, 22:48)  Для 30гц может и AVR хватит. Один из вариантом цифруеш датчик через низкочастотный или полосовой фильтр. В МК реализуеш узкополосный фильтр и по его выходу измеряешь сигнал. Для упрощения частоту АЦП можно поставить 120гц и далее сумматор через один с инверсией. на выходе два числа берешь корень из суммы квадратов это искомый уровень сигнала. Спасибо. ТОлько вот с реализацией фильтров сталкиваться пока не приходилось...
|
|
|
|
|
Mar 30 2007, 06:26
|
Частый гость
 
Группа: Свой
Сообщений: 179
Регистрация: 4-02-05
Пользователь №: 2 429

|
Цитата(Oldring @ Mar 29 2007, 15:47)  Значит и реализация пока неизвестна  AVR заведомо сможет реализовать практически любой алгоритм детектирования 30 Гц сигнала. Все упирается в формальное описание самого сигнала и вероятных помех, чтобы разработать оптимальный алгоритм приема. Ну и не забудте про требования к времени детектирования и вероятности ошибок. Или Вам достаточно детектироать как получится? Реализация действительно пока неизвестна  Известно что приемник должен настраиваться на частоту в диапазоне от 10 до 30 Гц (на частоту конкретного передатчика). Передатчик будет находиться вблизи приемника в районе 400 мс. За это время реобходимо определить и зафиксировать присутствие передатчика вблизи приемника. Вот и вся задача. Для начала хочу определиться с контроллером. Если говорите, AVR достаточно - буду закладывать его. Планирую пользоваться встроенным АЦП.
|
|
|
|
|
Apr 4 2007, 06:23
|
Частый гость
 
Группа: Свой
Сообщений: 179
Регистрация: 4-02-05
Пользователь №: 2 429

|
Цитата(anton @ Mar 31 2007, 22:20)  Определись с соотношением сигнал шум датчика. Поскольку 400мс для 10гц всего 4периуда, т.е. соотношение особо не улучшиш. Соотношение сигнал/шум обещают 1,5. Еще оказалось, что сигнал передатчика может быть разным. Либо непрерывный синус, либо пачки по 8 периодов синуса. Время между началом соседних импульсов 1,45 секунды. Тут знающие люди (чисто теоретики, которые вряд ли помогут реализовать идею на практике) предлагают делать БПФ и анализировать спектр, поскольку приемник должен быть настраиваемым на передатчики с разной частотой. Цитата(blackfin @ Mar 29 2007, 15:07)  Проще всего через "Алгоритм Герцеля", см. напр. А.Б.Сергиенко, ЦОС, изд.2006, стр.311. Алгоритм Герцеля, к сожалению, найти пока не смог. Может подскажете ресурсы в интернете?
|
|
|
|
|
Apr 6 2007, 09:39
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(Oldring @ Apr 4 2007, 09:38)  Ну, если при этом еще и время нахождения передатчика вблизи приемника в районе 0,4с - то вероятность успешного детектирования вряд-ли будет превышать 28%.  Pojasnite, pojaluysta, chto vy podrazumevaete pod "вероятность успешного детектирования"? Po-moemu, etot termin zdes' neumesten. Takje ochen interesno, kak vi tak liho poluchili privedennoe vishe chislo? Цитата(Oldring @ Apr 4 2007, 09:38)  ...Да и отношение сигнал/шум скорее всего маловато для достижения приемлемой вероятности ложных срабатываний детектора. A pochemu? Vi chto, znayete priemlemuju veroyatnost'?
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Apr 6 2007, 10:42
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(Karl @ Mar 28 2007, 16:24)  Задача: Есть передатчик, генерирующий частоту 30 Гц и приемник. Необходимо с помощью контроллера определять наличие передатчика вблизи приемника. То есть нужно как - то выделить нужный сигнал из шума. Вопрос: как лучше это реализовать и хватит ли для этих целей контроллера типа AVR, или нужен мощнее? Опыта в этой сфере никакого, поэтому с нетерпением жду советов. Что касается алгоритма обработки, то на мой взгляд оптимальным решением все-таки является обработка в частотной области - FFT (или как частный случай алгоритм Герцеля). Для снижения составляющей шума предлагаю применить интегральный метод, т.е. обычное усреднение по нескольким реализациям (причем веса для каждой реализации могут быть выбраны как постоянными, так и переменными, кроме того, если применять алгоритм Герцеля, то длина каждой из выборок будет незначительной, ну, конечно, выбирать нужно в рамках необходимой разрешающей способности). В этом случае так как выборки независимые, некорелированные, то результирующий выигрыш составит величину порядка sqrt(n), где n - чило выборок. А что касается выбора платформы для реализации, то думаю, что AVR вполне подойдет (в этом семействе контроллеры на любой вкус).
|
|
|
|
|
Apr 9 2007, 06:13
|
Частый гость
 
Группа: Свой
Сообщений: 179
Регистрация: 4-02-05
Пользователь №: 2 429

|
Цитата(Serg76 @ Apr 6 2007, 13:42)  Что касается алгоритма обработки, то на мой взгляд оптимальным решением все-таки является обработка в частотной области - FFT (или как частный случай алгоритм Герцеля). Для снижения составляющей шума предлагаю применить интегральный метод, т.е. обычное усреднение по нескольким реализациям (причем веса для каждой реализации могут быть выбраны как постоянными, так и переменными, кроме того, если применять алгоритм Герцеля, то длина каждой из выборок будет незначительной, ну, конечно, выбирать нужно в рамках необходимой разрешающей способности). В этом случае так как выборки независимые, некорелированные, то результирующий выигрыш составит величину порядка sqrt(n), где n - чило выборок. А что касается выбора платформы для реализации, то думаю, что AVR вполне подойдет (в этом семействе контроллеры на любой вкус). Спасибо, но вот алгоритм Герцеля найти никак не могу. По ссылочке от blackfin меня не пускают
|
|
|
|
|
Apr 14 2007, 12:44
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(el34 @ Apr 14 2007, 13:21)  >Вообще-то, для "прерывистого" сигнала алгоритм Герцля будет далеко не оптимален, особенно если пачки 30-Гц сигнала имеют разрывы фазы. >В этом случае лучше согласованный фильтр сооружать. но сделать можно это используя алгоритм Герцеля (Goertzel algorithm)  Нет, по-моему, нельзя (во всяком случае, без великих извращений). Более правильной в данном случае, мне кажется, будет согласованная КИХ-фильтрация.
Сообщение отредактировал Stanislav - Apr 14 2007, 12:57
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Apr 14 2007, 13:18
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(el34 @ Apr 14 2007, 14:00)  >Нет, по-моему, нельзя (во всяком случае, без великих извращений). Более правильной в этом случае, мне кажется, будет реализация оптимального приёма в виде КИХ-фильтра.
а чтоб реализовать хорошую добротность c ких фильтром - разве это не накладно? Дело вовсе не в добротности, а в том, что оптимальный фильтр должен быть согласован как с исходным сигналом, так и с шумом (для того, чтобы получить наибольший из всех возможных энергетический выигрыш С/Ш на выходе). В белом шуме, например, импульсная характеристика согласованный фильтра на 8 периодов синусоиды будет представлять из себя также 8 периодов синусоиды (точнее, зеркально отображённых во времени). Для периодически повторяющихся пачек нужно также ввести суммирование значений выхода фильтра через период повторения с "забыванием". Для приёма сигнала в "окрашенном" шуме импульсная характеристика фильтра должна быть видоизменена, чтобы попутно выбелить и шум. Полюсный БИХ-фильтр второго порядка с большой добротностью может быть оправдан только если в пачке будет большое число периодов. С шумом же его согласовать невозможно. Простите за некоторую вольность изложения - писать длинные формУлы неохота.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Apr 14 2007, 13:31
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(blackfin @ Apr 14 2007, 14:20)  А с чего Вы решили, что при приближении, а затем при удалении непрерывно излучающего 30 Гц передатчика от приемника, на входе приемника будет разрыв фазы? Вот с этого: Цитата(Karl @ Apr 4 2007, 07:23)  Соотношение сигнал/шум обещают 1,5. Еще оказалось, что сигнал передатчика может быть разным. Либо непрерывный синус, либо пачки по 8 периодов синуса. Время между началом соседних импульсов 1,45 секунды... См. второй случай, его я и называю "прерывистым". Разрыв фазы 30-Гц сигнала в нём вполне возможен (между пачками укладывается нецелое число периодов). Классический Герцель от этого пойдёт вразнос. Цитата(blackfin @ Apr 14 2007, 14:20)  ...ИМХО, будет синус 30 Гц с достаточно плавной огибающей. Синус с плавной огибающей будет только в первом случае (и то, если приёмник не содержит АРУ  ). Для него сойдёт, конечно, и Герцель. Хотя, и здесь он будет не совсем оптимален. Для того, чтобы сказать определённее, условий недостаточно. Нужно знать динамику процесса сближения/удаления приёмника и передатчика, и строить процесс накопления выходных значений фильтра исходя из неё (второй уровень "оптимальности"  ).
Сообщение отредактировал Stanislav - Apr 14 2007, 14:24
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Apr 14 2007, 14:12
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(el34 @ Apr 14 2007, 14:58)  ну не понимаю чем ких с "забывание" лучше герцеля со сбросом... Простите, но, мне кажется Вы не совсем правильно поняли. "Забывание" осуществляется уже на этапе накопления выходных значений фильтра, согласованного с единичной пачкой синусоид, для того, чтобы отслеживать динамику нестационарного процесса сближения/удаления передатчика. Об остальных недостатках герцеля я уже писал выше. К ним стоит добавить плохую устойчивость полюсного БИХ-звена высокой добротности в системах с ограниченной разрядностью представления данных. КИХ-фильтр может быть и рекурсивным, кстати. Только это уже будет не Герцель. Цитата(el34 @ Apr 14 2007, 14:58)  ...тем более, что речь идет о нескольких периодах СИНУСоидального сигнала!!!! Во втором случае это не просто синус, а более сложная функция, временнЫе и спектральные характеристики которой не соответствуют синусоиде. Цитата(el34 @ Apr 14 2007, 14:58)  ...ладно если б речь шла о сложном сигнале с переворотами фазы или изменением частоты и тп... Представьте, что передатчик генерит одинаковые по форме пачки, расстояние между которыми не кратно целому числу периодов. Как быть в этом случае? При таком отношении С/Ш на входе стОит побороться даже за десятые доли дБ на выходе. Поэтому, к вопросу фильтрации нужно подходить сурьёзно.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|