Tekvel Magic
Загрузка...
Поиск...
Не найдено
Класс RSD

Класс для работы с RSD-файлами. Подробнее...

Граф наследования:RSD:
SCL

Открытые члены

def get_full_datamodel_mms_refs (self, ied_name=None, mandatory_only=False, optional_only=False, conditional_only=False, ln_presence="*", do_presence="*", sdo_presence="*", da_presence="*", bda_presence="*")
 Возвращает полную модель данных файла SCL в виде массива MMS-ссылок. Подробнее...
 
def get_type_definition_recursive (self, element, parent_path="", mandatory_only=False, optional_only=False, conditional_only=False, do_presence="*", sdo_presence="*", da_presence="*", bda_presence="*")
 Возвращает структуру типа данных для элемента в виде путей в формате MMS ObjectReference. Подробнее...
 
- Открытые члены унаследованные от SCL
def from_artifact (cls, str artifact_id)
 Загружает содержимое SCL-документа из Артифакта. Подробнее...
 
def __init__ (self, file_path=None, edition=None, init_empty=False)
 
def detect_edition (self, raise_on_unknown=False)
 Определить редакцию SCL-документа Подробнее...
 
def to_string (self, pretty_print=True)
 Возвращает содержимое объекта SCL в виде строки. Подробнее...
 
def toString (self, pretty_print=True)
 Псевдоним для функции to_string. Подробнее...
 
def load_from_string (self, scl_str)
 Загружает SCL-документ из строки. Подробнее...
 
def load_from_artifact (self, artifact_str)
 Загружает SCL-документ из строки полученной из Артифакта. Подробнее...
 
def write_to_file (self, save_path)
 Записать содержимое SCL в файл Подробнее...
 
def get_string_snippet_by_line_num (self, line_num, neighbours=0, mark_line=False)
 Получить текстовую строку оригинального SCL по номеру строки Подробнее...
 
def validate (self, override_edition=None)
 Валидация SCL-файла Подробнее...
 
def get_ld_by_ldname (self, ldName)
 Получить элемент LDevice по ldName. Подробнее...
 
def get_ldevice_by_ldname (self, ldName)
 Псевдоним функции SCL.get_ld_by_ldname() Подробнее...
 
def get_iedName_by_ldName (self, ldName)
 Получить атрибут IED.name по заданному ldName. Подробнее...
 
def get_ldInst_by_ldName (self, ldName)
 Получить атрибут LDevice.inst по заданному ldName. Подробнее...
 
def get_ied_by_name (self, iedName, dom=None)
 Получить элемент IED по его атрибуту name. Подробнее...
 
def get_ln_element_by_ref (self, str ln_ref)
 Получить элемент LN/LN0 по ссылке LN Reference. Подробнее...
 
def add_new_type_to_templates (self, str str_element)
 Добавляет новый тип в список DataTypeTemplates. Подробнее...
 
int add_new_object_to_LnType (self, ln_path, str_element)
 Добавление нового типа объекта в существующий тип логического узла. Подробнее...
 
int add_new_node_to_any_ln (self, str ln_path, str str_element)
 Добавление объекта данных в существующий логический узел. Подробнее...
 
def get_dai_by_ref (self, object_reference)
 Получает элемент DAI по ссылке на него. Подробнее...
 
def get_doi_by_ref (self, str object_reference)
 Получает элемент DOI по ссылке на него. Подробнее...
 
def get_doType_by_doiRef (self, str object_reference)
 Возвращает элемент DOType по запросу пути (ObjectReference) к DOI. Подробнее...
 
def get_daType_by_daiRef (self, str object_reference)
 Возвращает элемент DAType по запросу пути (ObjectReference) к DAI. Подробнее...
 
str get_btype_by_dai_ref (self, str object_reference)
 
def get_attributes_with_values (self)
 Получить список атрибутов данных с установленными значениями Подробнее...
 
def get_da_val_regex_by_daiRef (self, object_reference)
 Возвращает регулярное выражение для проверки значения атрибута данных по ссылке на него. Подробнее...
 
def get_Substation_list (self)
 Получить список элементов Substation. Подробнее...
 
def get_ied_list (self, bool server_only=False, bool with_gse_only=False, bool with_smv_only=False)
 Получить список элементов IED. Подробнее...
 
