Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 50039.doc
Скачиваний:
7
Добавлен:
30.04.2022
Размер:
515.07 Кб
Скачать

109

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Воронежский государственный технический университет

Кафедра электромеханических систем

и электроснабжения

Т. А. Бурковская сапр и информационные технологии

В ЭЛЕКТРОМЕХАНИКЕ

учебное пособие

Воронеж 1999

УДК 621.313.024-181.2

САПР и информационные технологии в электромеханике: Учеб. пособие / Т. А. Бурковская: Изд-во ВГТУ, 1999. 108 с.

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

Учебное пособие предназначено для организации самостоятельной работы студентов специальности 180100 "Электромеханика" дневной и заочной форм обучения в рамках дисциплины "САПР электромеханических систем". Учебное пособие будет полезно студентам при выполнении курсовых и дипломных проектов и восполнит дефицит учебной литературы по данной дисциплине.

Учебное пособие подготовлено в электронном виде в текстовом редакторе MS Word 97, содержится в файле INFPOS.doc и может использоваться как элемент методического обеспечения дистанционного обучения студентов-заочников.

Научный редактор д-р техн. наук Е. В. Кононенко

Рецензенты: кафедра вычислительной техники Курского государственного технического университета;

д.т.н., профессор, зав. кафедрой высшей математики Воронежского государственного агроуниверситета В. П. Шацкий

Издается по решению редакционно-издательского совета Воронежского государственного технического университета

 Бурковская Т. А.

 Оформление. Издательство

Воронежского государственного

технического университета, 1999

РАЗВИТИЕ ТЕХНОЛОГИИ ПРОЕКТИРОВАНИЯ

ЭЛЕКТРИЧЕСКИХ МАШИН

Для начального периода проектирования электрических машин (примерно до 40-х годов) была характерна форма, которую можно назвать ручным индивидуальным проектированием. В этот период производилась ограниченная номенклатура технических изделий, имеющих сравнительно простую конструкцию. Многие электрические машины создавались впервые, без прототипов, и требовали принятия оригинальных проектных решений. Труд проектировщиков в целом был творческим, доля рутинных работ составляла не более 30 %. Методы и средства проектирования были также простейшими. Расчетные методики в значительной мере опирались на приближенные зависимости и эмпирические коэффициенты. Технические средства проектирования ограничивались кульманом, готовальней, логарифмической линейкой. Проектная документация во многих крупных организациях имела свою собственную систему оформления, что затрудняло передачу документации в другие организации.

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

Период ручного типового проектирования охватывает примерно 40-60-е годы и характеризуется внедрением методов группового проектирования, агрегирования и унификации.

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

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

В 50-е годы осуществлен переход к единой системе конструкторской документации (ЕСКД), которая установила единые правила ее оформления и обращения.

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

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

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

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

Первые результаты позволили увеличить производительность расчетов. Например, время поверочного расчета асинхронного двигателя сократилось от нескольких дней до нескольких минут. Это позволило резко увеличить количество анализируемых вариантов проекта. Однако возникло противоречие между возможностью расчета большого числа вариантов на ЭВМ и ограниченной возможностью "ручного" анализа вариантов проектировщиком. Необходимо было автоматизировать не только расчеты, но и процессы анализа вариантов и принятия решений. Это противоречие было устранено с помощью ЭВМ второго поколения. Благодаря увеличению быстродействия и объема памяти ЭВМ появилась возможность осуществлять многовариантный анализ и выбор с помощью методов поиска оптимума. Полученные на ЭВМ расчетные проекты стали оптимальными и обеспечивали значительный выигрыш в показателях качества по сравнению с ручным проектированием. Несмотря на достигнутые успехи, полученные в этот период, результаты такого проектирования не находили массового распространения, так как не охватывали наиболее весомой доли проектирования - конструкторско-технологических работ.

Задача автоматизации конструкторско-технологических работ начала решаться с появлением ЭВМ третьего поколения и машинной графики. Ускоренными темпами стали создаваться программно-технические средства, ориентированные на организацию коллективной деятельности проектировщиков различного профиля (расчетчиков, конструкторов, технологов), не имеющих специальных познаний в программировании и вычислительной технике.

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

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

САПР относятся к многоцелевым системам, позволяющим комплексно решить следующие основные задачи:

повышение качества новых разработок;

сокращение сроков новых разработок;

уменьшение стоимости новых разработок;

стимулирование творческой деятельности проектировщиков.

САПР КАК ЦЕЛЕВАЯ ОРГАНИЗАЦИОННО-ТЕХНИЧЕСКАЯ СИСТЕМА

В ГОСТ 23501.0-79 "Системы автоматизированного проектирования. Основные положения" дано следующее определение: "САПР представляет собой организационно-техническую систему, состоящую из комплекса средств автоматизации проектирования, взаимосвязанного с подразделениями проектной организации, и выполняющую автоматизированное проектирование". САПР - это инструментарий проектировщика, включающий технические средства, математическое, программное, информационное и лингвистическое обеспечения, предназначенный для автоматизации проектирования на всех этапах от выдачи технического задания до передачи технической документации изготовителю. Проектировщики САПР одновременно являются и пользователями. САПР - это система автоматизированного, а не автоматического проектирования. Это значит, что часть операций проектирования выполняется человеком. При этом в более совершенных системах доля работ, выполняемых человеком, будет меньше, но содержание этих работ будет более творческим, а роль человека - более ответственной.

Из определения САПР следует, что целью ее функционирования является проектирование. Что же такое проектирование с точки зрения физической сущности выполняемых процессов? Проектирование - это процесс переработки информации, приводящий в конечном счете к получению полного представления о проектируемом объекте и способах его изготовления.

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

Что же является объектом автоматизации в САПР? Понятие "автоматизация" означает замену действий человека в технологическом процессе энергией неживой природы. Следовательно, объектом автоматизации в проектировании является работа человека, которую он выполняет в процессе проектирования. А то, что проектируют, называют объектом проектирования. Подчеркнем, что объекты проектирования не являются объектами автоматизации проектирования. В производственной практике объектом автоматизации проектирования является вся совокупность действий проектировщиков, разрабатывающих изделие и оформляющих результаты разработок в виде расчетной, конструкторской, технологической и эксплуатационной документации. При этом, объектом проектирования может быть дом, машина, в том числе и электрическая, любое другое изделие.

СТАДИИ ПРОЕКТИРОВАНИЯ, ПРОЕКТНЫЕ

ПРОЦЕДУРЫ И ОПЕРАЦИИ

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

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

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

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

Рассмотрим основные стадии проектирования с позиций технологии обработки информации. Традиционно, в том числе и в соответствующих стандартах, проектирование сложных технических объектов любого назначения подразделяются на стадии разработки. Различают следующие основные стадии проектирования: предпроектные исследования; техническое задание; техническое предложение; эскизный проект; технический проект (расчетное, конструкторское, технологическое проектирование); рабочий проект (разработка рабочей конструкторской, технологической, эксплуатационной документации, изготовление опытного образца; отладка, испытание и ввод в действие спроектированного объекта).

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

На стадии эскизного проектирования производят поиск и выбор более детальной информации, на основе ее анализа принимают предварительные проектные решения и оформляют первые проектные документы. Для выработки проектных решений производят различные расчеты, содержание, объем и трудоемкость которых зависят от характеристик проектируемого объекта. Работы на этой стадии, как правило, в наибольшей степени поддаются автоматизации, и их автоматизация дает наибольший технико-экономический эффект за счет оптимизации проектных решений. Вместе с тем эти работы, в том числе определение наиболее эффективного физического принципа действия создаваемого объекта, поиск наилучших технических решений реализации выбранных физических процессов и, наконец, определение оптимальных значений параметров принятых технических решений, представляют собой наиболее оригинальные проектные процедуры, которые в принципе не могут быть унифицированы и должны постоянно совершенствоваться. Автоматизация указанных работ достигается за счет применения оптимизационных математических методов.

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

Работы по проектированию технологии изготовления ОП традиционно выполняют в процессе технологической подготовки производства изделия или его узлов и деталей на предприятии-изготовителе. При проектировании технологии производят: поиск и выбор исходной информации (об объекте, подлежащем изготовлению, о технологическом оборудовании предприятия, технологических и трудовых нормативах); анализ и обработку данных в целях определения маршрутов обработки, последовательности технологических операций и режимов их выполнения, потребности в инструменте, в создании специальной оснастки; оформление соответствующей технологической документации. Работы, названные в первом и третьем пунктах, идентичны многим операциям при проектировании изделия. Собственно проектирование технологии требует оригинальных расчетов и решений для различных видов технологических операций и обрабатываемых материалов. Методы формализации большинства таких операций разработаны, и следовательно, они могут быть автоматизированы.

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

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

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

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

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

использования (на последующих стадиях проектирования, при изготовлении или эксплуатации изделия).

Очевидно, что в результате проектирования из малого объема исходной информации - задание на проектирование - вырабатывается огромный объем информации. Автоматизация перечисленных выше операций обработки информации и процессов управления использованием информации на всех стадиях проектирования составляет сущность функционирования современных САПР.

ЭТАПЫ АВТОМАТИЗИРОВАННОГО

ПРОЕКТИРОВАНИЯ

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

структурно-параметрическое проектирование;

функционально-параметрическое проектирование;

конструкторско-технологическое проектирование.

На этапе структурно-параметрического проектирования решаются задачи, связанные с выбором принципиальных технических решений, которые определяют общую структуру ОП и основные параметры, отражающие связи с другими техническими устройствами и системами, а также условия функционирования в окружающей среде. Задачи структурно-параметрического проектирования охватывают стадии предпроектных исследований, разработки технического задания и технического предложения и частично эскизного проектирования. Учитывая специфику задач структурно-параметрического проектирования, этот этап часто называют внешним проектированием. В результате решения задач этого уровня выбирают наиболее рациональный вариант (или ряд вариантов) для более детального рассмотрения на следующих уровнях проектирования.

На этапе функционально-параметрического проектирования решают задачи, связанные с выбором функциональных схем ОП и анализом процессов их функционирования. Функциональные схемы составляют путем изучения возможностей практической реализации выбранных ранее структурно-параметрических вариантов исполнения ОП. Для каждой схемы исследуются функциональные показатели, характеристики и процессы в различных режимах эксплуатации. Проверяется соответствие процессов функционирования требованиям и условиям технического задания и при необходимости вносятся коррективы в принятые ранее решения. В рассмотрение включают новые параметры, необходимые для оценки функциональных свойств ОП и характеризующие его внутреннее строение. Поэтому функционально-параметрическое проектирование называют также внутренним проектированием технических объектов. Задачи функционально-параметрического проектирования охватывают стадии эскизного и технического (частично) проектирования. В результате их решения отсеиваются неудовлетворительные структурно-параметрические варианты и количество последних сокращается (в большинстве случаев до одного). Для дальнейшего более детального рассмотрения на следующем этапе проектирования оставляются наиболее рациональные функционально-параметрические варианты. Таким образом, характер рассматриваемых далее вариантов проекта изменяется. Вместо структурно-параметрических вариантов общего плана рассматриваются конкретизированные функционально-параметрические варианты, однозначно определяющие процессы функционирования в объекте проектирования.

На этапе конструкторско-технологического проектирования решают задачи, связанные с выбором детальных конструктивных схем и элементов ОП, технологических процессов их изготовления и компоновки, а также правил эксплуатации. Задачи конструкторско-технологического проектирования охватывают стадии технического и рабочего проектирования. Детализация конструкции и технологии производства ОП осуществляется в различных целесообразных вариантах для каждого функционально-параметрического варианта.

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

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

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

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

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

