Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТПС-КП-Метода-2014.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
3.43 Mб
Скачать

Прикладной уровень

Рис. 47. Модель

прикладного уровня

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

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

Модель прикладного уровня передающей станции приведена на рис. 47. Процесс пользователя при запросе на выполнение функции передачи приказа выдает прикладному уровню канального сервиса через порт REQ_D следующую информацию. Код операции: отключить/включить (0/1), номер контролируемого пункта (1…8), номер объекта (1…255), номер функции (для приказа 45 или 46) и выставляет запрос на предоставление сервиса для выполнения указанной функции – сигнал REQ.

После обработки запроса (передаче канальному уровню сформированного блока ASDU и предельного количества попыток передачи кадра, а также получения от канального уровня уведомления о выполнении операции передачи кадра) прикладной уровень выставляет процессу пользователя уведомление об исполнении функции на выходной порт CON. Уведомление (квитанция) может быть как положительным, так и отрицательным).

Порт N_r служит для передачи предельного количества попыток передачи кадра, порт Е_R для извещения о готовности данных для чтения, а порт E_W о готовности прикладного уровня к приему данных от процесса пользователя. Порт D обеспечивает прием данных от процесса пользователя, а входной порт CON прием извещения (квитанции) от канального уровня. Схема модели представлена на рис. 48.

