Цифровой 8-PSK радиомодем.
Ранее опубликованные статьи по этой теме:
На
данном этапе работы задача состояла
в следующем:
·
построение
модели сети передачи данных, реализующей
разработанный радиоинтерфейс.
Разработанный ранее интерфейс (структура пакета) выглядит, как показано на рис. 1.

Рисунок 1. Структура пакета.
Для программной реализации было необходимо подкорректировать структуру пакета (о причинах изложено ниже), и теперь она имеет следующий вид (рис. 2).
Рисунок 2. Структура пакета после коррекции.
Перейдем
к реализации с помощью программы Matlab. Начнем
с инициализации основных параметров модели: Для передачи будет выбран файл test.txt, а для
сохранения сформированного сигнала -
signal.bin. Далее зададим позиционность модуляции, параметры кодека и CRC (рис. 3)[1].

Рисунок 3.
Перейдем к собственно передающей
части модели.

Рисунок 4.
Организуем
цикл чтения данных из файла до тех пор, пока не будет достигнут конец файла и
начнем формирование пакетов. Берем 13 символов текстового сообщения и представляем их в двоичном виде. Так как каждый символ текста кодируется 16 битами, то получим последовательность в 208 нулей и единиц. Исходя из структуры пакета необходима последовательность в 223 бита, поэтому нужно дополнить ее пятнадцатью нулями, как показано на рисунке 5.

Рисунок 5.
На
физическом уровне выполним последовательно помехоустойчивое кодирование и
модуляцию. При кодировании используем заранее сформированную таблицу st.cp, иначе декодирование будет длиться в течение 23 часов, как было проверено на практике. Используем функцию циклического кодирования, вместо кода Рида-Соломона, так как функция MATLABа создает избыточную последовательность в десятичном виде. Для того чтобы осуществить пакетную синхронизацию, необходимо знать где именно начинается пакет. Для этого в начало пакета добавим Flag - последовательность нулей и единиц [1 0 1 0 1 0 1 0 1] и будем на нее ориентироваться (рис. 6)[1,2].

Рисунок 6.
Далее
имитируется прохождение сигнала через канал, т.е. накладывается шум 18 дБ, и записывается
полученный сигнал в файл.
При значении ОСШ =18 дБ в канале сигнально-кодовое
созвездие сигнала выглядит, как показано на рис. 7.[2]

Рисунок 7. Сигнально-кодовое созвездие.
Таким образом, в ходе проделанной работы был получен файл с записанным сигналом. Сигнал был кодирован с помощью циклического кода и промодулирован с помощью 8-PSK модулятора. На сигнал был наложен шум. Структура пакета была соблюдена. Процесс обработки полученного файла будет изложен в следующей статье (тут должен быть адрес статьи_часть_3).
Программную реализацию вышеизложенного в полном объеме можно посмотреть здесь.
Список использованной литературы:
1. Скляр Б. Цифровая связь. Теоретические основы и практическое применение: Пер. с англ. - М.: Издательский дом "Вильямс", 2003. - 1104 с
2. Лазарев Ю.Ф. - Начала программирования в среде MatLAB: Учебное пособие. - К.:НТУУ "КПИ", 2003. - 424 с.
Авторы статьи:
Михайлина О.В. и Лашко С.А., гр. 8110