Этап функционально-параметрического проектирования является обязательным при проектировании любых электрических машин и широко известен под названием расчетного проектирования. Функциональные свойства электрических машин в большинстве случаев определяются путем расчетов электромагнитного, электромеханического и теплового состояния активной части, состоящей из магнитопровода и обмоток. Вследствие ограниченности типовых конструктивных исполнений активной части электрической машины число рассматриваемых функционально-параметрических вариантов обычно невелико. Для каждого варианта осуществляется выбор всех конструктивных данных активной части, а затем производится расчет режимов функционирования, необходимых для проверки требований технического задания и оценки технико-экономических показателей. Результаты расчетного проектирования оформляются в виде так называемых расчетных формуляров, которые служат основанием для выполнения следующих этапов проектирования.

Этап конструкторско-технологического проектирования электрических машин является наиболее трудоемким и составляет 70-80 % от общего объема проектных работ. Данный этап проектирования целесообразно делить на два самостоятельных этапа: конструирование и технологическая проработка. На этапе конструирования "одевается" активная часть машины, то есть производится выбор общей конструктивной компоновки (общего вида) и детализируются все конструктивные узлы и детали по формам, размерам, материалам. При выборе конструктивных вариантов широко используется опыт предыдущих удачных решений. На этапе технологической проработки выбираются способы сопряжения поверхностей, технологические допуски и посадки на конструктивные данные, технологические процессы изготовления элементов, узлов и агрегирования машины. В технологическую проработку нередко включают и проектирование оснастки для реализации выбранных технологических процессов.

Таким образом, в процессе проектирования электрических машин по аналогии с другими техническими изделиями можно выделить три основных автономных этапа проектирования:

этап структурно-параметрического проектирования, который в существующей практике проектирования электрических машин сводится к составлению технического задания;

этап функционально-параметрического проектирования, который сводится к рассмотрению активной части машины и составлению расчетного формуляра;

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

ПОДСИСТЕМЫ САПР ЭЛЕКТРИЧЕСКИХ МАШИН

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

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

По отношению к объекту проектирования подсистемы делят на объектно-ориентированные (объектные) и объектно-независимые (инвариантные). К объектным относятся подсистемы, выполняющие одну или несколько проектных процедур или операций, непосредственно зависимых от конкретного объекта проектирования. К инвариантным относятся подсистемы, выполняющие унифицированные проектные процедуры и операции, не зависящие от особенностей проектируемого объекта.

Подсистемы САПР обладают всеми свойствами систем и могут функционировать самостоятельно.

Основным этапам автоматизированного проектирования можно поставить в соответствие пять основных подсистем САПР электрических машин:

сравнительного анализа;

расчетного проектирования;

конструкторского проектирования;

технологического проектирования;

графического отображения и документирования.

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

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

Подсистемы конструкторского и технологического проектирования начали разрабатываться в последние годы и включаются в действующие САПР ЭМ. Уровень формализации решаемых здесь задач ниже по сравнению с расчетным проектированием, а сами задачи разнообразнее. Здесь, как и на уровне структурно-параметрического проектирования необходимо генерировать различные варианты решения, анализировать каждый вариант и делать окончательный выбор. Наряду с этими задачами решаются также задачи оптимизации конструктивных и технологических параметров по аналогии с этапом расчетного проектирования. Возникает также принципиально новая группа задач, связанных с выбором конструктивных форм деталей и узлов ЭМ. Использование формальных моделей и методов предыдущих подсистем оказывается недостаточным для полной формализации конструкторского и технологического проектирования. Поэтому разработка этих подсистем возможна на основе активного диалога конструкторов и технологов с ЭВМ.

Подсистема графического отображения и подготовки проектной документации требует соответствующих средств машинной графики.

МОДЕЛИРОВАНИЕ ПРОЦЕССА

АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ

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

Уточняя математическое содержание локальных этапов проектирования можно от семантических моделей перейти к математическим моделям процесса проектирования. Дальнейшее ветвление происходит за счет возможностей многовариантного построения вычислительных алгоритмических моделей для реализации одних и тех же математических моделей. Совокупность семантических, математических и алгоритмических моделей может рассматриваться как имитационная модель автоматизированного проектирования, подготовленная к реализации в САПР.

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

БЛОЧНО-ИЕРАРХИЧЕСКИЙ ПОДХОД

К ПРОЕКТИРОВАНИЮ

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

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

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

На горизонтальных уровнях имеются группы задач, связанные с проектированием структур, функциональных элементов, конструкций, технологии, с документированием. Эти группы задач совместно с используемыми для их решения моделями, методами, формами документации называются аспектами проектирования. Аспекты проектирования называют также вертикальными уровнями проектирования.

Применительно к САПР ЭМ можно выделить следующие иерархические или горизонтальные уровни проектирования:

уровень стандартных стадий проектирования;

уровень этапов автоматизированного проектирования;

уровень подсистем САПР;

уровень имитационных моделей процесса проектирования.

Вертикальные уровни проектирования или аспекты связаны с реализацией задач каждого блока горизонтальные уровней: структурным проектированием; функциональным проектированием; конструкторским проектированием; технологическим проектированием; документированием. Задачи горизонтальных уровней могут решаться в восходящей или нисходящей последовательности. Нисходящее проектирование (проектирование "сверху вниз") характеризуется тем, что решение задач более высоких иерархических уровней предшествует решению задач нижних уровней. При этом исходные данные для проектирования представляются в виде технического задания для высшего иерархического уровня. Разработка такого технического задания - неформальная ответственная задача. Обычно такое техническое задание формулируется группой экспертов, исходя из имеющегося опыта и корректируется в процессе предварительного проектирования. На всех последующих иерархических уровнях составление технического задания может быть формализовано и представляет собой задачу преобразования исходного технического задания на сложный объект в техническое задание на его элементы.

Восходящее проектирование (проектирование "снизу вверх") - проектирование, при котором вначале разрабатываются элементы, а затем объект из этих элементов. Элементы, проектируемые на каждом уровне восходящего проектирования, должны стать типовыми, предназначенными для многих применений. Формулировка технического задания на каждом уровне - неформальная задача, решаемая с помощью экспертов.

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

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

ОСНОВНЫЕ ПОЛОЖЕНИЯ РАЗРАБОТКИ САПР

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

САПР - система, в которой взаимодействует человек и ЭВМ. Все созданные и создаваемые системы проектирования с помощью ЭВМ являются автоматизированными, важную роль в них играет человек - проектировщик сложного объекта. Возможно ли создание систем автоматического проектирования, таких, в которых человек участвует лишь в формулировке ТЗ на разработку объекта проектирования и в получении автоматически изготовленного полного комплекта всей необходимой документации для производства и эксплуатации объекта? Принципиальных возражений против такой возможности нет. Однако принципиальная возможность построения той или иной системы отнюдь не означает практической целесообразности такого построения.

В настоящее время и по крайней мере в ближайшие годы создание систем автоматического проектирования не предвидится и ничто не угрожает монополии человека в принятии узловых решений в процессе проектирования. Человек в САПР должен решать, во-первых, все задачи, формализация которых не достигнута, во-вторых, задачи, решение которых на основе эвристических способностей человека осуществляется более эффективно, чем на основе вычислительных возможностей ЭВМ. Таким образом, тесное взаимодействие человека и ЭВМ в процессе проектирования - одно из положений разработки и эксплуатации САПР.

САПР - иерархическая система, реализующая комплексный подход к автоматизации всех уровней проектирования. Блочно-иерархический подход к проектированию должен быть сохранен при применении САПР. Иерархия уровней проектирования отражается в структуре САПР, разделяемой на несколько подсистем. Подсистемы САПР должны быть связаны друг с другом.

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

САПР - совокупность информационно согласованных подсистем. Это очень важное положение относится не только к связям между крупными подсистемами, но и к связям между более мелкими частями подсистем. Информационная согласованность означает, что все или большинство возможных последовательностей задач проектирования обслуживаются информационно согласованными программами. Две программы являются информационно согласованными, если все те данные, которые представляют собой объект переработки в обеих программах, входят в числовые массивы, структура которых не изменяется при переходе от одной программы к другой. Так, информационные связи могут проявляться в том, что результаты решения одной задачи будут исходными данными для другой задачи. Если для согласования программ требуется существенная переработка общего массива с участием человека, который добавляет недостающие параметры, вручную компонует массив или изменяет числовые значения отдельных параметров, то программы согласованы плохо. Ручная перекомпоновка массива ведет к существенным временным задержкам, росту числа ошибок и поэтому уменьшает со стороны пользователя спрос на услуги САПР. Плохая информационная согласованность превращает САПР в совокупность автономных программ, при этом из-за не учета в подсистемах многих факторов, оцениваемых в других подсистемах, снижается также качество проектных решений.

Принцип информационной согласованности подсистем часто представляют близким по смыслу принципом оптимальности связей человека с ЭВМ внутри САПР. При этом подчеркивается сторона автоматизированного проектирования, требующая рационального распределения функций между человеком и ЭВМ.

Автоматическая связь программ без ручной перекомпоновки массивов - элемент оптимальности связей между человеком и ЭВМ. Техническое обеспечение оперативной связи человека с ЭВМ через посредство дисплея - другой элемент такой связи.

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

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

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

ОСНОВНЫЕ ПРИНЦИПЫ ПОСТРОЕНИЯ САПР

Исходя из приведенных выше положений разработки САПР можно сформулировать основные принципы их построения.

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

Принцип системного единства. Принцип системного единства состоит в том, что при создании, функционировании и развитии САПР связи между подсистемами должны обеспечивать целостность системы.

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

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

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

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

Принцип развития. Согласно принципу развития САПР должна создаваться и функционировать с учетом пополнения, совершенствования и обновления подсистем и компонентов.

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

КОМПОНЕНТЫ САПР

Подсистемы САПР делятся на составляющие, которые принято называть компонентами САПР.

Компоненты объединены общей для данной подсистемы целевой функцией и обеспечивают функционирование этой подсистемы. Компонент представляет собой элемент обеспечения, выполняющий определенную функцию в подсистеме. В ГОСТ 23501.0 - 79 в качестве семи обязательных компонентов, выполняющих в подсистемах любого вида одинаковые функции, выделены:

методическое обеспечение САПР;

организационное обеспечение САПР.

техническое обеспечение САПР;

программное обеспечение САПР;

лингвистическое обеспечение САПР;

информационное обеспечение САПР;

математическое обеспечение САПР;

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

Структурное единство подсистемы САПР обеспечивается связями между компонентами различных средств обеспечения САПР, образующими подсистему, а структурное объединение подсистем в систему - связями между компонентами САПР, входящими в подсистемы.

ВИДЫ ОБЕСПЕЧЕНИЯ САПР

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

Методическое обеспечение является самым "молодым" и наименее определенным обеспечением САПР, требующим вместе с тем первоочередного внимания, как доминирующее средство, предопределяющее разработку всех остальных компонентов САПР. Дело в том, что при разработке методического обеспечения рассматриваются вопросы методологии создания САПР.

Поскольку документы методического обеспечения носят в основном инструктивный характер и их разработка является процессом творческим, выполняемых целиком человеком для неавтоматизированного пользования человеком, то о специальных способах и средствах реализации данного компонента САПР говорить не приходится. Порядок разработки такого рода документов (относящихся к вопросу создания САПР и затем включаемых в ее состав) определен ГОСТ 23501.10 - 81. Этим же стандартом установлен обязательный состав эксплуатационных документов. Таким образом, обязательный состав методического обеспечения САПР определен в стандарте и не требует дополнительных пояснений.

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

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

Программное обеспечение САПР. Программное обеспечение САПР представляет собой совокупность всех программ и эксплуатационной документации к ним, необходимых для выполнения автоматизированного проектирования. Физически в состав программного обеспечения входят документы с текстами программ; программы, записанные на машинных носителях информации; эксплуатационные документы. Программное обеспечение делится на общесистемное и специальное. Общесистемное программное обеспечение служит для организации, планирования и управления вычислительным процессом и включает в себя операционные системы ЭВМ. Специальное программное обеспечение состоит из прикладных программ, основной функцией которых является решение конкретных проектных задач и получение проектных решений.

