Перейти к содержанию
    

Детектирование затухающего сигнала

Есть канал связи, что-то вроде пассивной RFID метки. "Метка" отвечает путем шунтирования колебательного контура. Т.е. принимаем ответ в виде затухающего синуса. Или не принимаем. Надо определить на фоне помех, был отклик или нет.

Частота примерно известна. Фаза тоже примерно известна. Время, когда его следует ожидать, известно точно. Сейчас применён синхронный детектор, входные отсчёты умножаются на синус с предполагаемой частотой и фазой, после ФНЧ. Оно работает, но никак не учитывается затухающий характер сигнала.

Предложите идеи, пожалуйста, как улучшить алгоритм.

Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

34 минуты назад, Абырвалг сказал:

Частота примерно известна. Фаза тоже примерно известна. 

Несущая вам должна быть известно точно. Под "примерно" можно списать нестабильность генератора. А вот по фазе вопрос. У вас какой номинал несущей и расстояние, что фазу можете заранее предсказать без синхронизации?

37 минут назад, Абырвалг сказал:

но никак не учитывается затухающий характер сигнала.

Так-то вы все верно делаете. Непонятно, что вы подразумеваете под затухающим характером? Неужели за время длительности метки ее уровень так сильно меняется от начала и до конца?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Повторите свой опыт с возбуждением ответного сигнала N раз и копите результат столько сколько вам надо для вытаскивания вашего синуса из под шумов соответствующим по длинне БПФ-фом или усреднением.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 minutes ago, Grizzly said:

Несущая вам должна быть известно точно. Под "примерно" можно списать нестабильность генератора. А вот по фазе вопрос. У вас какой номинал несущей и расстояние, что фазу можете заранее предсказать без синхронизации?

Своим генератором накачиваем контур, условно назовём, метки. После отключения генератора контур метки продолжает свободные колебания, которые и регистрируем. Метка может прекращать колебания путём шунтирования контура, таким образом и передаётся информация.

Резонансная частота контура известна примерно. Точно цифр не помню, но на частотах порядка 100 кГц разброс, кажись, порядка 1 кГц. Расстоянием можно пренебречь. Фаза колебаний по идее должна совпадать с фазой генератора, но пока дойдёт до синхронного детектора, несколько провернётся.

 

6 minutes ago, Grizzly said:

Так-то вы все верно делаете. Непонятно, что вы подразумеваете под затухающим характером? Неужели за время длительности метки ее уровень так сильно меняется от начала и до конца?

Меткой я обозвал само устройство с контуром. Колебания глохнут стремительно. Так-то всё работает, но малость не дотягиваем по дальности до конкурентов.

Проблема в помехах. Как отличить помеху от полезного сигнала? Вот я и думаю, если полезный сигнал имеет характерную затухающую огибающую, это неплохо бы использовать как дополнительный критерий. Есть мысль, например, делать два измерения, во время отклика и сразу после, когда колебания практически угасли, использовать уровень "после" как текущий уровень шума. Но это уже некие алгоритмические извраты, а возможно есть некие ЦОС методы, которые я упускаю. Какая нибудь там адаптивная фильтрация или ещё чего.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

33 minutes ago, Lmx2315 said:

Повторите свой опыт с возбуждением ответного сигнала N раз и копите результат столько сколько вам надо для вытаскивания вашего синуса из под шумов соответствующим по длинне БПФ-фом или усреднением.

Накапливать - хорошая мысля, спасибо! Правда прилетевшая однажды помеха загадит всё накопленное. Может надо запоминать все N измерений и после комбинировать между собой. Плохо, что передача ведётся манчестером, а от него толку мало в плане обнаружения ошибок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Умножать нужно и на косинус - т.е. измерять именно амплитуду без влияния фазы. И, желательно, делать измерения и на соседних частотах для оценки помех.

