реклама на сайте
подробности

 
 
> Декодирование ШМ-ПЧ сигнала, в условиях шумов и при неточно известной информационной скорости
Dmitro25
сообщение Aug 2 2012, 06:41
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 60
Регистрация: 4-04-07
Пользователь №: 26 770



Здравствуйте.
Встала тут задача демодуляции ШМ-ПЧ сигнала (точнее, ШМ2-ПЧ сигнала), вот такого:

Сигнал с выхода приёмника имеется только квантованный (т.е. значения только "0" и "1"). В присутствии шумов в сигнале появляются "просечки" из "0" в "1" и из "1" в "0", меняется ширина импульсов.
Самое неприятное, что частота (т.е. информационная скорость) передатчика может варьироваться плюс/минус 20% от номинальной, а также то, что в сигнале нет ни преамбулы, ни слова синхронизации. Длина одной посылки - 48 бит.
Информационная скорость, естественно, может отличаться для разных посылок, а не внутри одной посылки.

Можете ли подсказать, как наиболее оптимально декодировать такой сигнал или где можно прочитать про это?
Сейчас просто "тупо" измеряю ширину импульса, когда сигнал = "1", при этом отфильтровываю слишком короткие просечки в "0" и в "1". Если ширина импульса укладывается с определённым допуском в диапазон коротких импульсов - считаю, что принят "0", если длинных - "1".
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Dmitro25
сообщение Aug 3 2012, 06:23
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 60
Регистрация: 4-04-07
Пользователь №: 26 770



litv
Информационная скорость примерно 600 Бод. Допуск примерно от 450 до 750 Бод. С частотой дискретизации сложнее: я планирую сделать декодирование на микроконтроллере общего назначения. Посмотрев реальный сигнал, понял, что можно просто использовать прерывания по фронтам для запуска отдельных частей алгоритма. Если считать по частоте счёта таймера/счётчика, который будет использоваться для измерения длительности положительных/отрицательных импульсов, получается величина частоты дискретизации примерно 1,4МSPS.

Тут попробовал модифицировать свой алгоритм следующим образом: сигнал сначала пропускается через некоторое подобие ФНЧ (на входе и выходе которого квантованный по уровню сигнал) - чтобы удалить просечки из сигнала. Затем измеряется длительность импульса логической "1" и длительность следующего за ним логического "0". Длительности сравниваются: если "1" длиннее - считаем, что приняли информационный символ "1"; если "0" длиннее - приняли символ "0". Первые пробы на записанном ранее сигнале показывают более высокую вероятность приёма посылки, чем алгоритм, описанный в моём первом посте.
Наверное, стоит ещё подумать над тем, чтобы делать предсказание относительно информационной скорости и в зависимости от него изменять постоянную времени ФНЧ...
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 20:00
Рейтинг@Mail.ru


Страница сгенерированна за 0.01373 секунд с 7
ELECTRONIX ©2004-2016