Sidebar Left

Обмен по MMS: чтение, отчёты и управление

Часть 61850-8-1 отображает абстрактные услуги стандарта на MMS — протокол, работающий поверх стека ISO в TCP/IP. Именно этот обмен видит клиентская программа: через него читают значения, подписываются на отчёты и подают команды.

Соединение устанавливается на порт 102. Внутри TCP идёт слой TPKT и сессия ISO, поэтому в анализаторе трафика обмен выглядит не как простые запросы-ответы, а как вложенные пакеты — это нормально.

Ассоциация и чтение
Работа начинается с ассоциации: клиент открывает соединение, стороны согласуют параметры и, если настроено, выполняется проверка прав доступа. Затем клиент может:

  • обойти модель — запросить список логических устройств, узлов и объектов данных прямо у сервера; так проверяют, что реальное устройство совпадает с файлом описания;
  • прочитать значение — по полной ссылке вида IED1LD0/MMXU1.PhV.phsA.mag.f с указанием функциональной связи;
  • записать значение — уставку, параметр конфигурации, замещающее значение.

Опрос по одному атрибуту работает, но на реальном объекте его не применяют: обмен получается дорогим. Для регулярной передачи используют наборы данных и отчёты.

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

Набор — основа и для отчётов, и для GOOSE: передаётся не «всё подряд», а ровно тот перечень, который в него включён. Порядок элементов в наборе имеет значение: приёмная сторона разбирает пришедший блок позиционно, поэтому изменение состава набора на стороне устройства ломает разбор у клиента, даже если имена не менялись.

Отчёты: буферизуемые и небуферизуемые
Отчёт — это передача изменившихся данных по инициативе устройства. Управляется он блоком управления отчётами, и блоков два вида:

  • Небуферизуемый (URCB) — данные отправляются в момент изменения. Если клиент в это время не на связи, изменение теряется. Подходит для текущих измерений, где важно последнее значение.
  • Буферизуемый (BRCB) — устройство накапливает изменения в собственном буфере и отдаёт их клиенту после восстановления связи, с сохранением порядка. Для сигналов защиты и положений аппаратов используют только его.

Поведение задают несколько параметров:

Параметр Что делает
Триггеры (TrgOps) Что считается поводом для отчёта: изменение значения (dchg), изменение качества (qchg), обновление данных (dupd), периодическая целостность (integrity) и общий запрос (GI)
Период целостности Как часто передавать полный срез набора независимо от изменений — страховка от рассинхронизации картины
Время буферизации Сколько ждать перед отправкой, чтобы собрать несколько изменений в один отчёт вместо потока мелких
Номер и идентификатор записи Порядковый номер отчёта и метка позиции в буфере: по ним клиент понимает, что был пропуск, и с какого места продолжить
Резервирование блока Один блок управления отчётами обслуживает одного клиента. Второму клиенту нужен свой экземпляр

Самая частая ошибка на этом этапе — два клиента, настроенные на один и тот же блок: отчёты получает тот, кто успел зарезервировать блок первым, второй молча остаётся без данных.

Журналы
Кроме отчётов устройство может вести журнал — хранить изменения у себя с возможностью выборки по времени. Журнал не требует постоянно подключённого клиента и используется там, где важно восстановить историю после длительного отсутствия связи. Управляется он собственным блоком, а выборка запрашивается диапазоном времени или с позиции последней прочитанной записи.

Управление коммутационным аппаратом
Команда подаётся записью в управляющие атрибуты объекта — обычно это Pos узла CSWI. Стандарт определяет четыре модели управления, и какая из них действует, указано в самом устройстве атрибутом ctlModel:

  • Прямое с обычной безопасностью — одна операция Oper, подтверждение приходит сразу.
  • С выбором и обычной безопасностью — сначала выбор объекта, затем исполнение.
  • Прямое с расширенной безопасностью — команда сопровождается подтверждением фактического выполнения от устройства.
  • С выбором и расширенной безопасностью — выбор SBOw, исполнение Oper, подтверждение завершения; отмена — Cancel. Это штатная схема для выключателей.

В структуре команды передаются не только значение и время, но и сведения о происхождении: orIdent — кто подал команду и orCat — категория источника (оператор станции, дистанционное управление, автоматика). Эти поля попадают в журналы и позволяют потом ответить на вопрос «кто отключил».

Отдельный атрибут Test помечает команду как тестовую: устройство, работающее в обычном режиме, такую команду не выполнит. Симметрично, данные, помеченные признаком теста, не должны восприниматься клиентом как рабочие — иначе испытания на одном присоединении «оживают» на диспетчерском щите.

Типовые ошибки

Симптом Где искать
Соединение не устанавливается Закрыт порт 102; несовпадение адресов стека ISO из файла конфигурации
Чтение работает, отчёты не приходят Блок управления отчётами не включён или занят другим клиентом; не настроены триггеры
После обрыва связи часть событий потеряна Использован небуферизуемый отчёт там, где нужен буферизуемый
Клиент разбирает отчёт неправильно Изменился состав или порядок набора данных на стороне устройства
Команда отклоняется Модель управления устройства строже ожидаемой: требуется выбор перед исполнением; либо блокировка от CILO
Испытательные данные видны как рабочие Клиент игнорирует признак теста в качестве и в структуре команды

Style Selector

Primary Color

Direction