И повторять возбуждение несколько раз в зависимости от амплитуды принимаемого сигнала - чем он меньше - тем большая статистика требуется для его распознавания. То же самое при обнаружении высокого уровня помех.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Just now, rudy_b said:

Умножать нужно и на косинус - т.е. измерять именно амплитуду без влияния фазы. И, желательно, делать измерения и на соседних частотах для оценки помех. 

Синхронный детектор всё-же позволяет несколько ослабить помеху. Через косинус почти одна помеха и полезет. Некоторая ошибка по фазе особо ничего не меняет.

Повторные чтения, это да. Сейчас повторные чтения применяются если в манчестере ошибки, но надо буде попробовать накопление, про которое Lmx2315 писал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, Абырвалг сказал:

Накапливать - хорошая мысля, спасибо! Правда прилетевшая однажды помеха загадит всё накопленное. Может надо запоминать все N измерений и после комбинировать между собой. Плохо, что передача ведётся манчестером, а от него толку мало в плане обнаружения ошибок.

..ничего эта помеха не загадит, она будет случайна по отношению к полезному сигналу и потому в процессе усреднения будет исчезать , а полезный сигнал наоборот усиливаться. Только важный момент - таким путём можно бороться только с случайными шумами, а не с периодическими помехами которые к тому же стоят на вашей частоте.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, Абырвалг сказал:

Проблема в помехах. Как отличить помеху от полезного сигнала? Вот я и думаю, если полезный сигнал имеет характерную затухающую огибающую, это неплохо бы использовать как дополнительный критерий. Есть мысль, например, делать два измерения, во время отклика и сразу после, когда колебания практически угасли, использовать уровень "после" как текущий уровень шума. Но это уже некие алгоритмические извраты, а возможно есть некие ЦОС методы, которые я упускаю. Какая нибудь там адаптивная фильтрация или ещё чего.

Ну если затухание вашего сигнала всегда по форме одинаковое , то запишите его форму и используйте в корреляторе как эталон через свёртку с принимаемым с эфира.

Получится оптимальный фильтр, лучше чем у такого фильтра вы сигнал шум не получите. Сделайте несколько оптимальных фильтров под вариации вашего сигнала и принимайте.

з.ы.

перед подачей на набор оптимальных фильтров сигнал можно N раз повторить и усреднить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 8/21/2019 at 4:17 PM, Lmx2315 said:

Ну если затухание вашего сигнала всегда по форме одинаковое , то запишите его форму и используйте в корреляторе как эталон через свёртку с принимаемым с эфира.

Получится оптимальный фильтр, лучше чем у такого фильтра вы сигнал шум не получите. Сделайте несколько оптимальных фильтров под вариации вашего сигнала и принимайте.

з.ы.

перед подачей на набор оптимальных фильтров сигнал можно N раз повторить и усреднить.

Модуляция не позволит иметь образец сигнала. Код метки может быть произвольным.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, my504 сказал:

Модуляция не позволит иметь образец сигнала. Код метки может быть произвольным.

 

..длинна метки ограничена ведь? А если ограничена то и множество меток будет ограниченным.

Вопрос производительности при обработке.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Причем тут длина метки? Даже для 64 - битного ID создать столько образцов сигнала и по каждому считать корелляционную функцию - это безумие. 

ЗЫ. к тому же фаза может сильно меняться в зависимости от частоты контура передатчика и метки, а так же коэффициента связи. 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 минут назад, my504 сказал:

Причем тут длина метки? Даже для 64 - битного ID создать столько образцов сигнала и по каждому считать корелляционную функцию - это безумие. 

Так может автор знает какие конкретно метки он ждёт , ему может не надо всё множество ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну если обнаружение выводится в фильтрацию, тады ой... 

Аффтару виднее...))) 

Автор в курсе относительно ресурсоемкости даже одного экземпляра ВКФ для сигнала подобного представленному? 

Вы предлагаете считать скалярную ВКФ или все таки комплексную?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...