автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.06, диссертация на тему:Повышение эффективности функционирования интегрированных систем CAD/CAM на основе применения конвертеров форматов данных

кандидата технических наук
Чернопятов, Егор Александрович
город
Москва
год
2001
специальность ВАК РФ
05.13.06
Диссертация по информатике, вычислительной технике и управлению на тему «Повышение эффективности функционирования интегрированных систем CAD/CAM на основе применения конвертеров форматов данных»

Оглавление автор диссертации — кандидата технических наук Чернопятов, Егор Александрович

ВВЕДЕНИЕ.

ГЛАВА 1.

ПРОБЛЕМЫ РЕАЛИЗАЦИИ ПРОЦЕДУР ПРЕОБРАЗОВАНИЯ ДАННЫХ В ИНТЕГРИРОВАННЫХ СИСТЕМАХ CAD/CAM.

1.1 Обзор основных существующих обменных форматов данных.

1.2 Причины многообразия обменных форматов данных.

1.3 Влияние различных форматов на функционирование СAD/САМ-систем.

1.4. Постановка задачи исследования: CAD/CAM-системы и конвертеры.

ГЛАВА 2.

ПРОГРАММНО-АЛГОРИТМИЧЕСКАЯ МЕТОДИКА ПОСТРОЕНИЯ КОНВЕРТЕРОВ ОБМЕННЫХ ФОРМАТОВ.

2.1. Подходы к преобразованию форматов CAD/CAM-систем.

2.2. Реализация и преимущества конвертера с «подключаемыми» динамическими библиотеками

2.3. Применение динамически подключаемы библиотек в свете СОМ-технологии.

2.4. Реализация механизмов обмена данными.

ГЛАВА 3.

ВОПРОСЫ РАЗРАБОТКИ ПРОГРАММНО-МАТЕМАТИЧЕСКОГО ОБЕСПЕЧЕНИЯ КОНВЕРТЕРОВ ФОРМАТОВ ДАННЫХ.

3.1 Внутренние структуры данных.

Общие функции математического объекта.

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

3.3. Выбор NURBS в качестве внутреннего представления кривых и поверхностей.

3.4. Проблемы сохранения точности и валидации внутреннего формата.

ГЛАВА 4.

ПРАКТИКА ПРИМЕНЕНИЯ РАЗРАБОТАННЫХ МЕТОДИК.

4.1. Совместимость различных CAD/CAM-систем на уровне обменных файлов.

4.2. Применение внутреннего обменного формата.

4.3. Практическое использование программно-математических средств конвертеров форматов данных в интегрированных системах CAD/CAM.

Введение 2001 год, диссертация по информатике, вычислительной технике и управлению, Чернопятов, Егор Александрович

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

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

Современные задачи, возникающие перед наукой и техникой, вызывают необходимость проектирования сложных комплексов объектов в сжатые сроки. Устранить противоречивые требования повышения качества проектирования и снижения затрат, как временных, так и материальных, можно только с помощью автоматизирования проектирования. Цель автоматизации проектирования - снизить материальные затраты, сократить сроки проектирования, ликвидировать рост количества инженерно-технических работников, занятых проектированием. В последнее время в качестве такого средства автоматизирования наиболее широкое распространение получили CAD/CAM системы (система компьютерного черчения/система компьютерного технологического моделирования).

Термином CAD/CAM система обозначают область деятельности, связанную с созданием и эксплуатацией систем автоматизированного проектирования (CAD) и автоматизированного производства. CAD/CAM (Computer aided design/computer aided manufacturing) - это такая технология, которая ориентирована на применение ЭВМ для выполнения определенной функции проектирования и выпуска изделий и предполагает тесную интеграцию процессов проектирования и производства. Современные CAD/CAM системы обеспечивают автоматизированную поддержку работ инженеров и специалистов практически на всех стадиях цикла проектирования и изготовления новой продукции.

Все CAD/CAM системы содержат в себе три обязательные категории подсистем:

1. Пакеты программ для графического ядра системы (например, ACIS фирмы Spatial technologies, Concept Modeller фирмы Wisdom computing, Parasolid фирмы Unigraphics), реализующие твердотелное или поверхностное геометрическое моделирование детали [20].

2. Пакеты для анализа и оценки эксплуатационных свойств. Их использование позволяет отказаться от прототипирования деталей, узлов и изделий, а также от дорогостоящего оборудования. В качестве расчетных методов обычно используется МКЭ и другие.

3. Системы для подготовки управляющих программ (УП) для станков и технологического оборудования с числовым программным управлением (ЧПУ).

В целом все современные системы можно разделить на 3 большие категории по функциональным возможностям

