Оперативные блокировки на базе КП «Исеть»

Для реализации оперативных блокировок в КП «Исеть» на шину CAN устанавливаются модернизированные блоки ТУ430б со специальной прошивкой.

Данные функциональные блоки прослушивают шину CAN и отфильтровывают информацию по состоянию телесигналов на всех блоках ТС430, установленных в КП. По записанной в память блока логике (логика записывается специально разработанным языком, позволяющим наглядно описывать любые блок-схемы) производится анализ текущего состояния телесигналов и производится управление состоянием выходных реле. В случае разрешения на управление контакт реле замыкается, на электромагнитный замок аппарата поступает напряжение и замок отпирается.

Общее количество блоков ТУ430 (реализующих функции телеуправления и блокировок) в одном КП не может превышать 8, при этом количество выходных реле одного блока – 32. Характеристики выходных реле идентичны реле ТУ. Максимальное количество входных ТС – 256.
В случае нехватки входных или выходных сигналов оперативные блокировки размещаются в нескольких независимых КП.

Логика блокировок записывается специально разработанным языком, позволяющим наглядно описывать логические блок-схемы.
Для сложных блок-схем промежуточные результаты записываются во внутренние логические переменные (максимальное количество – 16).
Одна строка языка описывает один логический элемент. Логические элементы могут быть двух типов: И (AND) и ИЛИ (OR).

Для удобства написания логики и анализа состояний аппаратов разработаны два независимых приложения: наладочное (для ввода информации о блокировках) и диспетчерское (для просмотра логических выходных сигналов). В данном документе далее описывается порядок использования приложений.

Быстрый переход

Наладочное приложение (blockconf.exe)

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

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

Для работы с программой требуется IBM PC-совместимый компьютер со свободной оперативной памятью не менее 16 мегабайт и с установленной операционной системой семейства Windows NT.

Для связи программы с аппаратурой КП "Исеть" или с сервером телемеханики компьютер должен быть подключен к сети Ethernet или к тем же сегментам локальной сети, где расположены объекты для связи, или к любой сети, имеющей выход в Интернет. Также для корректной связи на компьютере не должно быть запущено задач, использующих UDP-порты 971 и 972. Для автономной работы приложения подключение к сети не требуется.

Рисунок 1 - структура наладочного приложения

Рисунок 1 - структура наладочного приложения

Структура приложения

Выбор выходного реле

В приложении реализована двухуровневая система выбора реле: сначала выбирается подгруппа реле (номера реле от 1 до 16 и от 17 до 32 соответственно), затем - номер конкретной блокировки.

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

Информационный заголовок

Здесь отображается название блокировки, текущее дискретное состояние (включен/отключен) описываемого коммутационного аппарата (КА), а также допустимость его управления. При этом автоматически задаётся операция коммутации: включение или отключение аппарата, в зависимости от текущего состояния.

В случае, если коммутация аппарата запрещена, программа пытается определить причину этого запрета. Если при запрете дополнительно указан знак звёздочки (*), то при наведении на строку управления открывается всплывающая подсказка, содержащая информацию о возможных причинах запрета на управление, а именно номера телесигналов (а также их наименования, в случае если они были предварительно загружены с сервера телемеханики), после изменения которых коммутация будет разрешена. Пример указан на рисунке 2.

Рисунок 2 - анализ запрета коммутации
Рисунок 2 - анализ запрета коммутации

Кроме этого, если какие-то принятые с сервера данные ТС не являются достоверными: как аппаратно (т.е. при какой-то неисправности), так и в случае, если информация о недостоверности была выставлена вручную диспетчером, то соответствующее сообщение отображается по центру информационного заголовка. При наведении на текст сообщения появляется всплывающая подсказка, которая поможет определить недостоверные сигналы. Если недостоверность является аппаратной, то управление КА будет запрещено. Пример – рисунок 3.

Рисунок 3 - аппаратная недостоверность
Рисунок 3 - аппаратная недостоверность

Описательная часть

В описательной части программы присутствуют три изменяемых поля: наименование аппарата, ТС состояния и текст логики.

Настройки

Подсветка текста
При включенной опции переменные в тексте логики выделяются цветом в соответствии со своим значением: зеленый цвет соответствует единице, красный – нулю.
Показывать данные ТС
Внизу окна выводятся номера и значения задействованных в логике телесигналов. Кроме номера сигнала и его значения, есть возможность просмотреть его наименование, если оно было загружено с сервера. Двойной щелчок по номеру ТС откроет соответствующую всплывающую подсказку, как показано на рисунке 4.