Лингвистическое обеспечение САПР. Основу лингвистического обеспечения САПР составляют специальные языковые средства (языки программирования и проектирования) для записи алгоритмов, описания исходных данных и результатов, обмена информацией между человеком и ЭВМ в процессе проектирования. Кроме того, к лингвистическому обеспечению относится и различная специфичная терминология, содержащаяся в документах методического обеспечения САПР.

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

Математическое обеспечение САПР. Основу математического обеспечения САПР составляют математические модели объектов проектирования и их элементов, методы и алгоритмы выполнения проектных процедур и операций, по которым разрабатывается программное обеспечение САПР и, следовательно, осуществляется процесс автоматизированного проектирования. В отличие от всех других компонентов математическое обеспечение при автоматизированном проектировании в явном виде не используется, используется производный от него компонент - программное обеспечение.

ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ

СИСТЕМ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ

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

Требования к техническому обеспечению САПР можно разделить на четыре категории:

системные;

функциональные;

технические;

организационно-эксплуатационные.

Системные требования обуславливают спектр свойств, параметров и характеристик комплекса технических средств как технической системы. К комплексу технических средств предъявляются следующие системные требования:

эффективность;

универсальность;

совместимость;

гибкость и открытость;

надежность;

точность (достоверность);

защищенность;

возможность одновременной работы достаточно широкого круга пользователей;

приемлемая стоимость.

Функциональные требования обуславливают свойства комплекса технических средств с точки зрения выполнения функций САПР. К функциональным требованиям можно отнести:

реализацию математических моделей объектов проектирования;

реализацию задач принятия решений и проектных процедур;

содержание архивов, библиотек проектных решений, типовых элементов и прикладных программ;

обеспечение системы поиска данных и наглядности информации;

возможность работы с графическими изображениями и моделями;

обеспечение взаимосвязи этапов проектирования и документирования результатов проектирования с необходимой полнотой и в требуемой форме.

Технические требования определяют параметры и характеристики комплекса технических средств при функционировании САПР. Технические требования вырабатывают в процессе разработки комплекса технических средств САПР и предъявляют к отдельным техническим средствам. Технические требования выражают в виде количественных, качественных и номенклатурных значений характеристик и параметров. К основным характеристикам и параметрам относят следующие:

производительность, быстродействие и пропускную способность оборудования, разрядность устройств (количество разрядов регистров для предъявления информации);

систему кодирования информации;

форматы внутреннего представления данных и команд;

форматы внешнего представления и отображения данных;

разрешающие способности средств отображения и регистрации данных;

емкость запоминающих устройств (оперативных, постоянных и внешних);

виды носителей данных;

типы интерфейсов для сопряжения оборудования.

К организационно-эксплуатационным относятся требования по технической эстетике, эргономике, безопасности, организации эксплуатации и обслуживания технических средств. Организационно-эксплуатационные требования предъявляются к комплексу технических средств, вспомогательному оборудованию, рабочим местам с целью обеспечения нормальных условий эксплуатации и обслуживания САПР.

Наиболее общие требования (в большей части системные и функциональные) приводятся в техническом задании на САПР. Более детализированные и конкретизированные требования указываются в технических заданиях на комплексы средств.

Классификацию технических средств САПР проводят по функциональному признаку и выделяют следующие группы технических средств:

подготовки и ввода данных;

передачи данных;

программной обработки данных;

отображения и документирования данных;

архивирования проектных решений.

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

устройства подготовки данных на машинных носителях;

устройства ввода данных с машинных носителей;

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

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

Технические средства передачи данных предназначены для обеспечения дистанционной связи средств САПР по каналам связи. Устройства этой группы должны обеспечивать передачу данных между удаленными компонентами САПР по телефонным, телеграфным и специальным каналам связи. К таким устройствам относят:

аппаратуру передачи данных (модемы, устройства преобразования сигналов);

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

Технические средства программной обработки данных предназначены для обеспечения приема цифровых данных, их программной обработки, накопления и вывода на машинные носители, устройства отображения и в каналы связи. Технические средства программной обработки должны обеспечивать разработку и эксплуатацию программного обеспечения САПР, изменение производительности путем замены или наращивания ЭВМ, использование программно-аппаратурных средств учета, хранения и выдачи текущего времени, мультипрограммный режим работы. К устройствам этой группы относят:

ЭВМ общего назначения;

специализированные ЭВМ;

микропроцессоры.

Технические средства отображения и документирования данных предназначены для оперативного представления проектных решений и запрашиваемых данных, а также для вывода проектной документации для изготовления объектов. К этой группе относятся:

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

устройства вывода информации на бумагу (устройства печати, графопостроители, регистрирующие устройства);

устройства вывода информации на микрофильмы и микрофиши;

устройства вывода на машинные носители записи;

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

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

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

В последнее время в САПР находят все большее применение персональные ЭВМ, имеющие достаточные быстродействие и объем оперативной памяти. Наибольшее распространение получили персональные компьютеры, совместимые с IBM PC и имеющие следующие потребительские качества:

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

возможность индивидуального взаимодействия с компьютером без каких-либо посредников и ограничений;

относительно высокие возможности по переработке информации;

высокая надежность и простота ремонта, основанные на интеграции компонентов компьютера;

возможность расширения и адаптации к особенностям применения компьютеров - один и тот же компьютер может быть оснащен различными периферийными устройствами и разным программным обеспечением;

наличие мощного системного программного обеспечения, а также систем для разработки прикладного программного обеспечения.

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

электронные схемы, управляющие работой компьютера (микропроцессор, оперативная память и т. д.);

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

накопители (дисководы) для гибких магнитных дисков, используемые для чтения и записи на гибкие магнитные диски (дискеты);

накопитель на жестком магнитном диске, предназначенный для чтения и записи на несъемный жесткий магнитный диск (винчестер).

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

Некоторые устройства могут вставляться внутрь системного блока компьютера, например модем, факс-модем, стример.

Некоторые устройства, например сканер (прибор для ввода рисунков и текстов в компьютер), используют смешанный способ подключения: в системный блок компьютера вставляется только электронная плата (контроллер), управляющая работой устройства, а само устройство подсоединяется к этой плате кабелем.

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

клавиатура - предназначена для ввода в компьютер информации от пользователя;

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

мышь - указательное устройство, облегчающее ввод информации в компьютер;

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

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

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

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

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

устройство для чтения компакт-дисков (CD ROM) - позволяет читать данные со специальных компакт-дисков , которые надежны и могут хранить значительно больше информации, чем дискеты (крупные программные комплексы, базы данных, multimedia-программы);

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

стример - устройство для быстрого сохранения всей информации, находящейся на жестком диске;

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

плоттер (графопостроитель) - устройство для вывода графической информации;

модем - устройство для обмена информацией с другими компьютерами через телефонную сеть;

факс-модем - сочетает возможности модема и телефакса.

Самым главным элементом в компьютере, его "мозгом" является микропроцессор - небольшая (в несколько сантиметров) электронная схема, выполняющая все вычисления и обработку информации. В компьютерах типа IBM PC используются микропроцессоры фирмы Intel, а также совместимые с ними микропроцессоры других фирм.

В тех случаях, когда на компьютере приходится выполнять много математических вычислений, к основному микропроцессору добавляется математических сопроцессор. Он помогает основному микропроцессору выполнять математические операции над вещественными числами. Последние микропроцессоры фирмы Intel (80486 и Pentium) сами умеют выполнять операции над вещественными числами, так что для них сопроцессоры не требуются.

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

Чтобы компьютер мог работать, необходимо, чтобы в его оперативной памяти находились программа и данные. А попадают они туда из различных устройств компьютера - клавиатуры, дисководов для магнитных дисков и т. д. Обычно эти устройства называют внешними, хотя некоторые из них могут находиться не снаружи компьютера, а встраиваться внутрь системного блока. Результаты выполнения программ также выводятся на внешние устройства - монитор, принтер, диски. Таким образом, для работы компьютера необходим обмен информацией между оперативной памятью и внешними устройствами. Такой обмен называется вводом-выводом. Но этот обмен не происходит непосредственно - между любым внешним устройством и оперативной памятью в компьютере имеются целых два промежуточных звена:

для каждого внешнего устройства в компьютере имеется электронная схема, которая им управляет. Эта схема называется контроллером, или адаптером. Некоторые контроллеры могут управлять сразу несколькими устройствами;

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

Одним их контроллеров, которые присутствуют в каждом компьютере, является контроллер портов ввода-вывода. Эти порты бывают следующих типов:

параллельные, к ним обычно подключаются принтеры;

асинхронные последовательные, через них обычно подсоединяются мышь, модем;

игровой порт - для подключения джостика.

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

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

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

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

станция для компоновки и оформления документации, включает графический дисплей и устройства вывода символьной и графической информации;

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

На рабочих станциях такой локальной сети может использоваться любая операционная система, например DOS, и должен быть запущен драйвер, обеспечивающий доступ к локальной сети. Но на серверах локальной сети обычно используются операционные системы, способные обеспечить одновременную обработку многих запросов от рабочих станций, к чему DOS как однопользовательская и однозадачная система не приспособлена. На компьютерах типа IBM PC наиболее популярна сетевая операционная система фирмы Novell, но используются также различные варианты UNIX, OS/2, Windows NT и другие. Эти операционные системы предоставляют мощные средства разграничения доступа к данным, обеспечения целостности и сохранности совместно используемых баз данных и множество удобных сервисных возможностей. Однако проектирование таких сетей весьма непросто, а эксплуатация требует наличия специалистов (администраторов сети), занимающихся управлением ресурсами сети.

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

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

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

СИСТЕМ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ

Для того, чтобы “вдохнуть жизнь” в компьютер, необходимо использовать программное обеспечение. То есть, чтобы компьютер выполнял действия по обработке информации, необходимо составить на понятном ему языке точную и подробную последовательность инструкций - программу - как надо обрабатывать информацию. Сам по себе компьютер не обладает знаниями ни в одной области своего применения, все эти знания сосредоточены в выполняемых на компьютере программах. Поэтому часто употребляемое выражение “компьютер сделал” (подсчитал, нарисовал) означает ровно то, что на компьютере была реализована программа, которая позволила выполнить соответствующие действия. При выполнении программы могут использовать различные устройства компьютера для ввода, обработки и вывода информации.

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

подготовка текстовых и графических документов;

доступ к базам данных;

проведение необходимых расчетов;

обмен информацией;

оформление технической документации и т. д.

Создание программного обеспечения за какой-то десяток лет превратилось из занятия программистов-одиночек в важную и мощную сферу промышленности. Только в США более 50 фирм-производителей программного обеспечения имеют объемы продаж более 10 млн. дол., а у десяти из них (в частности, Microsoft, Lotus, WordPerfect, Borland, Autodesk, Adobe, Symantec и Computer Associates) объемы продаж превышают 100 млн. дол. Поэтому развитие программного обеспечения, предназначенного для широкого круга пользователей, происходит уже не в состязании индивидуальных программистов, а в процессе ожесточенной конкурентной борьбы между фирмами-производителями программного обеспечения. При разработке программного обеспечения основной задачей фирм-разработчиков является, естественно, обеспечение их успеха на рынке. Для этого необходимо, чтобы программы обладали следующими качествами:

функциональность программы, то есть полнота удовлетворения ею потребностей пользователя;

наглядный, удобный, интуитивно понятный и привычный пользователю интерфейс, то есть способ взаимодействия программы с пользователем;

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

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

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

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

Программы, которые нашли популярность у пользователей, как правило, совершенствуются разработчиками: в них исправляются ошибки, включаются новые возможности и т. д. Чтобы сохранить преемственность, получившимся программам не дается какое-то другое имя, а вместо этого они называются версиями исходных программ. По установившейся традиции версии программ обозначаются числами вида 1.00, 3.5 и т. д. Номер версии обычно указывается после названия программы. При этом существенные изменения в программах отражаются увеличением цифры до точки, незначительные изменения или исправление ошибок - увеличением цифр, стоящих после точки. Например, первоначальная версия программы обозначается 1.0, версия с некоторыми усовершенствованиями - 1.5 (или 1.50), а после внесения существенных дополнений новая версия программы будет иметь номер 2.0.

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

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

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

