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

обработать данные с амплитудной манипуляцией

добрый день

имеется передатчик, который отправляет на частоте 29 кГц или 12 кГц некоторые данные. передача идет через антенну. передача формируется как старт-бит, 8 бит данных, стоп бит. скорость передачи 75bps. биты 0/1 формируются как амплитудная модуляция (если я правильно выражаюсь): есть генерация частоты на передатчике - передача логической 1, нет генерации частоты - передача логической 0. пауза между байтами не менее 1.5 байта.  
на приемнике я вижу эту генерацию, вижу паузы в генерации.
выборка выполняется с ацп на частоте 62.5 кГц. при окне 128 байт удалось получить определять через БПФ или алгоритм герцеля текущую рабочую частоту передатчика. так, при работе на 29кГц, на 120 отсчете БПФ видно максимальную амплитуду, что соответствует частоте 29541. близко к оригиналу, но такое получилось  дробление  в БПФ.
далее необходимо демодулировать сигнал в цифровой вид. я предполагаю делать по 84 выборки из исходного сигнала, усреднять эти 84 выборки, собирать усреднения в массив из 10 элементов. таким образом при скорости передачи 75bps и соответственно времени передачи 1 бита ~13.33ms имеем на приемнике усреднение по 84 выборкам и сбор 10 значений усреднения за 13.44ms при частоте выборок 62.5kHz. затем как то на основании min/max значение полученных с ацп "прикручивать" к этим выборкам алгоритм разбора 0/1 и упаковку это в байт. в приблизительном варианте это даже как то работает.
но закрались сомнения что это хоть и работает, но возможно есть более правильные методы разбора такого сигнала? посоветуйте что почитать, посмотреть?
и еще один вопрос. как то точно или косвенно можно ли на основании данных полученных после БПФ вычислить уровень сигнала? т.е. если передатчик находится на расстоянии 1м от приемника и на расстояние 3м от приемника это значение можно было как то получить/вычислить?

если что то сумбурно или не досказал - отвечу, замеряю, отрисую )

приложил 2 изображения: внешний вид сигнала как я его вижу при чтении с АЦП и результат БПФ с пиком в 120 отсчете.

спасибо.

 

drill-fft.png

drill-sygnal.png

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


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

Я в приемнике с квадратурным гетеродином просто для каждого отсчета вычисляю амплитуду как сумму квадратов I и Q компонент. В принципе более правильно вычислять еще и корень, но мне для декодирования модуляции прямоугольным сигналом этого не нужно. А дальше уже ФНЧ с децимацией, и потом обработка НЧ сигнала.

Да, еще для АРУ с задержкой накапливаю некоторое время все квадраты I и Q, после чего результат (мгновенную амплитуду) делю на накопленную мощность

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


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

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

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

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

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

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

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

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

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

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