Tekvel Magic
|
Класс GOOSESubscriber для мониторинга GOOSE-сообщений. Подробнее...
Открытые члены | |
def | __init__ (self, SCL scl=None, str ied_name=None, nif_id=None, str cb_ref=None, str da_ref=None, bool autostart=True, Subnetwork sn=None) |
Инициализация экземпляра GOOSESubscriber. Подробнее... | |
def | __str__ (self) |
def | get_gocb_ref (self) |
Возвращает ссылку на блоки управления передачей GOOSE на который подписывается указанный GOOSESubscriber. Подробнее... | |
def | gocbref (self) |
Возвращает ссылку на блок управления передачей GOOSE на который подписывается указанный GOOSESubscriber. Подробнее... | |
Subnetwork | sn (self) |
Возвращает связанный экземпляр Subnetwork. Подробнее... | |
def | get_ied_name (self) |
Возвращает имя устройства, отправляющего GOOSE-сообщения. Подробнее... | |
def | get_ap_name (self) |
Возвращает имя точки доступа, отправляющей GOOSE-сообщения. Подробнее... | |
def | wait_for_goose (self, int timeout=10000) |
Ждать первого появления GOOSE-сообщения. Подробнее... | |
def | wait_for_goose_change (self, int timeout=1000) |
Ждать изменения GOOSE-сообщения. Подробнее... | |
def | wait_for_signal_change (self, int timeout=5000) |
Ждать изменения сигнала в GOOSE-сообщении. Подробнее... | |
def | wait_for_signal_value (self, value, str valType="BOOLEAN", int timeout=5000) |
Ждать установки определенного значения выбранного сигнала в GOOSE-сообщении. Подробнее... | |
def | destroy (self) |
Удаляет подписчик GOOSE. Подробнее... | |
Класс GOOSESubscriber для мониторинга GOOSE-сообщений.
Класс GOOSESubscriber позволяет подписываться на GOOSE-сообщения для запуска действий на основе полученных GOOSE-сообщений. Он поддерживает выбор конкретных атрибутов данных внутри GOOSE-сообщений или мониторинг всего сообщения. Класс использует SCL-файл для определения и подключения к соответствующему IED и управляющему блоку GOOSE.
Если определенная подсеть (Subnetwork) не указана, будет создан новый экземпляр. Этот класс гарантирует, что для каждого управляющего блока GOOSE может быть настроен только один подписчик, чтобы избежать конфликтов. Настройка подписки выполняется с использованием ссылок на управляющие блоки GOOSE, которые могут быть выбраны вручную или переданы напрямую. Подключения сетевых интерфейсов также можно управлять с помощью параметра Subnetwork.
def __init__ | ( | self, | |
SCL | scl = None , |
||
str | ied_name = None , |
||
nif_id = None , |
|||
str | cb_ref = None , |
||
str | da_ref = None , |
||
bool | autostart = True , |
||
Subnetwork | sn = None |
||
) |
Инициализация экземпляра GOOSESubscriber.
Этот конструктор настраивает экземпляр GOOSESubscriber, подключая его к IED и управляющему блоку GOOSE, определенному в предоставленном SCL файле. Пользователь может либо передать конкретные параметры, либо позволить классу запросить выбор. Настройка включает выбор IED, проверку управляющих блоков GOOSE и настройку сетевых интерфейсов.
Если в SCL файле присутствуют несколько IED и параметр ied_name
не указан, пользователю будет предложено выбрать один из них. Аналогично, если не передана конкретная ссылка на управляющий блок GOOSE (cb_ref
), будет предложен список на выбор. Класс гарантирует, что будут использоваться только допустимые конфигурации, и вызывает исключения при возникновении проблем в процессе настройки.
Сетевой интерфейс может быть указан через параметр sn
, который представляет экземпляр Subnetwork, или автоматически создается новый экземпляр, если он не предоставлен.
scl | Объект SCL-файла, используемый для конфигурации. |
ied_name | Имя IED для подключения. |
xrefitem deprecated 2.
cb_ref | Ссылка на управляющий блок для GOOSE-сообщения. |
da_ref | Ссылка на конкретный атрибут данных для мониторинга в GOOSE-сообщении. |
autostart | Флаг для автоматического запуска подписчика после настройки. По умолчанию True. |
sn | Экземпляр Subnetwork для задания сетевого соединения. |
Exception | Вызывается при проблемах с конфигурацией, которые мешают успешной инициализации. |
def __str__ | ( | self | ) |
def destroy | ( | self | ) |
Удаляет подписчик GOOSE.
def get_ap_name | ( | self | ) |
Возвращает имя точки доступа, отправляющей GOOSE-сообщения.
def get_gocb_ref | ( | self | ) |
Возвращает ссылку на блоки управления передачей GOOSE на который подписывается указанный GOOSESubscriber.
def get_ied_name | ( | self | ) |
Возвращает имя устройства, отправляющего GOOSE-сообщения.
def gocbref | ( | self | ) |
Возвращает ссылку на блок управления передачей GOOSE на который подписывается указанный GOOSESubscriber.
Subnetwork sn | ( | self | ) |
Возвращает связанный экземпляр Subnetwork.
Это свойство возвращает экземпляр Subnetwork, к которому подключен GOOSESubscriber. Если Subnetwork не был предоставлен при инициализации, был создан экземпляр по умолчанию.
def wait_for_goose | ( | self, | |
int | timeout = 10000 |
||
) |
Ждать первого появления GOOSE-сообщения.
Функция позволяет задержать выполнение сценария до момента приёма подписчиком первого GOOSE-сообщения соответствующего параметрам подписки.
timeout | таймер ожидания GOOSE-сообщения в мс. Функция выбрасывает исключение если таймер превышен, а сообщение не было получено. |
def wait_for_goose_change | ( | self, | |
int | timeout = 1000 |
||
) |
Ждать изменения GOOSE-сообщения.
Функция позволяет задержать выполнение сценария до момента изменения данных в GOOSE-сообщении на которое осуществлена подписка.
timeout | таймер ожидания изменения GOOSE-сообщения в мс. Функция выбрасывает исключение если таймер превышен, а изменение данных не произошло. |
def wait_for_signal_change | ( | self, | |
int | timeout = 5000 |
||
) |
Ждать изменения сигнала в GOOSE-сообщении.
Функция позволяет задержать выполнение сценария до момента изменения данных в выбранном сигнале в GOOSE-сообщении на которое осуществлена подписка.
timeout | таймер ожидания изменения GOOSE-сообщения в мс. Функция выбрасывает исключение если таймер превышен, а изменение данных не произошло. |
def wait_for_signal_value | ( | self, | |
value, | |||
str | valType = "BOOLEAN" , |
||
int | timeout = 5000 |
||
) |
Ждать установки определенного значения выбранного сигнала в GOOSE-сообщении.
Функция позволяет задержать выполнение сценария до момента установки определенного значения атрибута данных в GOOSE-сообщении на которое осуществлена подписка.
value | Ожидаемое значение выбранного сигнала. |
valType | Тип сигнала из следующего списка допустимых значений: [‘BOOLEAN’, ‘INT8’, ‘INT16’, ‘INT32’, ‘INT64’, ‘INT8U’, ‘INT16U’, ‘INT24U’, ‘INT32U’, ‘FLOAT32’, ‘FLOAT64’, ‘VisString32’, ‘VisString64’, ‘VisString65’, ‘VisString128’, ‘VisString255’, ‘Dbpos’] |
timeout | таймер ожидания изменения GOOSE-сообщения в мс. Функция выбрасывает исключение если таймер превышен, а изменение данных не произошло. |