Рисунок 4 - данные телесигналов
Рисунок 4 - данные телесигналов

Разрешить изменение ТС
При включенной опции можно изменять значения телесигналов прямо в окне приложения.
Применяются два способа: 1) двойной щелчок по колонке значения сигнала в таблице ТС. Аналогично можно поменять значения сигнала состояния КА. 2) выбор колонки значения и ввод нового значения с клавиатуры (0 или 1).
Если сигнал является двухпозиционным, то его парный ТС изменен при этом не будет, это необходимо сделать вручную (кроме случая, когда ТС загружаются с сервера, тогда меняются оба значения).
Значения ТС, изменяемые в окне приложения, будут меняться только локально для данного файла конфигурации блока. Даже если установлена связь с сервером телемеханики, новые значения не будут записаны.
При изменениии значения сигнала автоматически пересчитывается логика всех реле.
Показывать значения M
По центру окна выводятся значения внутренних переменных, задействованных в текущей логике.
Сохранять во врем. файлы
При включенной опции каждые 2 минуты вся текущая конфигурация блока будет записана во временный файл. Файлы сохраняются в папке Temp, до 15 различных файлов, которые затем перезаписываются. Таким образом, сохраняется до получаса работы с конфигурацией.
Сохранять ТС в файл конф.
При сохранении конфигурации в заданный файл также будут записываться текущие значения телесигналов, для возможного последующего использования. Записанные ТС будут использоваться только в наладочном приложение; в диспетчерском их значения игнорируются.
Обратите внимание, после отладки конфигурации перед окончательной записью в файл для использования в блоке ТУ рекомендуется отменить данную опцию для уменьшения размера файла.
Принимать ТС с КП
При включенной опции приложение пытается установить и поддерживать связь с КП «Исеть», принимая при этом значения телесигналов. Время опроса – до двух секунд. При загрузке данных будут учитываться флаги инверсии в списке телесигналов.
Связь с сервером ТМ
При включенной опции приложение пытается установить и поддерживать связь с сервером телемеханики ОИК Диспетчер.
Имя сервера вводится пользователем вручную, в формате "Алиас\шлюз". Если сервер установлен на локальной машине, то вместо алиаса ставится точка, например: .\TMS .
В случае успешного соединения будут открыты дополнительные опции: номер канала, номер контролируемого пункта, а также возможность получения значений и наименований телесигналов. Значения при включенной опции будут приниматься постоянно, срок опроса – две секунды. Наименования же будут загружены единовременно. При необходимости перезагрузить их, следует снять флажок с опции, а затем установить его заново.
Ввиду особенностей хранения двухпозиционных сигналов на сервере, значимым является только первый бит. Поэтому при загрузке ТС с сервера загружаться будет только первый бит, а второй в программе выставляется автоматически противоположный первому. Обрыв и неисправность при этом обрабатываются через аппаратную недостоверность.

Управление

Пересчитать логику
Полностью пересчитывается логика всех блокировок.
Шаблоны
Открывается окно шаблонов для быстрого добавления стандартной логики. Ниже приведено подробное описание использования шаблонов.
Список ТС
Открывается окно с перечислением телесигналов, их наименований (если они были предварительно загружены с сервера), значений, а также флагов инверсии и двухпозиционности.
Флаг инверсии работает следующим образом. По умолчанию считается, что принимаемое с КП значение 1 означает включенное состояние аппарата, 0 - отключенное (для двухпозиционного сигнала значащим является первый бит, и он подчиняется аналогичной логике: 1 - вкл, 0 - откл). Если по какой-то причине значению 1 соответствует отключенный аппарат, тогда нужно установить флаг инверсии. Этот флаг учитывается как в приложении при отображении информации о ТС в активном окне и при расчете логики, так и в блоке телеуправления ТУ430. Обратите внимание, что инверсия игнорируется при загрузке данных с сервера, т.к. сервер должен самостоятельно учитывать инвертированные значения. Таким образом флаг инверсии используется только при автономном задании ТС в приложении или при загрузке данных с КП (в том числе и для блока ТУ430).
Флаг двухпозиционности служит для выделения двухпозиционных сигналов, ставить его нужно только для первого бита. Обратите внимание, что в случае необходимости инвертирования двухпозиционного сигнала, флаг инверсии также следует ставить только для первого бита, второй будет инвертирован при отображении автоматически.
Флаги ставятся/снимаются с помощью двойного щелчка мыши по соответстующей ячейке.
С помощью переключателя внизу окна можно выбрать отображение либо списка телесигналов текущей блокировки, либо всех ТС КП - при этом задействованные в данной блокировке сигналы выделяются полужирным шрифтом.

