Диплом: Разработка дополнительного функционала в САПР с помощью функционала "E3.Series" для предприятия АО "Оzelectroapparat-electrkshield"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
42
Совместно использование одних и тех же данных всем модулями
пакета без дополнительного конвертирования обеспечивает архитектура,
состоящая из отдельных модулей, построенных на едином графическом
программном ядре.
Достоинства:
- Существует разные исполнения изделий. E3.Series предоставляет
инструмент «варианты и опции». С помощью этого инструмента можно
задавать различные исполнения и опции как для всего проекта, так и для
отдельных частей, причем вся отчетная документация будет
генерироваться только для выбранного исполнения или варианта;
- В сетевой версии предоставляется возможность работать над одним
проектом сразу нескольким пользователям, что предоставляет
эффективность во взаимодействии инженеров разных специальностей;
- Существует инструмент для работы с многоуровневыми иерархическими
системами, есть возможность проектировать их сверху-вниз или снизу-
вверх как того требует конкретная ситуация. Между уровнями, например, с
прибора на стойку, должны и переходят сигналы, целостность которых
будет проверяться системой в режиме реального времени;
- При разработке проекта различные символы одного и того же компонента
размещаются на различных листах и различных схемах. Поэтому любое
изменение свойств компонента на любой схеме происходит одновременно
во всем проекте. То же правило касается многих других объектов E3.series:
цепей, проходящих на разных листах; проектных свойств; основных
надписей листов и свойств подразделов и т.д. Таким образом, сквозное
проектирование – метод, позволяющий исключить наиболее
распространенную ошибку – несинхронизированные данные в различных
частях проекта;
- В E3.series существует модель сравнения проектов. Пользователь может
сравнить любые две версии проекта по произвольному набору критериев
43
сравнения. По результатам сравнения, измененные и отсутствующие
фрагменты будут выделены на листах, измененные листы будут
экспортированы в графику; кроме этого, вся информация по изменениям
будет доступна в табличном виде;
- Автоматизация проектирования жгутов и их соединений;
- Компоновать шкаф в E3.series можно как в 2D, так и в 3D. Оба этих
варианта ассоциативны, т.е. при изменении позиции изделия в 2D-
проекции или сечении, это тут же произойдет в 3D или наоборот. При
размещении изделия, «пронизывающего» монтажную плоскость, E3.series
учтет этот вырез при формировании схемы отверстий. Для удобства
работы в трехмерном пространстве можно настраивать видимость изделий
в 3D;
- В E3.series шкаф компонуется с одной стороны из взятых в библиотеке
конструктивных элементов, а с другой – из компонентов, уже
размещенных на схемах и доступных для компоновки. Помимо этого, из
электрической схемы в компоновку передаются цепи;
- E3.series – единственная система, отличающая цепь от провода. Цепь –
это совокупность выводов с единым потенциалом, которая может быть
соединена одним или несколькими проводниками, но по одному
проводнику может идти лишь одна цепь. Именно по этой причине
электрическая схема предусматривает некую неоднозначность соединений;
- Для большинства заводов-изготовителей шкафов, НКУ и другой техники,
а также для проектантов требуется выпускать схему соединений шкафа
(монтажную схему). E3.series за счет автоматической трассировки
позволяется получать эту схему в полуавтоматическом режиме:
пользователю нужно лишь расставить символы по листу, а САПР сама
заполнит все требуемые надписи;
- Проектирование жгута немыслимо без его трассировки в трехмерной
САПР. В этом случае электротехнические схемы жгутов выполняются в
44
E3.series, затем данные передаются в 3D-САПР для последующей
трассировки. Полученные длины передаются обратно в E3.series;
- Есть возможность передачи компоновки шкафа непосредственно в
Autodesk Inventor или Компас-3D;
- Современное проектирование сложно представить без управления
проектными данными при помощи PDM/PLM-систем. E3.series имеет
интерфейсы взаимодействия с наиболее распространенными системами
данного класса, в том числе с белорусской системой ИНТЕРМЕХ «Search»;
- Помимо управления проектными данными, проект E3.series можно
интегрировать в такие системы как SAP или 1C. В этом случае
спецификации, полученные в E3.series , будут распознаны ERP-решением;
- Система включает универсальные средства работы с базой данных,
графическим редактором и генератором отчетов;
- Помимо управления проектными данными, проект E3.Series можно
интегрировать в такие системы как SAP или 1С. В этом случае
спецификации, полученные в E3.series, будут распознаны ERP-решением;
- Система включает универсальные средства работы с базой данных и
графическим редактором и стандартным генератором отчетов;
- Все типы схем разрабатываются в одной среде проектирования с общим
интерфейсом и по единым правилам;
- Многопользовательская версия обеспечивает работу группы
пользователей в режиме реального времени над общим проектом.
Автоматическая связь между всеми разделами проекта значительно
сокращает время его выпуска и повышает качество проектной
документации.
Недостатки:
- Для адаптации под требования ЕСКД необходимо иметь навыки
программирования (скрипты или полноценные программы с
подключением API e3.series);
45
- нет стандартных решений для формирования таблиц клемм (вывод
таблицы с двух боковин на один лист, вывод магистральных и (или)
силовых клемм вместе с боковыми клеммами на один лист), формирование
таблиц клемм с отдельным выводом адресов кабелей, разных
модификаций перечней элементов и спецификации для АО
«O`zelectroapparat-electroshield»;
- Высокая стоимость системы, внедрения, сложность освоения.
Вывод
Во второй главе были рассмотрены электротехнические САПР АО
«O`zelectroapparat-electroshield». В ходе анализа каждого САПР были
выявлены достоинства и недостатки.
Каждый САПР хорош по-своему и охватывает широкий круг задач.
Но стандартным функционалом не решить некоторые поставленные
задачи, как например, создание таблиц клемм или перечня элементов по
требованиям АО «O`zelectroapparat-electroshield». Для этого нужно
разрабатывать дополнительный функционал.
46
3. РАЗРАБОТКА ДОПОЛНИТЕЛЬНОГО ФУНКЦИОНАЛА
Во второй главе были рассмотрены достоинства и недостатки
электротехнических САПР на заводе АО «O`zelectroapparat-electroshield».
Чтобы устранить некоторые недостатки нужно разработать
дополнительный функционал. Возьмем для примера E3.Series. У этой
САПР были выяснены во второй главе такие недостатки: «нет стандартных
решений для формирования таблиц клемм, разных модификаций перечней
элементов и спецификации для АО «O`zelectroapparat-electroshield»».
Разработаем программы «перечень элементов» и «таблица клемм».
Исходя из первой главы, применим два способа разработки: с
помощью скриптов и с помощью Visual Studio. «Перечень элементов»
напишем с помощью скриптов, а «таблицу клемм» с помощью visual
studio.
Для начала нужно в САПР E3.Series создать проект и заняться его
наполнением. На рисунке 10 показано дерево изделий в проекте, которые
были вынесены с БД для тестирования создаваемого дополнительного
функционала.
В проекте были вынесены из БД лампы полупроводниковые
коммутаторные, промежуточные реле, переключатели кулачковые,
автоматические выключатели, разъединители и разные клеммы
(проходные, измерительные, двухъярусные и диодные – это было сделано
для таблицы клемм).
База данных поставляется посредством SQLServer 2008 R2. MS SQL
Server – это система управления реляционными базами данных, которая
поддерживает масштабируемость начиная от малых сетей до сетей уровня
предприятия [14, с.95]. Используется сетевая версия E3.Enerprise,
подключение к SQL server происходит самой программой E3.Enterprise или
через драйвер ODBC. Open Database Connectivity (ODBC) это
47
программный интерфейс, представляющий прикладным программам
доступ к базам данных [21, c.79].
При написании дополнительного функционала использовались идеи
с веб-сервера журнала САПР и графика [32].
Рисунок 10 – изделия в проекте
3.1 Дополнительный функционал с помощью скриптов. «Перечень
элементов»
Основываясь на исследованиях в первой главе, для того чтобы
начать разрабатывать дополнительный функционал для E3.Series нужно
знать API E3.Series.
Для начала определимся с выводом информации. На заводе АО
«O`zelectroapparat-electroshield» используется перечень элементов с
изменениями под производство. Перечень элементов оформляется в виде
таблицы [4, рис.4], основная подпись выполнена по ГОСТу 2.104-2006 [3].
Для первого листа выбрана форма 2, а для последующих листов форма 2а
48
[3]. На рисунке 11 изображен пустой ПЭ первый лист и последующий
лист.
Как видно на рисунке 11 таблица изменена. Изменения позволяет
ГОСТ 2.701-2008[4]: в 3 примечании в разделе 5.7.5 «При необходимости
допускается вводить в перечень элементов дополнительные графы, если
они не нарушают запись и не дублируют сведения в основных графах»[4]
Рисунок 11 – форматки ПЭ, слева направо: основной, последующий
листы
В эту таблицу нужно выгрузить информацию об изделиях, которые
находятся в проекте. В ПЭ должны попасть все изделия, кроме проводов,
перемычек, кабелей, металлоконструкции. Для простоты отсеивания
ненужных изделий можно искать нужные по атрибутам. В данном случае у
изделий в БД АО «O`zelectroapparat-electroshield» есть атрибут
«PE_not_att» и может принимать два значения 1 или 0.
После того, как определена форматка листа и нужная информация
для вывода, можно приступить к программированию. Писать скрипты VBS
можно в любом текстовом редакторе, при сохранении которых нужно
указать расширение vbs (например test.vbs).
49
Подключиться к открытому окну E3.Series можно с помощью такой
строки: set App = CreateObject( "CT.Application" ). Помимо самого окна в
листинге 2 можно увидеть подключения к другим объектам E3.Series.
set App = CreateObject( "CT.Application" ) ' Окно E3.Series
set Job = App.CreateJobObject ' проект в E3.Series
set Dev = Job.CreateDeviceObject ' изделия в проекте
set Cmp = Job.CreateComponentObject ' изделия в БД
set Sheet = Job.CreateSheetObject ' листы
set Graph = Job.CreateGraphObject ' графика
set Text = Job.CreateTextObject ' текст
Листинг 2 – подключение объектов
Зададим начальные настройки для скрипта в листинге 3 с
объяснениями в каждой строке под комментариями.
Units = "MM" ' единица измерения
y_nov_list = 0. 'для удаление пустых листов
y_min = 43 'мм-нижняя граница заполнения листа
y_max = 270 'мм-верхняя граница заполнения листа
y_space = 8 'мм-высота строки
x_devnames = 21 'мм-координата для поз.обозн.
x_description = 56 'координата для наименования
x_entry = 106 'координата для наименования
devnames_len = 18 'кол-во символов в строке поз.обозн. для переноса
description_len = 22 'кол-во символов в строке наименования для переноса
entry_len =30 'Кол-во символов в строке Тип и характеристика для
переноса
sheet_format = "A4 первый лист ПЭ" 'название форматки в БД
Description = "Description" ' определяются атрибуты изделий для чтения
Листинг 3 – первоначальные настройки
50
В случае того, если вдруг в окне E3.Series не открыт проект, нужно
поставить небольшую проверку как в листинге 4
If Job.GetId = 0 then ' проверка открытия проекта
App.PutInfo 1, "Не найден открытый проект, выход…"
wscript.quit
end if
Листинг 4 – проверка открытого проекта
Теперь нужно собрать всю информацию об имеющихся изделиях в
проекте и выгрузить отдельно нужные нам. Для начала объявим массивы,
куда будет собираться информация об изделиях. Нам понадобится
отдельные массивы для индивидуальных номеров каждого изделия (ID),
для имени изделия (позиционное обозначение), имя изделия в БД,
количество изделий, примечаний и специальные массивы для сортировок.
Размер объявленных массивов будет количество всех изделий + 1.
Количество изделий находится запросом job.GetAllDeviceCount. В
листинге 5 можно увидеть запрос на количество изделий и объявление
массивов.
nAlls = Job.GetAllDeviceCount 'Узнаем количество всех изделий
ReDim DevIds( nAlls+1 )
ReDim DevNames( nAlls+1 )
ReDim CompNames( nAlls+1 )
ReDim DevCount( nAlls+1 )
ReDim FinalCount( nAlls+1 )
ReDim Prime ( Nalls+1 )
ReDim PrimeNew ( Nalls+1 )
ReDim SortField( Nalls+1 )
Листинг 5 – запрос на количество изделий в проекте и объявление
массивов
51
Теперь с помощью цикла запишем в объявленные массивы
информацию с проекта. С помощью проверки на атрибуты «PE_not_att» и
«As_a_part_of_the_specification», принадлежит ли изделие к проводам и
прочее с помощью опроса isCable, isBlock, isWireGroup, isTerminalBlock.
Также ведется проверка на имя изделия, если оно пустое, то такое изделие
не попадает в массив. Все это можно посмотреть в листинге 6.1 и 6.2. Цикл
ведется с 1, а не с нуля.
for n = 1 to nAlls ' читаем по циклу всю инфу
Dev.SetId zDevIds(n) ' делаем текущим изделие в
проекте
cmp.SetId zDevIds(n) ' текущие изделие из БД
if Dev.IsTerminalBlock= 0 and Dev.GetComponentName <> "" and
Dev.IsWireGroup = 0 and Dev.IsBlock = 0 And Dev.IsMount = 0 and
dev.IsCable = 0 And Dev.IsCableDuct = 0 and Descr_text <> "Монтажная
поверхность" and dev.GetAttributeValue("As_a_part_of_the_specification") =
"1" And dev.GetAttributeValue("PE_not_att") <> "1" Then
DevIds(n) = zDevIds(n)
cmp_name_detail = cmp.GetName
cmp_oboz = cmp.GetAttributeValue("OBOZNACHENIE")
Prime(n) = dev.GetAttributeValue("Primechanie")
maincl = cmp.GetAttributeValue("class")
Call IfDevClass(maincl,Dev_flag_class)
Листинг 6.1 – цикл отбора изделий из проекта в массивы
Как видно из листинга 6.2 было использованы 2 функции «DIvide
(Text,Text1,Text22)» и «ifDevClass(maincl,devclass_flag)». Код этих двух
функций можно посмотреть в приложении В. Функция Divide имеет три
параметра text, text1, text22, она разделяет текст в параметре text на
символьную часть и цифровую часть. Символьную часть записывает в
text1, а цифровую в text22. Функция ifDevClass имеет два параметра:

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран