Совершенствование процессов обмена данными между PLM-системой и корпоративной

информационно-управляющей системой в интегрированной информационной среде

С.Е. Кондратьев,

инж.,

О.В. Ульянин,

зам. нач. отд., к.т,

Е.М. Абакумов,

нач. отд-ия информ. техн-ий, к.т.н.,

ФГУП «ВНИИА», г. Москва

В докладе отражены вопросы обмена данными в интегрированной информационной среде предприятия между PLM-системой Windchill и электронными общесистемными справочниками, входящими в состав корпоративной информационно-управляющей системой (КИУС) ФГУП «ВНИИА».

 

In paper there are information about data exchange in integrated information environment of the enterprise between PLM-system Windchill and electronic database directories that are part of the corporative information management system.

Введение

Одним из необходимых условий повышения эффективности и качества разработки любой промышленной продукции является использование систем автоматизированного проектирования (САПР) в комплексе с системами управления данными об изделии (PDM) и системами управления жизненным циклом изделий (PLM). Это своего рода must have для любой организации, нацеленной на модернизацию и усовершенствование подходов, применяемых при разработке и информационной поддержке изделий. Помимо этого большинство организаций существуют в условиях серьезной конкуренции со стороны других предприятий, и вопросы качества продукции и сроков разработки новых изделий становятся основными.

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

В настоящее время во ФГУП «ВНИИА» реализуется концепция КИУС [2], основной целью которой является создание системы автоматизированного сквозного проектирования, технологической подготовки и производства изделий, информационным ядром которой является электронный архив технической документации [3], управляемый PLM-системой Windchill (разработчик - компания PTC, США). Система Windchill является базовым инструментом реализации данной концепции [4], т.к. в ней непосредственно создаются, утверждаются, хранятся и изменяются подлинники электронных конструкторских документов (ЭКД), таких как конструктивная электронная структура изделия (КЭСИ), 3D-модели сборочных единиц и деталей, электронные чертежи и пр.

Общесистемными справочники КИУС являются база данных конструкторско-технологической информации (БД КТИ) и справочник продукции внешней поставки (СПВП), разработанными во ФГУП «ВНИИА» на базе СУБД Oracle и предоставляющими постоянный доступ к информации в режиме online всем конечным пользователям.

СПВП обеспечивает интеграцию данных обо всей продукции внешней поставки (материалы, стандартные и прочие изделия), используемой на предприятии, в единую базу данных.

БД КТИ обеспечивает интеграцию утверждённой конструкторско-технологической информации в единый справочник, информационную взаимосвязь с автоматизированными системами КИУС, решающими задачи планирования, управления и обеспечения производства (т.е. ERP-составляющей КИУС).

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

1. Анализ процесса передачи электронного состава изделия в справочники КИУС

В случае разработки комплекта конструкторской документации (КД), выполненной в бумажной форме, основным документом, определяющим состав изделия, является спецификация. Если же комплект КД разрабатывается в PLM-системе, то основным конструкторским документом, определяющим состав изделия, является КЭСИ. Спецификация в данном случае является вторичным электронным отчётом, полученным на основе данных КЭСИ.

Процесс передачи электронного состава изделия в БД КТИ, полученного на основе спецификации, можно представить в виде ориентированного графа, который отражает возможную последовательность заданий в данном процессе. Узлы графа представляют собой задания, которые необходимо выполнить в процессе, а дуги – направленные отношения между этими заданиями (см. рисунок 1).

Рис. 1 Ориентированный граф процесса попадания состава изделия в КИУС

Обозначения узлов графа:

X1 – разработка КД;

X2 – проверка КД в подразделении разработчика;

X3 – согласование КД у экспертов;

X4 – технологический контроль;

X5 – подписание КД;

X6 – утверждение КД;

X7 – нормативный контроль;

X8 – постановка КД на учёт в ОТД;

XN.2, ХN.1.2 – доработки по замечаниям на N-ном этапе;

X9 – проверка текстовой КД перед загрузкой состава в КИУС;

X10 – занесение состава изделия в КИУС.

За время работы в системе Windchill конструкторами ФГУП «ВНИИА» было запущено 74 запроса на продвижение КД до состояния «Утверждено». В рамках всех этих запросов ЭКД была доработана по замечаниям экспертов (специалистов по НСИ, сотрудников отдела снабжения и др.) 94 раза, техконтролеров – 22 раза, утверждающих – 15 раз и нормоконтролеров -  55 раз. Порядка 10% от общего количества замечаний от экспертов и нормоконтролеров составляли замечания, касающиеся правильности записи наименования покупных изделий в документах-отчётах на основе КЭСИ и возможности их использования в данном изделии. В связи с этим, возникает задача создания и актуализации библиотечных данных, используемых при создании КЭСИ в PLM-системе на основе данных КИУС. Нельзя не отметить, что в данном случае не рассматриваются ошибки, вызванные неправильным отражением данных о покупных изделиях на спецификации – для этого пришлось дорабатывать генератор спецификаций, написанный на Java, путём использования регулярных выражений.

Следует также отметить, что одной из задач при реализации пилотного проекта по внедрению системы Windchill являлась задача автоматизации процесса передачи данных о составе изделия в справочники КИУС, т.к. до использования системы Windchill составы изделия заносились в БД КТИ вручную посредством оцифровки учтённых в ОТД копий спецификаций. При этом в спецификациях могли быть найдены конструкторские ошибки (например касающиеся возможности применения покупного изделия и правильности записи его наименования). С учётом всех этих факторов процедура обработки спецификаций могла затянуться на 4-5 дней в зависимости от сложности изделия.

Таким образом, необходимо сократить количество доработок КД (узлы Х3.2, Х7.2, Х8.2) по замечаниям согласующих и упразднить процедуру ручного занесения состава изделия в КИУС (узел Х10).

В связи с вышесказанным основными задачами работы являются:

1) разработка и реализация методов обмена данными между СПВП и системой Windchill;

2) разработка и реализация процедуры экспорта утвержденного электронного состава изделия из системы Windchill в БД КТИ.

2. Методы обмена данными между СПВП и PLM-системой

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

2.1. Метод импорта данных посредством электронных таблиц

Метод импорта данных посредством электронных таблиц является встроенным в базовый функционал многих систем класса PDM/PLM, в том числе в систему Windchill. Как правило, в качестве электронных таблиц используются таблицы Microsoft Excel.

Импорт данных посредством электронных таблиц удобно использовать на этапе апробации PLM-системы, когда необходимо наполнить библиотеки компонентами, применяемыми при формировании КЭСИ. Данный метод также целесообразно применять при опытной и промышленной эксплуатации PLM-системы для наполнения библиотек большими объёмами однотипных данных. В системе Windchill в качестве такого типа данных может выступать, например, составная часть (внутреннее наименование WTPart). Для всех необходимых экземпляров данного типа в таблице указываются соответствующие значения атрибутов, таких как обозначение, наименование, раздел спецификации, состояние жизненного цикла и т.д. Электронная таблица, используемая для импорта, имеет определённую структуру и должна быть заполнена соответствующим образом, чтобы импорт прошёл без ошибок.

2.2. Метод и мпорта  данных  посредством  jar-утилиты

При разработке электронных чертежей в системах автоматизированного проектирования (САПР) возникает необходимость автоматического заполнения марки материала и массы детали в основной надписи чертежа. При этом масса детали автоматически рассчитывается на основе объёма 3D-модели детали, связанной ассоциативной связью с чертежом, и плотности используемого в ней материала. В то же время конструктор не может использовать любой материал – он ограничен определённым отраслевым перечнем в зависимости от специфики изделия и нормативных требований.

Для отображения атрибутивной информации в основной надписи чертежа, разработанного в САПР Creo Parametric, используется справочник материалов в виде файлов «mtl». Файл «mtl» представляет собой текстовый файл особого формата, в содержимом которого указано наименование материала (в соответствии с  нормативно-техническим документом (НТД)) и его плотность. Этот справочник реализован в виде структуры папок на общем сетевом диске. Файл «mtl» подгружается к 3D-модели на этапе её создания в САПР Creo Parametric и его содержимое распространяется в соответствующие параметры чертежа, связанного с 3D-моделью.

При применении материала в КЭСИ необходимо указывать его количество, которое будет отражено в спецификации, полученной на основе КЭСИ. Определить это количество можно на основе объёма габаритной 3D-модели материала, которая связана с представлением нетвердотельного компонента в этой сборке (на основе которой построена КЭСИ). Именно в этом компоненте, именуемом «bulk item», содержится информация о плотности материала. Компонент «bulk item» может быть связан не только с габаритной моделью материала, но и с 3D-моделью детали.  Этот случай относится к применению материала в качестве покрытия детали, например, в качестве краски или драгоценного металла. В таком случае необходимо использовать другой шаблон компонента «bulk item», т.к. расчёт количества материала будет происходить не по объёму модели, а по площади её покрытия и толщине слоя материала. Благодаря этой связи происходит расчёт количества материала для спецификации на основе данных в компоненте «bulk item» и параметров связанной с ним модели.

