Импорт трубопровода из программ AVEVA (PDMS, E3D, MARINE)

 

В Гидросистеме предусмотрена возможность импорта геометрии трубопровода из различных программ AVEVA (PDMS, E3D, MARINE) через "открытый" формат Гидросистемы (файлы XML). Для использования данной функции необходимо подключить к PDMS/E3D/MARINE специальный дополнительный модуль (.NET plug-in), который позволяет экспортировать данные из этой программы в XML файлы для Гидросистемы.

 

Системные требования

 

AVEVA PDMS 12.1, E3D 1.1, E3D 2.1, E3D3.1, Marine 12.1

 

Установка

 

После установки Гидросистемы в директории установки программы (по умолчанию, «C:\Program Files (x86)\Truboprovod\hst») находится папка «AVEVA», содержащая вложенные папки подключаемых модулей для разных продуктов AVEVA и их версий, в которых находятся основная библиотека подключаемого модуля AVEVA-HST.dll, вспомогательные библиотеки и папка «Data» c файлом пользовательских настроек (options.json) и профилями конфигурационных файлов.

 

Подключение модуля к AVEVA PDMS/E3D/MARINE

 

1. В случае использования AVEVA PDMS/E3D/MARINE c сетевыми настройками необходимо скопировать файлы модуля соответствующей версии из директории установки Гидросистемы в директорию, доступную всем пользователям AVEVA PDMS/E3D/MARINE.

При размещении файлов модуля на сетевой папке и применении продуктов AVEVA, использующих .NET Framework до версии 4.0 потребуется сделать полностью доверенной сборку AVEVA-HST.dll. Это можно сделать при помощи утилиты политики системы безопасности доступа к коду «Caspol.exe», выполнив в командной строке «cmd.exe» команду вида:

 

*dotnet*\caspol.exe -m -ag 1.2 –url "file://\\path*" FullTrust

 

где *dotnet* – путь к используемому .NET Framework,

path – сетевой путь к размещенным библиотекам модуля.

 

например:

"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CasPol.exe" -m -ag 1.2 –url "file://\\Servername\addins\AVEVA-HST_1.3.4/*" FullTrust

 

2. Подключить модуль соответствующей версии к AVEVA PDMS/E3D/MARINE, добавив в активный DesignAddins.xml (OutfittingAddins.xml для MARINE) строчку вида:

 

 <string>*path*\ AVEVA-HST</string>,

 

где >*path* – путь к файлу AVEVA-HST.dll из набора библиотек модуля.

 

Если все сделано правильно, при запуске Design (PDMS/MARINE) или Model (E3D) в консоли отобразится информация о загрузке модуля.

В интерфейсе должна появиться новая инструментальная панель (Toolbar) в AVEVA PDMS/MARINE или вкладка на ленте с кнопкой «=>Гидросистема» в AVEVA E3D.

 

Альтернативный способ добавления панели см. ниже.

 

Настройка

 

Настройка общих параметров экспорта производится при помощи редактирования (в текстовом редакторе) конфигурационных файлов формата JSON в директории программы. Пользовательские настройки доступны для редактирования через интерфейс модуля в AVEVA PDMS/E3D/MARINE.

Конфигурационные файлы разделены на две части – общая, описывающая правила экспорта элементов и параметров модели AVEVA PDMS/E3D/MARINE в Гидросистему (зависит от настроек и способа работы в 3D системе), и личная, в которой задаются параметры, специфичные для пользователя.

Общие настройки всегда хранятся в одной директории с библиотекой подключаемого модуля.

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

Файлы конфигурации по умолчанию находятся в папке «…\data\default» относительно файла модуля:

 

 

Пользовательские настройки первоначально берутся из директории расположения модуля. Если пользователь изменит настройки через пользовательский интерфейс и нажмет кнопку сохранить, то измененные пользовательские настройки сохранятся в директории, указанной в настроечном файле evars.bat (evars.init) в переменной окружения %PDMSUSER% для AVEVA PDMS/MARINE, или %AVEVA_DESIGN_USER% для AVEVA E3D, и будут использоваться модулем на рабочем месте пользователя из этих локальных директорий.

 

Начало работы

 

Для начала работы экспорта в Гидросистему нужно нажать на кнопку инструментальной панели «=>Гидросистема». Откроется диалоговое окно модуля:

 

 

Описание диалогового окна модуля экспорта:

 

Обозначение

Описание

Показать выбранные ветви в окне 3D модели

Открытие диалогового окна настроек. Изменение пользовательских настроек, выбор профиля общих настроек.

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

Добавить в перечень экспорта выбранный в Design explorer участок и все связанные с ним перекрестными ссылками Tref и Href участки в рамках установленной области поиска.

Добавить выделенный в Design explorer BRANCH или все BRANCH выделенного PIPE

Удалить выбранный в списке выгрузки BRANCH из списка экспортируемых

Очистить список экспортируемых участков