def get_ied_name_list (self, bool server_only=False, bool with_gse_only=False, bool with_smv_only=False)
 Получить список имен IED. Подробнее...
 
str get_ied_name (self, int ied_num=0)
 Возвращает IED.name по номеру IED в файле. Подробнее...
 
def get_ied_access_point_list (self, str ied_name, bool with_server_only=False, allow_serverat=False)
 Возвращает список элементов AccessPoint для IED с заданным ied_name. Подробнее...
 
def get_ied_access_point_name_list (self, str ied_name, bool with_server_only=False, allow_serverat=False)
 Возвращает лист имён AccessPoint для IED с заданным ied_name. Подробнее...
 
def get_ied_access_point_server (self, str ied_name, str ap_name)
 Получить элемент Server для указанного IED и AccessPoint. Подробнее...
 
def get_ied_access_point_server_tuple (self, str ied_name, str ap_name)
 Получить имена IED и AccessPoint в виде кортежа для указанного элемента Server. Подробнее...
 
def get_connected_ap_by_access_point (self, access_point)
 Получить элемент ConnectedAP, соответствующий заданному access_point. Подробнее...
 
def get_connected_ap_subnetwork (self, connected_ap)
 Возвращает элемент SubNetwork, к которому подключена connected_ap. Подробнее...
 
def get_connected_ap_subnet (self, connected_ap)
 Псевдоним для get_connected_ap_subnetwork(). Подробнее...
 
def get_ap_with_ip_list (self)
 Получить список элементов ConnectedAP с IP-адресами. Подробнее...
 
def get_context_object (self, str ied_name=None, str ap_name=None, str ld_inst=None, str ln_name=None)
 Получить элемент etree.Element в зависимости от выбранного контекста поиска: IED, LDevice, LN (LN0). Подробнее...
 
def get_dataset_list (self, str ied_name=None, str ap_name=None, str ld_inst=None, str ln_name=None)
 Получить список элементов DataSet. Подробнее...
 
def get_dataset_names_list (self, ied_name=None, ap_name=None, ld_inst=None, ln_name=None, ref_type=ReferenceType.ObjectReference)
 Получить лист ObjectReference для элементов DataSet в заданном контексте поиска. Подробнее...
 
def get_urcb_list (self, ied_name=None, ap_name=None, ld_inst=None, ln_name=None)
 Получить лист элементов Unbuffered ReportControl blocks. Подробнее...
 
def get_brcb_list (self, ied_name=None, ap_name=None, ld_inst=None, ln_name=None)
 Получить лист элементов Buffered ReportControl blocks. Подробнее...
 
def get_rcb_list (self, ied_name=None, ap_name=None, ld_inst=None, ln_name=None)
 Получить лист элементов ReportControl. Подробнее...
 
def get_rcb_dataset (self, rcb)
 Получить элемент DataSet для заданного ReportControl. Подробнее...
 
def get_urcb_dataset (self, urcb)
 Псевдоним для get_rcb_dataset(). Подробнее...
 
def get_brcb_dataset (self, brcb)
 Псевдоним для get_rcb_dataset(). Подробнее...
 
def get_lcb_list (self, ied_name=None, ap_name=None, ld_inst=None, ln_name=None)
 Получить лист элементов LogControl. Подробнее...
 
def get_gocb_list (self, ied_name=None, ap_name=None, ld_inst=None)
 Возвращает лист элементов GSEControl. Подробнее...
 
def get_gocb_dataset (self, gocb)
 Возвращает элемент DataSet для заданного gocb. Подробнее...
 
def get_msvcb_list (self, ied_name=None, ap_name=None, ld_inst=None)
 Получить лист элементов Multicast SampledValueControl. Подробнее...
 
def get_msvcb_dataset (self, msvcb)
 Получить элемент DataSet для заданного MSVCB. Подробнее...
 
def get_cb_refs_list (self, cb_type, ied_name=None, ap_name=None, ld_inst=None, ln_name=None, ref_type=ReferenceType.ObjectReference)
 Получить список ссылок для указанного типа блока управления (CB). Подробнее...
 
def get_urcb_refs_list (self, ied_name=None, ap_name=None, ld_inst=None, ln_name=None, ref_type=ReferenceType.ObjectReference)
 Получить лист путей (ObjectReference) к ReportControl buffered="false". Подробнее...
 