Таким образом, в среде системы Windchill и САПР Creo Parametric необходимо использовать два справочника материалов, которые должны быть сформированы на основе данных из СПВП, являющегося ограничительным перечнем для разработчика и конструктора.

С целью обмена данными между СПВП и PLM-системой были разработаны утилиты, которые представляют собой самостоятельные Java-приложения в виде jar-архивов, содержащие необходимые для работы приложения Java-классы. Язык Java выбран неслучайно, т.к. вся логика и модель данных PLM-системы Windchill написана именно на нем. Путём периодических запросов к базе данных (БД) СПВП утилиты передают данные в справочники материалов в формате “*.mtl” и “bulk Item”. В обозначении компонента «bulk item» и связанной с ним составной части фигурирует идентификатор соответствующей записи из СПВП. В связи с тем, что в спецификациях поле «Обозначение» для компонентов, входящих в разделы «Материалы», «Стандартные» и «Прочие», не заполняются – данный подход является удобным для проверки КЭСИ на этапе согласования и утверждения на предмет использования компонентов из ограничительного перечня. Данный идентификатор, присутствующий в обозначении, будет говорить о том, что компонент разрешен к применению и имеет правильно записанное наименование в соответствии с НТД. В данных утилитах для доступа к данным под управлением Oracle используется библиотека JDBC (Java DataBase Connectivity).

2.3. Метод  актуализации  данных  посредством  jar-утилиты

При интеграции PLM-системы в КИУС предприятия достаточно часто возникают вопросы актуализации уже созданных в библиотеке PLM-системы данных. Пример данной ситуации: лаборатория, занимающаяся разработкой 3D-моделей стандартных изделий, которые являются библиотечными компонентами, получает заявку от конструкторов на создание необходимого компонента. При этом создаётся базовая 3D-модель компонента с таблицей семейств экземпляров и совокупность составных частей, связанных с этими экземплярами. На основе базовой модели и таблицы семейств компонент с необходимыми геометрическими параметрами генерируется на лету, т.о. нет необходимости создавать отдельно на каждый компонент 3D-модель. При этом используется встроенный в функционал САПР Creo Parametric генератор наименований в соответствии с геометрическими параметрами экземпляра. При этом обозначение составной части формируется на основе наименования файла связанного с ней экземпляра таблицы семейств.

Таким образом, в библиотеке системы Windchill содержится совокупность составных частей со связанными экземплярами таблицы семейств базовой 3D-модели, но, на первый взгляд, совершенно непонятно, можно ли их применять в КЭСИ или нет. Для того, чтобы это можно было однозначно понять, как конструктору при создании КЭСИ, так и проверяющему на этапе согласования и утверждения КЭСИ, необходимо, чтобы данный применяемый компонент обладал определённым признаком.

Данная актуализация данных заключается именно в передаче определённого признака компоненту. Таким признаком, как и в предыдущем методе, является идентификатор соответствующей записи из СПВП, который должен фигурировать в обозначении составной части. Этот идентификатор в обозначении показывает, что компонент разрешён к применению, т.е. присутствует в ограничительном перечне, и имеет правильно записанное наименование в соответствии с НТД.

Для актуализации данных необходимо запустить утилиту синхронизации данных СПВП и электронной библиотеки стандартных изделий системы Windchill (утилита SetIdSpvp). Данная утилита представляет собой самостоятельное Java-приложение в виде jar-архива, содержащее необходимые для работы приложения Java-классы. Утилиту можно запускать вручную по необходимости c рабочего места администратора PLM-системы или разместить в планировщике заданий операционной системы, управляющей сервером приложения PLM-системы, чтобы она запускалась в определённый период времени. Более подробно работа утилиты представлена на UML-диаграмме последовательности, которая отражает порядок взаимодействия объектов во времени (см. рисунок 2).

Рис. 2 UML-диаграмма последовательности утилиты SetIdSpvp