Рисунок 5 - список телесигналов
Рисунок 5 - список телесигналов

Просмотреть файл
Открывается окно с текстом конфигурации для просмотра и возможного редактирования. После ручного редактирования, обязательно стоит проверить изменённые блокировки в самом приложении, во избежание ошибочных ситуаций.
Загрузить из файла
Загрузка файла конфигурации. Допустимые расширения: .blk и .tmp (для временных файлов).

Обратите внимание, что загружается по умолчанию только тексты логики блокировок, данные ТС остаются без изменений (кроме случая, когда в новом файле сохранены свои телесигналы). Кроме этого, будут обнулены наименования ТС, которые при необходимости следует загрузить с сервера заново.
Сохранить в файл
Допустимое расширение файла - .blk.
Обратите внимание, что название окончательного файла конфигурации для записи в блок и передачи диспетчеру должно соответствовать следующему стандарту:
cfg_<канал>_<КП>_<номер блока ТУ>.blk

Например: cfg_0_2_3.blk – конфигурация для блока ТУ номер 3, который находится в контролируемом пункте номер 2. Канал при этом 0.
Обнулить блок
Полностью обнуляются тексты логик всех блокировок текущего файла конфигурации. Значения ТС при этом не обнуляются.

Шаблоны

Рисунок 6 - шаблоны
Рисунок 6 - шаблоны

Порядок использования:

  1. Вводится номер блокировки (по умолчанию - номер активной блокировки);
  2. Вводится наименование;
  3. Выбирается тип шаблонной блокировки;
  4. Вводятся переменные ТС, соответствующие указанным наименованиям. Важно корректно указывать переменные состояния (аналогично уже приведенному выше описанию), т.е. если требуется ввести сигнал типа «включен», то в поле ввода указывается такая переменная сигнала, чтобы её значение «1» соответствовало включенному состоянию аппарата. При необходимости используются инверсия.
  5. "Загрузить шаблон"
  6. Вручную проверяются тексты логик включения и отключения, ТС состояния аппарата. При необходимости вносятся изменения.

Обратите внимание, что присутствует возможность менять шаблоны и добавлять свои. Для этого необходимо вручную открыть файл templates.txt, расположенный в корневой папке программы, и изменить его. Правила описания шаблонов приведены в начале этого файла.

Диспетчерское приложение (blockdisp.exe)

Предназначено для просмотра логических выходных сигналов блоков: как объекта в целом, так и отдельных коммутационных аппаратов.

Для работы с программой требуется IBM PC-совместимый компьютер со свободной оперативной памятью не менее 16 мегабайт и с установленной операционной системой семейства Windows NT.

Для корректной работы программы требуется установка связи с сервером телемеханики, компьютер должен быть подключен к сети Ethernet либо к тем же сегментам локальной сети, где расположен сервер, либо к любой сети, имеющей выход в Интернет. Также для корректной связи на компьютере не должно быть запущено задач, использующих UDP-порты 971 и 972.

Диспетчерское приложение может быть запущено как на рабочей станции диспетчера, так и на отдельном компьютере. Наличие программы и файлов логики позволяет анализировать состояния блокировок с любого удаленного АРМ, которое имеет доступ к данным телеметрии.

Есть возможность работы в двух различных режимах, которые описаны далее.

Просмотр логических сигналов заданного аппарата

На входе приложения задаётся параметр сигнала состояния в следующем формате:
#TS<канал>/<КП>/<ТС>
где ТС – номер телесигнала, отвечающий за состояние требуемого КА.

Например, для объекта 11, канала 2, КП 1: #TS2/1/11

В случае если отсутствует связь с сервером, или аппарат с заданным ТС не может быть найден, будут отображены логические сигналы всех блокировок. Обратите внимание, что поиск аппарата будет выполняться среди корректных файлов конфигурации (с наименованием и расширением, соответствующими формату cfg_<канал>_<кп>_<номер блока ТУ>.blk , который был подробно описан выше в описании наладочного приложения) либо в рабочей папке приложения, либо в каталоге, заданном аргументом при запуске.