Начать передачу трубопровода в XML-файл открытого формата программы Гидросистема

Включение отслеживания выбранных в окне модуля BRANCH в дереве Design Explorer

Переключатель определяет область поиска («ZONE», «SITE», «PIPE» или «BRANCH») присоединенных ветвей для работы кнопки

Выбор языка пользовательского интерфейса

 

Экспорт в Гидросистему

 

Выбрав PIPE, BRANCH или элемент BRANCH в дереве проекта,  необходимо добавить в перечень экспорта ветви трубопровода с помощью кнопок  (добавление текущего BRANCH или всех BRANCH текущего PIPE, а также всех связанных с ними, в рамках установленной области поиска) или (добавление BRANCH, частью которого является текущий компонент, текущего BRANCH или всех BRANCH текущего PIPE).

Для начала экспорта выбранных ветвей следует нажать кнопку .

Появится диалог сохранения файла формата XML, последующий импорт которого осуществляется средствами программы Гидросистема:

 

 

После указания пути сохранения и имени файла, следует нажать кнопку «Сохранить».

 

Перед выполнением операций экспорта необходимо проверять трубопроводы на логическую целостность. BRANCH должны быть соединены (заполнены атрибуты HREF, TREF, CREF), правильно назначены атрибут HSTU у BRANCH и LSTU у элементов трубопровода.

При выполнении экспорта необходимо в перечень экспортируемых BRANCH добавлять все присоединенные к тройникам и врезкам ветви.

 

Далее в Гидросистеме необходимо выбрать пункт меню «Файл -> Импорт…» и указать созданный файл в формате *.xml.

Если в Гидросистеме экспортированный трубопровод построился некорректно или имеет разрывы, то необходимо проверить правильность модели в AVEVA PDMS/E3D/MARINE.

Также, после импорта, в Гидросистеме рекомендуется нажать кнопку «Обновить» на "Панели параметров графики".

 

Параметры экспорта

 

Кнопка открывает диалоговое окно параметров экспорта.

 

  

 

 

 

Файлы настроек

 

Все файлы настроек имеют формат JSON и кодировку «UTF-8 (без BOM)».

Типы значений: boolean – true/false, integer – целое число, double - число с плавающей точкой, array – массив, string – строка.

PML выражения выполняются относительно текущего элемента в BRANCH. При получении атрибутов бранча текущим элементов является бранч.

Для проверки pml выражения следует выполнить его в консоли AVEVA, заключив выражение в круглые скобки и предварив оператором «q».

В выражениях допускается использовать PML1 и функции на PML2. Используя PML2 функции, следует вместо глобальной переменной «!!CE» использовать переменную «!!CEHST».

 

Дополнительные функции

 

Дополнительные функции можно использовать в выражениях pml в настроечных файлах. Функции не допускают вложенности.

 

Описание

Синтаксис

Пример

Функция возвращает позицию, находящуюся между двумя заданными позициями

Position MID1(Position р1, Position р2)

MID1(PPOS1;PPOS2)

Функция возвращает расстояние между двумя заданными точками

number  DIST1 (Position р1, Position р2)

DIST1(PPOS1;PPOS2)

Функция возвращает расстояние от прямой, построенной по двум первым точкам, до третьей точки

number  DIST1 (Position р1, Position р2, Position р3)

DIST1 (PPOS1;PPOS2;PPOS3)

Функция возвращает размер массива PARA

number  COUNTPARA1

COUNTPARA1

 

Настройка пользовательских параметров экспорта

 

Файл:

 

options.json

 

Описание:

 

В файле определяются пользовательские параметры экспорта из AVEVA PDMS/E3D/MARINE в Гидросистему. Эти параметры устанавливаются в диалоговом окне, см. выше.

 

Структура:

 

{

  <parameter>: <value>,

  ...

}

 

Параметры:

 

Имя параметра

Тип значения

Описание

ApplyFilter

bool

Если true, будут применены пользовательские условия фильтра (параметр "Filter") при сборе сети трубопровода

Profile

string

Задаёт имя профиля настроек

Axis

number

Какой оси Гидросистемы будет соответствовать ось N в AVEVA (ось Y)

0 – «Y»

1 – «X»

2 – «-Y»

3 – «-X»

Filter

string array

Задаёт список выражений PML, необходимость экспорта BRAN.

Каждое выражение должно возвращать логическое значение для текущего BRANCH. Если выражение возвращает false, участок не экспортируется

PathXML

string

Путь по умолчания для сохранения файла экспорта

 

Настройка соответствий элементов AVEVA элементам Гидросистемы при экспорте

 

Соответствие элементов AVEVA PDMS/E3D/MARINE элементам Гидросистемы, соответствие атрибутов элементов, а также общих параметров проекта определяется в файле elements.json

Описание типов элементов Гидросистемы и их параметров см. тут.

 

Структура:

 