def get_brcb_refs_list (self, ied_name=None, ap_name=None, ld_inst=None, ln_name=None, ref_type=ReferenceType.ObjectReference)
 Получить лист путей (ObjectReference) к ReportControl buffered="true". Подробнее...
 
def get_lcb_refs_list (self, ied_name=None, ap_name=None, ld_inst=None, ln_name=None, ref_type=ReferenceType.ObjectReference)
 Получить массив путей (ObjectReference) к LogControl. Подробнее...
 
def get_gocb_refs_list (self, ied_name=None, ap_name=None, ld_inst=None, ref_type=ReferenceType.ObjectReference)
 Получить массив путей (ObjectReference) к GSEControl. Подробнее...
 
def get_msvcb_refs_list (self, ied_name=None, ap_name=None, ld_inst=None, ref_type=ReferenceType.ObjectReference)
 Получить лист путей (ObjectReference) к Multicast SampledValueControl. Подробнее...
 
def get_dataset_by_ref (self, dataset_reference)
 Получить элемент DataSet по ссылке на него. Подробнее...
 
def get_cb_by_ref (self, cb_type, cb_reference)
 Получить элемент блока управления (CB) по его типу и ссылке. Подробнее...
 
def get_gocb_by_ref (self, cb_reference)
 Получить блок управления GSEControl по ссылке cb_reference. Подробнее...
 
def get_msvcb_by_ref (self, cb_reference)
 Получить блок управления Multicast SampledValueControl по ссылке cb_reference. Подробнее...
 
def get_ld_name_list (self, ied_name=None)
 Получить лист строк LDName. Подробнее...
 
def get_ln_element_list (self, str ied_name=None, str ld_inst=None, str ld_name=None, bool exclude_ln0=False)
 Получить список элементов LN. Подробнее...
 
def get_ln_ref_list (self, ld_name)
 Получить список ссылок на логические узлы. Подробнее...
 
def get_type_definition_recursive (self, element, parent_path="")
 Получить структуру типа данных для элемента в виде путей MMS ObjectReference. Подробнее...
 
def get_da_mms_ref_list (self, ln_ref)
 Получить список атрибутов данных в формате MMS-ссылок для заданного логического узла. Подробнее...
 
def get_full_datamodel_mms_refs (self, ied_name=None)
 Получить полную модель данных устройства в формате переменных MMS. Подробнее...
 
def get_inputs_extref_list (self)
 Получить все элементы Inputs/ExtRef. Подробнее...
 
def get_fcda_from_mmsref (self, mms_ref)
 Получить элемент FCDA по ссылке MMS. Подробнее...
 
def get_gse_for_gocb (self, gocb)
 Получить элемент GSE раздела Communications для заданного GSEControl. Подробнее...
 
def get_smv_for_mscvb (self, msvcb)
 Получить элемент SMV раздела Communications для заданного SampledValueControl. Подробнее...
 
def get_subnetwork_list (self)
 Получить список элементов SubNetwork. Подробнее...
 
def get_subnetwork_by_name (self, str name)
 Получить элемент Subnetwork по имени. Подробнее...
 
def get_subnetwork_name_list (self)
 Получить список имен SubNetwork. Подробнее...
 
def get_subnetwork_connected_ap_list (self, subnetwork_name=None, subnetwork=None)
 Получить список элементов ConnectedAP для Subnetwork. Подробнее...
 
def get_subnetwork_connected_server_list (self, subnetwork_name=None, subnetwork=None)
 Получить список подключенных серверов в Subnetwork. Подробнее...
 
def get_subnetwork_connected_server_ap_tuple_list (self, subnetwork_name=None, subnetwork=None)
 Получить список кортежей, содержащих имена IED и имена точек доступа подключенных серверов в Subnetwork. Подробнее...
 
def select_ied (self, **kwargs)
 Выбор IED на основе указанных критериев. Подробнее...
 
def append_scl (self, scl)
 Добавить файл CID в текущий SCD. Подробнее...
 
def remove_gocb (self, go_cb_ref, preserve_communications=False)
 Удалить элемент GSEControl по ссылке. Подробнее...
 
def remove_msvcb (self, msv_cb_ref, preserve_communications=False)
 Удалить элемент SampledValueControl по ссылке. Подробнее...
 
