Содержание к диссертации
Введение
1. Обзор методов автоматизации конструирования изделий машиностроения 9
1.1. Анализ процесса создания изделия и место структурного синтеза в нем 9
1.2. Анализ существующих средств автоматизации на предмет сквозной автоматизации процесса создания изделия 17
1.3. Анализ методов решения задачи структурного синтеза 29
2. Разработка математической модели объекта и процесса синтеза 35
2.1. Методика алгоритмизации процесса синтеза 35
2.2. Особенности описания объекта синтеза 38
2.3. Математические основы процесса синтеза 62
3. Разработка модели системы структурного синтеза 74
3.1. Описание состава системы 74
3.2. Описание подсистемы сбора данных 76
3.3. Описание подсистемы адаптации и структуризации данных 89
3.4. Описание подсистемы синтеза 92
4. Описание разработанной среды. особенности реализации 98
4.1. Функциональное назначение среды 98
4.2. Требования к техническому обеспечению 99
4.3. Описание программного обеспечения среды 99
4.4. Особенности реализации разработанной среды 100
4.5. Пример построения классификатора 108
4.6. Пример функционирования среды 116
Заключение 119
Список литературы
- Анализ существующих средств автоматизации на предмет сквозной автоматизации процесса создания изделия
- Особенности описания объекта синтеза
- Описание подсистемы сбора данных
- Описание программного обеспечения среды
Введение к работе
В настоящее время в условиях динамично развивающейся экономики коммерческий успех любого промышленного предприятия напрямую зависит от того, насколько быстро оно сможет отреагировать на изменяющиеся требования рынка путем изменения ассортимента предлагаемой продукции. Скорость разработки новых видов продукции определяется быстротой выполнения всех этапов процесса создания изделия, в области автоматизации многих из которых на сегодняшний день достигнуты значительные успехи.
В то же время наименее автоматизированным на сегодняшний день является этап структурного синтеза. Связано это с тем, что для этого этапа очень редко присутствуют алгоритмы, позволяющие произвести синтез структуры от начала и до конца. Существующие в малом количестве зависимости и методики покрывают лишь короткие шаги процесса синтеза и встречаются только в узкоспециализированных предметных областях.
Анализируя вышесказанное, можно говорить о том, что степень автоматизации процесса создания продукта во многом зависит от степени автоматизации процесса проектирования и конструирования, а именно -этапа структурного синтеза. Повышение эффективности всего процесса создания объекта, а значит и повышение экономического эффекта от его производства, может быть достигнуто лишь путем его сквозной автоматизации.
В связи с этим создание автоматизированной среды структурного синтеза является важным для повышения экономического эффекта деятельности предприятия, а тема настоящей работы - актуальной.
Целью данной работы, таким образом, является повышении качества проектирования изделий машиностроения путем разработки инструментальной среды структурного синтеза объектов, а задачами, которые необходимо решить для достижения поставленной цели, являются:
1. Разработка подхода к построению модели класса синтезируемых объектов на основе методов характеризационного анализа;
2. Разработка модели процесса синтеза, инвариантной по отношению к объекту синтеза, формализация и оптимизация процесса структурного синтеза класса объектов;
3. Разработка подхода к построению автоматизированной системы структурного синтеза объектов на основе предложенных моделей класса объектов и процесса синтеза; разработка модели инструментальной среды, позволяющей создавать САПР структурного синтеза;
4. Программная реализация идеологии создания инструментальной программной среды структурного синтеза.
Научная новизна работы состоит в следующем:
- предложен подход к построению системы структурного синтеза на основе инвариантных комбинаторных алгоритмов синтеза на множестве характеристик класса объектов и зависимостей предметной области, составляющих информационную компоненту этой системы;
- для рассматриваемого класса объектов предложен метод построения информационной компоненты системы структурного синтеза, включающей в себя множество признаков и их значений и множество запрещенных фигур, как причин нереализуемости структуры;
- предложены 4 направления оптимизации процесса структурного синтеза такие, как: исключение порождения запрещенных вариантов, сокращение анализируемого множества промежуточных структур, минимизация влияния запрещенных фигур на процесс синтеза, использование двоичной логики;
- предложена математическая модель процесса синтеза, реализующая все 4 описанных направления оптимизации;
- доказана возможность построения инструментальной среды структурного синтеза. Практическая ценность работы заключается в:
- разработке алгоритмов инструментальных программных средств автоматизации подготовки информационной базы системы структурного синтеза, в том числе, алгоритма формирования, дополнения и корректировки классификатора и множества запрещенных фигур;
- разработке подсистемы построения информационной базы класса объектов, предназначенной для хранения данных о признаках, их значениях, эмпирических и функциональных зависимостях предметной области;
- разработке оптимизированного алгоритма структурного синтеза объекта на основании предложенного подхода;
- разработке подсистемы структурного синтеза, инвариантной по отношению к информационной базе;
- разработке программной среды автоматизации создания САПР структурного синтеза, адаптация которой к конкретной предметной области позволяет создать САПР класса рассматриваемых объектов.
Разработанная программная среда автоматизации структурного синтеза внедрена при создании САПР спироидных редукторов в учебно-научном производственном центре «Механик», что подтверждено актом внедрения, а также в учебный процесс кафедры «Технология роботизированного производства» по дисциплинам «Основы САПР», «Математическое моделирование процессов машиностроения».
Структурно диссертация состоит из введения, 4 глав, заключения, двух приложений, изложенных на 133 страницах, списка литературы, содержащего 108 источников.
Первая глава работы посвящена анализу существующего положения в области автоматизации процесса создания изделия, методам и степени автоматизации этапа структурного синтеза. С этой целью были рассмотрены шаги процесса создания объекта, проанализирована их суть, методы и характер автоматизации каждого из них. Рассмотрены существующие комплексные и специализированные САПР, методы, средства и уровень автоматизации проектирования в этих системах. Показано, что этап структурного синтеза является менее автоматизированным вследствие отсутствия сквозных функциональных зависимостей предметных областей. Предложено использовать в качестве аппарата синтеза оптимизированный комбинаторный перебор, рассмотрены методы оптимизации и сделан вывод о целесообразности использования в качестве математической основы методов характеризационного анализа, разработанного проф. Горбатовым В. А. и развитого в трудах его учеников.
Вторая глава посвящена разработке математического обеспечения системы автоматизации структурного синтеза. Выделены и обоснованы основные принципы описания синтезируемого объекта, рассмотрено построение графовых моделей отдельных объектов, а также правила и алгоритмы построения обобщенного графа как модели всего класса объектов. Описаны правила построения, расширения и корректировки классификатора для данного класса объектов, а также на его основе построена логическая модель, позволяющая описать все множество вариантов исполнений. Предложена модель процесса синтеза, созданная на основе методов характеризационного анализа и оптимизированная по 4 направлениям:
1) исключение из процесса синтеза этапа порождения вариантов, которые впоследствии окажутся запрещенными;
2) сокращение анализируемого множества промежуточных структур, в результате чего будет исключен анализ вариантов, не являющихся запрещенными фигурами, на наличие запрещенных фигур в их составе;
3) минимизация влияния запрещенных фигур на процесс синтеза путем сокращения времени от момента зарождения запрещенной фигуры до момента ее возникновения;
4) использование двоичной логики с целью сокращения затрат вычислительных ресурсов.
Описаны методы подготовки информационной базы, обеспечивающие необходимую оптимизацию. В третьей главе рассмотрена модель системы структурного синтеза, описаны методы получения, хранения и обработки данных в разработанной системе.
В соответствии с предложенной организацией процесса синтеза на основании комбинаторных алгоритмов в составе системы выделены три подсистемы, каждый из которых соответствует одному из этапов ее работы:
а) Этап накопления данных о структуре и характеристиках известных вариантов конструкции объекта синтеза, формирование множества признаков, их исходов, запрещенных фигур (подсистема сбора данных);
б) Этап адаптации накопленной информации для синтеза новых вариантов структуры (подсистема адаптации и структуризации данных);
в) Этап синтеза новых вариантов структуры в соответствии с заданными ограничениями (подсистема синтеза).
Представлены требования, предъявляемые к каждой из указанных подсистем, а также необходимый состав этих подсистем.
Четвертая глава посвящена описанию функционирования системы и особенностям ее программной реализации.
Результаты работы докладывались на научно-техническом форуме с международным участием «Высокие технологии - 2004» (Ижевск), международных конференциях «Теория и практика зубчатых передач» (Ижевск, 2004), «Современные технологии» (Ижевск, 2006).
По результатам работы опубликовано 8 печатных работ.
Анализ существующих средств автоматизации на предмет сквозной автоматизации процесса создания изделия
Важность разработки САПР как ключевого элемента в процессе автоматизации процесса создания промышленного продукта не вызывает сомнений. В связи с этим средства первичной автоматизации проектирования стали появляться уже в 50-х годах XX столетия, связаны они были с первым использованием ЭВМ для проведения некоторых конструкторских расчетов, а также для подготовки программ для станков с ЧПУ. С тех пор с каждым годом такие средства автоматизации развивались, усложнялись и систематизировались, приобретая все новые и новые функции, расширяя круг решаемых задач, и этот процесс продолжается по сей день.
Существующие области применения САПР достаточно многообразны. С их помощью, в частности, разрабатываются: - изделия машиностроения (АРМ WinMachine, Autodesk Inventor, SolidWorks, ADEM, bCAD, др.) [46, 88,102,103,107]; - технологические процессы в машино- и приборостроении (TECHCARD, КОМПАС-АВТОПРОЕКТ, PolyCAPP, Stalker NRM, пр.) [49,108]; - изделия приборостроения (Protel DXP, P-CAD, Circuit Maker, PowerPCB) [46, 88,106]; - объекты архитектуры и строительства (ArchiCAD, Pit Menu Construction) [53,104]; - геоинформационные системы (Autodesk Map Guide) [46]; - программное обеспечение (Borland Delphi, Microsoft Visual Studio, др.) [29].
Многообразие областей применения САПР обуславливает различие требований к аспектам и степени автоматизации процесса проектирования, которые зависят от предметной области каждой данной системы.
Набор функций, реализуемых САПР в каждой из областей применения также различается. Каждая отдельная САПР может реализовывать свою универсальность охватом предметной области проектирования за счет включения в себя максимального количества информации по всем составляющим эту предметную область темам, а также за счет включения в свой состав функций, так или иначе востребованных и универсальных для всех тем предметной области.
Так, система АРМ WinMachine, разработанная в России и относящаяся к классу машиностроительных САПР, представляет собой комплексное программное обеспечение для автоматизированного расчета и проектирования в машиностроении [102]. Структура программы организована в виде модулей, каждый из которых охватывает одну из областей проектирования: это и модуль комплексного расчета и проектирования приводов произвольной структуры и всевозможных планетарных передач, и подсистема расчета неидеальных подшипников качения, выполняющая комплексный анализ опор качения различных типов, модуль расчета, анализа и проектирования валов и осей, модуль расчета зубчатых передач, модули расчета пружин, рычажных механизмов, различных соединений, резьбовых передач и пр. Каждый модуль содержит большое количество инженерных расчетов, касающихся затрагиваемой им области проектирования, а также некоторые из них включают в себя набор известных конструкторских решений элементов как справочную информацию для проектировщика.
Вне зависимости от типа создаваемого изделия машиностроения, основным результатом проектирования и конструирования является чертеж. Поэтому многие САПР машиностроительного профиля обеспечивают информационно-техническую поддержку именно процесса создания, визуализации и документирования модели и чертежа изделия, что позволяет им находить применения в конструировании разных групп таких изделий. Специфические инженерные расчеты для каждой отдельной области применения могут быть подключены к подобным системам в виде модулей расширения.
Одним из примеров таких САПР является Autodesk Inventor Series 10 [103]. Общий функционал системы реализован при помощи трех подсистем -Autodesk Inventor 10 для выполнения 3-мерного проектирования, AutoCAD Mechanical 2006, являющегося приложением AutoCAD 2006 и предназначенного для создания 2-мерных машиностроительных чертежей и деталировки, и Autodesk Vault 2006 - системы централизованного управления данными проекта.
Основной упор в данной системе сделан на удобство построения модели и чертежа конструируемого изделия. Для этого в Inventor Series 10 присутствуют возможности широкой параметризации элементов чертежа и трехмерной модели, а также расширяемая библиотека стандартных и готовых элементов конструкций, как поставленных с программой, так и разработанных и занесенных туда пользователем. Элементы модели, импортированные из библиотеки, могут быть подвергнуты модификации как при помощи параметрических зависимостей, так и простым изменением формы деталей в 3D при помощи так называемых «ручек».
Готовая трехмерная модель может быть автоматически сконвертирована в плоский чертеж по различным видам и проекциям. В полуавтоматическом режиме могут быть проставлены размеры и обозначения, а также на основании модели может быть автоматически создана спецификация, динамически изменяющаяся при редактировании исходной модели.
Также в систему включено некоторое количество инженерных расчетов, позволяющих производить вычисления по математическим формулам и физическим методикам.
Особенности описания объекта синтеза
Попытки формализовать структуру объекта синтеза в рамках систем автоматизации проектирования предпринимались неоднократно [70], одна из первых связана с представлением структуры объекта в виде совокупности модулей - самостоятельных технических структур более низкого уровня (деталей, узлов). Принцип модульности в представлении объекта получил довольно широкое распространение не только в описании изделий машиностроения, но в частности и в таких отраслях, как разработка программного обеспечения, конструирование радиоэлектронной аппаратуры и многих других [2,14,95, др.].
Для автоматизации структурного синтеза модульное представление дает возможность не только описать существующие объекты, но и получить новые их варианты как сочетания модулей из некоторого исходного множества [70].
Возможность получить множество описанных модулей дает принцип дедукции, в соответствии с которым информация о структуре класса объектов может быть собрана на основании рассмотрения ограниченного числа представителей данного класса. При этом сущность и направления рассмотрения, необходимые для фиксации важной для данного класса объектов информации, определяются в соответствии с принципом декомпозиции. Таким образом, принципы дедукции и декомпозиции дают возможность получить информационную базу для синтеза новых структур.
В то же время обратные им принципы индукции и композиции, на основании которых строятся новые структуры, дают возможность также и оценить достоверность и полноту полученного исходного описания объектов (путем синтеза любой декомпозированной структуры).
Число этапов декомпозиции, используемое для описания объекта, может быть также различным в зависимости от его класса, и в процессе формирования структуры может изменяться, так как само изделие (например, изделие машиностроения) состоит из составных частей - узлов, узлы - из сборок, сборки - из подсборок и т.д., причем каждая из этих составных частей также имеет свою внутреннюю структуру. Такая вложенность структуры дает возможность не только представить синтезируемую конструкцию в удобном для восприятия виде, но и задает порядок следования модулей при синтезе. Пример такого разложения на модули представлен на рис. 2.3 для объекта - редуктора.
Глубина проработки для каждого типа объектов может быть различной, что объясняется не только сложностью и комплексностью объекта, но и числом стандартизованных элементов, входящих в его состав, дальнейшая декомпозиция которых на модули уже не имеет практического смысла. Таким образом, сложное изделие будет представлено многоуровневой структурой с большим числом модулей, в то время как изделие с простой структурой и значительным количеством входящих в его состав стандартных элементов будет иметь гораздо меньше уровней в своем описании.
Например, для описания простых изделий типа вала, колеса достаточно двух-трех уровней, тогда как сложные конструкции - приводы, компрессоры, редукторы - нуждаются в описании, состоящем из пяти-шести, а иногда и большем числе уровней.
Естественно, что на более низких уровнях такой модели будет находиться большее число модулей, чем на тех, что расположены на верхних уровнях, так как каждый следующий уровень содержит модули, представляющие внутреннюю структуру модулей предыдущего уровня.
Очевидно, что при автоматизации структурного синтеза описанным способом одним из ключевых факторов является верное и полное описание известных вариантов структуры объектов класса синтезируемого. Во-первых, данные о структуре известных вариантов могут служить информационной базой для синтеза, так как в любом другом, отличном от структуры этих вариантов, виде сохранить знания предметной области с приемлемой степенью формализации возможным не представляется. Во-вторых, полученные описания могут служить проверочным материалом для всех создаваемых алгоритмов синтеза, что обеспечит корректность получаемой модели.
Описание подсистемы сбора данных
В соответствии с предложенной математической моделью подсистема сбора данных должна удовлетворять следующим требованиям: 1. Организация последовательности действий по формированию информационной базы. Информационная база должна зафиксировать в себе все данные о структуре каждого из рассмотренных вариантов объекта, о характеристиках этих вариантов, об ограничениях преметной области, как выявленных опытным путем, так и расчетных; 2. Обеспечение реализации экспертного опроса с удобным интерфейсом; 3. Обеспечение возможности получения данных от большого числа экспертов и совмещения их в одной модели; 4. Обеспечение корректности получения, обобщения и хранения данных.
Информационная база по каждому объекту, как было указано выше, имеет одинаковую структуру, представленную набором таблиц.
Данные о декомпозициях содержатся в таблице Decompositions. Каждая запись этой таблицы содержит данные об одной декомпозиции и состоит из 4 полей: уникального номера декомпозиции id, имени декомпозиции пате, даты последнего изменения декомпозиции modif, а также примечания description.
Список структурообразующих модулей содержится в таблице Pattern. Каждая запись таблицы Pattern содержит данные об одном структурообразующем модуле и состоит из следующих полей: уникального номера модуля id, номера модуля-родителя для данного модуля parent (для корневого модуля значение этого поля равно 0), имени модуля пате, уровня этого модуля Ivl, а также счетчика used вариантов декомпозиций, в которых присутствует данный структурообразующий модуль. Таблица Pattern, помимо хранилища данных о структурообразующих модулях, является материалом для построения обобщенного графа-дерева структуры объекта. Использование счетчика used позволяет своевременно отследить и удалить из этой таблицы вершины, не присутствующие ни в одном варианте декомпозиции объекта.
Помимо таблицы с данными обо всех вариантах структуры, в базе данных находятся таблицы, хранящие данные о каждой заданной декомпозиции в отдельности. Эти таблицы имеют имя dekXXX, где вместо XXX указан номер (значение поля id) данного варианта декомпозиции из таблицы Decompositions. В каждой из таких таблиц находится список номеров вершин, хранящихся в таблице Pattern, которые присутствуют в данной конкретной декомпозиции.
По аналогии с таблицей Pattern, содержащей структурообразующие модули, модули, обеспечивающих структурную полноту класса объектов хранятся в таблице Charact. Каждая запись таблицы Charact содержит данные об одной характеристике какого-либо структурообразующего модуля и состоит следующих полей: уникального номера характеристики id, номера набора альтернативных характеристик спо, значения характеристики value, а также номера структурообразующего модуля, которому принадлежит данная характеристика node (это значение поля id этого модуля из таблицы Pattern).
Характеристики для каждой декомпозиции хранятся в таблице chXXX (по аналогии с таблицами dekXXX), где вместо XXX указан номер (значение поля id) данного варианта декомпозиции из таблицы Decompositions. Каждая запись таблицы состоит из двух полей - node (номера структурообразующего модуля из табл. Pattern) и aid (номера характеристики из таблицы Charact).
Для реализации указанных требований к подсистеме сбора данных в ее состав входят следующие процедуры:
1. Процедура декомпозиции вариантов по структурообразующему признаку. Для реализации этой процедуры в состав системы входит форма Form2, позволяющая задать вновь либо изменить одну из ранее заданных структур отдельного варианта. Входной информацией для процедуры служат данные о структуре вариантов исполнения объекта синтеза, получаемые в ходе экспертного опроса, а также содержимое таблицы Pattern как шаблон для редактирования структуры. Выходной информацией является формализованная структура вариантов исполнения объекта, сохраненная в таблицах Decompositions, Pattern и dekXXX (где XXX- значение номера данной отдельной декомпозиции) базы данных об объекте. При помощи редактирования древовидной структуры объекта можно добавить, удалить или объединить структурообразующие вершины на разных уровнях представления. Укрупненный алгоритм процедуры декомпозиции нового варианта представлен ниже. 1) Начало 2) Добавление в таблицу Decompositions записи, соответствующей новой декомпозиции; 3) Создание таблицы dekXXX (где XXX - значение номера данной отдельной декомпозиции в таблице Pattern); 4) Заполнение программного компонента-дерева и таблицы dekXXX структурой, заданной текущим содержимым таблицы Pattern. Для задания связей между узлами структуры используются значения поля parent для каждого элемента; установка в качестве текущей корневой вершины структуры; 5) Выбор пользователем одного из вариантов действий: «Добавление новой вершины», «Удаление текущей вершины», «Объединение вершин», «Окончание»; 6) Если выбрано действие «Добавление новой вершины», то переход к п. 7, иначе к п. 11; 7) Запрос варианта добавления «Заново» либо «Из шаблона». 8) Если выбран вариант «Заново», то переход к п. 9, иначе к п. 10; 9) Задание имени вершины; добавление новой вершины в таблицу pattern, установка счетчика used в 1, добавление ссылки на вершину в таблицу dekXXXKSK потомка текущей; переход к п. 5;
Описание программного обеспечения среды
Выбор операционной системы Windows, обозначенный в предыдущем пункте, обусловлен широким распространением данной ОС в России и за рубежом, что несомненно будет способствовать скорости внедрения системы.
Для написания и компиляции всех модулей среды использована интегрированная среда разработки Borland Delphi 7 компании Borland Software. В связи с этим для хранения данных выбран формат Microsoft Access, так как Delphi снабжена компонентами, реализующими удобный доступ к данным этого формата средствами библиотек ODBC, входящими в стандартную поставку Microsoft Windows (то есть наличие Access на компьютере, где устанавливается среда, не обязательно), а также тем, что все таблицы БД в этом формате находятся внутри одного файла, что облегчает перенос данных.
Модель каждого отдельного класса объектов решено сохранить в отдельной БД. Структура такой БД должна включать в себя данные о каждой декомпозиции варианта исполнения объекта, о характеристиках каждого варианта, классификатор как исходные данные для синтеза. Каждый набор данных сохраняется в одной или нескольких таблицах.
Заполнение базы происходит в процессе функционирования программы синтеза модели, которые позволяют описать множество структурообразующих модулей вариантов объекта, множество модулей, обеспечивающих структурную полноту, а также сформировать обобщенное граф-дерево структуры объекта.
На первом этапе выполнения программы пользователю предлагается поочередно описать декомпозиции всех известных ему вариантов структуры объекта. Для каждого варианта структуры задается имя, которое характеризует этот вариант в дальнейшем, далее задается структура декомпозиции. Пользователь последовательно, начиная с корневой вершины, каковой является сам объект синтеза, задает их структуру. Таким образом, декомпозиция начинается с верхних уровней, и пользователь после рассмотрения каждого уровня при необходимости спускается на уровень ниже (рис. 4.1).
При сохранении вновь заданной декомпозиции производится добавление в таблицу Pattern тех вершин, которые были созданы именно при задании этого варианта декомпозиции, то есть тех вершин, которых там еще не было. Таким образом, после задания каждой новой декомпозиции, параллельно с сохранением информации в таблице dekXXX, производится дополнение таблицы Pattern, и затем при создании следующего варианта декомпозиции в качестве шаблона выводится уже текущее содержимое таблицы Pattern. Это позволяет поддерживать постоянство структуры объекта, а также упрощает создание обобщенного графа-дерева структуры объекта: после задания всех вариантов декомпозиции в таблице Pattern фактически оказывается само обобщенное дерево, содержащее все структурообразующие модули.
Но при таком способе сохранения информации о структурообразующих модулях возможна ситуация, когда в структуре объекта возникает новый промежуточный уровень. Например, вершина «Передача» была задана как совокупность вершин «Червяк», «Венец» и «Ступица», а при декомпозиции следующего варианта пользователь решил задать структуру вершины «Передача» как «Колесо» и «Червяк», а только затем - структуру вершины «Колесо» как «Венец» и «Ступица». В данном случае пользователю необходимо указать, что он желает объединить вершины «Венец» и «Ступица» в вершину «Колесо». В результате в данной декомпозиции, а также во всех декомпозициях, заданных ранее и содержащих вершины «Венец» и «Ступица» в структуре вершины «Передача», появится вершина «Колесо» на промежуточном уровне, состоящая из «Венец» и «Ступица» с их внутренней структурой (рис. 4.2).
Каждый вариант декомпозиции может быть впоследствии изменен, в него могут быть добавлены вершины (при добавлении пользователь может выбрать вершину-потомка того же родителя, если она есть в шаблоне и отсутствует в текущем варианте декомпозиции), или они могут быть удалены оттуда. Счетчик used для каждой вершины в таблице Pattern позволяет отследить вершины, которые в результате последующих редакций не используются ни в одном варианте декомпозиции, и удалить их из шаблона.