Элемент ASDU в модели формирует блок данных прикладного уровня. Выборка кода операции осуществляется селектором S_1 из данных, полученных от пользовательского процесса. Этап команды выбор или исполнение определяется счетчиком положительных уведомлений от прикладного уровня СТ2_vibor. Уведомления поступают на входной порт COM и содержат сигнал значения уведомления и его актуальности. Номер объекта OB_1-256 и контролируемого пункта KP_1-8 выбирается селекторами S_2, S_3 из данных пользовательского процесса. Селектор S_4 выбирает идентификатор блока данных, который задает номер функции пользовательского процесса. В модели рассматривается только передача приказа за два этапа (функция 46), наличие которой в данных процесса пользователя осуществляет компаратор Comp_2. Селектор S_5 выбирает сигнал запроса на обслуживание функции. Элементы E_R и E_R_1 отсчитывают временные интервалы для разрешения работы элемента ASDU. Первый из них срабатывает при получении положительного уведомления от канального уровня, а второй в начале процесса моделирования. Необходимый сигнал для инициализации работы прикладного уровня генерируется внутренним генератором G_1. Логическая схема L_1 производит проверку всех условий, необходимых для выдачи блока ASDU на выходной порт REQ_D_ (наличие запроса от пользовательского процесса S_5, готовности канального уровня принять данные Е_OUT, совпадение номера функции с ожидаемым Comp2.

Рис. 48. Схема модели прикладного уровня передающей станции

Разрешение на чтение данных уровня приложения (порт E_W) и максимальное количество попыток посылки кадра (порт N_r_) генерируется внутри прикладного уровня. Положительное уведомление для пользовательского процесса (выходной порт CON) выставляется при получении положительного уведомления от канального уровня.

Элементы H1…H6 обеспечивают согласование дискретного времени прикладного уровня с временами смежных уровней. Преобразователь типа данных V_1 обеспечивает требуемую форму представления данных для работы элементов модели.

На рис. 49 приведена модель подсистемы формирования блока ASDU. Блок ASDU состоит из 6-ти байт. Три первых байта объединяются блоком конкатенации ASDU_1 путем выбора из таблиц соответствующих строк. Следующие три байта объединяются блоком ASDU_2. При этом байт выбора объекта формируется по заданному номеру в блоке D/B путем определения группы и номера в группе. Выбор последнего байта, содержащего собственно команду управления (элемент информации), производится в зависимости от операции и номера кадра селектором S_6. Значение строк приведено под таблицей, а вычисление индекса осуществляется в элементе COD_OP. Формирование 6-байтового блока осуществляется элементом _ASDU. Элемент COD_OP вычисляет номер строки путем линейного преобразования заданного этапа операции (порт VIBOR/ISP_0/1) и характера операции (порт OTK-VKL_0/1).

Модель формирования кода номера объекта D/B приведена на рис. 50. Десятичный код номера объекта, получаемый с входного порта D_dec, обрабатывается блоком ограничение Sat, для получения значения в допустимом интервале 1-256. Код номера объекта состоит из двух частей, 4 бита для кодирования группы и 4 бита для кодирования объекта в группе. Делением на 16 определяется номер группы, а вычислением остатка номер объекта в группе.

Рис. 49. Модель подсистемы формирования блока ASDU

Вычисленные индексы используются селекторами S_1 и S_2 для выбора из таблицы двоичных кодов на четыре разряда требуемых строк, которые затем объединяются в байт путем горизонтальной конкатенации элементом A_O_ и выставляется на выходной порт D_bin.

Рис. 50. Модель формирователя кода номера объекта

П

Рис. 51. Модель прикладного уровня приемной станции

рикладной уровень вторичной станции
. Прикладной уровень получает от канального уровня блок данных ASDU и извлекает из него информацию, необходимую процессу пользователя. В рамках курсового проекта рассматриваем прием команды на включение или отключение одного из объектов контролируемого пункта, обслуживаемого данной станцией. В этом случае процессу пользователя передается номер контролируемого пункта, номер объекта, номер функции, этап команды и извещение о получении данных из кадра IND.

Для канального уровня прикладной выдает извещение (квитанцию) о приеме команды, для передачи ее первичной станции.

Модель прикладного уровня приемной станции дана на рис.51. Входные порты имеют следующие назначения:

E_INP – разрешение на прием данных от канального уровня

D_INP – данные от канального уровня

E_OUT – разрешение на выдачу данных от процесса пользователя

Выходные порты:

E_R – разрешение на чтение данных уровня приложения для процесса пользователя

E_W – разрешение на запись данных канального уровня в уровень приложения

I

Рис. 52. Схема модели прикладного уровня

приемной станции

ND – сообщение для процесса пользователя с указанием функции и ее параметров

Схема модели уровня приложения приемной станции показано на рис. 52. Блок данных ASDU, поступивший на входной порт D_INP разделяется на отдельные байты с помощью селекторов S_1…S_6. Первые 4 байта после получения разрешения на чтение данных (порт E_INP) проверяются на соответствие шаблонам. При совпадении с шаблоном соответствующий блок проверки выставляет логическую единицу. Логическая схема L1 выдает разрешение при совпадении всех проверок (идентификатора типа блока, классификатора переменной структуры, причины передачи и адреса контролируемого пункта). Элемент С дешифрирует информационный элемент (команду) и выделяет из нее биты характера операции (OTK, VKL) и биты этапа команды выбор и исполнение (Select, Exco). Байт, содержащий адрес объекта, дешифрируется элементом А_О и полученный результат (номер группы и объект в группе) совместно с дешифрованной командой выдается через элемент IND_ на выходной порт IND. Выдача производится при наличии разрешение от логической схемы L1. Разрешение на работу элементов проверки и дешифрации команды выдается внешней схемой через порт E_INP, при этом запускаются генераторы одиночного импульса в схеме G_1. Один из них (E_R) выдает сигнал на разрешение чтения данных прикладного уровня процессом пользователя (через порт E_R), другой (Reset) осуществляет сброс всех элементов проверки. Сброс элемента дешифрации команды С осуществляется позже, чем остальных элементов, что необходимо для фиксации результатов на выходном порте D_OUT элемента IND_, поскольку фиксация производится в момент снятия разрешающего сигнала на элементе IND_. Этот момент наступает при сбросе элементов проверки.

Декодирования адреса объекта осуществляется в элементе A_O путем выделения старшего и младшего полубайтов адреса и перевода их в десятичную форму.

Декодирования команды осуществляется в элементе С. Схема работы элемента дана на рис.53. Декодирование производится следующим порядком. Входной байт, поступающий через порт D_INP, сравнивается с одним из ожидаемых шаблонов в логических схемах L0…L3. При совпадении с одним из шаблонов срабатывает соответствующий триггер T0…T3, фиксируя значение принятой команды. Схемы L4…L7 дешифрируют принятую команду и выдают на выходные порты.

Рис.53. Схема выделения команды из командного байта блока ASDU