В роли объектов выступают классы или экземпляры классов. Вертикальной пунктирной линией обозначают линию жизни конкретного объекта, а узкие прямоугольники – точки его активации. Сообщения, которыми обмениваются объекты, обозначают в виде направленных линий. Из класса Main мы обращаемся к классу Configs для получения параметров соединения с БД СПВП и сервером Windchill; с помощью метода connect() из класса DBUtils устанавливаем соединение с БД СПВП. Запускаем вызов метода doExecute() из класса Worker. Соответственно, с помощью класса Configs и конфигурационного файла получаем строковую переменную запроса к БД СПВП уже с учётом наложенных в СПВП ограничений, и передаем данную переменную методу queryResult() класса DBUtils. В результате получаем необходимую выборку записей из СПВП. Затем для каждой записи вызываем метод setidspvp(), в который передаём значения «Идентификатор» и «Образец обозначения в КД» данной записи. С помощью класса RemoteMethodServer вызываем метод setidspvp() из класса Server, расположенного непосредственно на сервере приложения Windchill, в который также передаем «Идентификатор» и «Образец обозначения в КД», и осуществляем поиск в БД системы Windchill составных частей (тип WTPart), наименование которых совпадает с «Образцом обозначения в КД». В случае успешного поиска значение идентификатора назначается в поле «Обозначение» соответствующей части.

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

Ограничения в СПВП на использование ПВП в новых разработках (например, компонента "резистор...") могут быть наложены после изменений в соответствующем НТД или выхода новой редакции НТД. Изменить уже существующую достаточное время запись в СПВП в случаях использования данной записи в учётных бухгалтерских документах не представляется возможным. Поэтому создаётся новая запись с правильными атрибутами (например, образец обозначения в КД), а для старой записи проставляется признак ограничения применимости определённого типа (например, «Н» - в новых разработках не применять). Но в PLM-системе уже могут существовать данные, которые были созданы на основе исходных данных СПВП, которые в настоящий момент уже устарели. В самой PLM-системе об этом, конечно, ничего неизвестно. Поэтому целесообразно разработать процедуру, благодаря которой эти ограничения можно будет передавать между системами.

Алгоритм распространения ограничений будет состоять в формировании запроса к БД СПВП для поиска измененных за определенный период времени записей. Среди этих записей будут отобраны только те, для которых изменилось значение в поле «Ограничения». На основании данной выборки будет происходить поиск частей в библиотеках PLM-системы, у которых обозначение будет совпадать с идентификатором записи. В случае успешного поиска частям будет передан ограничительный признак в атрибут «Ограничения». Данный алгоритм также можно реализовать посредством jar-утилиты, встроенной в планировщик заданий операционной системы, управляющей сервером приложения PLM-системы.

2.4. Метод актуализации данных на основе потоков работ и управления жизненными циклами

Данный метод рекомендуется применять в случае использования средств WorkFlow для точечной актуализации данных PLM-системы (т.е. изначально системы-получателя) в момент их создания.

Существует ещё один метод обмена данными КЭСИ между системами – через средства управления жизненным циклом (ЖЦ) объектов системы-получателя.

Одной из основных возможностей практически любой современной PLM-системы является поддержка ЖЦ объектов системы. Утилита «Администрирование шаблонов жизненного цикла» системы Windchill предоставляет широкие возможности по созданию и настройке ЖЦ различных объектов. Например, с любым состоянием ЖЦ объекта можно связать маршрут потока работ (WorkFlow) или задать права доступа на определённое состояние объекта для определённых ролей.

При создании базовой модели стандартного изделия и её экземпляров в САПР Creo Parametric в рабочей области можно автоматизировано создать совокупность связанных с этими экземплярами частей. При выгрузке из рабочей области Creo Parametric базовой модели с совокупностью экземпляров и частей в библиотеку системы Windchill для всех объектов автоматически задаётся состояние «В работе». Функционал системы Windchill позволяет настраивать правила инициализации объектов на уровне библиотек. В этих правилах указывается связь типа объекта с ЖЦ, а состояние ЖЦ объекта можно связать с запуском маршрута потока работ через утилиту «Администрирование шаблонов жизненного цикла». В шаблоне маршрута можно использовать робот «Выполнить выражение», в котором можно написать код Java для определения наименования связанной с процессом части и формирования запроса к БД СПВП для поиска записи, у которой значение «Образец обозначения в КД» совпадает с наименованием части. Если такая запись найдена, то необходимо передать её идентификатор  в обозначение части в Windchill. Таким образом, для каждой выгруженной части будет запущен маршрут актуализации обозначения, и обозначение будет обновлено на идентификатор только для тех частей, чьё наименование будет совпадать со значением «Образец обозначения в КД» записи из СПВП.