В структуре программного обеспечения САПР в зависимости от степени его общности для различных систем можно выделить:

системное программное обеспечение;

прикладное программное обеспечение.

СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

Несмотря на то, что системное программное обеспечение не является объектом разработки при создании программного обеспечения САПР, его состав и характеристики должны удовлетворять специфическим для САПР требованиям, в частности:

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

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

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

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

Операционные системы оцениваются по эффективности управления вычислительной системой, главными аспектами которой являются:

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

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

легкость освоения и использования.

Операционные системы современных ЭВМ являются универсальными и рассчитаны на решение разнообразных задач. Это делает системы далекими от оптимальных с позиций конкретных задач, в том числе и задач САПР.

Наиболее перспективным для реализации САПР в настоящее время является использование сетей на базе современных персональных средств, в том числе IBM PC, поэтому все дальнейшие рассуждения о программном обеспечении будут связаны с использованием данной техники. До последнего времени для персональных компьютеров типа IBM PC чаще всего использовалась операционная система MS DOS фирмы Microsoft Corpоration или совместимые с ней операционные системные РC DOS, фирмы IBM и DR DOS фирмы Digital Research. Иногда на IBM PC используются операционные системы OS/2 и UNIX. В настоящее время лидирующее место занимает операционная система Windows-95.

Весьма популярный класс системных программ составляют программы-оболочки. Они обеспечивают более удобный и наглядный способ общения с компьютером, чем с помощью командной строки операционной системы. Наиболее используемыми программами-оболочками являются Norton Commander, XTree Pro Goid, PC Shell. Программа Nortоn Commander, разработанная фирмой Peter Norton Computing, является одной из наиболее популярных программ-оболочек для работы с операционной системой MS DOS. Как правило, с ее помощью пользователи просматривают каталоги, копируют, переименовывают, удаляют файлы, запускают программы и т. д. Конечно, все это можно сделать и непосредственно, то есть используя возможности операционной системы. Однако, большинство пользователей предпочитают делать это с помощью Norton Commander или какой-либо аналогичной программы, так как это более удобно и наглядно.

Nortоn Commander позволяет выполнять большое количество различных функций, в частности:

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

удобно копировать, переименовывать, пересылать и удалять файлы;

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

редактировать текстовые файлы;

выполнять любые команды DOS;

изменять атрибуты файлов; ... и многое другое.

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

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

мультипрограммирование, то есть возможность одновременного выполнения нескольких программ;

расширенные средства для обмена информацией между программами.

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

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

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

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

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

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

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

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

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

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

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

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

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

Программы для печати экрана используются для вывода на печать содержимого экрана.

Системное программное обеспечение содержит также системные программы, обеспечивающие адаптацию и расширение средств вычислительной техники с учетом конкретных условий применения, в том числе настройку на конфигурацию технических средств и технологию проектирования. Здесь важное место занимают программные средства организации распределенной и сетевой обработки данных на ЭВМ. Пользователи компьютеров, объединенных в локальную сеть, могут передавать друг другу сообщения, совместно использовать базы данных или устройства (например, принтеры), что значительно повышает удобство и эффективность коллективного труда. Для объединения компьютеров в локальную сеть их необходимо соединить специальными проводами и вставить в них платы сетевых адаптеров, позволяющих передавать информацию по проводам сети. Однако проводов и сетевых адаптеров недостаточно, необходимы программы, обеспечивающие обмен информацией по локальной сети. Обычно компьютеры при этом работают под управлением операционной системы, но на компьютере запускается специальный драйвер, обеспечивающий доступ к локальной сети. Примерами таких сетевых программ являются Lantastic и Netware Lite.

ПРИКЛАДНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

Прикладное программное обеспечение САПР можно подразделить на универсальное, проблемно-ориентированное и объектно-ориентированное.

Универсальное прикладное программное обеспечение

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

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

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

компилятор, осуществляющий преобразование программ на языке программирования в программу в машинных кодах, или интерпретатор, осуществляющий непосредственное выполнение текста программы на языке программирования высокого уровня;

библиотеки подпрограмм, содержащие заранее подготовленные подпрограммы, которыми могут пользоваться программисты;

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

Для популярных языков программирования существует множество систем программирования. Естественно, что программисты предпочитают те системы, которые легки в использовании, позволяют получить эффективные программы, имеют богатые библиотеки подпрограмм и мощные возможности для отладки разрабатываемых программ. В качестве примеров таких систем программирования можно назвать Turbo C, Turbo C++, Turbo Pascal, Microsoft C, Microsoft Basic. Системы программирования прежде всего различаются, естественно, по тому, какой язык программирования они реализуют. Кроме приведенных языков, используются и другие языки программирования: для создания информационных, экспертных систем, графических изображений.

Широкое применение находят программы подготовки текстов - редакторы текстов. Возможности этих программ различны - от программ, предназначенных для редактирования текстов программ и подготовки небольших документов простой структуры, до программ оформления полной технической документации. Редакторы текстов программ рассчитаны на редактирование программ на том или ином языке программирования. Часто они встроены в систему программирования и непосредственно из них можно запускать программы на компиляцию и выполнение. Примером могут служить редакторы, встроенные в системы программирования Turbo C, Turbo Pascal. Редакторы, рассчитанные на тексты программ, как правило, выполняют следующие функции:

диалоговый просмотр текста;

редактирование строк программы;

копирование и перенос блоков текста;

копирование одной программы или ее части в указанное место другой программы;

контекстный поиск и замену подстрок текста;

автоматический поиск строки, содержащей ошибку;

распечатку программы или ее части.

Кроме того редакторы текстов программ позволяют автоматически проверять синтаксическую правильность программ. Иногда эти редакторы объединены с отладчиками программ на уровне исходного текста. Редакторы текстов программ можно использовать для создания и корректировки небольших документов. Однако для серьезной работы с документами лучше использовать редакторы, ориентированные на работу с документами.

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

возможность использования различных шрифтов символов;

работы с пропорциональными шрифтами;

задание произвольных межстрочных промежутков;

автоматический перенос слов на новую строку;

автоматическую нумерацию страниц;

обработку и нумерацию сносок;

печать верхних и нижних заголовков страниц;

выравнивание краев абзаца;

набор текста в несколько столбцов;

создание таблиц и построение диаграмм;

проверку правописания и подбор синонимов;

построение оглавление и т. д.

Всего существует несколько сотен редакторов текстов, от самых простых до весьма мощных и сложных. Среди простых редакторов текста в России наибольшее распространение получил ЛЕКСИКОН. Он имеет интерфейс на русском языке и позволяет подготавливать документы с текстом на русском и английском языках. В настоящее время стандартом является текстовый редактор Microsoft Word for Windows (WinWord или просто Word).

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

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

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

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

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

Проблемно-ориентированное прикладное программное

обеспечение

Проблемно-ориентированное прикладное программное обеспечение САПР имеет более узкую специализацию и предназначено для обработки информации в области автоматизированного проектирования различных технических объектов.

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

Характерные черты проблемной ориентации в области проектирования имеют системы CAD - Computer Aided Desing (системы автоматизированного или компьютерного проектирования), которые осуществляют автоматизацию расчетных и конструкторских работ.

Система автоматизированного проектирования AutoCAD

Лидером среди систем CAD является система автоматизированного проектирования AutoCAD, предназначенная для применения в машиностроении, электронике, электромашиностроении, строительстве, архитектуре и других областях, где требуется построение чертежей, схем, диаграмм, а также создание художественных и рекламных изображений.

AutoCAD - первый программный продукт фирмы Autodesk, созданной в апреле 1982 года, когда в ее состав входило всего 15 программистов. Первая версия системы поступила в продажу в конце 1982 года. Характеристики системы оказались столь привлекательными для пользователей, что спрос на нее постоянно растет, и в настоящее время можно констатировать, что AutoCAD фактически играет роль стандарта для САПР.

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

Линии, дуги и окружности можно вычерчивать сплошными и пунктирными линиями различных типов. Кроме того, имеются возможности задавать гарнитуру, размер и тип шрифта. Из графических примитивов можно формировать составные объекты-блоки. Блок рассматривается системой как единый объект, который можно перемещать и удалять целиком, независимо от сложности его внутренней структуры. Каждый блок может содержать другие блоки, причем допускается несколько уровней вложения.

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

Управление системой осуществляется с помощью специального командного языка. Команды могут быть введены с клавиатуры или выбраны из экранного меню. Требуемые для выполнения команд параметры могут быть введены заранее либо в диалоговом режиме. Последние версии системы AutoCAD содержат дополнительные сервисные средства, например двухуровневое "ниспадающее меню", графический интерфейс. Многочисленные дополнения к системе AutoCAD, разрабатываемые как фирмой Autodesk, так и другими фирмами, еще более упрощают управление системой.

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

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

Для архивирования чертежей и обмена данными с другими системами в системе AutoCAD предусмотрен "формат обмена чертежами". Этот формат позволяет передавать данные системы AutoCAD в базы данных других систем проектирования, а также анализировать и модифицировать чертежи.

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

Одна из причин широкого распространения системы AutoCAD - постоянные усилия фирмы Autodesk, направленные на поощрение разработок, расширяющих области ее применения. Проводя работу в этом направлении, фирма координирует усилия десятков фирм, создающих различные дополнения к системе AutoCAD.

Для того, чтобы существенно расширить возможности системы AutoCAD, используется система управления базой данных ABASE, которая представляет собой комплекс программных средств, предназначенных для обработки графических изображений и текстов с целью информационной поддержки процесса проектирования. СУБД ABASE позволяет хранить данные, а также быстро создавать и извлекать рисунки и параметрические объекты, обеспечивая таким образом связь системы AutoCAD с базами данных. Совместно с ней работает программа GLISP, автоматически генерирующая программы на языке AutoLISP. Использование языка программирования AutoLISP позволяет осуществлять обмен данными с внешними файлами, полученными в процессе расчетного проектирования, и передавать информацию в графический редактор системы AutoCAD. Программное управление командами графического редактора дает возможность получить на экране монитора изображение графической модели любой детали объекта проектирования с нанесенными размерами и необходимыми разрезами и сечениями в соответствии с существующими стандартами и передать его на устройство вывода графической информации.

Система автоматизированного проектирования КОМПАС-ГРАФИК

Ситема КОМПАС-ГРАФИК, разработанная фирмой АСКОН, стала реальной альтернативой AutoCAD уже в конце 80-х годов. Система КОМПАС-ГРАФИК изначально была ориентирована на выпуск чертежей и полную поддержку ЕСКД. Система КОМПАС - это новое поколение высокоэффективной конструкторской графики с совершенными технологиями проектирования и инструментальными средствами, которые отвечают самым современным требованиям. Система включает мощный чертежно-конструкторский редактор со средствами интерактивной параметризации, модуль управления документами, готовые библиотеки для различных областей применения, прикладные конструкторские пакеты, инструментальные средства разработки приложений.

Интегрированная система автоматизированного проектирования CADdy

Система CADdy, разработанная немецкой фирмой ZIEGLER, впервые появилась на рынке в конце 1983 года и включала лишь редактор чертежей. В 1984-1987 годы к нему были добавлены модули для проектирования в машиностроении, электронике, геодезии, что сразу привлекло к системе многочисленных пользователей. В 1988 году фирма полностью переработала систему на базе новой концепции интеграции и выпустила помимо немецкоязычной англо-, а позднее - и русскоязычную версии. Интегрированная система автоматизированного проектирования CADdy имеет более 70 модулей разного назначения.

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

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

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

Вместе с тем, учитывая потребности пользователей, разработчики ввели в состав CADdy возможности для быстрой перестройки системы меню и мощную встроенную систему программирования PLUS. Встроенная система программирования служит для описания элементов чертежей и дает возможности вызова любых внешних EXE-модулей, что позволяет использовать программы на PLUS совместно с любыми другими программами.

