В статье рассматривается подход к созданию систем автоматизации поддержки инженерных решений (САПИР) на примере задач компьютерной подготовки производства (КПП). В качестве CASE-средств для создания САПИР использованы отечественные программные инструментальные системы: Интегрированная Интеллектуальная Система (ИнИС), Интеллектуальная Компьютерная Среда (ИКС) и система параметризации и черчения T-FLEX CAD.
Роль и место систем КПП в обновлении выпускаемой продукции
В последние годы наблюдается колоссальный рост потребности промышленности в системах компьютерной подготовки производства, охватывающей решение задач по всему циклу производства (дизайн, деталировочное конструирование, технологическая подготовка производства, создание программ для станков с ЧПУ, управление параллельно-последовательным проектированием и т.д.). При этом в промышленности прослеживается устойчивая тенденция неуклонного роста срока жизни систем КПП в рамках создаваемых объектов. Это свидетельствует о том, что функциональные возможности систем КПП стабилизировались и отвечают текущим потребностям пользователей. Обзор существующих зарубежных систем КПП, их возможности приведены в работе [1]. За время активной эксплуатации систем компьютерной подготовки производства практически неизбежны серьезные изменения в структуре самой организации, в вопросах экономии средств, сокращении сроков запуска в производство новых объектов, оптимизации производственных процессов и т.д. Все это необходимо учитывать при выборе и приобретении базовой системы КПП организации.
Это новое отношение к выбору и приобретению систем КПП обусловлено следующими доводами:
Все эти доводы заставили по новому отнестись к архитектуре построения систем КПП в целом и по новому переоценить место и роль базовых инструментальных средств автоматизации проектирования, с использованием которых системы КПП созданы. Практика показала, что только при помощи инструментальных средств, основанных на CASE-технологии, можно обеспечить быструю адаптацию к постоянно меняющимся требованиям в промышленности. Подтверждением этого факта является представление на рынок в конце 1996 - начале 1997 годов специальных архитектурных решений ведущими фирмами-разработчиками программного обеспечения для систем КПП (MATRA - CAS.CADE, Intergraph - Юпитер).
Рост насыщенности производственного процесса средствами вычислительной техники (ВТ), появление компьютерных сетей, кооперация работ также вызвали серьезные изменения во взаимоотношениях между партнерами, клиентами, подрядчиками и субподрядчиками. Часто возникает ситуация, когда участники производственного процесса используют разные программные системы, что создает проблему обмена данными, необходимыми для решения поставленных задач. Это означает, что средства компьютерной подготовки производства должны обладать способностью легко приспосабливаться к меняющимся условиям, а участники производственного процесса должны владеть оптимальным способом адаптации к этим условиям. Все это указывает на то, что системы КПП должны быть ориентированы не только на моделирование создаваемого технического объекта, но и на связанные с ним процессы поддержки жизнедеятельности производственной среды по его созданию.
Ограничения традиционных систем КПП
Архитектура используемых ныне систем компьютерной подготовки производства была разработана в середине 80-х годов и основана на возможностях универсальных операционных систем. С тех пор существенно изменились базовые требования к системам КПП, что не нашло пока должного отражения в архитектуре программных средств. Эти изменения затрагивают различные аспекты разработки и функционирования систем КПП. Остановимся на некоторых из них:
Радикальные перемены в производстве повлекли за собой появление таких технологических требований, которые превосходят возможности программной архитектуры и техники традиционных систем: структуры данных должны быть открытыми и способными к эволюции, геометрия и технология изготовления должны сосуществовать в одной и той же архитектуре, качество программного обеспечения - повышаться, а стоимость программ - понижаться. При этом сложность создаваемых технических объектов постоянно возрастает. Все это предполагает технологический скачок, невозможный без переработки архитектуры традиционных программных средств.
Отличия "старого" и "нового" понимания КПП
Основные отличия "старого" (в смысле традиционных САПР/АСТПП) и "нового" (САПИР) понимания при решении задач КПП заключаются в следующем:
Основные методы решения задач КПП сложились задолго до появления средств вычислительной техники (СВТ) и имеют свою специфику, в которой можно выделить следующие характерные положения:
1. Для решения задач КПП необходимо использование знаний и опыта пользователя. В своей работе пользователь оперирует самой разнообразной информацией - множеством признаков для классификации деталей, графическими изображениями, числовыми данными, правилами, отражающими опыт и интуицию экспертов, алгоритмами, неформальными процедурами и т.д.
2. В сложившейся нормативно-справочной среде (НСС) машиностроения (книги, ГОСТы, ОСТы, стандарты предприятий (СтП) и т.д.) функциональные зависимости между свойствами и объектами проектирования чаще всего представлены в виде таблиц, параметризованных графических образов, алгоритмов решений, номограмм и т.д., но не в аналитической форме. Отсюда большинство решений достигается не в результате расчетов, а путем выбора пользователем из функциональных зависимостей, отвечающих заданным требованиям.
3. В ряде случаев решение задач достижимо при неполных, а иногда и противоречивых сведениях. Отсутствие формальной организации НСС приводит к низкой эффективности поиска необходимых пользователю фактических сведений. Справочная информация, помогающая принимать решения, разнородна и извлекается из разнообразных источников.
4. Часть решений задач реализуется по схеме: предположение - выбор ближайшего подходящего решения - поверочный расчет. Возможные решения многовариантны, критерии для их оценки далеко неоднозначны - пользователь принимает решения в зависимости от своего опыта, знаний и предпочтений.
5. Большой объем конструкторско-технологической документации (КТД) представлен в алфавитно-цифровой и графической форме, оформление выходной документации регламентировано стандартами (ЕСКД, ЕСТД, ISO и т. д.).
6. Знания и опыт экспертов-проектировщиков, на основе которых формируется большая часть решений, доступны только в форме высказываний на языке деловой прозы. Это требование предполагает наличие определенной подготовки пользователя по работе со сложившейся НСС и использование специализированного понятийного аппарата.
Наличие такой специфики определяется накопленным за многие десятилетия практическим опытом проектирования из параметризованных графических образов с соответствующими правилами принятия решений. За это время сложилась некоторая форма представления знаний по проектированию объектов машиностроения, которая прошла практическую обкатку специалистами в промышленности.
Квинтэссенция этого опыта нашла свое отражение в отраслевых стандартах и справочниках. В этих материалах в явном виде отсутствуют алгоритмы и нет готовых рецептов решения задач КПП. В материалах приведены некоторые правила и рекомендации, касающиеся отдельных примеров проектирования, использование которых защищает пользователя от серьезных просчетов. В этих рекомендациях в общем виде регламентирован достигнутый промышленный опыт: на уровне конструкций объектов в целом, на уровне отдельных узлов и деталей. Именно такая иерархическая вложенность позволяет пользователю в полной мере проявить свои творческие способности.
Анализ характерных особенностей решения задач компьютерной подготовки производства показывает, что создание промышленно тиражируемых систем КПП с учетом пожеланий пользователя средствами традиционной технологии программирования, ориентированной в основном на работу с алгоритмами и множествами данных в терминах универсальных языков программирования, практически достигло своего предела.
Важнейшим достижением новой информационной технологии (НИТ) является переход от использования универсальных языков программирования типа Си, Паскаля и т. д., доказавших свои возможности при решении математических задач, к языкам спецификаций. При этом форма представления знаний в языках спецификаций максимально приближенна к традиционно сложившейся в прикладной области. Поэтому запись и решение задач на языках спецификаций уже доступна не только программисту, но и специалисту прикладной области, способному работать со средствами вычислительной техники.
Особенности построения САПИР
База знаний (БЗ) САПИР для решения задач КПП состоит из символьной и графической частей. В состав символьной части БЗ входит система словарей и справочников (ИКС/ССС) прикладной области, таблицы с данными и набор информационных блоков, фиксирующих правила принятия решений. (ИКС - интеллектуальная компьютерная среда).
В работе [2] специально для решения задач КПП был предложен и реализован язык спецификаций, построенный на базе блоков принятия решений. На основе материалов из этой работы в МГТУ "Станкин" под руководством авторского коллектива создается символьная база знаний по решению задач КПП [3].
В ИКС/ССС перечисляются множество объектов и их свойства, используемые в прикладной области при решении задач. Словарь является единым для всей системы. С помощью словаря организуется общение пользователей с системой в стиле "деловой прозы" конструктора.
Отдельные правила принятия решений оформляются в виде информационных блоков, максимально копирующими форму справочника конструктора и легко заполняемую и редактируемую пользователем с помощью стандартных текстовых редакторов. На основе блоков принятия решений (БПР) средствами ИКС/БПР автоматически генерируется программа на универсальном языке программирования Си. Пример записи спецификации действий в форме блока принятия решений правила приведен на рис. 1.
Графическая БЗ содержит набор параметризованных графических прототипов чертежей и заготовок к ним. Вместе с ними в состав графической базы знаний входят словарь понятий и таблицы с фактическими значениями параметров для параметризации итоговых чертежей. Взаимодействие символьной и графической баз знаний приведено на рис. 2, 3. Фактические параметры могут быть рассчитаны, выбраны из таблицы с нормативно-справочной средой (НСС) или установлены в диалоге по требованию пользователя.
Еще раз подчеркнем, что если информация в традиционном справочнике понятна пользователю, то та же информация, записанная средствами универсального языка программирования, становится недоступной для понимания большинства сотрудников КБ. Это делает необходимым вовлечение в процесс создания программных приложений пользователя посредника - программиста.
В программных системах, разработанных в 70-80 годы, процесс проектирования обычно зафиксирован жестко и оформлен как неделимое целое. Отдельные функциональные модули, входящие в состав таких программных систем, часто не могут быть использованы вне этого контекста при решении других задач. Принципы объектно-ориентированного подхода, в основу которого положено понятие объекта и связанных с ним свойств и действий, практически не используется в традиционных системах проектирования. В качестве таких объектов при проектировании может выступать расчет крепежа, выбор свойств материалов и т.д. (здесь следует заметить, что в традиционных справочниках такое разделение на объекты достаточно широко используется).
Выбранный подход к созданию САПИР, связанный с использованием НИТ и применением новых форм представления знаний, также изменил архитектуру строения последних. Если входные данные и выходные результаты "старых" систем КПП и "новых" САПИР остались без видимых изменений, то внутреннее построение системы претерпело серьезное изменение. Это связано с осознанием того, что построить концептуальную модель процесса проектирования на все случаи жизни достаточно затруднительно. Этап разработки является только началом в жизненном цикле создания программной системы, а этап модернизации должен быть предусмотрен с самого начала ее создания. Модернизации может подвергаться наполнение НСС, изменение расчетных задач, переход к новой программно-технической среде и т. д.
Новый подход к созданию САПИР повышает гибкость программных систем. В "новых" разработках вместе с САПИР поставляется некоторая CASE-технология, которая призвана помочь пользователю самостоятельно адаптировать САПИР под свои цели. Эта адаптация может подразумевать различные корректировки в системе. Так, пополнение таблиц новой нормативно-справочной информацией (НСИ), практически никак не отражается на работоспособности системы и доступно пользователю в любой момент. Расширение функциональных зависимостей потребует повторной сборки отдельных вычислительных моделей. Внесение дополнений в понятийную модель потребует изменений в системе словарей и справочников данных и функциональных зависимостей. Статистика показывает, что на отдельных предприятиях соотношение между этими изменениями варьируется в следующих пределах: 70% относятся к пополнению данными, 25% - к расширению или редактированию функциональных возможностей и 5% - к пополнению понятийной модели.
В рамках САПИР CASE-технология реализуется средствами ИКС [4] (символьная часть) и T-FLEX CAD [5] (графическая часть). В качестве оболочки для создания программных приложений пользователя используется интегрированная интеллектуальная система ИнИС[6]. Освоение этих средств занимает у пользователя, ранее не работавшего с ПЭВМ, от 2 до 4 недель.
В САПИР принципиальным моментом является то, что эксперт по решению задач КПП является основным разработчиком моделей объектов. Именно он отбирает типовые решения, формирует словари понятий, специфицирует действия в типовых ситуациях, реализует графические прототипы чертежей к ним для многократного использования.
Новая архитектура построения САПИР позволила выделить некоторую инвариантную программную оболочку, которая специализирована на решении задач КПП (рис. 5 ). От общего объема САПИР программное обеспечение оболочки составляет до 60%.
САПИР построена на основе объектно-ориентированной архитектуры, создаваемой с самого начала с четким осознанием неизбежности постоянного развития потребностей и технического прогресса. "Каркас" ИнИС предназначен для поддержки современных приложений и тех, которые появятся в будущем.
Наличие такой повторно используемой оболочки позволяет резко снизить себестоимость создания прикладной системы КПП. Так например, на базе оболочки ИнИС построены САПИР электродвигателей, режущего и мерительного инструмента, пресс-форм, холодной объемной штамповки, листовой штамповки, моделирования и конструирования одежды и т. д.
Предложенная архитектура - это набор инструментов и правил, определяющих структуру программного обеспечения и представляющих базовые средства для разработки и развития приложений: управления данными, определение объектов и их реализация, создание прототипов пользовательского интерфейса, визуальное программирование, системный сервис и т.д.
Приложения, созданные на основе ИнИС, обладают рядом преимуществ:
Главное, чего удалось добиться благодаря этой архитектуре, - это открытость и возможность совместного функционирования приложений: поскольку они соответствуют общим правилам, упрощается их интеграция, причем вне зависимости от того, были все они на основе ИнИС или часть из них соответствует OLE.
ИнИС - это также среда разработки, использующая все достоинства объектно- ориентированной технологии. ИнИС демонстрирует выгоды промышленного подхода к созданию программных систем:
Цель создания такой среды разработки - обеспечение качества программных приложений пользователя.
Содержательная часть информации, интеллектуальные модели объектов, могут передаваться от одного пользователя к другому и наращиваться самими пользователями без привлечения профессиональных программистов.
При работе с САПИР деятельность пользователя строится по принципу "Смотри и выбирай". Этот принцип предполагает , что пользователь:
Результатом проектирования в САПИР для задач КПП является комплект конструкторской документации, включающий спецификацию, сборочные и деталировочные чертежи, расчетно-пояснительную записку, программы для оборудования с ЧПУ и т. д.
Предлагаемые изменения в архитектуре построения систем КПП призваны обеспечить следующие преимущества перед традиционным подходом:
Литература
1. Рыбаков А.В. Обзор существующих CAD/CAE/ CAM-систем для решения задач компьютерной подготовки производства. - Информационные технологии, 1997, # 3, с. 2-8
2. Евдокимов С.А., Рыбаков А.В. Программно-компьютерная среда для автоформализации знаний. - Вестник машиностроения, 1990, # 7, с. 40 - 44.
3. Соломенцев Ю.М., Рыбаков А.В. Компьютерная подготовка производства. - Автоматизация проектирования. 1997, # 1, с. 31-35
4. Рыбаков А.В. Интеллектуальная компьютерная среда. - Автоматизация проектирования, 1997, # 3, стр. 40-45
5. Кураксин С.А., Бикулов С.А., Баранов Л.В., Козлов С.Ю., Ксенофонтов Д.К., Ефремов А.Н. T-FLEX CAD - новая технология построения САПР. - Автоматизация проектирования. 1996, # 1, с. 50-54
6. Евдокимов С.А., Рыбаков А.В., Соломенцев Ю.М. Интегрированная интеллектуальная система ИнИС - оболочка для разработки и эксплуатации программных приложений пользователя. - Информационные технологии, 1996, # 3, с. 10-13