Содержание к диссертации
Введение
1. Анализ систем автоматизированного проектирования и постановка задачи исследования 17
1.1. Обзор систем автоматизированного проектирования 18
1.1.1. Структура и функциональные возможности систем нижнего уровня 20
1.1.2. Структура и функциональные возможности систем высшего уровня24
1.1.3. Структура и функциональные возможности систем среднего уровня27
1.2. Сравнительный анализ систем в приложении к задачам этапа предварительного проектирования самолета 30
1.2.1. Задачи этапа формирования облика самолета 30
1.2.2. Сравнительный анализ методов создания трехмерных моделей 33
1.2.3. Сравнение систем по наличию САМ/САЕ-модулей 36
1.2.4. Сравнительный анализ методов и стандартов обмена данными 37
1.2.5. Результаты сравнительного анализа систем 42
1.3. Предпосылки создания автоматизированной системы ФОС в рамках комплексной САПР 47
1.3.1. Анализ эволюции и динамики развития САПР 48
1.3.2. Сравнение методов построения САПР 50
1.4. Постановка задачи исследования 53
1.4.1. Вербальная постановка задачи 53
1.4.2. Математическая постановка задачи 55
1.5. Выводы 57
2. Определение основных моделей и параметров системы. 59
2.1. Блочно-иерархическая модель системы 59
2.2. Общесистемные принципы создания программ 65
2.3. Архитектура системы и моделирование взаимосвязей 67
2.4. Анализ технологий разработки программ 68
2.5. Анализ методов хранения данных 70
2.6. Анализ технологий обмена данными между приложениями 75
2.6.1. Файлы внутренней структуры приложения 76
2.6.2. Командные файлы и макросы 76
2.6.3. СОМ- и CORBA-технологии 77
2.6.4. Динамический обмен данными и механизм связывания и внедрения объектов ; 82
2.6.5. Итоги сравнения подходов к передаче данных 83
2.7. Сравнительный анализ сред программирования 84
2.8. Выводы 93
3. Математические модели агрегатов, методы построения обводов 94
3.1. Математические модели агрегатов и систем 94
3.1.1. Базовый класс «палуба» 94
3.1.2. Математическая модель пассажирских кресел 97
3.1.3. Математическая модель грузового оборудования 100
3.1.4. Модели служебно-бытового оборудования 104
3.1.5. Математическая модель центроплана 105
3.1.6. Формализация контрольных точек 106
3.1.7. Формализация совместной компоновки палуб в поперечном сечении фюзеляжа ПО
3.2. Математическая модель геометрических обводов сечения фюзеляжа... 112
3.3. Математические методы построения описанной окружности минимального радиуса 115
3.4. Построение схемы «вертикальная» восьмерка 120
3.5. Построение схемы «горизонтальная восьмерка» 122
3.6. Продольная компоновка салона 125
3.7. Методы построения направляющих кривых обводов фюзеляжа 128
3.7.1. Интерполяционный многочлен в форме Лагранжа 129
3.7.2. Кусочно-кубические многочлены Эрмита 131
3.7.3. Кубические сплайны 132
3.7.4. Аппроксимации кривыми Безье 136
3.8. Решение задачи стыковки секций фюзеляжа 142
3.9. Метод билинейной интерполяции 151
ЗЛО. Форматы хранимых данных 152
3.11. Выводы 154
4. Прикладное информационное обеспечение проектирования фюзеляжа самолета 155
4.1. Основные требования, предъявляемые к системе 155
4.2. Состав аппаратных и программных средств 156
4.3. Назначение, принципы работы и возможности системы 158
4.3. Интерфейс пользователя 160
4.3.1. Поперечная компоновка сечения 161
4.3.2. Продольная компоновка фюзеляжа 169
4.3.3. Справка «О программе» 171
4.3.4. Подсистема статистической информации 172
4.4. Взаимодействие С CAD/CAM/CAE-системами 173
4.4.1. Передача данных в CAD/CAM/CAE-системы 174
4.4.2. Создание файла VRML-формата 177
4.4.3. Передача данных в системы SolidWorks и CATIA 180
4.5. Проверка адекватности моделей 182
4.6. Программная реализация взаимодействия с системой COSMOS/M 183
4.7. Проектные рекомендации 188
4.7.1. Проектные рекомендации по развитию разработанных программных компонентов 188
4.7.2. Проектные рекомендации для написания новых систем 190
4.8. Выводы 191
Выводы 193
Заключение 195
Литература
- Обзор систем автоматизированного проектирования
- Блочно-иерархическая модель системы
- Математические модели агрегатов и систем
- Основные требования, предъявляемые к системе
Введение к работе
При современных все ускоряющихся темпах научно-технического прогресса динамика проектирования является одной из важнейших его характеристик, а сокращение сроков, стоимости и повышение качества проектирования становится одним из главных требований. Одним из решений этой проблемы является использование в проектно-конструкторских работах адекватных современным требованиям систем автоматизированного проектирования.
Последние десятилетия характеризуются появлением на мировом рынке систем автоматизированного проектирования (САПР), решающих широкий спектр задач геометрического моделирования, инженерного анализа, технологической подготовки производства и электронного документооборота, которые получили широкое распространение в аэрокосмической промышленности, более того, часть из них и создавалась в крупнейших аэрокосмических корпорациях.
В западной литературе термин САПР (Computer Aided Design, CAD) появился в конце 50-х годов прошлого века. При этом CAD-система рассматривалась только как система геометрического моделирования (СГМ).
Эволюция CAD-систем привела к появлению четырех наиболее значимых классов прикладных систем, соответствующих понятию САПР в Российской классификации [7]:
- CAD (Computer Aided Design) - система автоматизации проектных (чертежных) работ;
- САЕ (Computer Aided Engineering) - система автоматизации инженерных работ;
- САМ (Computer Aided Manufacturing) - системы автоматизированной подготовки производства; - PDM (Product Data Management) - системы управления инженерными данными и производственной информацией.
Технологии CAD/CAM/CAE/PDM-систем заключаются в автоматизации и повышении эффективности конкретных стадий жизненного цикла продукта [115]. Для автоматизации проектных работ наиболее значимыми являются CAD/CAE-системы.
По опубликованным данным использование САПР позволяет в 2-3 раза сократить время проектирования и доводки летательных аппаратов (ЛА), в 3-5 раз - время подготовки их производства. При этом затраты на разработку сокращаются на 50-80% [51].
CAD/CAM/CAE-системы - универсальны, направлены на решение широкого круга задач. Но при всем многообразии их функциональных возможностей для геометрического моделирования и «электронизации» инженерной документации им не хватает специализированного инструментария, который бы направлял конструктора путем предложения ему проектных альтернатив при решении той или иной прикладной задачи. Первичные операции процесса разработки, такие как Определение необходимости разработки, Формулирование технических требований, Анализ осуществимости и сбор сведений для разработки, а также Концептуализация разработки, относятся к подпроцессу синтеза (рис. В.1). Его результатом является концептуальный проект предполагаемого продукта. В этой части цикла, занимающей 5-10% от суммарных затрат труда на разработку продукта, принимается до 70-80% решений по проекту, определяется функциональность продукта, делаются основные финансовые вложения, необходимые для реализации идеи продукта [74].
Большая часть информации, порождаемой и обрабатываемой в рамках подпроцесса синтеза, является качественной, а, следовательно, неудобной для компьютерной обработки и преимущественно осуществляются конструктором вручную. Применение существующих CAD/CAE-систем на этом этапе весьма ограничено, так как их использование предполагает детальную проработку и построение модели в рамках уже принятого решения. Однако и на этом этапе разработчик может и должен использовать компьютер, например, при помощи баз данных собирать важную для анализа осуществимости информацию, а также пользоваться специализированными системами, позволяющими направленно решать определенные специфичные проблемы, проводить параллельную проработку ряда альтернативных вариантов, обеспечивая эффективность создания концептуальных проектов.
Готовый концептуальный проект анализируется и оптимизируется — это уже подпроцесс анализа. Прежде всего вырабатывается аналитическая модель, поскольку анализируется именно модель, а не сам проект. Очевидным является тот факт, что качество результатов, которые могут быть получены в результате анализа, непосредственно связано с качеством выбранной модели, которым оно ограничивается. На этапе анализа широко используются различные CAD/CAE-системы.
Данное диссертационное исследование направлено на поиск путей, методов и средств автоматизации этапа концептуального проектирования авиационной техники на основе использования передовых информационных технологий.
Наиболее сложным и востребованным объектом авиационной техники являются магистральные самолеты. Потребности внутреннего рынка России определила Федеральная программа развития авиации.
В настоящее время большинство авиакомпаний различных стран эксплуатируют самолеты, созданные в 1970-е и 1980-е годы. Два популярных в мире авиалайнера Boeing 737 и 747 были созданы в 1967 и 1969 годах соответственно. Самые популярные легкие самолеты Cessna 172 и Piper Cherokee еще более старые. Более того, самым старым из находящихся в эксплуатации, остается почтенный Douglas DC-3, которому сейчас более 65 лет [87].
Пассажирский самолет содержит порядка 106-108 деталей, для сравнения, автомобиль - около 10 тысяч. Продолжительность разработки нового самолета (до первого полета опытного образца) выросла с 3-4 лет в 60-е годы прошлого века до 8-10 лет в 80-е годы и продолжает расти по мере усложнения конструкций. Как следствие, увеличиваются ресурсы человеческого труда и машинного времени, необходимого на разработку конструкции, постоянно растет число специалистов, участвующих в разработках. По зарубежным данным, трудозатраты в человеко-часах на разработку 1 кг массы конструкции самолета возрос ли с 4-5 — -— в начале пятидесятых годов до 25-30 — — в семидесятые и продолжают расти.
Сложность и повышение требований к характеристикам современной авиационной техники вызывает увеличение расходов на проектирование самолетов. Причем, планируемые и истинные величины стоимости и времени проектирования и изготовления, как правило, существенно отличаются. Это объясняется ограниченными способностями человека обрабатывать огромные потоки информации, принимать решения в условиях большой неопределенности, вызванной невозможностью достаточно глубокой проработки всех вопросов, связанных с проектированием сложных объектов на различных этапах его разработки. Кроме этого, при проектировании новых моделей самолетов происходит существенное смещение акцентов по сравнению с концепциями, которые закладывались в существующие модели самолетов. Принцип «делай то, что позволяет современный научно-технический уровень» заменяется принципом «делай то, что нужно сделать».
В настоящее время неизвестны алгоритмы прямого синтеза сложных технических объектов. Их проектирование осуществляется многократным повторением анализа различных вариантов проектных альтернатив. Особенность проектирования самолета — максимальное количество концептуальных решений на самых ранних этапах проектирования в условиях максимальной неопределенности. От качества этих решений в огромной мере зависит возможность последующей реализации проекта самолета с желаемыми характеристиками в заданные сроки.
Стала очевидной настоятельная потребность поиска путей и средств повышения производительности труда конструктора при одновременном увеличении качества проектных работ, сокращения сроков проектирования и снижения материальных затрат. Приведенные выше причины привели к необходимо 13 сти разработки научно-методического обеспечения создания прикладного информационного обеспечения для автоматизации задач этапа концептуального проектирования и разработки на их основе автоматизированной системы компоновки и формирования облика фюзеляжа магистрального самолета, с возможностью передачи результатов моделирования для дальнейшего анализа в существующие СГМ.
Актуальность проблемы и возможность ее решения на принципиально новом техническом уровне обусловили выбор темы исследования.
Методологической и теоретической основой исследования являются фундаментальные труды по проблемам проектирования конструкции, оборудования и эксплуатации самолетов, к которым относятся работы ведущих специалистов СМ. Егера [41, 49, 50], В.В. Мальчевского [71, 72, 73], О.С. Самойловича [89, 90], А.Н. Арепьева [2, 3, 4, 5, 6], В.А. Киселева [55, 56], М.Ю. Куприкова [60, 61, 62, 63, 64, 65, 66, 67] и ряда других отечественных и зарубежных авторов [11, 12, 52, 93, 95, 96, 100, 113, 114], ученых ЦАГИ [102, 103] и других авиационных НИИ. В работах СМ. Егера и В.В. Мальчевского заложены теоретические основы автоматизированного проектирования самолетов. В работах В.В. Мальчевского предложен матрично-топологическии метод синтеза схемы и компоновки самолета. В работах М.Ю. Куприкова приведено научно-методическое обеспечение автоматизации решения «обратной» задачи проектирования самолета при «жестких» ограничениях. Работы А.Н. Арепьева посвящены вопросам выбора параметров и вариантов компоновок фюзеляжей магистральных самолетов.
Математические методы моделирования, применяемые в авиастроении, развивались в работах В.А. Зубкова, В.А. Надолинного, В.А. Осипова, Н.Н. Рыжова [104], А.Д. Тузова [98], Н.Ф. Четверухина, П.В, Филлипова, В.И. Якунина [104] и их учеников, а также зарубежными учеными: Дж. Албергом, П. Бе-зье [107], К. Де Бором [ПО], П. Кастальжо, С.А. Кунсом [109], Р.А. Лаймингом, Э. Нильсоном, М. Праттом [83], Дж. Уолшом, Дж. Ферпосоном, А. Фоксом. При выполнении исследования использованы основополагающие работы по теории сплайн-функций и полиномов высоких степеней: В.А. Зубкова, В.А. Осипова, А.Д. Тузова, П. Безье, К. Де Бора; вопросам автоматизации графических работ и использования ЭВМ в начертательной геометрии: П. Безье, В.А. Надолинного, П.В. Филлипова, В.И. Якунина; вопросам создания систем автоматизации проектирования: И.П. Норенкова [76, 77, 78], В.В. Липаева [69], А.И. Петренко [81], Б.Я. Советова [94], С.А. Яковлева [94].Работами в области автоматизации компоновки салона магистрального самолета занимались как в нашей стране, так и за рубежом. Среди них работы СМ. Егера, О.С. Самойлови-ча, В.В. Мальчевского, М.Ю. Куприкова, А.А. Пухова [85], Н.К. Лисейцева, Х.Хаберланда [111,112].
В работах В.В. Мальчевского предложена методика автоматизированной продольной компоновки пассажирской палубы.
В автоматизированной системе проектирования самолетов VisualCAPDA, разрабатываемой при участии профессора X. Хаберланда на UNIX-платформе, осуществляется попытка автоматизации всего цикла проектно-конструкторских работ.
Анализ работ убеждает в необходимости тесной интеграции наработок в области создания автоматизированных систем, математических методов моделирования, применяемых в авиастроении, проектирования конструкции, оборудования и эксплуатации самолетов, методик автоматизации компоновки магистрального самолета, автоматизированного формирования облика магистрального самолета с целью повышения качества принятия технических решений на ранних этапах проектирования и создания современных САПР.
Практическая ценность диссертационной работы.
Практическая ценность разработанного научно-методического обеспечения заключается в возможности построения на его основе инвариантного относительно различных СГМ прикладного программного обеспечения в рамках комплексной САПР. Разработанные методы и алгоритмы использованы соискателем при создании системы компоновки и формирования облика фюзеляжа магистрального самолета (СКиФОФ МС) и системы визуализации полей зазо 15 ров и напряжений, которые являются «инструментами» проектировщика-исследователя для формирования различных вариантов решений.
Результаты работы могут быть использованы в НИИ и ОКБ авиационной промышленности при разработке комплексных систем автоматизированного проектирования, а также при подготовке специалистов в авиационных учебных заведениях.
Внедрение результатов.
Разработанные геометрические, математические и аналитические модели оборудования, процедуры компоновки, алгоритмы и программы, вошедшие в систему, внедрены на ЗАО «АвиаСТЭП», ООО «Sol id Works-Russia».
Основные теоретические положения и некоторые результаты исследования опубликованы автором в девяти научных статьях [17, 18, 23, 25, 29, 32, 36, 37, 38], а также содержатся в тезисах докладов [14, 15, 16, 19, 20, 21, 22, 24, 26, 27, 28, 30, 31, 33, 34, 35] на научно-технических конференциях всероссийского и международного значения.
Объем и структура работы.
Диссертационная работа состоит из введения, четырех разделов, выводов по работе, списка литературы (116 работ отечественных и зарубежных авторов) и приложения. Общий объем диссертации — 208 страниц, включая 12 таблиц и 103 рисунка.
Во введении анализируется состояние проблемы автоматизации проект-но-конструкторских работ, сформулирована цель исследования, дается общая характеристика диссертации.
В первой главе проводится сравнительный анализ структуры и функциональных возможностей отечественных и зарубежных систем геометрического моделирования, обосновывается актуальность автоматизации процесса формирования проектных альтернатив для начальных этапов проектирования и создания автоматизированной системы компоновки и формирования облика фюзеляжа магистрального самолета, ставится задача исследования.
Вторая глава посвящена формализации процесса построения системы, определению ее ключевых характеристик: технологии разработки, методов моделирования взаимосвязей между элементами, технологий хранения и передачи данных, выбора операционной системы и лингвистической среды программирования.
Помимо общей концепции унификации были разработаны конкретные программные решения, позволяющие применить разработанное научно-методическое обеспечение в практике проектирования САПР. Техническая сторона реализации этих решений изложена в третьей главе. Приведено описание моделей, методов и алгоритмов, используемых в комплексной расчетной модели, включающей в себя параметрические модели оборудования и обводов, формы поперечного сечения, методы поиска окружности минимального радиуса, методы формирования обводов, используемые при продольной компоновке, методы взаимодействия с СAD/CAM/CAE-системами, описаны допущения и ограничения, принятые в рамках исследования.
Четвертая глава посвящена описанию основных возможностей и принципов работы созданной автором автоматизированной системы компоновки и формирования облика фюзеляжа магистрального самолета и системы визуализации полей зазоров и напряжений при стыковке секций фюзеляжа.
В приложении даны материалы о внедрении результатов работы, приведена таблица адекватности моделей.
Обзор систем автоматизированного проектирования
Ключевым элементом процесса создания любого сложного технического объекта является разработка его проекта - процесс проектирования. Проектирование высокотехнологичных изделий, к которым относится и магистральный самолет, является многоэтапным, итерационным, трудоемким, динамическим процессом.
Данный алгоритм работает внутри каждого из этапов проектирования (рис. 1.2). На каждом этапе для того, чтобы проводить анализ, необходимо сначала сформулировать проектную альтернативу (синтезировать гипотезу). Отбор плодотворных гипотез осуществляется на основе многократного повторения анализа для различных вариантов проектных альтернатив.
Укрупненная схема процесса проектирования самолета Понятно, что степень автоматизации процесса проектирования во многом определяется возможностью формализации той или иной проектной задачи, а также используемыми САПР.
Вторая половина XX века характеризуется появлением на мировом рынке широкого спектра систем автоматизированного проектирования, которые условно можно представить в виде пирамиды: в ее основании системы нижнего, среднего, а на вершине - высшего уровня. Подобное деление обусловлено функциональностью, стоимостью и, как следствие, распространенностью этих систем.
К системам нижнего уровня, работающим на персональном компьютере (ПК), могут быть отнесены: AutoCAD фирмы AutoDesk Inc. (США), АСК/ТПП «КРЕДО» фирмы НИЦ АСК (Россия), T-FLEX фирмы «Топ Системы» (Россия) и KOMnAC-3D компании «АСКОН» (Россия) и др.
Системы нижнего уровня прошли более чем двадцатилетний путь разви тия и ориентированы на широкий круг задач.
Системы высшего уровня создавались в крупнейших аэрокосмических корпорациях: Локхид - С ADAM, Дассо - CATIA, Мак Доннел-Дуглас - Uni-graphics. Благодаря своей объектно-ориентированной направленности и большому набору дополнительных модулей на базе основного ядра, разрабатываемому как в рамках самих фирм, так и их партнерами, эти системы получили широкое распространение в аэрокосмической области. Полный пакет каждой из этих систем оценивается десятками тысяч долларов. Специалист, использующий эти системы, кроме высокой квалификации в своей узкой области знаний, должен быть профессионалом и в области работы с компьютером, обладать специфическими навыками, выходящими за стандартные рамки проектирования.
Динамика рынка САПР Системы среднего уровня, как принципиально новый класс программных продуктов, появились в середине 90-х годов прошлого века (рис. 1.3). Эти системы существенно потеснили как своих более «легких» собратьев, работающих на ПК, так и более «тяжелые» комплексы, изначально ориентированные на рабочие станции. Они переняли у систем высшего уровня неплохие возможности поверхностного и твердотельного моделирования, а у систем нижнего уровня -доступную цену и открытый интерфейс [43]. Открытый интерфейс систем стал достаточным условием для того, чтобы сторонние разработчики могли создавать собственные прикладные программы, и интегрировать их с этими системами. Подобная интеграция способна дать конечному пользователю гибкое решение его проектных, производственных и других задач.
На настоящий момент рынок САПР среднего уровня представлен целом рядом программных продуктов: SolidWorks, AutoDesk Inventor, Solid Edge и др.
Остановимся подробнее на структуре и функциональных возможностях наиболее распространенных из этих систем. Все рассматриваемые системы работают под управлением ОС Windows.
Система AutoCAD разработана на базе ядра геометрического моделирования ACIS. Наряду с созданием и оформлением чертежей в соответствии с правилами ЕСКД (модуль MechaniCS), осуществлением двумерного проектирования, в последней версии системы осуществляется поддержка двух типов трехмерных моделей: каркасных и поверхностных. Проектирование в AutoCAD ведется в плоских «слоях», которые накладываются один на другой. При поверхностном моделировании представление криволинейных поверхностей производится путем их аппроксимации, что снижает точность представления.
В AutoCAD имеются ограниченные возможности преобразования тел в поверхности и поверхностей в каркасные модели.
Для хранения и обмена данными используется формат DXF. В настоящее время система не имеет в своем составе модулей, осуществляющих подготовку программ для станков с ЧПУ.
Система обладает интерфейсом пользователя, характерным для продуктов Windows, поддерживает технологию OLE Automation Windows. На российский рынок поставляются системы с английским и русским интерфейсом ПОЛЬ зователя.
АСК/ТПП «КРЕДО» позволяет автоматизировать следующие виды работ: - создание пространственной каркасной или поверхностной геометрической модели изделия; - создание машиностроительного чертежа на базе построенной геометрической модели; -создание информационной модели изделия и получение на ее основе сборочных чертежей и таблиц спецификаций; -проведение численного анализа геометрической модели по методу конечных элементов в системе «Диана»; -генерацию управляющих программ механической обработки деталей для оборудования с числовым программным управлением (ЧПУ); - обмен информацией с использованием нейтральных форматов данных IGES, STEP, DXF.
Блочно-иерархическая модель системы
Системный подход предполагает изучение объекта проектирования (самолета) как единой системы, выполняющей определенные функции в конкретных условиях. В то же время при системном подходе возможно расчленение сложных систем и процессов на составляющие их относительно самостоятельные подсистемы (подпроцессы). Каждая из этих подсистем также может быть расчленена на подсистемы более низкого порядка. Подсистемами самого низкого порядка являются элементы, внутренняя структура которых не представляет интереса для решения задач определенного уровня, однако, свойства которых влияют на свойства других подсистем и свойства системы [81].
При выборе объекта системного исследования необходимо руководствоваться следующими положениями: - объект должен обладать достаточной масштабностью, чтобы результаты его исследования давали значительный эффект по сравнению с рассмотрением системы по частям; - объект должен допускать описание (хотя бы приближенное) его структуры и функционирования математическими методами; - степень детализации исследуемого объекта должна соответствовать вычислительным возможностям современных ЭВМ.
В соответствии с принципами системного подхода каждому этапу проектирования (в том числе концептуального) свойственны свои модели, укрупненная схема модели «самолет» представлена на (рис. 2.2) [50].
Пример блоков (субмоделей) самолета
Каждый блок (субмодель) представляет собой объект, включающий в себя группы связей (уравнений), описывающих, например, геометрию самолета, его аэродинамические и весовые характеристики, стоимостные и эффективно-стные показатели.
Анализ структуры самолета, как объекта проектирования, проведенный в соответствии с принципами системного подхода, позволяют рассматривать его как иерархическую систему, состоящую из ряда подсистем, элементов, агрегатов и узлов (рис. 2.3). На каждом иерархическом уровне модель представляет собой набор субмоделей, отражающий те или иные стороны структуры и функционирования самолета и его подсистем, с требуемой степенью сложности.
Исходя из объектно-ориентированной парадигмы и иерархической структуры самолета и элементов, входящих в его состав, предлагается следующая схема взаимодействия классов, отвечающих за математические модели оборудования, входящего в состав фюзеляжа (рис. 2.4).
Все классы будут иметь один общий «родительский» класс, содержащий объявление таких обязательных свойств и функций как: - координаты расположения элемента; - функции определения высоты, ширины и глубины объекта; - функций рисования различных проекций элемента; - функций для нахождения контрольных точек; - функция загрузки и сохранения информации.
Пример соответствия схемы наследования классов иерархической структуре самолета При этом соблюдаются следующие базовые принципы наследования классов: 1. На каждом уровне абсолютно ничего не известно о свойствах более высоких уровней. 2. Каждый уровень представляет собой отдельные программы. 3. Связи между уровнями ограничены явными аргументами, передаваемыми с одного уровня на другой.
Упрощенный пример наследования классов приведен на рис. 2.5: Родительский класс Дочерний класс А Дочерний класс В Дочерний классЕ Дочерний класс D Дочерний классС
Рис. 2.5. Пример схемы сложного наследования классов Дочерние классы А, В являются дочерними классами 1-го уровня и по мимо своих свойств наследуют свойства родительского класса. Дочерние классы С, D, Е - дочерние классы 2-го уровня и наследуют свойства своих родителей - класс С — свойства класса А, являющегося для него родительским, класс Е — свойства класса В, а класс D — свойства классов А и В (т.н. множественное наследование).
Использование механизма полиморфизма позволит заменить в дочерних классах виртуальные функции родительского класса, действительными реализациями, значительно облегчив работу с ними. Целью полиморфизма является использование одного имени для задания общих для класса действий, причем каждый объект имеет возможность по-своему реализовать это действие своим собственным, подходящим для него кодом. Например, вызов функции рисования для пассажирского оборудования будет приводить к изображению кресла, для грузового оборудования — контейнера и т.д., т.е. при вызове функций не надо задумываться о типе объекта, для которого они вызываются [54]. За счет использования механизмов инкапсуляции и множественного наследования, можно будет обеспечить инвариантность вызываемых методов для структур более высокого уровня.
Такая схема наследования позволит без искажений реализовать виртуальный технологический процесс сборки фюзеляжа.
Из данной иерархической структуры вытекает возможность построения САПР с декомпозицией на отдельные подсистемы, соответствующие подпроцессам проектирования самолета в рамках конкретного этапа (рис. 2.6) - можно упростить проблему, решая ее поэтапно и получая положительный эффект уже при решении частных задач автоматизированного проектирования. В рамках каждой из них, в соответствии с технологическим процессом, можно осуществить дальнейшее разбиение. Разрабатывая отдельные подсистемы, следует с самого начала обеспечивать их аппаратную, программную и информационную совместимость.
Математические модели агрегатов и систем
Как было отмечено в п. 2.1, в иерархическую модель наследования классов, отвечающую составу элементов фюзеляжа, вводится дополнительный «базовый класс», не имеющий физических прототипов (см. рис. 2.4). Его появление объясняется несколькими объективными причинами:
1. С точки зрения программирования, когда невозможно заранее определить, сколько элементов того или иного типа будет присутствовать в модели, данные обычно хранятся в массивах переменной длины. При этом существует два варианта размещения данных: ведение отдельных массивов для каждого типа объектов (например, пассажирского, грузового оборудования, кухонь, гардеробов и т.д.) (рис. 3.1, а) или ведение ссылочного массива (рис. 3.1, б). В первом случае, информация об элементах хранится в самих массивах, во втором — в массиве хранятся только ссылки (указатели) на области памяти, содержащие информацию об объектах, в результате основной массив занимает меньше памяти. Для реализации второго варианта необходимо чтобы данные, ссылки на которые хранятся в массиве, либо были одного типа, либо были унаследованы от общего родительского класса. Помимо выигрыша во времени при частых перестроениях моделей, которые неизбежны при итерационном проектировании, у второго варианта есть и другое преимущество - универсализация программирования - в случае данных с общим родительским классом все свойства родительского класса (реальные и виртуальные) могут быть вызваны без осуществления операции приведения типов, тогда как при отсутствии такого класса необходимо вручную описывать вызов той или иной функции для конкретного элемента.
Единственным ограничением, накладываемым размещением объектов в ссылочном массиве, является необходимость введения вспомогательной переменной, определяющей тип наследуемого класса (переменная palubajype), так как по ссылке определяется тип родительского класса, который может не иметь части функций, присущих дочерним классам.
2. С точки зрения компонуемых объектов - они имеют большой набор общих или схожих свойств — координаты положения в пространстве (точка привязки, центр масс и т.д.), габаритные размеры и другие; при визуализации для каждого элемента должны быть реализованы функции построения его основных проекций; так как информация об элементах хранится в определенной структуре, должны быть реализованы функции чтения-записи. Включение объявлений и(или) реализаций таких свойств в базовый класс позволит избежать их объявления в каждом из наследуемых классов, так как при наследовании все «открытые» функции, процедуры и переменные родительского класса автоматически переходят в дочерний класс.
Таким образом, данный класс содержит описания общих для всех классов функций и переменных: Z_positionf zazor_next, depth, paluba_type и других. Объявления функций, начинающиеся с ключевого слова virtual, содержат только объявление имени функции и ее параметров. Конкретные реализации таких функций осуществляются в наследуемых классах: class TBasePalubaClass {//базовый класс для элементов фюзеляжа public: double X,Y, Z_position; //координаты int zazor_next; //зазор до следующего элемента int depth; //глубина блока палубы int paluba_type; //тип элемента virtual Ы height()=0; //высота virtual int width()=0; //ширина virtual void draw_side(Tlmage lmg, double x, double y, double scale, double dir=1)=0; //вид сбоку- координаты, масштаб, направление virtual void draw_front(Tlmage lmg, double x, double y, double z, double scale, double dir=1) Q; //вид спереди virtual Ы paluba_depth()=0; //глубина палубы virtual vo]d refresh()=0; //обновить информацию virtual void checks()=0; //проверки };
Математическая модель пассажирских кресел
При расчетах реальные объекты заменяются математическими моделями. Блоки пассажирских кресел в поперечном сечении пассажирской палубы обычно располагаются симметрично относительно вертикальной оси симметрии фюзеляжа. Формально параметры кресла могут быть описаны в виде массива данных [29, 73], (см. 3.1). Варьируя значения этих параметров можно описать кресло любого класса и осуществить расчет других характеристик. (NB,A,B,D,G,H,P,Pmax,M), (3.1) где NEG[0, 6] - число кресел в блоке; А - ширина подлокотника; В - ширина подушки сидения; D - толщина подушки сидения; G - высота подлокотника над полом; Н - полная высота спинки кресла; Ртах/Р - (максимальная) глубина кресла; М - масса кресла. Высота ножки кресла в модели принимается равной 220 мм и не включается в список изменяемых параметров.
Параметрическая модель блока кресел, определяется следующим набором изменяемых параметров (рис. 3.2):
Основные требования, предъявляемые к системе
Помимо требований, являющихся необходимой теоретической основой любой САПР (п. 1.3), при разработке системы были учтены основные требования потенциальных пользователей для осуществления проектировочных операций на этапе концептуального проектирования (рис 4.1).
Автоматизированная система компоновки и формирования облика фюзеляжа магистрального самолета (СКиФОФ МС) работает на моделях ЭВМ, программно и аппаратно совместимых с IBM PC. Минимальный состав аппаратных и программных средств, необходимых для работы системы: - процессор - не ниже Intel Pentium или аналогичный; - оперативная память — не менее 64 Мб; - видеокарта с памятью не менее 8 Мб; - монитор, поддерживающий разрешение не менее 800x600 точек; - привод чтения компакт-дисков; - клавиатура и мышь; - операционная система семейства Windows фирмы Microsoft. Дополнительные системы, с которыми обеспечивается взаимодействие системы: - CAD/CAM/CAE-система SolidWorks 200х; - CAD/CAM/CAE-система CATIA V5. Для установки системы необходимо 10 Мб дискового пространства.
Соответствие требованиям качества и надежности. С целью выполнения требований, предъявляемых к качеству и надежности программного обеспечения, в соответствии с ГОСТ 34.602-89 [45] было разработано техническое задание на создание автоматизированной системы, а процедура разработки была поделена на типовые стадии в соответствии с ГОСТ 34.601-90 [44]. В общей сложности разработка системы велась в течение 4 лет в период с 2002 по 2005 г. Тестирование системы выполнялось согласно методическим рекомендациям [69] и требованиям стандартов качества программных средств.
Авторские права и система лицензирования. Основная идея, методическая база, архитектурные решения, элементы пользовательского интерфейса, исходные коды и программные алгоритмы (за исключением алгоритмов, ссылки на которые приведены в описании математических моделей — см. главу 3) являются собственной разработкой автора, которому принадлежат права на дальнейшее развитие и распространение пакета согласно действующему законодательству РФ об интеллектуальной собственности и авторском праве.
Для защиты от нелегального копирования в программный продукт встроена система лицензирования, основанная на принципе авторизационных кодов. Для получения временных или постоянных кодов необходимо обратиться к разработчику. Для работы системы необходимо запустить исполняемый exe-файл.
Основным назначением автоматизированной системы компоновки и формирования облика фюзеляжа МС является: - совершенствование и ускорение работы конструктора-компоновщика на этапе концептуального проектирования при синтезе схемных решений; - более глубокий и всесторонний анализ (включая геометрический и аналитический) решений принимаемых на начальных стадиях проектирования; - снижение сроков и затрат на проведение испытаний, доводку; - подготовка специалистов по проектированию самолётов в авиационных учебных заведениях.
Система включает в себя следующие элементы и модули: - база данных по существующим параметрам грузового и пассажирского оборудования и геометрическим характеристикам поперечных сечений; - база данных по различным схемным решениям; - модуль ввода/вывода информации о сечении на магнитный носитель; - модуль настройки параметров поперечного сечения фюзеляжа самолета; - модуль настройки параметров продольной компоновки фюзеляжа самолета; - модуль визуализации полученного сечения; - модули передачи данных о фюзеляже в системы CATIA, SolidWorks и создание файлов VRML-формата.