{

  "multiplier": <value>,

  "elements": {

    "AVEVA_Element": {

      "rules": {

           <HST_Element>: {

             "expression": <PML_stringExpression>,

             "match": [<value> ...],

             "parameters": {

              Parameter: <PML_numericExpression>,

                ...

             },

           },

        ...

      },

    },

    ...

  },

  "branches": {

    Parameter: <PML_numericExpression>,

     ...

  }

}

 

Параметры:

 

Имя параметра

Тип значения

Описание

Значение по умолчанию

"multiplier"

number

Множитель, применяемый при преобразовании координат

0.001

"elements"

object

Перечень типов элементов AVEVA и правил преобразования

 

AVEVA_Element

object

Имя определяет тип элемента AVEVA ("ELBO", "TEE", "OLET" и т.д).

Значение определяет соответствующие данному типу элемента параметры

 

"rules"

object array

Список правил экспорта. Правила проверяются сверху вниз до первого совпадения. Если совпадения не найдено, элемент экспортируется как узел

 

HST_Element

object

Имя определяет тип элемента Гидросистемы (номер элемента в двойных кавычках).

Значение определяет соответствующие данному типу правила соответствия и выражения для установки параметров элемента

 

"expression"

string

Определяет выражение PML, значение которого сравнивается со значениями массива соответствий match.

Значение выражения должно иметь тип string.

Если найдено соответствие одному из значений, AVEVA_Element экспортируется как HST_Element.

Соответствие считается найденным, если параметр отсутствует или имеет значение null

 

"match"

string array

Определяет значения, сравниваемые со значением, возвращаемым выражением из "expression"

 

"parameters"

object

Список параметров

 

Parameter

string

Имя определяет тип параметра элемента Гидросистемы (имя параметра в двойных кавычках из схемы файла открытого формата OpenFormat.xsd, который можно найти в директории установки программы).

Значение определяет выражение PML для вычисления параметра.

Выражение должно возвращать тип real

 

"branches"

object

Список параметров ветвей

 

"tubi"

object

Параметры для определения диаметров труб, выходящих из ответвления (TEE, OLET)

inDiam – внутренний диаметр

outDiam – наружный диаметр

 

 

 

Пример:

 

{

 "multiplier": 0.001,

 "elements":

  {

   "TEE":

    {

     "rules":      

       {

        "28":

         {        

          "parameters":

          {            

           "name":"type + ' ' + name"

          }

         },

        "29":

         {        

          "parameters":

          {            

           "name":"type + ' ' + name"

          }

         },

        "6":

         {        

          "parameters":

          {            

           "name":"type + ' ' + name"

          }

         }

       }  

    },

"tubi": {

    "inDiam": "Lbore",

    "outDiam": "Lodiam"

  },

"branches":

  {

   "inDiam":"PHBO",   

   "outDiam":"PHOD",   

   "flow":"0",

   "tFluid":"TEMP of PIPE",

   "Density":"0",

   "Viscosity":"0",

   "GasContent":"0",

   "Kavitation":"0"   

  } ,

  "project":

  {

    "name1": "'Проект'",

    "document1": "'Документ'",

    "object1": "'Объект'",

    "installation": "",

    "organization": "",

    "stage": "",

    "fio1": "'Фамилия1'",

    "fio2": "",

    "fio3": "",

    "fio4": "",

    "fio5": "",

    "fio6": "",

    "pos1": "",

    "pos2": "",

    "pos3": "",

    "pos4": "",

    "pos5": "",

    "pos6": "",

    "avertemp": "5.4",

    "intemp": "20"

  },

  "pipeline":

  {

    "name": "'Трубопровод'",

    "QUnits": "'кг/час'",

    "weldLosses": "'true'",

    "recalcRate": "'false'",

    "roughness": "0.2",

    "maxVelocity": "0",

    "AbsHeight": "0"

  },

    "fluid":

  {

    "name": "stext of text 1 of Fluref",

    "state": "'Undefined'",

    "method": "'WSP'"  

     }

}

 

Настройка вида модуля

 

Файл:

 

«View.json»

 

Описание:

 

В файле описаны атрибуты для настройки вида модуля.

 

Структура:

 

{

  "CreateAddinPanel":<true/false>

 "Language ":<lan>

}

 

Параметры:

 

Имя параметра

Тип значения

Описание

CreateAddinPanel

bool

true – в интерфейсе AVEVA автоматически будет создана отдельная панель/лента для модулей «НТП Трубопровод»

false – добавление модуля в интерфейс AVEVA будет осуществляться вручную пользователем. Зарегистрированная функция для подключения вручную

Language

string

Язык интерфейса. Поддерживаются языки: «ru», «en»

 

Пример:

 

{

  "CreateAddinPanel":true,

  "Language":"en"

}

 

Добавление модуля в интерфейс AVEVA вручную:

 

Войдите в меню кастомизации панели инструментов:

 

 

Создайте кнопку и привяжите к ней команду открытия окна модуля AVEVA-Гидросистема:

 

 

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