Система автоматизированного проектирования P-CAD

Первые версии системы P-CAD разработаны фирмой Personal CAD Systems в 1985-1987 годах. Более поздние разработки данной фирмы имеют другие названия - Master Designer, Associate Designer и др., однако пользователи продолжают называть их версиями P-CAD, присваивая им новые имена по своему разумению.

P-CAD - система автоматизированного проектирования многослойных печатных плат (МПП). P-CAD позволяет проектировать МПП, параметры которых соответствуют возможностям отечественной технологии, содержит большой набор драйверов периферийных устройств и работает с интегрированной базой данных.

Система автоматизации расчетов MathCAD

Система MathCAD создана фирмой Mathsoft Incorporation и 1986-1988 годах. Система MathCAD позволяет решать в численном виде математические и статистические задачи с выводом результатов в виде графиков, таблиц или гистограмм. Исходная информация вводится не на языке программирования, а с помощью обычных формул и выражений, которые можно взять в соответствующей книге. Система MathCAD поддерживает работу с греческими буквами, вычисляет интегралы, производные, суммы и т.д., имеет ряд встроенных функций: вычисление прямого и обратного преобразований Фурье, логарифмические функции, специальные функции и функции, определенные пользователем.

Система анализа электронных цепей Micro-Cap

Cистема Micro-Cap разработана английской фирмой Spectrum Software. Система Micro-Cap позволяет рассчитывать переходные процессы, установившиеся состояния, строить частотные характеристики, составлять схемы замещения, проводить статистический анализ.

Система анализа магнитных полей ELCUT

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

Система обработки информации Statgrafics

Система Statgrafics разработана фирмой Borland и дает возможность проводить анализ больших массивов данных. Система включает программные средства статистического и математического анализа и предоставляет возможности наглядного представления результатов.

Более современный уровень проблемно-ориентированного прикладного программного обеспечения представляют системы CAD/CAM - Computer Aided Desing/Computer Aided Manufacturing - системы автоматизированного проектирования и производства. Системы CAD/CAM, как правило, ориентированы на использование рабочих станций фирм Hewlett Packard, SUN, DEC, IBM и являются достаточно дорогими. Однако, несмотря на это, сейчас идет процесс активного внедрения систем CAD/CAM в отечественную промышленность.

Одной из наиболее распространенных CAD/CAM систем является система Pro/ENGINEER американской фирмы Parametric Technology Corporation. Более 12000 компаний в мире используют данную систему.

Система Pro/ENGINEER формирует трехмерные геометрические объекты, проводит их модификацию, разрабатывает техническую документацию, создает графическую базу данных. Система Pro/ENGINEER является полностью интегрированной средой, в которой деталь поочередно проходит все уровни инженерной подготовки. Pro/ENGINEER позволяет проектировать модель, как комбинацию отдельных характерных элементов. Это позволяет отказаться при проектировании от сложных геометрических систем. Параметрическая основа системы позволяет присваивать определенные символы элементам геометрии детали и отслеживать соответствие размеров деталей из различных чертежей. Такие возможности значительно облегчают внесение изменений и способствуют оптимизации конструкторских работ.

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

Объектно-ориентированное прикладное программное

обеспечение

К объектно-ориентированному прикладному (специализированному) программному обеспечению относятся узкоспециализированные программные средства, предназначенные для обработки информации, связанной непосредственно с объектом проектирования. Данное программное обеспечение предназначено для автоматизации проектирования объектов определенного класса (в нашей среде - электрических машин).

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

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

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

Создание объектно-ориентированного прикладного программного обеспечения САПР - сложная научно-техническая задача, для решения которой требуются большие материальные затраты. Затраты на разработку и сопровождение программного обеспечения составляют большую долю (80 - 95 %) всех затрат на создание и эксплуатацию САПР.

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

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

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

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

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

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

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

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

Наиболее широкое распространение при создании программного обеспечения получило модульное программирование.

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

возможность распараллеливания процесса разработки программного обеспечения;

возможность создания библиотек модулей с целью повторного применения;

упрощение проблемы сегментации большой программы для эффективного использования объема оперативной памяти;

облегчение тестирования программы; упрощение проектирования и модификации программы.

К недостаткам модульного программирования относятся:

сложность и неоднозначность задачи декомпозиции программ на модули;

необходимость информационной увязки модулей;

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

достаточно большое влияние человеческого фактора в технологии программирования.

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

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

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

формирование и автономная отладка программы, реализующей данный алгоритм проектного расчета;

разработка инструкции по эксплуатации программы и занесение ее в дисковый файл;

создание краткого описания алгоритма проектного расчета и занесение его в дисковый файл.

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

ЛИНГВИСТИЧЕСКОЕ ОБЕСПЕЧЕНИЕ

СИСТЕМ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ

Лингвистическое обеспечение САПР - совокупность языковых средств, используемых в процессе разработки и эксплуатации САПР. Основу лингвистического обеспечения САПР составляют специальные языковые средства для записи алгоритмов, описания исходных данных и результатов, обмена информацией между человеком и ЭВМ в процессе проектирования. Кроме того, к лингвистическому обеспечению относится и различная специфичная терминология, содержащаяся в документах методического обеспечения САПР. Разнообразие форм представления информации, используемых человеком, и разнообразие объектов проектирования - причина множественности языков, применяемых в САПР. Обращаясь к САПР, пользователь должен познакомиться со способами описания задач и объектов проектирования используемой САПР.

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

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

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

Уровень языка программирования обычно характеризуется степенью его близости к архитектуре компьютера. Так, автокод (ассемблер) относят к языкам программирования низкого уровня; Фортран, Паскаль, Аду называют языками программирования высокого уровня; язык Сетл, созданный известным математиком Дж. Шварцем, служит примером языка программирования сверхвысокого уровня - его базис составляют теоретико-множественные операции, далекие от традиционной архитектуры компьютеров.

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

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

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

При интерпретации анализ исходной программы и ее исполнение совмещены во времени - очередной оператор исходной программы анализируется и тут же исполняется.

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

Совокупность языка программирования и соответствующего ему языкового процессора называют системой программирования.

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

Языки высокого уровня имеют следующие преимущества: машинная независимость, что делает программы, записанные на

этих языках, легко адаптируемыми к новым типам ЭВМ, обеспечивая им более широкое распространение;

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

Языкам высокого уровня присущи следующие недостатки: пониженная эффективность объектных программ, полученных после

трансляции с этих языков; меньшая универсальность, затрудняющая их применение для запи

си некоторых сложных программ САПР. Первый недостаток языков высокого уровня - следствие того,

что алгоритмический язык более удобен человеку по сравнению с машинным языком, но менее удобен ЭВМ. Рост потерь машинного времени из-за применения алгоритмического языка зависит от особенностей используемого транслятора и исполняемого алгоритма. Большинство современных трансляторов приводит к объектным программам в несколько раз более медленным, чем программы, составленные опытным программистом на языке ассемблера. Значительный рост наблюдается и в отношении затрат машинной памяти.

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

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

Выбор языка программирования для САПР не может быть решен однозначно. Для программирования языковых процессоров и мониторов, то есть программ, в которых преобладают логические операции над адресами и другими двоичными кодами, следует использовать языки ассемблера и языки высокого уровня: Паскаль, Ада, Фортран, Бейсик, Лисп, Симула, Си. Языкам ассемблера нужно отдать предпочтение, если жесткие требования предъявляются к затратам машинного времени в процессе эксплуатации САПР, а языкам высокого уровня - если более важное значение придается сокращению сроков разработки программ. Для программирования большинства прикладных программ САПР можно использовать языки высокого уровня.

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

Языки проектирования предназначены для представления и преобразования описаний в процессе автоматизированного проектирования. Основными объектами описаний в САПР являются: задание на проектирование, проектные процедуры и операции, проектные решения (промежуточные, конечные, типовые) и проектные документы. Языки проектирования являются важнейшей составной частью САПР и должны обладать как многими качествами универсальных языков программирования в представлении данных и действий над ними, так и достаточными уровнями выразительности, гибкости и проблемной ориентации в построении языковых конструкций, привычных проектировщику.

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

Альтернативой этому подходу является создание специализированных проблемно-ориентированных и объектно-ориентированных языков проектирования и трансляторов к ним.

Таким образом, лингвистическое обеспечение САПР можно разделить на: языки программирования (известные алгоритмические языки, на них записывается прикладное программное обеспечение САПР) и языки проектирования (языки для обмена информацией об объектах и процессе проектирования между проектировщиком и ЭВМ).

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

Языки проектирования принято классифицировать по следующим основным признакам:

месту в процессе автоматизированного проектирования;

связи с универсальными языками программирования;

оперативности;

преимущественному способу представления информации.

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

Входные языки служат для представления сведений об объектах и целях проектирования. К входным языкам предъявляются следующие требования:

возможность описания любых объектов, на проектирование которых ориентирована САПР;

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

лаконичность записи;

однозначность интерпретации элементов языка и языковых конструкций;

возможности развития и расширения языка в соответствии с развитием предметной области и САПР.

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

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

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

Средства языка описания задания служат для задания ЭВМ сведений о том, какая или какие задачи должны быть решены и в каких условиях. Язык описания заданий по своим возможностям и грамматике близок к языкам управления заданиями в операционных системах ЭВМ, но проблемной ориентацией он отличается от них. Запись на языке описания заданий состоит из директив - управляющих операторов. Основные директивы представляют собой приказы на выполнение некоторых проектных процедур, например анализа переходных процессов, статистического анализа, поиска экстремума. В качестве операндов в директиве могут указываться имена используемых программных модулей и числовые значения изменяемых параметров. В язык описания заданий также могут входить директивы отдельных процедур для модификаций структуры проектируемого объекта, значений его параметров, элементов базы данных, параметров управления вычислительным процессом.

Информация, выраженная на входном языке, при ее преобразовании в машинную программу вычислений претерпевает ряд изменений. Целесообразны строгие правила для языковых конструкций не только на этапе записи информации человеком для ввода в ЭВМ, но и на определенных этапах обработки информации внутри ЭВМ. Это связано, в частности, с тем, что программное обеспечение САПР может быть разделено на инвариантную и объектно-зависимую части. Изменения или дополнения в объектно-зависимой части требуются при переходе к проектированию объектов нового класса. При этом желательно, чтобы инвариантную часть можно было использовать без модификаций и переделок. Однако изменения или дополнения в инвариантной части требуются по мере развития математического обеспечения, появления более эффективных методов и алгоритмов. При смене инвариантных программ необходимо сохранить накопленные объектно-зависимые программные средства без изменений. Требования взаимной независимости инвариантной и объектно-зависимой частей обеспечиваются на основе введения унифицированного в данной САПР языкового интерфейса, то есть единого внутреннего языка.

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

Унификация представления данных требуется и при выводе информации, если эта информация - команды для программно-управляемого оборудования. Унифицированный язык для вывода в этом случае позволит решить проблему связи программного обеспечения разных САПР с различными устройствами вывода. Желательно, чтобы периферийное оборудование САПР также строилось с учетом унификации языка.

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

Выходные языки служат для представления результатов выполнения проектных процедур на ЭВМ. Возможные формы представления - таблицы, графики, чертежи, диаграммы, текстовые сообщения.

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

По связи с универсальными языками программирования различают автономные и расширяющиеся языки. Автономные могут иметь собственные грамматики, соответствующий транслятор и могут применяться независимо от других языков программирования. Расширяющиеся языки строятся на основе грамматики другого языка и являются его проблемно-ориентированными дополнениями. Базой расширения чаще всего служат алгоритмические языки высокого уровня Фортран, ПЛ/1, Паскаль, Си и другие. Такой подход позволяет использовать в языках проектирования все имеющиеся в базовом языке мощные средства обработки данных и упростить связь языков проектирования с другими программными средствами системы, а также обеспечить в значительной степени независимость языков проектирования от типа используемой ЭВМ.

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

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

