1.7. Построение результирующих иерархических моделей терминала и выделенных узлов сети (в соответствии с концепцией OSI) с отражением путей доставки служебных, так и информационных сообщений.

    Рассматриваемая радиосистема управления БПЛА  довольно простая и для ее реализации необходимо всего 3 уровня: физический, канальный и уровень принятия решений. 

   Рисунок 1 - Иерархическая модель системы.

 Уровень принятия решений (L3) так называемый мозг системы. На этом уровне закладываются сценарии взаимодействия терминала с точкой доступа, анализируются принятые сообщения, выполняются команды, принимаются решения, такие как: повышение уровня мощности и  решение довести до пользователя информацию об ошибочно принятых или не принятых вовсе командах. 

    Физический и канальный уровни выполняют транспортные функции, доводя до терминала команды уровня L3 точки доступа и передавая в обратном порядке пакет телеметрии с уровня L3 терминала. 

    Канальный уровень отвечает за формирование пакетов стандартного вида, адресную доставку сообщений и контроль правильности приема. Здесь производится управление доступом к сети, обнаруживаются ошибки передачи. Он представляет собой два подуровня: MAC-служба, отвечающая за организацию сообщений канального уровня и САС-служба, являющаяся временным указателем. Таким образом получается, что на L2 уровне формируются пакеты МАС, которые передаются по физическому каналу только тогда, когда приходит время, а за это как раз отвечает СAС-служба, т.е. она является неким инструментом, отслеживающим временные метки и синхронизирующим L2 уровень (когда и какое сообщение нужно передавать на ФУ). При приеме сообщения данные с ФУ поступают на САС-подуровень, где происходит там называемая буферизация фрагментов сообщения, после заполнения буфера (например, накоплено 9996 пакетов видео) сообщение передается на МАС-подуровень, на котором происходит выделение, расчет и сравнение CRC данных. В отличие от сообщений управления, служебные сообщения не буферизируются, они сразу передаются на L3 уровень.

    Физический уровень – это самый нижний уровень системы, который отвечает за непосредственный передачу/прием сигнала по радиоканалу.

2. Экспериментальная частьРазработка и экспериментальное исследование программной модели канала передачи данных.

    2.1. Разработка и описание блок-схемы алгоритма модели.


    Основное взаимодействие для непосредственного обмена информацией  в разрабатываемой системе осуществляется по каналу ТСН. Здесь от ТД к терминалу передаются команды управления, а от Т к ТД вся необходимая телеметрия. Так же главным каналом передачи данных является канал DTCH, по которому осуществляется преимущественно трансляция видеотрафика, но структура передачи канала DTCH довольна проста, поэтому более подробно рассмотрим канал ТСН.


    Рассмотрим алгоритм передающей части ТД (рисунок 3):



Рисунок 2. Блок-схема передающей части ТД.


    После проведения процедуры регистрации ТД осуществляет передачу команд управления видеокамерой и передачу сообщений сигнализации (сообщение о смене профиля функционирования системы или сообщение  об изменении мощности передачи терминала) по каналу ТСH. На канальном уровне сообщение этого канала состоит из полей:

DATA, в этом поле содержится код выполняемой команды управления, размерностью 166 битов;

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

CRC, размерность поля – 16 бит.

На физическом уровне это сообщение подвергается кодированию, модуляции и формированию OFDM символов и преамбулы.

   Для команд управления видеокамерой и для сообщений сигнализации требуется гарантированная доставка. Для этого в системе используется ARQ с возвратом. ТД перед началом очередной передачи ожидает подтверждения об успешном приеме предыдущей. Если передаваемое сообщение принято с ошибкой, то Т передает отрицательное подтверждение приемаТД повторяет передачу ошибочно принятого сообщения и только после этого передает следующий по очередности сообщение (рисунок 4).


Рисунок 3. Сценарий передачи данных.


2.2. Разработка программных модулей передачи и приема сообщений канального уровня.

  • Формирование CRC-16:
function F=CRC(S)

poly= [1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0];% полином для расчета контрольной суммы
    [x y]=size(poly); 
    m=[S zeros(1,y-1)];
    [q r] = deconv( m, poly); % поиск частного и остатка от деления
    r = mod(abs(r),2);
    F = r(length(S) + 1:end);
end

  • Сборка пакета ТСН L2 уровня:

%%Исходные данные 
 %Структура пакета L2
  
poly=[1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0];
LengL2 = 184; %Длина сообщения L2 уровня канала TCH
 %тип сообщения -
%[1 1] %информационное сообщение
%[1 0] %служебное сообщение
 
%Сборка пакета L2 уровня - TCH
TYPE = [1 1]; %тип передоваемого сообщения - TCH
DATA = ones(1,166); %зададим случайные данные 
%объединим поля TYPE и DATA
msg_L2_in = cat(2,TYPE,DATA);

%Расчет контрольной суммы
CR=CRC(msg_L2_in(1:184-16));

%Сборка сообщения L2 уровня
msg_L2_in = cat(2,msg_L2_in,CR);
disp('Сообщение канального уровня собрано');

Рассмотрим подробнее блок-схему приемной части терминала на канальном уровне (рисунок 5): 


Рисунок 4. Блок-схема приемной части точки доступа


  • Код программы, представляющий собой прием сообщения канала TCH  L2 уровня и проверку правильности полученного сообещния:

%Приёмник
%проверка CRC кода
crc = msg_L2_in(184-15:184); %Выделение значения расчитанной контрольной суммы
CR_1=CRC(msg_L2_in(1:184-16)); % Вызов функции расчета CRC
if crc == CR_1 
    disp('CRC равны, Сообщение принято верно');

    DATA_in = msg_L2_in(180-165:180); %выделения блока передаваемых данных
    disp(DATA_in);

else disp('Cообщение принято не верно');
end.

В ходе проделанной работы было сформировано и передано информационное сообщение канала ТСН, полностью состоящее из "1". Полученный результат и проверка правильности выполнения программы представлены в ветке форума radiolay.ru/viewtopic.php?f=71&t=408&p=2828#p2828 


Литература:

  1. Бакке А. В. "Лекции по курсу: Системы и сети связи с подвижными объектами".
  2. http://omoled.ru/publications/view/467 
  3. http://omoled.ru/publications/view/970  «Радиосистема управления беспилотным аппаратом». часть 2. Канальный уровень
  4. http://omoled.ru/publications/view/341