Тема 5. Радиосеть управления подвижными объектами. Часть 3
План:
1.4. Построение итоговой иерархической модели узлов сети (в соответствии с концепцией OSI). В модели должны быть обязательно учтены задачи доставки как служебных, так и информационных сообщений.
2. Экспериментальная часть. Разработка и экспериментальное исследование программной модели канала передачи данных.
2.1. Разработка и описание блок-схемы алгоритма модели.
2.2. Разработка программных модулей передачи и приема сообщений канального уровня.
1.4. Построение итоговой иерархической модели узлов сети (в соответствии с концепцией OSI). В модели должны быть обязательно учтены задачи доставки как служебных, так и информационных сообщений.  
В данной работе из 7 – ми ступенчатой модели OSI рассматриваются только два уровня: канальный и физический рис.9.
 
Как видно на рисунке, отдельно был выделен уровень L3. Как токовой он не является одним из уровня модели OSI, но тем не менее он очень важен с точки зрения функционирования системы(это прежде всего касается радиоизмерений). 
Рассмотрим более подробно модель OSI на примере взаимодействия термина Т1 и ТД (рис.10).
   
Канальный уровень делится на 2 подуровня:  
1.      RLC – уровень, отвечающий за взаимодействие с уровнем L3.  
2.      MAC – службы, отвечающие за сообщения канального уровня. Он оформляет пакеты в кадры в соответствующем формате. Пакеты как трафика, так и служебных сообщений.  
Пунктирными стрелками показано косвенное взаимодействие уровней. Они не могут взаимодействовать на прямую, как например уровень L1,но тем не менее пройдя все подуровни их взаимодействие возможно.  
RLC уровень может взаимодействовать с уровнем L1,минуя подуровень MAC, например при проведении радиоизмерений (когда необходимо в соответствии со сценарием повысить уровень мощности ТД).
 
2. Экспериментальная часть. Разработка и экспериментальное исследование программной модели канала передачи данных.
2.1. Разработка и описание блок-схемы алгоритма модели.
  
Рис.11 Блок-схема модели.
На рис.11 представлена блок - схема,представляющая алгоритм отправки сообщения от ТД, до терминала.ТД либо получает сообщение от оператора,либо сама генерирует служебное сообщение(ответвление в начале схемы).Далее происходит чтение сообщения(для проверки работы используется файл txt с бинарной последовательностью). После прочтения собирается пакет и передается.
На приемной стороне происходит демодуляция,декодирование и проверка на наличие ошибок.В случае наличия ошибок происходит повторный запрос ошибочно принятого пакета путем формирования пакета по той же самой блок схеме. Дальше определятеся какой тип у сообщения и происходит разветвление:
1. Если информационное сообщение,то пакеты сохраняются в буфере,а по окончанию записи происходит выполнение команды и отправляется отчет.
2. Если служебное сообщение,то оно адресуется на уровень L3, где решается что делать дальше. Знак двух стрелок означает, что на уровне L3 принято решение отправиться ответное сообщение,которое формируется по той же блок схеме.

2.2. Разработка программных модулей передачи и приема сообщений канального уровня.
При разработки программных модулей необходимо передать файл, состоящий из битов,которые отображают какую либо команду.Для этого необходимо:
  1. Считать сообщение из файла.
  2. Разбить его на пакеты определенной длинны.
  3. Передать на Т.
Пакеты, подготовленные к передаче, имеют иерархическую структуру, состоящую из физического, канального уровней и уровня управления. 
 
Процесс передачи сообщения:
Программа начинает работу с того, что находит заданный файл
Выбор файла для передачи:

set.FileName = 'binary.txt';

Считывает из него 6 символов

Длина однократно считываемого текстового сообщения:

set.Str_size = 6;

Добавление CRC-кода
Параметры CRC -12

set.poly=[1 1 0 0 0 0 0 0 0 1 1 1 1];

Наложение шума на сигнал

noise_sgn = awgn(IQ_signal,PwSignal);

Формирование пакета дополняющие нулевыми битами для обеспечения четности, необходимой нам при типа модуляции BPSK.

code_word = [0  code_word]';

Модуляция BPSK и передача битовой последовательности в канал с заданным отношением сигнал-шум.

    Модуляция


   h = modem.pskmod(st.mPos);

   h - модем PSK с позиционностью mPos

   Требуется настроить остальные его параметры:

   Параметры модуляции

   h.inputtype = 'bit';

   h.SymbolOrder = 'gray';

   h.PhaseOffset = 0;

   собственно модуляция

   IQ_signal = modulate(h, code_word);

На приемной стороне выполняется следующая последовательность действий:

Демодуляция сообщения:

h = modem.pskdemod(st.mPos);

h.SymbolOrder = 'gray';

h.PhaseOffset = 0;

h.OutputType = 'bit';

Собственно демодуляция

 s = demodulate(h,noise_sgn);

Декодирование:

Помехоустойчивое декодирование

received_mes_L1 = decode(s(4:st.n+1),st.n,st.k,'bch/binary');

декодирование L2-сообщения

 

Проверка подлинности CRC:


 Подготовка к проверке CRC

[q r]=deconv(received_mes_L1,st.poly);

проверка остатка

   r=mod(abs(r),2);

   if r == zeros(1,length(received_mes_L1))'

        detect=0;ошибок нет

   else

        errs = errs + 1;

        detect=1; обнаружены ошибки

   end;


Принятое сообщение:


Собственно принятое сообщение

received_mes_L2 = received_mes_L1(4:st.length_msg_Lev2);

Вывод файла на экран:

fprintf('%s', binary);



 
Возьмем произвольную последовательность 0 и 1:
1000110100001101100001001001101110111001110010111001101110011001010111000010111001111011101110100100100111011011110011100100001000111001101110111010111101101111000001110110011101000000011010010101100101011101110111000111110010011101011000010000011100001111100111111100011110011111111110010000011100010001000001110000111110011111100001110110111101110111010010010000011101100111000111110101111100101001011000000110100001010110010001110001111110000111000001110101111101110001000001110110011111011110000111001010010000011110001001000001110000111100101111100001110010111100011111000001110110011101000001011000000110100001010110010101110111011100011111001001110000000100000111010111111001111110111001000001110110011101110111010111110110111101000111010010010000011101110111001111110000011110000111111111110101100001101000010101100010111100101001000001110001011110001111001011111011111100000111100011110110111101110001000001110000111101011111001011000011110100011101011111100011111111100100

ОСШ=30
 
Рис.12 BPSK при ОСШ=30дБ
 
Принятое сообщение:
1000110100001101100001001001101110111001110010111001101110011001010111000010111001111011101110100100100111011011110011100100001000111001101110111010111101101111000001110110011101000000011010010101100101011101110111000111110010011101011000010000011100001111100111111100011110011111111110010000011100010001000001110000111110011111100001110110111101110111010010010000011101100111000111110101111100101001011000000110100001010110010001110001111110000111000001110101111101110001000001110110011111011110000111001010010000011110001001000001110000111100101111100001110010111100011111000001110110011101000001011000000110100001010110010101110111011100011111001001110000000100000111010111111001111110111001000001110110011101110111010111110110111101000111010010010000011101110111001111110000011110000111111111110101100001101000010101100010111100101001000001110001011110001111001011111011111100000111100011110110111101110001000001110000111101011111001011000011110100011101011111100011111111100100

Тоже самое собщение,но отношение сигнал шум = 10 дБ

Рис.13 BPSK при ОСШ=10дБ 
Принятое сообщение:
1000110100001101100001001001101110111001110010111001101110011001010111000010111001111011101110100100100111011011110011100100001000111001101110111010111101101111000001110110011101000000011010010101100101011101110111000111110010011101011000010000011100001111100111111100011110011111111110010000011100010001000001110000111110011111100001110110111101110111010010010000011101100111000111110101111100101001011000000110100001010110010001110001111110000111000001110101111101110001000001110110011111011110000111001010010000011110001001000001110000111100101111100001110010111100011111000001110110011101000001011000000110100001010110010101110111011100011111001001110000000100000111010111111001111110111001000001110110011101110111010111110110111101000111010010010000011101110111001111110000011110000111111111110101100001101000010101100010111100101001000001110001011110001111001011111011111100000111100011110110111101110001000001110000111101011111001011000011110100011101011111100011111111100100
 
Сообщение принято без искажений, следовательно возможно восстановление сообщение при ОСШ = 10дБ.
 
Список литературы:
1.http://omoled.ru/publications/view/579 Тема 2. Доставка сообщений в структурированной радиосети. Часть 3
2. Лабораторная работа “Исследование принципов организации канала передачи”
3.  Бакке А.В.   «Лекции по курсу ССПО».
4. Бакке А.В.   «Лекции по курсу СТССПО».