Графический диалог - основа получения большей части конструкторской документации в САПР. Построение чертежей при этом состоит из следующих основных процедур:

преобразование исходной информации и необходимых сведений из базы данных с целью получения облика проектируемого объекта в виде некоторой математической модели;

выбор рационального числа проекций, сечений, разрезов;

выбор масштаба и формата чертежа;

подготовка данных для установки размеров;

формирование спецификаций и необходимых надписей;

компоновка и размещение подготовленного материала на поле чертежа;

преобразование графической информации с внутреннего языка на язык управления устройствами машинной графики;

визуализация или изготовление чертежа.

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

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

К диалоговым системам проектирования предъявляются следующие специфические требования:

слежение за правильностью фраз пользователя с точки зрения принятой грамматики языка, обнаружение ошибок и подсказка пользователю способов исправления ошибок;

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

удобство ведения диалога для пользователя (диалоговый язык должен быть естественным);

наличие сервисных услуг.

Диалоговый язык может быть активным и пассивным. Диалоговые системы проектирования на основе пассивных языков имеют следующие признаки: инициатором диалога выступает система (в заранее определенных точках выполнения программ предусматривается возможность прерывания вычислительного процесса и обращение системы к пользователю); сообщения системы строятся таким образом, что от пользователя требуются либо ответы типа "да", "нет", либо выбор ответа из заданного "меню". При этом под "меню" понимается ограниченный набор возможных вариантов ответов. Поэтому язык пользователя оказывается очень простым. Использование пассивных языков предъявляет минимальные требования к подготовке пользователя в области лингвистического обеспечения САПР.

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

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

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

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

Сообщения пользователя представляют собой в пассивных языках ответы на запросы в виде чисел, строк символов и элементов "меню", в активных языках - рабочие и служебные директивы. Рабочие директивы требуют выполнения проектных процедур, служебные используются для управления работой системы. Каждая директива состоит из идентификатора директивы и операндов - идентификатор директивы характеризует ее тип, операнды задают значения параметров. Диалог может эффективно использоваться как в процессе формирования исходных данных, когда сообщения пользователя дополняют сведения об объекте, так и в процессе вычислений, когда сообщения пользователя указывают новые задания. Другими словами, в диалоговых языках реализуются элементы языков описания и объекта, и заданий.

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

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

В алфавитно-цифровых (символьных) языках описания задаются в виде строк символов или в виде таблиц.

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

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

Разработка голосовых языков общения человека с ЭВМ основывается на использовании устройств распознавания и синтеза речи. Их применение в качестве языков управления совместно с другими способами представления информации является перспективным направлением развития диалоговых языков проектирования.

К языкам проектирования любого уровня предъявляют следующие основные требования: эффективность, полноту, расширяемость, выразительность и проблемную ориентацию. Эффективность языка подразумевает точность передачи заданий пользователя и лаконичность записей. Полнота языка понимается как возможность описания любых объектов, на проектирование которых ориентирована САПР, а также задания всех действий, имеющих отношение к цели проектирования. Расширяемость алфавита и синтаксиса языка должна обеспечить возможность развития языка в соответствии с развитием предметной области САПР. Выразительность и проблемная ориентация должны обеспечить простоту изучения и использования языков проектировщиками-непрограммистами. С этой точки зрения языки проектирования должны быть близкими к естественным по своим грамматикам, что обеспечивает простоту и минимальные затраты времени на их изучение.

ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ

СИСТЕМ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ

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

Информация в ЭВМ записывается в закодированном виде на различных носителях (чаще всего используются магнитные диски). Хранение информации осуществляется в виде записей, составленных из блоков данных различного типа (чисел, символов и т. д.), относящихся к одному информационному объекту. Примером записи служит совокупность данных в библиографической карточке. Информация определенного профиля, отделяемая в записи специальными разделителями, называется полем записи (например, в библиографической карточке полями являются название книги, фамилия автора, год издания и т. п.). Совокупность записей составляет файл данных, а набор файлов образует базу данных. Операции по обеспечению хранения и обработки данных в файлах выполняются с помощью операционной системы ЭВМ. Для более удобного обращения к файлам на дисках в развитой операционной системе создается хранилище файлов - файловая система, в которой файлы объединяются в группы по их целевому назначению. Каждой группе присваивается имя - директорий (каталог) этой группы. Совокупность директориев (каталогов) рассматривается как специальный файл, которому также присваивается имя - директорий (каталог) более высокого уровня. Директорий (каталог) самого высокого уровня называется корневым, а на самом нижнем уровне директориев находятся файлы пользователей. Для обращения к файлу задается маршрут по директориям, который включает имя файла и перечень директориев (от корневого до ведущих к искомому файлу) по следующей форме: C:\ACAD\DRAW\Detal.

Операционная система служит для общей организации процесса работы ЭВМ и обеспечения простейших операций по обработке данных. Для того чтобы выполнить более сложные операции по манипулированию данными (поиск и отбор данных, обеспечение удобного ввода и обновления данных, формирование и печать выходных документов и т. д.) используются различные системы управления базами данных.

Для однозначного восприятия материала используются следующие термины:

база данных (БД) - именованная совокупность данных, отражающая состояние объектов и их отношений в рассматриваемой предметной области;

система управления базами данных (СУБД) - совокупность языковых и программных средств, предназначенных для создания, ведения и совместного применения БД многими пользователями;

система базы данных (система БД) - СУБД с наполненной базой данных, управляемой ее средствами;

система баз данных - совокупность баз данных, управляемых соответствующими СУБД;

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

Вопросам развития систем баз данных в САПР уделялось серьезнейшее внимание с самого начала организованных работ в этой области. Свидетельством этому является ГОСТ 23501.9-80 "САПР. Общие положения к автоматизированным банкам данных", согласно которому системы баз данных являются составной частью информационного обеспечения САПР и состоят из баз данных и систем управления базами данных. Системы баз данных создаются как обслуживающие подсистемы САПР и предназначены для автоматизированного обеспечения необходимыми данными проектирующих подсистем САПР. СУБД, как рассматривалось выше, являются компонентами универсального прикладного программного обеспечения САПР. По назначению СУБД является элементом информационного обеспечения, так как организует автоматизированное обеспечение проектировщика информацией, а по содержанию - это комплекс программ, то есть элемент программного обеспечения.

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

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

База данных САПР представляет собой совокупность данных, удовлетворяющих следующим требованиям: коллективное многоразовое использование (то есть в БД могут входить только те данные, которые могут потребоваться многим пользователям или многим прикладным программам при выполнении многих маршрутов проектирования); данные должны быть представлены в одной из форм, допустимых в базе данных.

Данные, хранимые в БД САПР, можно разделить на две большие группы:

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

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

Обмен данными в САПР происходит через следующие информационные потоки:

пользователь - база данных;

база данных - пользователь;

подсистема - подсистема;

программный модуль - программный модуль.

Потоки "пользователь - база данных" и "база данных - пользователь" используются при занесении или корректировке данных в БД пользователями САПР или при получении ими необходимой информации из БД. Поток "программный модуль - программный модуль" служит для информационной связи прикладных программ, входящих в какой-либо маршрут проектирования, между собой, а поток "подсистема - подсистема" - для информационной связи различных подсистем. Наличие данных потоков - необходимое условие реализации сквозного автоматизированного проектирования сложных объектов.

Для управления рабочим массивом в САПР целесообразно использовать экономичную по затратам вычислительных ресурсов специализированную СУБД. Особенно важен быстрый обмен для потока "программный модуль - программный модуль". Однако для ведения архива требуется более универсальная СУБД. В связи с этим в крупных САПР система баз данных обычно состоит из нескольких частей:

центральной (интегрированной) БД, содержащей сведения, используемые в различных подсистемах, СУБД которой является универсальной;

локальных БД, каждая из которых привязана к конкретной подсистеме САПР и имеет специализированную СУБД.

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

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

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

К базе данных САПР предъявляются следующие основные требования:

1. Полнота информации. Исходные данные для выполнения очередной проектной процедуры могут быть разделены на две группы: данные, предопределяемые нормативными документами и результатами выполнения предыдущих этапов; данные, выбор которых находится в компетенции исполнителя процедуры. Полнота БД недостаточна, если исполнитель процедуры не может получить все необходимые данные первой группы из БД. Во многих САПР, технические средства которых представляют собой вычислительную сеть, существует несколько БД. Центральная БД содержит наиболее общие сведения, используемые во многих программах и запрашиваемые многими пользователями. Локальные БД имеют более узкую проблемную ориентацию, обслуживают небольшую часть программного обеспечения. В подобных САПР сведения распределены между разными БД и требование полноты выполняется при наличии необходимого интерфейса между БД.

2. Неизбыточность информации. Одни и те же сведения используются в различных подсистемах САПР, входят в массивы исходных данных для многих программ. Это порождает тенденцию к многократному дублированию одних и тех же данных в разных частях БД. Получающаяся избыточность вредна по причине нерационального использования памяти и в связи с трудностями синхронного изменения данных, требующегося в процессе эксплуатации САПР. Поэтому нужно стремиться к тому, чтобы избыточность данных в БД была незначительной и контролируемой со стороны СУБД.

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

4. Возможность независимого изменения информационного и программного обеспечения САПР. Выполнение этого требования необходимо в открытых САПР, в которых изменения отдельных элементов не должны вызывать существенной переделки других частей системы. Независимость информационного и программного обеспечения реализуется с помощью выделения в БД двух уровней рассмотрения - логического и физического. Логический уровень содержит представления о структуре данных и предназначен для использования разработчикам прикладных программ. Физический уровень затрагивает вопросы размещения данных на конкретных носителях информации, распределения памяти, установления соответствия между элементами данных и их адресами в памяти ЭВМ. Физический уровень предназначен для использования разработчиками СУБД.

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

6. Минимизация затрат памяти. Это требование выполняется путем устранения избыточности данных, своевременного удаления ненужных данных. Объем требуемой памяти зависит также от принятого типа организации БД. Так различают сетевые и реляционные БД, имеющие свои преимущества и недостатки. Выбор типа БД осуществляется при разработке САПР.

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

Доступ пользователя к БД осуществляется на основе принятых в САПР входных языков. Во входных языках должны быть средства для выполнения необходимых операций записи и считывания данных из БД. Часто обращение к БД осуществляется монитором на основе интерпретации директив и предложений входного языка библиотеки прикладных программ.

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

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

Элементом данных называется простейшая часть информационного массива, дальнейшее деление которого невозможно без потери смысла. Совокупность взаимосвязанных элементов БД называется записью. Однотипные записи можно объединить в группу с присвоением ей определенного имени. Группа записей может иметь смысловые связи с некоторыми другими группами.

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

В памяти ЭВМ связи между записями сетевой БД выражаются с помощью массива указателей, называемого справочником. Каждой вершине графа в БД соответствует группа записей в виде информационного массива и строка справочника, в которой перечисляются связи данной вершины со смежными.

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

В каждой записи выделяется элемент, называемый ключом (дескриптором). Ключ выполняет роль идентификатора записи. При обращениях к БД поиск нужных записей осуществляется по значениям ключа. Обычно в записях выделяют несколько ключей, что позволяет удовлетворить разнообразные запросы пользователей.

Структура БД в САПР должна соответствовать блочно-иерархическим принципам проектирования. Поэтому вопросы структурирования проектов по иерархическим уровням, аспектам и стадиям проектирования имеют непосредственное отношение к построению БД в САПР сложных объектов.

Наиболее простые СУБД позволяют обрабатывать один массив информации. Они обеспечивают ввод, поиск, сортировку записей, составление отчетов и т. п. С такими СУБД легко могут работать пользователи даже невысокой квалификации, так как все действия в них осуществляются с помощью меню и других диалоговых средств. СУБД такого уровня поддерживают, например, локальные БД проектирующих подсистем САПР.

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

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

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