Рисунок 7 - логические сигналы аппарата
Рисунок 7 - логические сигналы аппарата

Просмотр логических сигналов всех аппаратов

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

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

Рисунок 8 - логические сигналы аппаратов
Рисунок 8 - логические сигналы аппаратов

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

Настройки приложения

Настройки хранятся в виде текстового файла settings.ini, редактирование осуществляется вручную. Перечень опций:

Connect
Соединяться ли при запуске с сервером телемеханики. Единице соответствует соединение, нулю - запрет на соединение. Запрет соединения следует использовать только при каких-то проверочных работах, т.к. без приема реальных телесигналов проверка коммутаций бесполезна. Все непринятые телесигналы по умолчанию выставляются равными нулю.
Server_name
Имя сервера для соединения, в формате Алиас\Шлюз. Если сервер установлен локально, то вместо алиаса используется символ точки, например для соединения со шлюзом TMS: .\TMS .
User
Имя пользователя для отображения в лог-файлах сервера.

Использование аргументов при запуске приложения

При запуске разрешается использовать два опциональных аргумента:

Если требуется указать одновременно и каталог с конфигурациями, и ТС какого-то аппарата, то каталог обязательно указывается первым аргументом.

Примеры использования аргументов:

Текст запуска приложенияРезультат
blockdisp.exeОтображение блокировок всех файлов конфигурации в рабочей папке приложения
blockdisp.exe ПобедаОтображение блокировок всех файлов конфигурации в каталоге «Победа», расположенном в рабочей папке
blockdisp.exe ../../1Отображение блокировок всех файлов конфигурации в каталоге «1», расположенном на два уровня ниже рабочей папки
blockdisp.exe #TS0/1/49Отображение логических сигналов аппарата, описываемого ТС 49, канала 0, КП 1. Поиск идет в файлах конфигурации в рабочей папке
blockdisp.exe Победа #TS0/1/49Отображение логических сигналов аппарата, описываемого ТС 49, канала 0, КП 1. Поиск идет в файлах конфигурации в каталоге «Победа», расположенном в рабочей папке

Приложение А. Примеры описания блок-схем

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

Пример №1

Рисунок А.1 – совмещенная логика управления КА
Рисунок А.1 – совмещенная логика управления КА

Переменная состояния Логика включения Логика отключения
D50 M2=AND(S173,S204)
M3=OR(~D13,M2)
M4=AND(~D7,M3)
V13=AND(M4,~D50,D31)
M2=AND(S173,S204)
V13=AND(~S29,D50,M2)

Пример №2

Рисунок А.2 – совмещенная логика управления КА
Рисунок А.2 – совмещенная логика управления КА

Переменная состояния Логика включения Логика отключения
~S7 M1=AND(S1)
M2=OR(S2,D3)
V1=AND(M1,M2,S7)
M1=AND(S1)
M2=~AND(S5,S6)
V1=AND(M1,M2,~S7)

Пример №3

Рисунок А.3 – Логика включения КА Линейный Разъединитель
Рисунок А.3 – Логика включения КА Линейный Разъединитель

Рисунок А.4 – Логика отключения КА Линейный Разъединитель
Рисунок А.4 – Логика отключения КА Линейный Разъединитель

Переменная состояния Логика включения Логика отключения
D11 M1=AND(S1,S2)
V31=AND(M1,~D3,~D5,~D7,~D9,~D11)
M1=AND(S1,S2)
V31=AND(M1,~D9,D11)

Пример №4

Рисунок А.5 – Логика включения КА Заземляющий Нож со стороны Воздушной Линии на Линейном Разъединителе
Рисунок А.5 – Логика включения КА Заземляющий Нож со стороны Воздушной Линии на Линейном Разъединителе

Рисунок А.6 – Логика отключения КА Заземляющий Нож со стороны Воздушной Линии на Линейном Разъединителе
Рисунок А.6 – Логика отключения КА Заземляющий Нож со стороны Воздушной Линии на Линейном Разъединителе

Переменная состояния Логика включения Логика отключения
D61 M1=AND(S117,S118)
V32=AND(M1,~D54,~D61)
M1=AND(S117,S118)
V32=AND(M1,D61)

Быстрый переход