Первая группа - системы начального (низкого) уровня. Обычно в состав этих систем входят подсистемы геометрического 2D И 3D моделирования, системы рендеринга сложных фотореалистичных изображений, простейшие средства подготовки управляющих программ. Как правило эти системы обладают слабыми средствами параметрического моделирования, средства управления проектами, анализа и сборки отсутствуют или являются сильно ограниченными по своим возможностям. К системам этого уровня можно причислить AutoCAD, CADDy, TopCAD, Компас и некоторые другие. Тенденция такова, что эти разработчики системы пытаются довести эти системы до уровня средних систем путём повышения качества геометрического аппарата и включения в их состав дополнительных модулей.

Следующая группа - системы среднего уровня. В их состав входит больший набор средств проектирования. Параметризация и ассоциативные связи используются в полном объёме. В комплект включаются пакеты управления сборками, проектными данными и документооборотом. Основное программное обеспечение пишется самой фирмой. Такие системы базируются на платформе Unix, хотя в последнее время появилась огромное количества версий популярных CAD/CAM для Windows. Примерами систем среднего уровня служат Cimatron, KONSYS200, Pro/Junior, Microstation.

Третьей группой являются «тяжёлые» системы, или системы масштаба предприятия. Это такие системы, как Pro/Engineer (РТС), Unigraphics (EDS), CADDS5 (Computer Vision), С ATI A (IBM). В состав входит большое количество модулей (40-70) различного назначения. Можно выделить следующие направления: графическое ядро для сосздания моделей, узлов, и т.д.; модули для создания сборок;

- системы анализа (CAE - computer aided engineering), МКЭ, кинематического, динамического, термального и другие; модули конструирования систем управления (гидравлика, пневматика, .); технологическая подготовка производства; модули международных обменных форматов STEP, IGES и других; модули управления данными проекта; собственные или коммерческие СУБД; - развитая система технической документации, руководств, примеров.

Любая CAD/CAM - система, как следует из названия, включает в себя и CAD, и САМ, как две составные части. Но каждая из этих частей имеет свою собственную структуру, то есть свой собственный структурный состав. Причём, каждый из компонентов этой системной структуры может нести различную функциональную нагрузку (для CAD свою, для САМ свою), но обязательно быть одинаковым по смыслу. Итак, в настоящее время в каждой системе принято выделять, и выделяют [16, 18,

19]: а.) математическое обеспечение - в основе этого компонента лежат математические методы, на базе которых строятся модели, описывающие объекты проектирования. Кроме того, к математическому обеспечению можно отнести методы численного решения алгебраических и дифференциальных уравнений, поиски экстремума и так далее. Но следует различать математическое обеспечение системы от математического обеспечения программной части, которое собственно входит в следующий структурный компонент; б.) программное обеспечение - это совокупность всех программ, необходимых для функционирования системы в целом. Часть программного обеспечения (в дальнейшем ПО), общесистемное ПО, предназначена для организации работы технических средств. Оставшаяся часть ПО собственно реализует процедуры проектирования детали и разработки технологического процесса её обработки, а также их объединение внутри единой системы (в CAD/CAM системах); в.) информационное обеспечение - этот компонент создаётся на базе данных, которые необходимы специалистам в процессе конструирования детали или заготовки и разработки технологического процесса обработки. Особенностью CAD/CAM - систем является то, что большую часть единого информационного обеспечения занимает технология и все технологические составляющие. Управление этим компонентом осуществляется общесистемным ПО; г.) техническое обеспечение - представляет собой совокупность взаимосвязанных и взаимодействующих технических средств, предназначенных для выполнения автоматизированного проектирования деталей, заготовок и технологических процессов обработки. Этот структурный компонент CAD/CAM - систем в последнее время полностью зависит от технического уровня общества; д.) лингвистическое обеспечение - данный компонент имеет в своей основе специальные языковые средства (языки проектирования), предназначенные для описания процедур автоматизированного проектирования. Основной частью лингвистического обеспечения являются проблемно - ориентированные языки (в дальнейшем ПОЯ). Они представляют собой комплексы лингвистических и программных средств. ПОЯ строят таким образом, что они содержат в себе оригинальные термины, операторы, команды которые несут определённое физическое, математическое и функциональное содержание. Лингвистическое обеспечение должно предоставлять максимум удобств пользователю, при бесперебойном функционировании системы; е.) методическое обеспечение - последняя составляющая структурного состава, включающая в себя документацию, регламентирующую порядок эксплуатации системы. Документы, которые относятся к процессу создания и разработки системы, в методическое обеспечение не входят.

Математическое обеспечение в существующих CAD/CAM системах

Известно, что наиболее важной структурной составляющей любой автоматизированной системы проектирования является математическое обеспечение. И это не случайно. Именно посредством математического обеспечения осуществляется работа с графической информацией, её обработка, а также управление информационным обеспечением. Это относится абсолютно ко всем автоматизированным системам проектирования, будь то CAD -, САМ - или CAD/CAM

