Разработка группового маршрутного технологического процесса для заданных деталей-представителей осуществляется с помощью методов, рассмотренных в дисциплине «Технология машиностроения».
Принципы разработки табличных и сетевых структурно-логических моделей технологических процессов представлены в разделе «Математические модели, используемые в САПР К и ТП» данных методических указаний.
Параметризованным образом для создания графической программы является чертеж разработанной комплексной детали. Написание графической программы осуществляется на алгоритмическом языке AutoLISP, встроенном в САПР AutoCAD. С помощью этого языка создаются программы вычерчивания групп деталей, позволяющие при каждом обращении к ним формировать новые чертежи, отличающиеся размерами, а, возможно, и топологией (структурой). Программа на языке AutoLISP — это созданный с помощью любого текстового редактора с соблюдением правил языка AutoLISP текстовый файл с расширением.LSP, который хранится на магнитном диске под определенным именем и может быть выполнен путем соответствующего ответа на подсказку AutoCAD:
Command(Команда):
Программа представляет из себя последовательность функций AutoLISP и функций, определенных программистом. Программа на языке AutoLISP — последовательность функций.
Организация ввода данных осуществляется с помощью функций AutoLISP, которые позволяют задать параметры чертежа с клавиатуры при запросе запущенной программы. Для ввода значений переменных пользователем такими функциями служат функции типа GET. К ним относятся:
GETINT — ввод целого числа;
GETREAL — ввод вещественного числа;
GETSTRING — ввод строки текста;
GETPOINT — ввод точки;
GETDIST — ввод расстояния;
GETANGLE — ввод угла.
Для организации диалога с пользователем в процессе выполнения программы при вводе данных часто функция SETQ используется совместно с функциями типа GET, например:
(setq bp (getpoint "\n Введите начальную точку:"))
(setq d1 (getdist "\n Введите диаметр вала:"))
В процессе выполнения этого фрагмента программы сначала на экран дисплея выводится запрос на ввод координат базовой точки вычерчиваемого изображения и после ввода с клавиатуры этих координат они присваиваются переменной bp, после чего на экран выводится запрос на ввод диаметра вала, числовое значение которого вводится с клавиатуры и присваивается переменной d1 (в языке AutoLISP нет различий между прописными и срочными буквами).
Символьная строка или текст задаются при вводе данных вначале программы с помощью переменной, которую определяет функция GETSTRING. Например:
(SETQ Z1 (GETSTRING "\n ВВедите наименование детали: "))
Программирование геометрических построений осуществляется в AutoLISPе с помощью нескольких функций. Геометрические точки представляются в форме списков из двух или трех координат (соответственно, для двух — и трехмерной систем координат). Функция LIST формирует список из любого числа элементов и возвращает список:
(LIST <элемент>...)
В языке AutoLISP существуют функции для выделения координат точек, заданных в виде списков: CAR — для X, CADR — для Y, CADDR — для Z. Например в процессе выполнения фрагмента программы:
(setq L1 (list (car bp) (- (cadr bp) (/ r2 2))))
переменной L1 функция LIST присваивает точечную пару состоящую из точки с координатами X, соответствующей координате X точки bp (это выполняет функция CAR) и Y, соответствующей выражению Ybp — r2/2, где Ybp — координата Y точки bp.
При создании программ для построения параметризованных изображений очень удобно задавать положение одной точки относительно другой в полярных координатах с помощью функции POLAR:
(POLAR <точка><угол><расстояние>)
Эта функция возвращает точку, находящуюся под заданными углом и на расстоянии от заданной точки (угол задается в радианах против часовой стрелки).
Язык программирования AutoLISP неразрывно связан с графической системой AutoCAD, поэтому многие команды, употребляемые в AutoLISP, идентичны по выполняемым действиям командам AutoCAD и имеют одинаковые названия. Аргументы и опции команды могут задаваться как из программы, так и в режиме графического диалога также, как если бы эта команда выполнялась просто в редакторе AutoCAD. Определение любой команды AutoLISP связанной с командой AutoCADa задается следующим образом:
(command "<имя команды>" <опции> <аргументы>)
Здесь <опции> и < аргументы> зависят от имени команды и определяются ею. Форматы некоторых команд приведены в приложении 1. Пример программы на языке AutoLISP приведен в приложении 2.
Литература
1. Системы автоматизированного проектирования. Под. ред. И.П.Норенкова. В 9-ти книгах. М.: Высшая школа, 1986.
2. Митрофанов С.П. и др. Технологическая подготовка гибких производственных систем. Под. общ. ред. С.П.Митрофанова.-Л.: Машиностроение, 1987.-352с.
3. Корчак С.Н. и др. Системы автоматизированного проектирования технологических процессов, приспособлений и режущих инструментов. Под общ. ред. С.Н.Корчака.-М.: Машиностроение, 1988.- 352с.
4. Челищев Б.Е. и др. Автоматизация проектирования технологии в машиностроении. Под общ. ред. Н.Г.Бруевича.-М.: Машиностроение, 1987.- 264с.
5. Автоматизированная подготовка программ для станков с ЧПУ. Под.общ.ред. Р.Э.Сафрагана.-Киев.: Техника, 1986.- 191с.
6. Митрофанов В.Г. и др. САПР в технологии машиностроения: Учебное пособие.- Ярославль: Яросл. гос. техн. ун-т, 1995- 298с.
7. Будя А.П. и др. Справочник по САПР. Под общ. ред. В.И.Скурихина.-Киев.: Техника, 1988.- 375с.
8. Б. Хокс. Автоматизированное проектирование и производство.-М:Мир, 1991.-296с.
9. Методические указания к лабораторным работам “Системы автоматизированного проектирования конструкций и технологических процессов”. Части 1-6. Сост. Шкарин Б.А. Вологда:1998.-1999г.
Приложение 1