Раздел 1. Область нормативно-справочных данных и типовых проектных решений. Этот раздел включает характеристики материалов, входящих в конструкцию объекта проектирования, обмоточные данные проводов, технологические и конструктивные коэффициенты, учитывающие современный уровень производства и т. п. Данные этого раздела определяют ограничения, которым должен следовать пользователь системы при поиске проектных решений. Организация данного раздела БД должна соответствовать логической структуре, которая имеет две относительно независимые ветви: данные типовых проектных решений и нормативно-справочные данные. Взаимодействие этих ветвей осуществляется только при функционировании программных модулей.

Раздел 2. Информационная модель объекта проектирования, которая формируется из данных, описывающих его в рамках отдельных программных модулей, соответствующих конкретным локальным этапам расчетного проектирования. Естественно, что эта модель развивается в процессе проектирования. Описание объекта, получаемое на каждом предыдущем локальном этапе проектирования, включает данные, необходимые для обеспечения функционирования программных модулей последующих этапов. По окончании проектирования данные, составляющие информационную модель объекта проектирования могут быть переданы в раздел 1.

Раздел 2 базы данных состоит из нескольких подразделов (по числу основных программных модулей расчетного проектирования). Каждый подраздел в свою очередь разделен на две части: область статических данных и область динамических данных. Статические данные используются только при реализации конкретного программного модуля и не меняются в процессе проектирования. Динамические данные формируются на выходе программного модуля и осуществляют информационное обеспечение работы других программных модулей. Кроме того, они включают данные, поступающие на вход программного модуля (с выхода других программных модулей в процессе проектирования). Обмен данными между БД и программными модулями производится в соответствии со структурной схемой информационных связей.

На систему управления базой данных возлагаются следующие функции:

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

обеспечение интерфейса между программными модулями и БД; поиск данных в справочно-информационном фонде;

защита данных от несанкционированного доступа и разрушений;

обеспечение доступа как к самим данным, так и к их описаниям непосредственно на уровне информационной модели объекта проектирования;

осуществление сбора статистики по использованию и доступу к элементам информации.

СУБД, функции которой в данном случае может выполнять программа-монитор библиотеки прикладных программ, содержит необходимый набор сервисных утилит и функциональный программный модуль, который обеспечивает интерактивное обслуживание пользователя в режиме пополнения, поиска, корректировки и выдачи информации. Основной функцией СУБД является выполнение операций по обработке данных, необходимых для функционирования программных модулей. При считывании записи из БД в рабочую область программного модуля осуществляется следующий порядок действий СУБД. Программный модуль формирует и передает запрос на чтение записи СУБД, сообщая шифр пользователя и значение реквизитов ключа записи. СУБД на основе анализа подсхемы, используемой программным модулем, и схемы (полного логического описания данных) осуществляет поиск описания данных, на которые передан запрос, и определяет, какого типа логические данные необходимы. Затем СУБД просматривает описание физической структуру БД, непосредственно представленной в памяти ЭВМ, и определяет, какую физическую запись требуется считывать, после чего формирует и предает операционной системе команду на чтение требуемой записи. Операционная система взаимодействует с внешним носителем, на котором хранятся данные. Запрошенные данные передаются из БД в системный буфер. СУБД сравнивает схемы и подсхемы, выделяет ту логическую запись, которая была запрошена (на данном этапе проектирования) и передает данные из системного буфера в рабочую область программного модуля. СУБД формирует и передает программному модулю информацию о результатах выполнения его запроса. Если при передачи данных были обнаружены ошибки, то соответствующая информация также передается программному модулю. В завершении этого процесса программный модуль производит обработку данных, размещенных в его рабочей области.

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

На интерфейс пользователя возлагаются следующие функции: предоставление пользователю возможности системной работы со

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

обеспечение информационной поддержки пользователя при работе с элементами прикладного обеспечения.

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

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

Содержание основного меню дает пользователю возможность:

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

провести анализ аннотированного перечня литературных источников, что обеспечивает корректную подготовку исходных данных;

ознакомиться с текстовым комментарием к основному меню;

войти в библиотеку программных модулей проектирования для выполнения проектных расчетов в локальном, либо автономном режимах;

войти в библиотеку программных модулей проектирования для выполнения проектных расчетов в системном режиме;

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

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

Приведенные выше функции могут быть выполнены специально разработанными системами баз данных или системами на основе простых существующих СУБД, например, PC-File, Reflex, Q&A.

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

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

К числу СУБД реляционного типа, предназначенных для персональных ЭВМ, относятся: семейство dBASE, Clipper, Foxbase, Paradox. Большинство СУБД реляционного типа позволяют создавать файлы с числом записей до 1 млрд. и объемом до 2 тыс. Мбайт. Обычно ограничением на число и объем записей в первую очередь выступает емкость внешней памяти ЭВМ.

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

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

Развитие интерфейса пользователя с СУБД идет в направлении включения в режим, управляемый меню, все большего количества средств, расширяющих возможности неподготовленных пользователей по управлению данными. Например, последние версии таких СУБД как dBASE, содержат генераторы приложений (прикладных программ), позволяющие пользователям без знания командного языка создавать программы средней степени сложности. Система dBASE является одной из самых популярных СУБД для персональных ЭВМ. Большое внимание в системе уделено развитию инструментария для разработки приложений, и она ориентирована именно на разработчиков приложений. Система включает полный управляемый с помощью меню генератор приложений, предназначенный и для программистов, и для пользователей. Существенно расширен язык программирования. В него добавлено большое количество новых операторов и функций. В состав системы включен развитый отладчик программ с оконным интерфейсом, позволяющий исполнять программы в пошаговом режиме.

Для существенного расширения возможностей системы AutoCAD используется система управления базой данных ABASE, которая представляет собой комплекс программ, предназначенных для обработки графических изображений и текстов с целью информационной поддержки процесса проектирования. ABASE позволяет хранить данные, а также быстро создавать и извлекать рисунки и параметрические объекты, обеспечивая таким образом связь AutoCAD с базами данных. ABASE имеет иерархическую структуру, но допускает и внутриуровневые отношения. Для визуализации поиска нужных объектов можно просматривать слайды изображений в формате AutoCAD. Тексты могут быть включены в объект и вставлены в рисунок. Управление ABASE осуществляется либо с помощью команды, набираемой на клавиатуре, либо путем указания пункта экранного меню.

Почти во всех подобных СУБД создание информационных систем достаточно трудоемко и сложно, поскольку должно осуществляться с помощью средств весьмя низкого уровня. Поэтому разработка даже несложных на первый взгляд информационных систем часто требует большого объема программирования и больших затрат времени. Широко пропагандируемые средства высокого уровня (запросу по образцу, генераторы форм и отчетов и т. д.), включенные в последние версии таких СУБД, как dBASE IV, FoxPro или Paradox 4, ненамного улучшают ситуацию - они сокращают потребность в кодировании в среднем всего на 30 - 40 %. Так что создание информационных систем сильно напоминает программирование вычислительных задач на языке Ассемблера. К сожалению, недобросовестная реклама производителей таких СУБД воспевает их "эффективность", то есть скорость "перемалывания" данных, умалчивая о том, сколько адского труда требует создание приложений.

В последнее время, впрочем, появились и такие СУБД, в которых высокоуровневые средства обеспечивают не 30 -40 %, а 80-90 % потребностей большинства разработчиков. С помощью языка низкого уровня требуется кодировать только немногочисленные нестандартные блоки (подобно ассемблерным вставкам в программе на языке высокого уровня). Большинство таких СУБД (Superbase, DataEase, Access) работают в среде Windows, из-за чего им требуется достаточно мощный компьютер. СУБД DataEase имеется и в версии для MS DOS, эта СУБД достаточно проста для пользователей средней квалификации, предоставляет богатейшие средства для разработчиков, автоматически поддерживает работу в локальной сети и позволяет включать подпрограммы на языках Си, Ассемблер и других языках программирования.

Среди преобладающих тенденций к применению зарубежных разработок системного и прикладного программного обеспечения необходимо выделить крупные отечественные СУБД - системы ИНЕС, ВЕРА и ПАЛЬМА, первые версии которых появились в конце 70-х годов. Для отечественных СУБД характерна тенденция к развитию выразительных средств, позволяющих эффективно использовать свойства различных моделей данных. В системах ВЕРА и ПАЛЬМА реализована модель данных реляционного типа, а в системе ИНЕС - иерархическая модель данных, допускающая представление сложных структур данных.

МАТЕМАТИЧЕСКОЕ ОБЕСПЕЧЕНИЕ

СИСТЕМ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ

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

ЗАДАЧИ ПРОЕКТИРОВАНИЯ

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

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

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

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

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

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

Параметрическая оптимизация имеет несколько разновидностей:

оптимизация номинальных значений параметров, часто называемая оптимизацией параметров;

оптимизация технических требований, предъявляемых к параметрам;

оптимизация допусков.

В первой из этих разновидностей под оптимизацией понимается определение таких номинальных значений внутренних параметров Х, при которых некоторая функция F(Х), называемая целевой функцией или функцией качества, принимает экстремальное значение.

К определяемым при оптимизации внутренним параметрам может относиться только часть параметров, называемых управляемыми параметрами. Если использовать геометрические представления при описании процедур оптимизации, то можно говорить о n-мерном пространстве, осями координат которого являются оси управляемых параметров. Это пространство называют пространством управляемых параметров. Каждой точке этого пространства соответствует определенная совокупность значений параметров - определенное значение вектора управляемых параметров Х. Точку, соответствующую выбранному на данном этапе проектирования значению Х, называют отображающей точкой. Аналогично можно использовать понятие пространства выходных параметров.

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

Задачи анализа делятся на задачи одновариантного и многовариантного анализа.

Решение задач одновариантного анализа позволяет получить информацию о выходных параметрах объекта непосредственно в заданной отображающей точке, причем чаще всего решение сводится к однократному решению системы уравнений или к однократному испытанию макета объекта. Задачами одновариантного анализа являются: анализ статического состояния; анализ переходного процесса; анализ характеристик; анализ устойчивости.

Задачи многовариантного анализа заключаются в исследовании поведения объекта в некоторой окрестности заданной отображающей точки. Обычно многовариантный анализ требует многократного выполнения одновариантного анализа. К задачам многовариантного анализа относят прежде всего: статистический анализ; анализ чувствительности.

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

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

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

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

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

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

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

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

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

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

Расчетные неавтоматизированные методы проектирования могут дать только сугубо ориентировочные значения параметров, которые следует рассматривать как исходные, требующие корректировки с помощью других методов. Ориентировочный характер результатов ручных расчетов связан с малой точностью используемых при этом расчетных моделей. Действительно, процессы в достаточно сложных объектах описываются системами уравнений высокого порядка и эти уравнения в общем случае нелинейны. Так, переходные процессы описываются системами обыкновенных дифференциальных уравнений, порядок которых равен приблизительно количеству реактивных элементов. Ручное решение системы обыкновенных дифференциальных уравнений оказывается практически возможным только в том случае, если порядок системы не превышает двух и уравнения линейны. Этот пример показывает, что ручные расчетные методы применимы только при принятии существенных упрощений, что и обуславливает ориентировочный характер получаемых результатов.

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

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

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

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

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

КЛАССИФИКАЦИЯ МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ

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

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

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

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

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

Блочно-иерархический подход к проектированию включает в качестве своей основы иерархию математических моделей. Деление моделей по иерархическим уровням (уровням абстрагирования) происходит по степени детализации описываемых свойств и процессов, протекающих в объекте. При этом на каждом иерархическом уровне используются свои понятия "система" и "элементы". Так, система определенного уровня рассматривается как элемент на соседнем более высоком уровне абстрагирования.

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

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

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

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

ФОРМЫ ПРЕДСТАВЛЕНИЯ МОДЕЛЕЙ

Для представления моделей используют следующие основные формы.

Инвариантная форма - запись соотношений модели с помощью традиционного математического языка безотносительно к методу решения уравнений модели.

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

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

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