- система. Особенную роль отводят математическому обеспечению в тех программных конструкторско-технологических пакетах, которые применяются при проектировании и t изготовлении деталей, содержащих сложные, комплексные поверхности. Это объясняется тем, что именно эти системы оперируют с наиболее сложной графической информацией. При рассмотрении математического обеспечения оперируют следующими понятиями [20].

Графическая информация и её обработка, которая используется в автоматизированных системах, предназначена для описания процесса конструирования и технологического процесса изготовления изделия. При проектировании новых изделий и процессов их обработки, реальному объекту ставится в соответствие модель. Над нею, а точнее над её графическим изображением, технолог или конструктор осуществляет различные преобразования, которые базируются на методах вычислительной математики, описанных в математическом обеспечении [2, 12, 29, 34]. В основном эти методы описывают тот или иной геометрический объект, а также возможную работу осуществляемую с ним, например использование объекта в качестве составной части изделия, или над ним, например отображение процесса резания на объекте при моделировании технологического процесса изготовления изделия.

Под геометрическими объектами понимаются геометрические образы, которые применительно к CAD/CAM системам следует рассматривать как множество точек

34]. Все геометрические объекты подразделяют на аналитически описываемые и аналитически неописываемые. Например, к аналитически описываемым геометрическим объектам, интересующим нас, можно отнести цилиндр, сферу, конус, эллипсоид. К аналитически неописываемым геометрическим объектам относят объекты, имеющие вид произвольной кривой или изогнутой поверхности, так называемые свободные кривые или свободные поверхности.

Информационное обеспечение автоматизированных систем и его особенности в CAD/CAM - системах

Информационное обеспечение в большинстве своём представляет большую базу данных, которая постоянно обновляется. Эта база данных содержит в себе те сведения, которые необходимы для успешной работы автоматизированной системы [16, 19]. В этом подразделе рассматривается характерная база данных для CAD/CAM - системы, то есть её строение (подразделение на модули) и сведения, которые содержатся внутри этих модулей.

В информационном обеспечении CAD/CAM - систем существуют свои особенности. База данных у них делится как бы на две части. Основную часть составляет база данных этапа технологического проектирования процессов обработки, а другая составляющая включает в себя графическую информацию, которая представляет собой готовые сведения по всем смоделированным ранее объектам на данной системе. Эти сведения могут содержаться в отдельных файлах, которые могут загружаться пользователем, и в случае сходства графической информации ранее смоделированного объекта с графической информацией моделируемого в настоящее время объекта, использоваться им на этапе проектирования изделия. Если система является параметрической (например, T-Flex CAD), то часть базы данных содержит геометрические образы типовых деталей или сборочных единиц (болты, гайки, подшипники,.) [24]. Благодаря параметрическим связям, наложенным на детали из базы, они будут автоматически изменять свои геометрические размеры по требованиям ЕСКД при изменении соответствующих участков чертежа конструктором. Такова типичная база данных в CAD - системе.

Гораздо более сложной является информационное обеспечение в САМ или основная часть (базы данных) CAD/CAM - систем. Внутри этой части в настоящее время принято выделять следующие информационные модули, или блоки [25, 32]:

1. данные по станкам - как правило, включают в себя марку станка по маркировке фирмы - изготовителя, характеристики станка (его основные геометрические размеры, частоту оборотов шпинделя, мощность приводов, количество координат и максимальное перемещение по ним) и так далее;

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

3. данные по специальным инструментальным принадлежностям - указываются их характерные размеры и с каким инструментом используются;

4. свойства материалов - обычно они уже заранее заложены в том модуле информационного обеспечения, где описывается сам инструмент (так как каждый тип инструмента предназначен для обработки определённого материала);

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

Такова структура современного информационного обеспечения автоматизированных систем. Но самое важное, чтобы система могла работать с созданной базой данных. Имеется в виду выбор нескольких вариантов для этапов конструирования и проектирования технологического процесса обработки детали и их предложение пользователю. Всё это возможно только в том случае, если база данных довольно обширна, обладает современными и актуальными на настоящий момент сведениями и выполнена на соответствующем программном обеспечении [32]. В настоящее время существует множество различных систем управления базами данных (в дальнейшем СУБД), но разработчики используют в основном такие СУБД, которые являются универсальными, то есть могут работать с различными операционными системами и быть совместимыми с другими СУБД и приложениями. Таким образом, можно выделить основное направление в разработке информационного обеспечения: принимать во внимание и учитывать максимальное количество факторов, влияющих на разработку технологического процесса изготовления изделия и на процесс проектирования этого изделия, постоянно совершенствовать и формировать новые сведения в базе данных, а также обновлять старые, а кроме того обеспечивать совместимость базы данных со многими СУБД с целью, предоставить возможность обновления в ней сведений конечным пользователем (это необходимо в том случае, если база данных разработана с использованием одной СУБД, а у пользователя другой вид СУБД). Такая концепция сформулирована и применяется в настоящий момент такими фирмами - разработчиками автоматизированных систем, как «Е-xapt» и «ЮЕМ» (последняя является отделением фирмы "Control Data").