def move_gse_smv_elements (self, str iedName, str srcApName, str trgtApName)
 Перемещает элементы GSE и SMV между ConnectedAP. Подробнее...
 
def check_ldNs_defined (self)
 Проверка наличия объекта данных NamPlt.ldNs во всех LLN0. Подробнее...
 
def check_lnNs_defined (self)
 Проверка наличия объекта данных NamPlt.ldNs во всех LLN0. Подробнее...
 
def check_dataNs_defined (self)
 Проверка корректности задания dataNs. Подробнее...
 
def check_cdcNs_defined (self)
 Проверка корректности задания cdcNs. Подробнее...
 
def check_originalSclVersion_is (self, originalSclVersion)
 Проверка правильности задания атрибута originalSclVersion. Подробнее...
 
def check_originalSclRevision_is (self, originalSclRevision)
 Проверка правильности задания атрибута originalSclRevision. Подробнее...
 
def check_xmlns_is (self, xmlns)
 Проверка значения атрибута xmlns корневого элемента SCL. Подробнее...
 
def check_xsi_is (self, xsi)
 Проверка значения атрибута xmlns:xsi корневого элемента SCL. Подробнее...
 
def check_lln0_configRev_defined (self)
 Проверка наличия атрибута (DAI) configRev во всех LLN0.NamPlt. Подробнее...
 
def check_value_list_match_type (self, dai_value_reference_list)
 Проверяет соответствие значения атрибута его типу. Подробнее...
 
def validate_xml_declaration (self)
 Проверяет, содержит ли файл корректную XML декларацию в соответствии со стандартными требованиями. Подробнее...
 
def validate_utf8_encoding (self)
 Выполнить проверку кодировки, чтобы убедиться, что файл закодирован в UTF-8. Подробнее...
 
def check_datasets_consistency (self)
 Проверка всех наборов данных. Подробнее...
 
def get_fcda_by_extref (self, et_extref)
 Поиск соответствующего FCDA для ExtRef. Подробнее...
 
def check_ied_has_preconfigured_urcb (self)
 Проверка наличия предварительно сконфигурированных блоков управления передачей небуферизируемых в ICD. Подробнее...
 
def check_ied_has_preconfigured_brcb (self)
 Проверка наличия предварительно сконфигурированных блоков управления передачей буферизируемых в ICD. Подробнее...
 
def check_ied_has_preconfigured_lcb (self)
 Проверка наличия предварительно сконфигурированных блоков управления журналов событий (LogControl) в ICD. Подробнее...
 
def check_ied_has_preconfigured_gocb (self)
 Проверка наличия предварительно сконфигурированных блоков управления передачей GOOSE в ICD. Подробнее...
 
def check_ied_has_preconfigured_msvcb (self)
 Проверка наличия предварительно сконфигурированных блоков управления передачей мультикаст SV в ICD. Подробнее...
 

Статические открытые данные

string private_ns = "http://www.fsk-ees.ru/61850/2020"
 
- Статические открытые данные унаследованные от SCL
dictionary BTYPE_REGEX_DICT
 
int iterations = 0
 

Дополнительные унаследованные члены

- Открытые атрибуты унаследованные от SCL
 file_path
 
 dom
 
 namespaces
 
 default_namespace
 
 original_string
 
 edition
 

Подробное описание

Класс для работы с RSD-файлами.

Класс унаследован от общего класса SCL и используется для манипуляций с RSD-файлами. Этот класс является очень специфичным для российского национального профиля IEC 61850 и используется для описания RACK SPECIFICATION DESCRIPTION. Наследует все функции родительского класса SCL.

Методы

◆ get_full_datamodel_mms_refs()

def get_full_datamodel_mms_refs (   self,
  ied_name = None,
  mandatory_only = False,
  optional_only = False,
  conditional_only = False,
  ln_presence = "*",
  do_presence = "*",
  sdo_presence = "*",
  da_presence = "*",
  bda_presence = "*" 
)

Возвращает полную модель данных файла SCL в виде массива MMS-ссылок.

Это специфическая реализация RSD, позволяющая извлекать обязательные, условные или опциональные только сигналы, как это определено атрибутом efsk:use.