Модели в аналитической и алгоритмической формах называют соответственно аналитическими и алгоритмическими.

ТРЕБОВАНИЯ К МАТЕМАТИЧЕСКИМ МОДЕЛЯМ

Основными требованиями, предъявляемыми к математическим моделям, являются требования адекватности, универсальности и экономичности.

Адекватность. Модель считается адекватной, если отражает заданные свойства объекта с приемлемой точностью. Точность определяется как степень совпадения значений выходных параметров модели и объекта и выражается погрешностью модели.

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

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

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

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

Экономичность модели по затратам памяти оценивается объемом оперативной памяти, необходимой для реализации модели.

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

МЕТОДЫ ПОЛУЧЕНИЯ МОДЕЛЕЙ

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

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

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

Методика макромоделирования. Применение методики состоит из нескольких этапов.

1. Определение тех свойств объекта, которые должны отражаться моделью (устанавливаются требования к степени универсальности будущей модели).

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

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

4. Определение численных значений параметров модели. Возможны следующие приемы выполнения этого этапа:

использование специфических расчетных соотношений с учетом собранных на этапе 2 сведений;

решение экстремальной задачи, в которой в качестве целевой функции выбирается степень совпадения известный значений выходных параметров объекта с результатами использования модели, а управляемыми параметрами являются параметры модели;

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

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

6. Представление полученной модели в форме, принятой в используемой библиотеке моделей.

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

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

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

МАТЕМАТИЧЕСКИЕ МОДЕЛИ ОБЪЕКТОВ

ПРОЕКТИРОВАНИЯ

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

Математические модели элементов на макроуровне получают теоретическими или экспериментальными методами, рассмотренными ранее. Математические модели системы формируют из математических моделей элементов с помощью соответствующих методов.

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

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

Особенностью топологических уравнений является то, что каждое из них связывает однотипные фазовые переменные, относящиеся к разным элементам системы. Примером могут служить уравнения законов Кирхгофа, записываемые относительно либо токов, либо напряжений ветвей. Для компонентных уравнений характерно то, что они связывают разнотипные фазовые переменные, относящиеся к одному элементу. Так, уравнение закона Ома связывает ток и напряжение резистора.

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

В физически однородных подсистемах различают три типа простых элементов. Это элементы емкостного, индуктивного и резистивного типов. Соответствующие им математические модели элементов имеют вид

C·dU/dt = I, L·dI/dt = U, U = R·I,

где C, L, R - параметры элементов, физический смысл которых определяется типом подсистемы. Элементы подсистем в зависимости от числа однотипных фазовых переменных, входящих в математическую модель элемента, делят на двухполюсники и многополюсники. Двухполюсник характеризуется парой переменных типа U и I, определяется так же, как простой элемент, если снять условие линейности уравнения. Многополюсник можно представить как совокупность взаимосвязанных двухполюсников.

Для представления математических моделей на макроуровне применяют несколько форм.

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

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

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

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

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

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

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

нормальная форма (ее применение удобно при ориентации на последующее численное решение явными методами);

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

алгебраизованная и линеаризованная форма (их вид определяется выбранными методами алгебраизации и линеаризации).

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

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

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

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

Многовариантный анализ заключается в многократном повторении решения систем названных уравнений при варьировании внутренними и (или) внешними параметрами.

МЕТОДЫ СТРУКТУРНОГО СИНТЕЗА

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

Формализация задач структурного синтеза возможна на основе следующих подходов:

перебора вариантов из архива типовых структур;

перебора вариантов, генерируемых из библиотеки элементов;

последовательного синтеза;

выделения варианта из обобщенной структуры;

использование эвристических приемов;

сведение задачи синтеза к задаче дискретного математического программирования;

использование специфических особенностей предметной области.

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

выбор или генерация очередного варианта;

оценка варианта;

принятие решения о дальнейших действиях.

Основные действия по синтезу структуры осуществляются в первой из этих процедур.

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

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

метод ветвей и границ (под этим названием фигурирует группа комбинаторных методов частичного перебора);

метол И-ИЛИ-дерева (этот метод реализует идею выделения варианта из обобщенной структуры);

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

МЕТОДЫ ПАРАМЕТРИЧЕСКОГО СИНТЕЗА

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

Функционирование любого проектируемого технического объекта подчиняется определенным физическим законам. Закон функционирования описывается аналитическими соотношениями между входными, внутренними и выходными переменными системы. Эти переменные связаны определенными соотношениями с переменными проектирования Х (управляемыми параметрами), под которыми понимаются внутренние переменные, допускающие варьирование. В процессе параметрического синтеза варьирование переменных проектирования Х ведет к изменению выходных параметров Y системы.

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

Для постановки и решения задачи параметрического синтеза необходимо формирование целевой функции F (Х), отражающей качество фукнционирования проектируемого объекта. Векторный характер критериев оптимальности (многокритериальность) в задачах проектирования обуславливает сложность проблемы постановки задач оптимизации.

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

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

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

Однако не всегда все элементы в проектируемых объектах могут принимать любые значения в пределах некоторой допустимой области. Это связано прежде всего со стандартизацией и унификацией (использование рядов предпочтительных чисел, стандартные шкалы номинальных данных, унифицированные размеры комплектующих). На параметры разрабатываемых объектов также накладывается ряд ограничений, учитывающих условия стандартизации и унификации. Кроме того, некоторые переменные в принципе не могут являться непрерывными (например, число полюсов, число параллельных ветвей, число витков и проводников). Для решения задач оптимизации с дискретными значениями параметров используются методы решения задач дискретного программирования.

Если при оптимизации часть параметров дискретна, а часть имеет непрерывный характер, то задача должна решаться методами частично дискретного программирования.

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

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

Классические методы безусловной оптимизации применяют в тех случаях, когда известен вид целевой функции F (Х), то есть дано ее аналитическое выражение, и предполагается, что F (Х) не менее чем дважды дифференцируема по управляющим параметрам. Тогда для определения экстремума используют необходимые и достаточные условия безусловного экстремума. Эти условия можно получить с помощью разложения F (Х) в окрестностях экстемальной точки в ряд Тейлора.

Необходимым условием экстремума является grad F (X) = 0. Все точки, где выполняется это условие, называются стационарными.

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

Итак, если известно выражение F (Х), то необходимо продифференцировать целевую функцию по управляемым параметрам и приравнять производные к нулю. Решение полученной таким образом системы уравнений даст стационарную точку. Далее нужно убедиться в том, что это действительно экстремальная точка, с помощью проверки выполнения достаточных условий. Если достаточные условия не выполняются, то имеем не экстремальную, а седловую точку.

Классические методы нахождения экстремумов целевых функций непосредственно в САПР практически не применяются, так как случаи аналитического задания функций крайне редки. Характерной ситуацией является наличие алгоритмических математических моделей. В связи с этим определение значений целевых функций, функций-ограничений и их градиентов возможно только через числовое решение систем уравнений. В такой ситуации используют поисковую оптимизацию, при которой поиск цели - экстремальной точки в пространстве управляемых переменных - осуществляется последовательными шагами, ведущими от исходной точки Хо через некоторые промежуточные отображающие точки Хk в заданную окрестность точки экстремума Х*.

Перед началом поиска выбирается некоторая исходная точка Хо в пределах допустимой области G. Далее вычислительный процесс состоит из последовательности шагов. На каждом шаге сначала выбирается направление движения. Затем производится сам шаг в пространстве управляемых параметров, в результате из предыдущей точки Хk осуществляется переход в новую точку Хk+1. В этой точке вычисляется значение целевой функции F (Хk+1). Шаг заканчивается проверкой условий прекращения поиска: если условия выполнены, то поиск заканчивается, иначе делается переход к новому шагу.

Методы поисковой оптимизации классифицируются по следующим признакам:

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

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

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

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

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

Методы локальной оптимизации широко используются в САПР и достаточно хорошо изучены и развиты.

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

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

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

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

Рассмотрим некоторые методы поиска экстремума, являющиеся типичными представителями методов разных групп: покоординатного спуска и случайного поиска (методы нулевого порядка), градиента и наискорейшего спуска (методы первого порядка), Ньютона (метод второго порядка). Все эти методы являются методами безусловной оптимизации. Хотя большинство экстремальных задач технического проектирования имеют ограничения, а следовательно относятся к задачам условной оптимизации, методы безусловной оптимизации к ним применимы, так как существуют и широко используются приемы сведения задач условной оптимизации к безусловной. Основными методами перехода от условной оптимизации к безусловной являются метод штрафных функций и метод барьерных функций.

Метод покоординатного спуска или метод Гаусса - Зейделя (метод нулевого порядка). Направление очередного шага выбирается вдоль какой-либо одной координатной оси, движение в этом направлении производится в сторону уменьшения целевой функции и выполняется до тех пор, пока она уменьшается. Далее движение начинается вдоль новой координатной оси и после цикла спусков вдоль всех осей производится новый цикл, если экстремум еще не найден. Когда ни по одной из осей невозможно перемещение с уменьшением целевой функции, поиск прекращается и полученная точка признается за принадлежащую малой окрестности экстремальной точки.

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

Метод градиента (метод первого порядка). Известно, что направление градиента в каждой точке совпадает с направлением наибыстрейшего возрастания целевой функции, то есть локально наилучшим является градиентное направление при максимизации или антиградиентное направление при минимизации. Это свойство градиента и используется в методе градиента - в каждой отображающей точке рассчитывается градиент целевой функции, а так же определяется вектор единичной длины, имеющий градиентное направление. Далее осуществляется шаг в антиградиентном направлении (при минимизации) в новую отображающую точку.

Метод наискорейшего спуска (метод первого порядка). Этот метод можно считать разновидностью градиентного метода при условии, когда величина шага рассчитывается оптимальной с помощью одномерной минимизации целевой функции вдоль градиентного направления.

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

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

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

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

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

Метод проекции градиента. Метод разработан для решения задач с ограничениями типа равенств.

Метод переменной метрики или метод Флетчера - Пауэлла. Этот метод имеет своей отправной точкой метод Ньютона, в котором минимизация квадратичной функции происходит за один шаг. Метод переменной метрики является итерационным методом и является одним из наиболее эффективных методов решения задач параметрической оптимизации.

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

МЕТОДЫ АНАЛИЗА СТАТИЧЕСКИХ СОСТОЯНИЙ

Существует несколько подходов к решению задач статики.

Первый подход использует в качестве математической модели объекта систему обыкновенных дифференциальных уравнений dV/dt = F (V, t).

Числовое решение этой системы при неизменных внешних воздействиях на объект через достаточный отрезок времени должно привести к стационарной точке, в которой dV/dt = 0. Эта точка и будет точкой решения.

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

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

Второй подход к решению задач анализа статики основан на применении итерационных методов решения. В этих методах задаются начальным приближением и выполняют ряд итераций.

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

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

Методы решения систем нелинейных уравнений. Применяют метод простой итерации, метод Ньютона и его модификации (выполнение итераций из разных исходных точек вплоть до завершения первой удачной попытки; совместное применение методов простых итераций и метода Ньютона) метод Якоби и методы релаксации (метод последовательной верхней релаксации; метод Зейделя; метод последовательной нижней релаксации).

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

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

Для решения линейных алгебраических уравнений применимы методы простой итерации, Якоби, Зейделя, однако они используются сравнительно редко из-за малой скорости сходимости. Наиболее часто применяют метод Гаусса или его разновидности.

МЕТОДЫ АНАЛИЗА ПЕРЕХОДНЫХ ПРОЦЕССОВ

Анализ переходных процессов на средних иерархических уровнях проектирования сводится к решению систем обыкновенных дифференциальных уравнений.

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

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

Примерами явных методов интегрирования можут служить метод Эйлера и метод Рунге-Кутта четвертого порядка.

Примерами неявных методов, применяемых в САПР, являются неявный метод Эйлера, метод Гира второго порядка и метод Гира третьего порядка.

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

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