Лингвистическое обеспечение в современных видах автоматизированных систем

Основное предназначение лингвистического обеспечения заключается в том, что оно призвано максимально облегчить работу пользователя и предоставить максимум удобств при работе с автоматизированной системой /8,9/. Понятно, что в этих целях применяется множество различных решений. Но принятие того или иного решения зависит, прежде всего от того, с какой операционной системой призвана работать та или другая система CAD, САМ или CAD/CAM. В этом разделе рассматриваются возможные варианты лингвистического обеспечения под операционные системы WINDOWS и MS - DOS, которые являются разработками фирмы «Microsoft».

В современных автоматизированных системах до недавних пор было принято выпускать две различные версии под одну и другую операционную среду (и WINDOWS и MS - DOS). Однако сейчас ситуация радикально изменилась. Большинство разработчиков автоматизированных систем в качестве основной версии выпускают версию под операционную среду WINDOWS, и лишь поддерживают пользователей, которые все еще пользуются версиями для ДОС.(в качестве примера можно привести фирму Гемма. Последняя версия САМ системы «FeMMa3D 6» была выпущена для DOS в 1998 году. В настоящее время фирма занимается разработкой версии для Windows, выход окончательной версии намечен на 2000 год). Особенно это стало заметно с появлением таких систем, как WINDOWS 95 и WINDOWS NT 4.0, несмотря на то, что вышеупомянутые системы достаточно требовательны к ресурсам компьютера. Однако в последние два года (1998-1999) снижение цен на комплектующие для персональных компьютеров приняло обвальных характер, что только увеличило популярность этих ОС, и, как следствие, бурное развитие сложных и требовательных к ресурсам программ, к которым и относятся CAD/CAM системы. Если раньше сначала появлялась версия под MS - DOS, а затем приложение под WINDOWS 3.1 или 3.11, то теперь о версии под MS - DOS часто просто забывают. Не последнюю роль в такой популярности WINDOWS, сыграло очень удобное лингвистическое обеспечение или пользовательский интерфейс, что самое важное простота его создания для разрабатываемых автоматизированных систем.

Лингвистическое обеспечение всех автоматизированных систем под WINDOWS, и не только их, как и у самой операционной среды, носит вид многооконного интерфейса [25, 29]. В основе такого интерфейса лежит главное системное окно с двумя видами пользовательского меню: системным и командным. Для разработчиков является очень удобным то, что отпадает необходимость в специальном создании системного меню. Оно создаётся практически автоматически, путём включения в программное обеспечение (лингвистической его части) нескольких команд, которые предусмотрены в компиляторах под операционную среду WINDOWS. С другой стороны появляется некий стандарт в работе с автоматизированными системами. И пользователю, хотя бы с этой стороны, становится легче освоить новую CAD -, САМ -или CAD/CAM - систему, если он работал раньше хотя бы с текстовым редактором «WinWord» для операционной среды WINDOWS. Конечно, в системном меню автоматизированных систем будут несколько другие опции, чем в текстовом редакторе, но приказы в этих опциях в большинстве своём будут совпадать. И это понятно, ведь системное меню несёт туже функциональную нагрузку. То есть приказами из этого меню могут осуществляться такие операции, как создание каталога, создание файла, открытие файла, копирование файлов, редактирование файлов, удаление файлов и другие. Становится ясно, что это совершенно определённый набор системных команд. Всё это очень просто и удобно, но можно ещё больше повысить удобство за счёт настройки панели инструментов системного меню [25, 29]. Она представляет собой набор небольших картинок, так называемых иконок, при нажатии, на которые может выполняться одна из системных команд. Тогда отпадает необходимость постоянно активировать эти команды из опций меню, а чтобы начинающий пользователь не смог запутаться в иконках, при подводе к ним курсора появляется подсказка, что произойдёт при активизации той или другой иконки.