Помимо этого, внутренними средствами системы Windchill во ФГУП «ВНИИА» были настроены запросы на создание библиотечных компонентов. Если конструктору необходимо использовать библиотечный элемент в сборке или КЭСИ – он запускает данный запрос, который реализован на основе маршрута потока работ. Инициатор процесса назначает участников на необходимые роли и отправляет заявку. В зависимости от типа необходимого компонента (прочее изделие, стандартное изделие или материал) процесс идет по той или иной ветви. Состав ролей на каждой из ветвей отличается, т.к., например, для создания материала в формате «bulk item» нет необходимости в участии роли «Библиотекарь ECAD», который занимается созданием компонента электрорадиоизделия (ЭРИ) в библиотеке Mentor Graphics. В шаблоне запроса также можно использовать стандартный робот «Выполнить выражение», в котором можно написать код Java для определения наименования связанной с процессом части, формирования запроса к БД СПВП для поиска записи, значение «Образец обозначения в КД» которой совпадает с наименованием части. Если такая запись будет найдена, то её идентификатор из БД СПВП следует передать в обозначение части, которая фигурирует в запросе на создание библиотечного компонента в Windchill.

Таким образом, существует два варианта актуализации данных средствами WorkFlow.

2.5. Метод  экспорта  утверждённой  КЭСИ

Одним из назначений КЭСИ является организация информационного взаимодействия между PLM-системой и общесистемными справочниками КИУС (СПВП и БД КТИ).

Как было описано в первом разделе, процедура обработки (занесения) состава изделия в БД КТИ занимает значительную часть времени процесса от начала согласования и утверждения КЭСИ и до её загрузки в справочники КИУС. С целью сокращения количества ошибок и времени передачи состава изделия была разработана процедура экспорта утверждённых в системе Windchill КЭСИ после постановки их на учёт в ОТД. Модуль экспорта встроен в шаблоны процесса постановки КД на учёт в ОТД и процесса проведения изменений. Для этого используется стандартный робот «Выполнить выражение» утилиты «Администрирование шаблонов рабочих процессов», в котором размещён код Java для вызова определённого метода из класса на сервере приложения Windchill.  Данные о КЭСИ и приложенных к процессу документов экспортируются в промежуточные таблицы, которые проверяет администратор БД КТИ. После окончательной проверки все данные о составе изделия загружаются в БД КТИ.

Заключение

Разработка и реализация описанных выше методов обмена данными между справочниками КИУС и системой Windchill позволяет создавать и поддерживать в актуальном состоянии библиотечные данные, необходимые при создании КЭСИ. Благодаря этому сокращается количество ошибок в КД и возвратов КЭСИ на доработку во время согласования ЭКД. Кроме того, сокращается время передачи утверждённого состава изделия в справочники КИУС.

Литература

1.  Абакумов Е.М., Кожевников Н.О., Ульянин О.В., Агулова Д.М. Информационная система управления инженерными данными как инструмент принятия решений в организационной модели предприятия. Сборник материалов второй международной конференции “Информационные технологии интеллектуальной поддержки принятия решений” (ITIDS & RRS’2014) в 2 томах, Уфа.: УГАТУ, 2014, 1 т. , С.140-147.

2.  Ульянин О.В., Кожевников Н.О., Абакумов Е.М. Организация корпоративной интегрированной информационной среды проектирования, технологической подготовки и производства изделий. Сборник материалов шестой международной конференции “Управление развитием крупномасштабных систем (MLSD’2012)” в 2 томах. – М.: ИПУ РАН, 2012, 2 т. – с. 343-346.

3.  Ульянин О.В., Кожевников Н.О., Абакумов Е.М. Вопросы практической реализации электронного архива технической документации в системах автоматизированного сквозного проектирования изделий. Управление развитием крупномасштабных систем (MLSD'2013): Сборник материалов седьмой международной конференции «Управление развитием крупномасштабных систем (MLSD’2013)» в 2 томах, М.: ИПУ РАН, 2013, 2 т. , с.377-379.

4.  Кондратьев С.Е., Ульянин О.В., Кожевников Н.О. Функциональные возможности PLM-системы в процессе разработки изделий. Известия Кабардино-Балкарского государственного университета, 2013, №6, том 3. - С. 40-43.