Аргументы
ied_nameОграничивает модель данных одним IED, определенным его именем (опционально, по умолчанию=None).
mandatory_onlyОграничивает модель данных только обязательными полями (применяется только к RSD-файлам). Не может быть объединен с optional_only, conditional_only (опционально, по умолчанию=False).
optional_onlyОграничивает список атрибутов только опциональными (применяется только к RSD-файлам). Не может быть объединен с mandatory_only, conditional_only (опционально, по умолчанию=False).
conditional_onlyОграничивает список атрибутов только условными (применяется только к RSD-файлам). Не может быть объединен с optional_only, mandatory_only (опционально, по умолчанию=False).
ln_presenceЕЩЕ НЕ ПОДДЕРЖИВАЕТСЯ! Ограничивает список логических узлов по условию присутствия, где доступны следующие варианты: "M" для обязательных, "O" для опциональных, "<<COND>>" определяет условную строку (опционально, по умолчанию="*").
do_presenceОграничивает список элементов DO по условию присутствия, где доступны следующие варианты: "M" для обязательных, "O" для опциональных, "<<COND>>" определяет условную строку (опционально, по умолчанию="*").
sdo_presenceОграничивает список элементов SDO по условию присутствия, где доступны следующие варианты: "M" для обязательных, "O" для опциональных, "<<COND>>" определяет условную строку (опционально, по умолчанию="*").
da_presenceОграничивает список элементов DA по условию присутствия, где доступны следующие варианты: "M" для обязательных, "O" для опциональных, "<<COND>>" определяет условную строку (опционально, по умолчанию="*").
bda_presenceОграничивает список элементов BDA по условию присутствия, где доступны следующие варианты: "M" для обязательных, "O" для опциональных, "<<COND>>" определяет условную строку (опционально, по умолчанию="*").
Исключения
ExceptionВызывается, если одновременно используются mandatory_only, optional_only и conditional_only, или если используется ln_presence.
Возвращает
Список строк MMS-ссылок для полной модели данных.
См. также
SCL.get_ld_name_list(), SCL.get_ln_ref_list(), SCL.get_ln_element_by_ref(), SCL.get_type_definition_recursive()

Переопределяет метод предка SCL.

◆ get_type_definition_recursive()

def get_type_definition_recursive (   self,
  element,
  parent_path = "",
  mandatory_only = False,
  optional_only = False,
  conditional_only = False,
  do_presence = "*",
  sdo_presence = "*",
  da_presence = "*",
  bda_presence = "*" 
)

Возвращает структуру типа данных для элемента в виде путей в формате MMS ObjectReference.

Этот метод рекурсивно строит структуру типа данных для заданного элемента и возвращает её в виде списка путей, отформатированных согласно MMS ObjectReference. Структура может быть отфильтрована по различным условиям присутствия (обязательные, опциональные, условные).

Аргументы
elementXML-элемент, для которого строится структура типа данных.
parent_pathРодительский путь, используемый для построения полного референсного пути (по умолчанию пустая строка).
mandatory_onlyЕсли True, включаются только обязательные элементы (по умолчанию False).
optional_onlyЕсли True, включаются только опциональные элементы (по умолчанию False).
conditional_onlyЕсли True, включаются только условные элементы (по умолчанию False).
do_presenceОграничивает список элементов DO по условию присутствия: "M" (обязательные), "O" (опциональные), "<<COND>>" (условные) (по умолчанию "*").
sdo_presenceОграничивает список элементов SDO по условию присутствия: "M" (обязательные), "O" (опциональные), "<<COND>>" (условные) (по умолчанию "*").
da_presenceОграничивает список элементов DA по условию присутствия: "M" (обязательные), "O" (опциональные), "<<COND>>" (условные) (по умолчанию "*").
bda_presenceОграничивает список элементов BDA по условию присутствия: "M" (обязательные), "O" (опциональные), "<<COND>>" (условные) (по умолчанию "*").
Исключения
ExceptionВызывается, если одновременно используются конфликтующие фильтры (mandatory_only, optional_only, conditional_only).
Возвращает
Список списков, где каждая подсписок содержит путь и функциональное ограничение элемента типа данных.
См. также
SCL.get_ld_name_list(), SCL.get_ln_ref_list(), SCL.get_ln_element_by_ref(), SCL.get_type_definition_recursive()

Переопределяет метод предка SCL.

Данные класса

◆ private_ns

string private_ns = "http://www.fsk-ees.ru/61850/2020"
static