Несколько сложнее обстоит дело с командным меню, так как оно призвано осуществлять основные функции заложенные в систему. И если внешне оно выглядит точно также как и системное меню, с набором опций, кнопок и иконок, то в его основе лежит, как правило, мощный командный анализатор. В этом анализаторе описаны функции, которые выполняются при активизации той или иной опции командного меню. В системах CAD/CAM, такой анализатор строится по разделённому принципу. То есть сначала пользователь выбирает в командном меню, с какой частью автоматизированной системы он желает работать. Это зависит от того, на каком этапе, будь то проектирование изделия или проектирование технологического процесса изготовления изделия, находится пользователь. В анализаторе активируются те функции, которые включены в командное меню для того или иного этапа. Для этапа проектирования изделия это может быть моделирование поверхностей различными методами, построение геометрических объектов, объединение геометрических объектов в изделие, получение полутонового изображения. На этапе технологического проектирования это может быть выбор оборудования, выбор инструмента, изменение (редактирование) режимов резания, изменение (редактирование) технологического процесса изготовления детали и так далее. Но что важно отметить, так чтобы изображение, полученное на этапе проектирования, было понятно системе на этапе технологического моделирования, а затем и на этапе разработки управляющей программы, необходимо, в качестве специальной опции или приказа командного меню CAD/CAM - системы, иметь возможность конвертирования изображения в специальный графический формат (если это CAD система), и возможность чтения обменных файлов других систем (особенно если это CAD). Способ обмена данными в каждой системе организуется по-своему. Обычно по таким принципам и с такой структурой строится лингвистическое обеспечение автоматизированных систем под операционную среду WINDOWS. При построении системы под другую операционную систему, MS - DOS В чём же отличие его построения под другую операционную систему, MS - DOS?

Операционная система MS-DOS появилась намного раньше операционной системы WINDOWS и имела в своей основе совершенно другой принцип общения с пользователем. С философской точки зрения можно сказать, что MS-DOS - система знаковая, в то время как WINDOWS - образная.

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

Но ещё большие неудобства были у создателей CAD -, САМ - и CAD/CAM -систем при разработке собственно пользовательского интерфейса. Лингвистическое обеспечение автоматизированных систем базировалось на двух частях: анализатор, который был описан выше в данном подразделе, и интерфейс пользователя с его графической частью и системным меню. То есть кроме создания хорошего анализатора, в котором описывались все необходимые функции для моделирования изделия и процесса технологического проектирования, разработчики создавали ещё и пользовательский интерфейс, который призван был по своей сути облегчить работу конечного пользователя с автоматизированной системой. Но он различался у разных разработчиков, и даже от версии к версии. WINDOWS же предоставляет стандартные средства для построения интерфейсов, благодаря чему все ГИП CAD/CAM в корне стандартизованы.

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

Программное обеспечение в сеете требований, предъявляемых ему разработчиками CAD -, САМ - И CAD/CAM - систем

Программное обеспечение является наиболее ответственной частью любой автоматизированной системы. Оно призвано объединить в себе важность математического обеспечения и его сложность, обширность информационного обеспечения, удобство и универсальность лингвистического обеспечения. Кроме перечисленных функций эта составляющая автоматизированной системы несёт ещё ряд сложных функций. Самое главное, что именно эта часть автоматизированных систем отвечает в целом за успешную работу [19]. Благодаря тому, как выполнено программное обеспечение и как оно функционирует, можно предсказать в целом успех или неуспех законченной автоматизированной системы у конечных пользователей. В то же самое время эту составляющую наиболее сложно оценить и выявить какие-то характерные её черты. Легко поддаются оценке лингвистическое и информационное обеспечение, так как одно представляет собой интерфейс общения пользователя с автоматизированной системой, а другое базу данных, которую легко просмотреть и определить её обширность и универсальность. Даже математическое обеспечение поддаётся оценке, так как разработчики автоматизированных систем в большинстве своём в сопроводительной документации указывают методы, используемые ими, по которым прослеживается создание математических моделей. Но невозможно найти ни одной автоматизированной системы, которая поставлялась бы с исходными файлами, содержащими описание программного обеспечения. В лучшем случае вместе с конечным продуктом поставляется незначительный набор исходных файлов, в которых путём несложных изменений опытный пользователь может расширить или наоборот сузить возможности работы системы. Например, прописать ещё один драйвер видеоадаптера, которым он хотел бы воспользоваться. Но в хороших системах такая операция проводится файлами настройки, в которых достаточно указать, возвращаясь к примеру, просто этот новый драйвер, предварительно записав его в каталог, где содержатся все драйвера для видеоадаптеров. Таким образом, обычная версия автоматизированной системы поставляется с набором файлов, которые обеспечивают работу самой системы и её настроек. Исходя из этого попробуем сформулировать два -три требования, которые предъявляются к программному обеспечению автоматизированных систем.

Конечно, основным требованием является написание программного обеспечения с использованием языков программирования «С», «С++» и «Delphi (Object Pascal)» [8, 28]. Но это не исключает частичного использования языков низкого уровня, особенно тогда, когда создаются собственные драйвера под аппаратные устройства, поставляемые только с этой системой. Это делается для того, чтобы улучшить качество работы с устройствами подключёнными к компьютеру. Иногда в комплект поставки входят собственные драйвера под «мышь» и дигитайзер. В последнее время всё больше появляется CAD/CAM - систем, которые имеют собственные системы управления рабочими органами станков. В представленной в данной работе системе также сочетается применение языков программирования низкого и высокого уровня.

