Лекция 2 Виды обеспечения САПР 2. 1. САПР и их основные понятия Структурными частями САПР являются подсистемы – выделенные по некоторым признакам части САПР, обеспечивающие получение законченных проектных решений. По назначению подсистемы САПР разделяют на 2 вида: проектирующие и обслуживающие. К проектирующим относятся подсистемы, выполняющие проектные процедуры или операции, например: компоновка зданий на генеральном плане; компоновка помещений в здании; моделирование проектного рельефа территории и др.
К обслуживающим относят подсистемы, предназначенные для поддержания работоспособности проектирующих подсистем. Различают 2 вида проектирующих подсистем: объектноориентированные (объектные); объектно-независимые (инвариантные). К объектным относят подсистемы, выполняющие одну или несколько проектных процедур или операций, непосредственно зависящих от объекта проектирования. К инвариантным относят подсистемы, выполняющие унифицированные проектные процедуры или операции (например, случайный поиск номера объекта или вопроса в билете обучающей системы; расчет строительных конструкций, который может с одинаковым успехом применяться для гражданских зданий любого назначения)
Проектная операция - действие или формализованная совокупность действий, составляющих часть проектной процедуры, алгоритм которых остается неизменным для проектных процедур (вычисления, черчение, составление таблиц с данными, ввод и вывод данных). Проектная процедура – формализованная совокупность действий, выполнение которых заканчивается проектным решением (оптимизация выбора этажности зданий, расчет пропускной способности эвакуационных выходов, контроль, корректировка, моделирование и т. п. Проектное решение – промежуточное или окончательное описание объекта проектирования, необходимое и достаточное для рассмотрения дальнейшего направления или окончания проектирования. Объектом проектирования могут предметы, процессы, системы. являться: материалы,
2. 2. Виды обеспечения САПР Для полноценного функционирования САПР должна содержать следующие виды его обеспечения: техническое, лингвистическое (совокупность языков проектирования, включая термины и определения, правила формализации естественного языка, методы сжатия и развертывания текстов), математическое, программное, информационное, методическое (совокупность документов, устанавливающих состав, правила отбора и эксплуатации средств автоматизированного проектирования), организационное (совокупность документов, регламентирующих состав проектного коллектива для выполнения автоматизированного проектирования), эргономическое (совокупность методов и средств, предназначенных для создания оптимальных условий в процессе автоматизированного проектирования).
2. 3. Техническое обеспечение – совокупность устройств вычислительной и организационной техники, а также средств передачи данных. Оно является инструментальной базой автоматизированного проектирования, в среде которой реализуются другие виды обеспечения. Технические средства прошли длительную развития, начиная с 40 -х гг. прошлого столетия. историю ЭВМ 1 -го поколения имели небольшую оперативную память (порядка несколько тысяч слов) и низкое быстродействие (несколько тысяч операций в секунду), представляли собой громоздкое, ненадежное ламповое устройство. На них работали небольшие программы расчетного характера, написанные в машинных кодах.
ЭВМ 2 -го поколения ( конец 50 -х гг. ) имели быстродействие несколько сот тысяч операций в секунду и объем памяти до десятков тысяч слов. Стали применяться магнитные носители информации – барабаны, ленты, а затем диски. Лампы заменили на транзисторы и печатные платы. Появились языки программирования. На них решались задачи, для которых необходим большой перебор вариантов (оптимизационные задачи). ЭВМ 3 -го поколения (первая половина 60 -х гг. ) уже содержали периферийные устройства. Быстродействие увеличилось до 1 млн. операций в секунду. Разрабатывались они в виде системы (семейства) ряда программно совместимых ЭВМ различной мощности. Появилась возможность работы в различных режимах в режимах: мультипрограммирования, пакетной обработки данных, разделения времени, телеобработки, диалога.
ЭВМ 4 -го поколения продолжали совершенствовать элементную базу (конец 70 -х гг. ). Появляются мини и микро ЭВМ, а главное ПК. ЭВМ 5 -го поколения (современные компьютеры) отличаются существенным увеличением быстродействия и объемом памяти. Они могут «слушать» и «понимать» разговорную речь, переводить с одного языка на другой (первая программа демонстрировалась на ЭКСПО-85), понимать визуальную информацию, отыскивать требуемую информацию в любых массивах данных (Интернет), позволять «жить» в виртуальном пространстве (мультимедиа). По размерам и функциональным возможностям современные компьютеры подразделяются на сверхбольшие (мэйнфреймы), большие, малые, сверхмалые (микрокомпьютеры).
Наиболее распространены в настоящее время ПК клона IBM, первые модели которых появились в 1981 г. 2 -е по распространению место занимают ПК клона DEC (Digital Equipment Corporation), в частности широко известные ПК Macintosh фирмы Apple. Первоначально мощность ПК увеличивалась за счет создания локальных вычислительных сетей. При создании локальных сетей компьютеры начали разделять по их назначению. Самые мощные, высокопроизводительные компьютеры в сети, получили название серверов (выделенный для обработки запросов от всех пользователей сети компьютер, предоставляющий этим пользователям доступ к общим системным ресурсам (вычислительным мощностям, базам данных, библиотекам программ, принтерам, факсам и т. д. ) и распределяющий эти ресурсы.
Для работы в глобальных вычислительных сетях и подключения к Internet компьютеры должны содержать устройства для МОдуляции цифровых сигналов в аналоговые и их ДЕМодуляции – модемы. Так появилась возможность обмена информацией, между удаленными друг от друга на огромные расстояния компьютерами, через модемы с помощью телефонных линий. В общем случае Internet имеет ряд крупных опорных узлов, объединенных высокоскоростными каналами. Основа узлов – компьютеры-серверы, модемные пулы и концентраторы. От наиболее крупных узлов идут ответвления к многочисленным провайдерам (поставщикам услуг Internet), а от последних к пользователям. Вся эта система функционирует как единое целое с помощью применения специальных протоколов (правил передачи информации).
2. 4. Программное обеспечение – совокупность машинных программ, необходимых для осуществления полного комплекса задач компьютерного проектирования. Программное обеспечение включает компоненты общего и специального назначения. К общему программному обеспечению относятся операционные системы (ОС), а также сервисные программы, облегчающие пользователю общение с компьютером при вводе и корректировке информации. Специальное программное обеспечение совокупность целевых программных реализующих различные этапы автоматизированного проектирования. содержит систем, процесса
Операционная система компьютера содержит: • файловую систему; • драйверы внешних устройств (Программы специального типа, ориентированные на управление внешними устройствами) ; • процессор командного языка (позволяет выполнить стандартные действия – обращение к каталогу, разметку внешних носителей, запуск программ и др. , а также выполняет функцию поддержки взаимодействия с пользователями). Специальное программное обеспечение используется для решения конкретных задач проектирования.
Наиболее актуальные задачи программного обеспечения: специализированного • построение математических и информационных моделей архитектурного объекта (создание виртуальной 3 -мерной графической модели объекта с соответствующей ей атрибутивной информацией по каждому элементу, позволяющая получить соответствующие объемы работ и сметы); • проведение оптимизационных и конструкторских расчетов (компоновочные и комбинаторные задачи); • ввод и отображение буквенно-числовой и графической информации (создание цифрового макета застройки или рельефа территории, визуализация проектных решений и т. п. )
Программные средства образуются из: • программ (последовательность команд, написанных на алгоритмическом языке, которые должны быть выполнены компьютером для решения прикладной задачи или функции) ; • программных модулей (описывает некоторую элементарную функцию и обычно используется для конструирования ППП); • пакетов прикладных программ (ППП) - совокупность программ и модулей, предназначенных для решения какой-либо локальной задачи ; • технологических линий проектирования - совокупность ППП, предназначенных для выпуска законченной проектно-сметной документации ; • программных систем (совокупность взаимосвязанных системных и прикладных программ, программных модулей и ППП ).
Технология программирования – совокупность обобщенных и систематизированных знаний об оптимальных способах (приемах, процедурах) проведения процесса программирования, обеспечивающих в заданных условиях получение программной продукции с заданными свойствами. Технология программирования предусматривает следующие этапы: анализ требований, предъявляемых к программным средствам; разработка спецификаций на систему; проектирование, кодирование, тестирование; сопровождение и эксплуатация. Существует 2 стратегии программирования: «сверху вниз» и «снизу вверх» . Нисходящее программирование начинается с самых общих представлений о проекте и заканчивается детализацией алгоритмов и структур с записью программ.
Восходящее программирование состоит в определении базисных компонент, из которых складываются более сложные компоненты высшего уровня. Эта стратегия хороша для программных комплексов с известной структурой. Существуют также модульный и структурный подход к программированию. Модульный - состоит в разделении сложной программы на программные модули, каждый из которых оформляется как самостоятельная программа, но предусматривается обязательная стыковка на входе и выходе из модуля. Структурный – основывается на наборе типовых конструкций с заданными правилами их соединения. Например, имеются лишь комбинации трех основных структур: следование (линейный оператор); разветвление (оператор выбора) и оператор повторения.
2. 5. Лингвистическое обеспечение – совокупность языков проектирования, включая термины и определения, правила формализации естественного языка, методы сжатия и развертывания текстов, необходимые для автоматизированного проектирования. Языки проектирования предназначены для представления и преобразования описаний в процессе автоматизированного проектирования, основными объектами описаний в САПР являются: задание на проектирование, проектные процедуры и операции, проектные решения (промежуточные, конечные, типовые) и проектные документы. Языки должны обладать качествами универсальных языков программирования в представлении данных и действиями над ними и иметь проблемную ориентацию в построении языковых конструкций, привычных проектировщику.
Выделяется 3 типа языков программирования: Машинно-ориентированные – связаны с машиной или семейством компьютеров. Программы, выполненные на них, как правило, не могут использоваться на ЭВМ других типов. Важнейшим моментом развития программирования стало применение метода библиотечных программ и операторного метода программирования, которые позволили расчленить и формализовать процесс программирования. Процедурно-ориентированные (алгоритмические) не зависят от системы команд конкретного компьютера (Бейсик, Паскаль, С++). Проблемно-ориентированные языки работают в терминах проблемной среды (трансляторы), например С++.
По месту в процессе автоматизированного проектирования различают языки входные, внутренние, промежуточные, выходные, сопровождения и управления. Входные языки предназначены для задания исходной информации об объектах и целях проектирования и представляют собой совокупность языков описания объектов (ЯОО) и языков описания задания (ЯОЗ). Для задач анализа и оптимизации это, как правило, обычные профессиональные языки описания объекта и исходные параметры задачи, а для задач описания процесса – это специальные процедурные языки – языки моделирования. Внутренние и промежуточные языки предназначены для представления информации на определенных стадиях ее обработки в компьютере. Это языки, например, графического ввода данных, графического документирования, архива чертежей и т. п. Выходные языки предназначены для представления результатов проектирования. Для архитектурного проектирования это, как правило, языки графической подсистемы. Языки сопровождения и управления – служат для непосредственного общения пользователя и компьютера.
По связи с процедурно-ориентированными языками программирования различают автономные и расширяющиеся языки. Автономные языки имеют собственные грамматики, соответствующий транслятор и могут применяться независимо от других языков программирования (например, Auto. LISP, встроенный в Auto. CAD). Расширяющиеся языки строятся на основе грамматики другого языка и являются его проблемно-ориентированным дополнением (Система CADdy имеет встроенный язык, построенных на базе C++). По оперативности языки разделяют на диалоговые и пассивные. Диалоговые языки обеспечивают взаимодействие проектировщика с компьютером на основе взаимного обмена сообщениями в реальном масштабе времени. Пассивные языки позволяют задавать входные данные и последовательность проектных операций в виде некоторого символического описания с последующей трансляцией этих описаний и выполнением в режиме пакетной обработки (в автоматическом режиме).