Другое требование к программному обеспечению - рациональное сочетание компиляторов. Разные части программного обеспечения создаются с использованием одного и того же языка программирования, но компилируются с использованием различных компиляторов. Например, если создаётся автоматизированная система под операционную среду WINDOWS, то можно использовать компилятор «Visual С++», но также возможно использование компиляторов фирмы «Borland» или других фирм. Чтобы обеспечить максимальное быстродействие лучше использовать компилятор фирмы «Watcom». В технологической части автоматизированных систем следует использовать, для управления информационным обеспечением, компилятор той фирмы, чья СУБД применяется при разработке информационного обеспечения. Тем самым будет сводиться к минимуму вероятность ошибки при совместной работе информационного и программного обеспечений. Например, если использовалась при создании базы данных СУБД «Paradox», то лучше при создании части программного обеспечения по управлению этой базой применить компилятор фирмы «Borland», так как эта же фирма является разработчиком вышеназванного СУБД [20].

Такие требования к программному обеспечению удалось выявить в результате сопоставления различных видов автоматизированных систем.

Универсальность в части технического обеспечения, и простота в части методического обеспечения автоматизированных систем

Такая структурная составляющая автоматизированных систем, как техническое обеспечение, определяет техническое состояние общества, что было отмечено выше. Прежде всего, она представляет собой набор технических средств, которые относятся к рабочему месту пользователя системы [2, 19]. Этот набор весьма стандартен и может включать в себя: компьютер, графический монитор, один из видов манипуляторов («мышь», дигитайзер или другой) и другие средства. И если набор этот может меняться в незначительных пределах в сторону расширения или сокращения, то характеристики самих этих средств могут варьироваться весьма широко. Понятно, что от материального состояния конечного пользователя зависит, каким компьютером он может располагать, нужен ли ему графический монитор и так далее. Но все разработчики автоматизированных систем стремятся сделать свою продукцию максимально универсальной и пригодной для работы пользователя. Особенно это актуально у нас в стране. Универсальность системы должна разрешать работу её как на морально устаревших компьютерах с процессором 386 или 486, так и на мощных рабочих станциях IBM 6000/8000. Понятно, что невозможно обеспечить полный набор функций, которые будут выполняться автоматизированной системой и на рабочей станции, и на персональном компьютере PC 386 (486), но необходим стандартный набор функций, которые выполнялись бы на компьютерах любой конфигурации и любого вида.

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

Методическое обеспечение обычно включает в себя документацию по работе и эксплуатации системы. В ней описаны все команды работы с продуктом, файлы привлекаемые системой при её функционировании и файлы, которые создаются системой во время работы. Описание команд включает в себя не только синтаксис, но и все их параметры. Даются примеры и рекомендации по применению команд. Но самое главное, что можно отнести к методическому обеспечению, это обучение пользователей работе с системой. f - м vo мботы. Одной из, о > , i - 1 11 tiii i >i ( г' /1 л "JiU ls ; " j i 4t и 1 rt v и ' „ i j, if .{ Fi 1 ' i i ! Г v |>4<iiu i i ' , t } , 7 • " u 11 р/» , i'i ¡1.'-.'и't 3!ui л-руктсрских и только технологи»: - > ' <' систем, В последнее время ока стала почему. f tj i I;KT ( )t ; t II 1 i 1 t < t { i tO1 ! Ц < i f v > Ы >-<) [ U ! Ь it I I \ i ' проектирования, или разные конфигурации систем. Связано это как с дичв симпатиями инженерно-конструкторского персонала, привычками и предпочтешь к со стремлением руководства сэкономить на >

Например, ка рядовых конструкторов закупается несколько пакетов а -юго p; irxj лпепкего Уровня а. ЗЛЯ ведения СбОООК зякугщбтея ОДН'Л'-ДВЙ f'iS.DOTKG СТШТШ'Ш' с t ] . , 'IM < г ( I ( , i ! nOUHTTIp' . К Л Л >î' ' или iL).

Если болыниь- " , с; -cm CAD выдаёт готовую обработанную игкЬормадию в и о чГ'гг, го ке все САМ - системы имеют модуль, который бы

1,1 ".и Î 'J I л ' , г ( 1 ' t > , ' > j>[ > j ц , ^ t ) ч a î • ! ' î1 t ('».о î,. 4,v Ai - b.Jmw , „ î >; * J i J \ т o, . проблема возникает при разработке CAD/CAM - систем;: обеспечить работу о > < in и î во всех модулях ' 1 4 < у • «> b >|Т 1 * Щ 1 I f ~ ;( С < t 1 î .'-Vf 11 1 .OC«hv 11 J [ t [ Ii ^ I n, 1 ч ( i 'УП >\ r>, î h< i • s î v Mi ir Он определяет i, ' ть использования шока обои , о < м- г-чуц&ой детали.В

• ' i » ч в нашей стране растет до" z м ~ - v . j fit ïj ' 1 С villi г; ' , ->-> I ni t j> t материальных затрат. Следовательно, совершенствуются методы оодтотовки ш . " (О ¡1 /С ' для подготовки УН о i f , б V ' i - (Ы, 'то возникает' задача эффективности

Функционирования CAD/C.AM систем.

Цель работы. Повышение эффективности функционирования CAD/CAM систем, процесса проектирования и обеспечение точности передаваемой информации.

Для достижения поставленной цели необходимо решить следующие задачи: 1. анализ существующих обменных форматов на предмет нахождения закономерностей и недостатков современных подходов к обмену информацией между CAD/CAM системами;

2. разработка концепции и методологии построения средств преобразования обменных файлов;

3. разработка методики, инвариантной к используемому математическому обеспечению;

4. разработка информационно - алгоритмического и программного обеспечения для представленных выше задач.

Методы решений. Для решения поставленных задач были применены основные положения теории технологии машиностроения, системный анализ. Для разработки алгоритмов использован аппарат линейной и матричной алгебры, а также некоторые методы модульного проектирования. При программной реализации в полной степени были использованы методы объектно-ориентированного программирования и аналитической геометрии.

Научная новизна. Определена концепция конвертеров обменных форматов с добавляемыми библиотеками. Разработана методология написания программных модулей (реализация конвертеров). Построена модель внутреннего формата хранимых данных. Определен комплекс проблем сохранения качества при программировании средств обмена данными.

Публикации. По теме данной диссертационной работы опубликовано 4 научных работы.

Структура и объем диссертации. Диссертационная работа состоит из введения, 4х глав, заключения и выводов, списка литературы и приложений. Во введении на основании анализа рассматривается проблемы в реализации CAD/CAM систем в целом, анализ CAD/CAM по свойствам, анализ составных компонентов CAD/CAM систем. В первой главе проводится обзор состояния вопроса, анализ существующих международных форматов обменных файлов, актуальность решаемой задачи.

Заключение диссертация на тему "Повышение эффективности функционирования интегрированных систем CAD/CAM на основе применения конвертеров форматов данных"

Основные выводы по работе.

По результатам работы можно сделать следующие основные выводы.

1. Решена актуальная научная и практическая задача, обеспечивающая повышение производительности CAD/CAM систем на основе применения конвертеров обменных форматов с загружаемыми библиотеками.

2. Для обеспечения автоматизации производства разработана концепция и методология построения конвертеров обменных форматов, заключающаяся в разнесении программных модулей преобразования и управляющих модулей на разные уровни.

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

4. Разработанная методика инвариантна по отношению к использованию математического ядра, тем самым позволяя разработчикам использовать наиболее подходящее математическое программное обеспечение для конкретных задач.

5. Подтверждена целесообразность создания удобных для пользователя специализированных интерфейсов, соответствующих стандартам Microsoft Windows, облегчающих труд проектировщика, и повышающих, тем самым, качество и эффективность проектирования.

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

100 между управляющим модулем и библиотеками есть возможность размещать последние на сервере файлов (в том числе и в сети Internet).

7. Разработанные методы проектирования конвертеров целесообразно рекомендовать для использования при программировании систем автоматизирования проектирования.

8. Разработано программное, информационное и алгоритмическое обеспечение, а также обучающие примеры для освоения предложенной методики.

Библиография Чернопятов, Егор Александрович, диссертация по теме Автоматизация и управление технологическими процессами и производствами (по отраслям)

1. Авдеев Е.В. Windows 3.0. Справочник для программистов в 2 томах. М.ППИ НЦ, 1991

2. Автоматизированное проектирование и производство в машиностроении, под редакцией Ю. М. Соломенцева, В .Г. Митрофанова М.: Высшая школа, 1986.

3. Беллман Р. Динамическое программирование М.: Наука, 1960.

4. Библиотека Consistent Software, том 2, CD-ROM (103064, Москва, Токмаков пер.1. П)

5. Бородин Ю.С., Вальвачев А.Н., Кузьмич А.И. Паскаль для персональных компьютеров: Справочное пособие. Мн.: Высш. Шк.: БФ ГИТМП «НИКА», 1991.-365с.: ил.

6. Выгодский М.Я. Справочник по высшей математике М.: Наука, 1964

7. Джамп Д. AutoCAD. Программирование, пер. с англ. М, «Радио и Связь», 1992, 336с.: ил.

8. Елманова Н.З., Трепалин С.В. Delphi 4: технология СОМ М.: Диалог-МИФИ, 1999-320 с.

9. К. Де Бор. Практическое руководство по сплайнам М.: Наука, 1983.

10. Ковшов Е.Е. Сокращение материальных и временных затрат опытного и единичного произвожства путем автоматизированной подготовки управляющих программ для оборудования с ЧПУ: Дис. д.т.н, на правах рукописи, -М.: 1998 -369с.

11. Корн Г.и Корн Т. Справочник по математике для научных работников и инженеров М.: Наука, 1973

12. Корячко В. П., Курейчик В. М., Норенков И. П. Теоретические основы САПР -М.: Энергоатомиздат, 1987.

13. Корячко В П. и др. Теоретические основы САПР М.: Энергоатомиздат, 1987

14. Кузьмин-ст Вл. Кузьмин-мл Вл., Максин Ю., Васильев С. «СтеП97 -интегрированная система технологического проектирования». САПР и Графика, №4 1998, стр. 70-74.

15. Кутин А. А., Милькин А. В., Пирогов И. В. Повышение эффективностиизготовления штампов и пресс-форм на основе интегрированной CAD/CAM-системы высокого уровня. / Вестник машиностроения, №4 1998, стр. 27-29.

16. Норенков И. П. Введение в автоматизированное проектирование М.: Высшая школа, 1986.

17. Норенков И.П., Маничев В Б. Основы тории и проектирования САПР М.: Высш. шк. 1990

18. Петренко А. И., Семенков О. И. Основы построения систем автоматизированного проектирования Киев: Высшая школа, 1984.

19. Петров А. В., Чёрненький В. М. Разработка САПР в 10-ти книгах М.: Высшая школа, 1990.

20. Пирогов И.В. Разработка аналитического способа задания свободных поверхностей для решения геометрических задач вы интегрированных CAD/CAM системах : Дис. к.т.н, на правах рукописи, -М.: 1998 — 205с.

21. Проектирование технологических машин: Сборник научных трудов Выпуск 17 /

22. Под ред. д.т.н. A.B. Пуша. -М.: Издательство «Станкин», 2000. 81 с

23. Проектирование технологических машин: Сборник научных трудов Выпуск 18 / Под ред. д.т.н. A.B. Пуша. -М. : Издательство «Станкин», 2000. 81 с

24. Просис Дж. Иерархические модели автоматизации средствами MFC. PC Magazine/Russian edition Персональный компьютер сегодня. №4 (81), апрель 1998г, №5 (82), май 1998г

25. Руководство пользователя T-FLEX parametric CAD 3D версии 6.3. Трёхмерное моделирование.

26. Саймон Б. Стиль программирования пользовательский интерфейс WINDOWS 95, в журнале PC Magazine / Russian edition, №9 1995.

27. Специальные разделы математического анализа, под ред. А.В. Ефимова, Б.П. Демидовича М.: Наука 1986

28. Стечкин С. Б., Субботин Ю. Н. Сплайны в вычислительной математике М.: Наука, 1976.

29. Страуструп Бьёрн. Язык программирования С++, Ногинск, тип. в-ч 20760, 1991, 334с.

30. Фролов А. В., Фролов Г. В. Операционная система WINDOWS 95 для программистов М.: Диалог - МИФИ, 1996.

31. Цыпкин А. Г. Справочник по математике М.: Наука 1980

32. Чернопятов Е.А. Разработка специализированного графического формата SRF для модуля моделирования свободных поверхностей. Дипломная работа на соискание степени магистра. М. МГТУ СТАНКИН, 1997 г.

33. Четвериков В. Н, Самохвалов Э. Н, Ревунков Г. И. Базы и банки данных М.:1. Высшая школа, 1987.

34. Шикин Е. В., Боресков А. В. Компьютерная графика М.: Диалог - МИФИ, 1995.

35. Шпур Г., Краузе Ф.-Л. Автоматизированное проектирование в машиностроении М.: Машиностроение, 1988.

36. On NURBS: a survey. LesPiegl, University of South Florida, IEEE Computer Graphics Newspaper, Jan 1991

37. CAE NEWS. Engineering and manufacturing solutions. Issue #5, 1995

38. Mund. VDA Flaechenschnittstelle (VDA FS), Version 2.0 - Frankfurt: Verband der Deutschen Automobilindustrie, 1987

39. STEP ISO 10303-11 Industrial automation systems and integration Product datarepresentation and exchange Part 11 (IS): Description methods. EXPRESS language reference manual104

40. STEP ISO 10303-203 Industrial automation systems and integration Product data representation and exchange - Part 203 (IS): Application protocol. Configuration controlled design

41. STEP ISO 10303-42 Industrial automation systems and integration Product data representation and exchange - Part 42 (IS): Integrated generic resources. Geometric and topological representation

42. The Initial Graphics Exchange Specification (IGES) Version 5.1 IGES/PDES Organization, USA, 1991