Система автоматизированной подготовки управляющих программ САП-СМ4
Система автоматизированного программирования САП-СМ4 используется при подготовке управляющих программ для фрезерных, токарных, сверлильных, расточных, электроэрозионных, карусельных станков с ЧПУ и обрабатывающих центров. САП-СМ4 может эксплуатироваться на миниЭВМ серии СМ-4, совместима по языку с САП-ЕС для ЭВМ серии ВС, но имеет более высокий уровень автоматизации.
Программирование ведется на языке САП-СМ4, который является специализированным языком высокого уровня для станков с ЧПУ.
Основные обозначения и сокращения в описании языка САП-СМ4:
<...> - символы в угловых скобках заменяются конкретной информацией пользователя;
<АВ> - арифметическое выражение;
<ИДФ> - идентификатор, имя переменной;
<ИДФ>=операн <число> <АВ> | - если несколько конструкций записаны другпод другом, то из них может использоваться любая (или АВ, или операнд, или число); |
No, I, J, К, L - номер, т.е. цифры от 0 до 199;
Б, Q, Е - ИДФ углов;
R - ИДФ радиуса окружности, расстояние между геометрическими элементами;
L - ИДФ расстояний между геометрическими элементами;
X, Y, Z - ИДФ осей координат;
РД - раздел данных;
РП - раздел процедур.
Структура и элементы программы
Алфавит языка САП-СМ4 состоит из:
- русских букв А, Б, В, Г, Д, Е, Ж, 3, И, К, Л, М, Н, О, П, Р, С, Т, У, Ф, X, Ц, Ч, Ш, Щ, Ы, Ь, Э, Ю, Я;
- латинских букв D, F, G, I, J, L, N, Q, R, S, U, W, Z;
- цифр О, 1, 2, 3, 4, 5, 6, 7, 8, 9;
- символов + - * : / . , = # ‘ ( ) [ ] !
В скобках ... записывается информация, которая может быть опущена.
Программа состоит из фраз, фразы из слов, слова из символов, фраза - это последовательность символов, ограниченная символом «,» или «;».
Структурно программа состоит из заголовка, раздела данных и раздела процедур. Разделы заканчиваются символом «!».
ЗАГОЛОВОК РАЗДЕЛ ДАННЫХ ! РАЗДЕЛ ПРОЦЕДУР ! |
Заголовок имеет вид:
Программа = имя программы; Станок = имя паспорта станка с ЧПУ; [* комментарий]; . . . . . . . . . . . . . . [* комментарий]; |
Имя программы - последовательность не более восьми любых символов, кроме «;» и «!». Имя паспорта - паспорт, записанный на магнитном диске в библиотеку паспортных данных для используемого комплекса «станок - СЧПУ».
Комментарий начинается с символа «*», содержит любое число любых (кроме «;» и «!») символов во фразе.
Пример.
ПРОГРАММА = 130;
СТАНОК = 00050;
* ДЕТАЛЬ 1285305, ЦЕХ 34, СТ2Р32;
* ПАНКРАТОВ 20.10.90;
Раздел данных
В разделе описываются геометрические элементы обрабатываемого контура (прямые, точки, окружности, числовые данные, размеры с чертежа, константы) и технологические параметры обработки. При этом им присваиваются идентификаторы, которые имеют формат:
тип [№],
где
тип - последовательность из русских и латинских букв (не более 6);
№ - число от 0 до 199.
Если номер идентификатора отсутствует, то он принят равным нулю.
Пример.
ДО; ШАГЗ; РАЗМЕР1; ТК198; BETA; KP10;
Основными типами данных являются:
ТК - точка;
ПР - прямая;
КР - окружность;
Х - координата X, смещение по оси X;
Y - координата Y, смещение по оси Y;
R - радиус, расстояние;
Z - величина подъема или опускания предмета;
Б - угол, град.;
S - подача, мм/мин.;
SN - подача, мм/об.;
V - скорость резания;
N - частота вращения шпинделя, мин'1;
Р - расстояние от центра инструмента до контура.
Все размеры и перемещения задаются в миллиметрах, числа записываются в естественном виде с числом значащих цифр не более девяти.
Пример. 25; -1046.78; 0.001;
Углы задаются двумя форматами:
1) градусы минуты секунды;
2) градусы - десятичная доля градуса,
где градусы от 0 до 999, минуты и секунды от 0 до 59.
Пример.
1200000 = 120°;
303000 = 30°30'00";
120 = 1'20";
30. = 30°;
45.5 = 45° + 0.5°;
0.001 = 0.001, т.е. 36".
Знак угла положителен при отсчете от положительного направленияоси Х против часовой стрелки и отрицателен - по часовой стрелке.
Все данные задаются номерами, числами и арифметическими выражениями.
Арифметическое выражение (АВ) - это последовательность операндов, функций, знаков операций и круглых скобок, где операнд - числовые или буквенные данные, над которыми производятся математические операции.
Основными операндами являются:
ХТК <№> - координата Х точки ТК <№>;
YTK <№> - координата Y точки ТК <№>;
ХКР <№> - координата Х центра окружности КР <№>;
YKP <№> - то же, для координаты Y;
КР <№> - радиус окружности КР <№>;
РПР <№> - расстояние от начала координат до ПР <№>. Знаками операций являются «-» (вычитание), «+» (сложение), «*» (умножение), «:» (деление), «**» (возведение в степень).
Функциями языка САП-СМ4 являются:
SQRT (х) - ;
ABS (х) - |х|;
SIN (х) - sin (x);
COS (х) - cos (х);
TG (х) - tg (х);
ASIN (х) - arcsin (х);
ACOS (х) - arccos (х);
ATG (х) - arctg (х);
LN (х) - In (х);
ЕХР (х) – ех;
ОЦ (х) - округление числа до целого по правилам округления;
ОЦБ (х) - округление числа до целого в большую сторону;
L (ТК<№>), ТК<№>) - расстояние между точками;
(ТК<№>, ПР<№>) - расстояние от ТК до ПР;
(ПР<№>,ПР<№>) - расстояние между параллельными прямы-
Б (ПР<№>) - угол прямой с осью X;
Б (ПР<№>, ПР<№>) - угол между прямыми, отсчитывается от первой прямой против часовой стрелки.
Пример.
Если Х1=10.4, то ОЦ(Х1)=10; ОЦБ(Х1)=11;
Если ХТК1=10, YTK1=0 и ХТК2=30, YTK2=0, то (ТК1,ТК2)=20.
Запись АВ в программе линейная, порядок выполнения операции следующий: вычисление содержимого скобок, затем слева направо по приоритетам - «**», «*» и «:», изменение префикса, «+» и «-».
Примеры:
Математическая запись Запись на САП-СМ4
(X1+Y1) : (A1+A2)
2*Y2:(-2)
х -1,25 Х**(-1.25)
ASIN(SQRT(X1"2+Y1**3):2)
Числовые данные являются форматом <ИДФ>= <ИДФ>;
<АВ>;
<Число>;
Например, А=4; X1=A-L; R1=SQRT(X1). Углы в РД задаются буквами Б, F, Q двумя форматами:
Формат 1:
Б<№>;
F<№>=<АВ>;
Q<№>.
Формат 2:
Б/<число>;
F/<число>;
Q/<число>. Например, Б0=30, т.е. угол Б0=30°;
F2=180.:12, т.е. угол F2=180°:12=15°;
SIN(F/45.) соответствует sin45°.
Геометрические элементы, т.е. точки, прямые, окружности задаются фразами формата.
ТК<№>=<способ задания>;
ПР<№>;
КР<№>.
В языке САП-СМ4 реализовано 47 способов задания. Расположения элементов относительно друг друга указываются признаками:
/ - перпендикулярно;
// - параллельно;
I - симметрично;
+ - внешнее касание окружностей;
- - внутреннее касание окружностей;
Ц - центр окружности или другой системы координат;
БХ - больше Х (справа);
MX - меньше Х (слева);
BY - больше Y (сверху);
MY - меньше Y (снизу). Примеры:
ПР1=/ПРО, ТК1, т.е. ПР1 проходит через ТК1 перпендикулярно ПРО;
KP1=I KP2, ПРО, т.е. КР1 симметрична КР2 относительно ПРО.
Известны 15 способов задания точек, основными из которых являются:
- через координаты X, Y, например, ТК1=4,6 (см. рис. 34, а);
- пересечением двух прямых, например, ТК1=ПР1, ПР2
(рис. 34, б);
- пересечением (касанием) ПР и КР (рис. 34, в) с учетом признаков: ТК1==МХПР1, КРО; ТКЗ=ПР2, КРО;
- пересечением (касанием) двух окружностей (рис.34,г) ТК1=КР1, KP2; TK2=MYKP2, KP3; TK3=BYKP2, KP3;
- как центр окружности (рис. 34, д) ТК7=ЦКР5.
Рисунок 34 – Способы задания точек
Известны 16 способов задания прямых, основными из которых являются:
- отрезками, отсекаемыми на осях координат (рис. 35, а), например: ПР2=Х/15, Y/-5;
- ПР проходит через две ТК (рис. 35, б): ПРО=ТК1, ТК2;
- ПР параллельна оси Х или Y (рис. 35, в): ПРО=Y/-10;
ПР1=Х/5;
- ПР параллельна другой ПР и отстоит от нее на расстояние R (рис. 35, г): ПР1=БУ//ПРО, R/5;
- ПР проходит через ТК параллельно или перпендикулярно другой ПР (рис. 35, д): ПР1=//ПР2, ТК2; ПРЗ=/ПР2, ТК2;
- ПР проходит через ТК, образуя угол с осью Х (рис. 35, е):
ПР1=ТК5, Б/-45.
Рисунок 35 – Способы задания прямых
Основными способами задания окружностей являются:
- по координатам центра окружности и ее радиусу (рис. 36, а), например: КР15=20, 40, 10;
- по центру и радиусу (рис. 36, б): КРО=ЦТКО, R/10;
- центром и точкой на окружности (рис. 36, в): КРО=ЦТКО, ТК1;
- смещением центра другой окружности (рис. 36, г): КРО=КР1, -30, -Ю.
- центром и касательной прямой (рис. 36, д) КРО=ЦТКО, ПРО. В РД часто задаются массивы, т.е. данные одного типа в виде числовых данных (Х0=10; Х1=20; Х2=30; ...) и в виде геометрических элементов (ТКО=15, 25; ТК1=ПР1, ПР2; ТКЗ=ЦКР1; ...). В САП-СМ4 используются только одномерные массивы размерностью до 200 элементов, максимальное количество массивов в программе - 75.
Рисунок 36 – Способы задания окружностей
Раздел процедур
РП может содержать 1-10 процедур, каждой из которых соответствует одна управляющая программа для станка.
Процедура - это совокупность фраз, описывающая законченную операцию обработки детали и состоящая из меток и операторов.
Начало процедуры обозначается меткой НП<№>, конец - меткой КП<№>, где <№>=0-9.
Данные ИДФ, которые указаны в каком-либо операторе, должны быть определены в РД до его выполнения.
Операторы задания подачи S и SN, частоты вращения шпинделя N и скорости резания V должны быть записаны в процедуре перед первым перемещением и имеют форматы:
<оператор>/ <АВ>;
<оператор> <№>;
Примеры:
№/-300; - частота вращения шпинделя N=300 мин"1 по часовой стрелке («+» - против часовой стрелки),
N3, - где 3 - номер ступени частоты вращения по паспорту станка;
S/800, - подача 800 мм/мин;
SN/0,1, - подача 0,1 мм/об;
V/0,5, - скорость резания 0,5 м/мин.
Оператор V используется для станков токарной группы, в программе он должен указываться.
Операторы движения центра инструмента задают следующие перемещения:
1. ТК - движение от точки до точки.
2. ОТПР и ОТКР - движение от точки пересечения прямой окружности с элементом, определяемым в следующем операторе движения.
3. ДОПР и ДОКР - движение до точки пересечения с прямой или окружности с элементом, заданным в предыдущем операторе движения.
4. ПР - движение по прямой.
5. ±КР - движение по окружности («-» - по часовой стрелке, «+» - против).
Операторы 1-5 имеют формат:
<ИДФ><№>;
<ИДФ>=<способ задания>, где ИДФ - это ТК, ПР, ±КР, ОТПР и т.д.
6. X, Y или Z - перемещение, параллельное осям X, Y или Z соответственно с учетом знака «+» - в сторону увеличения координаты и «-» - в сторону уменьшения.
7. R - округление пересекающихся элементов заданным радиусом R.
8. F и Q - угол поворота стола (F) или шпиндельной бабки (Q) с учетом знака.
Операторы 6-8 имеют форматы:
<ИДФ><№>;
<ИДФ>/<АВ>.
Например: Z/-20; Q/10., - опускание инструмента на 20 мм, поворот шпинделя на 10 градусов против часовой стрелки.
При необходимости в операторах 1-7 задаются признаки БХ, БУ, MX, МУ.
Пример.
Рисунок 37 – Траектория движения центра фрезы
Процедура обработки контура детали (рисунок 37). Значения ТКО, ТК1, ПР1, ПР2, КР1 заданы в РД. НПО; S/8000; N/300; ТКО;ТК1; Z/-20; SN/0.15; ПР1; -КР1; ПР2; ДОПР1; Z/20; S/8000; ТКО; КПО;!
Оператор НПО указывает на начало процедуры № 0, потом задаются подача 8000 мм/м и частота вращения шпинделя 300 об/мин при холостом перемещении инструмента из исходного положения ТКО в рабочее ТК1, затем фреза опускается на 20 мм, устанавливается Рабочая подача 0,15 мм/об, с которой фреза перемещается по ПР1, ^тем по КР1 (по часовой стрелке) до ПР2 и по ПР2 до пересечения с ПР1. Здесь фреза поднимается на 20 мм и со скоростью холостых перемещений 8000 мм/мин движется в исходное положение ТКО. Оператор КПО закрывает процедуру № 0, символ ! означает конец РП.
В примере программировалось движение инструмента по эквидистанте. Эквидистантой называется траектория движения центра инструмента при обработке детали, она повторяет контур детали на расстоянии, равном радиусу инструмента (рис. 37).
В САП-СМ4 возможно программирование автоматического расчета эквидистанты по элементам контура детали, в этом случае в РД и РП задаются точки, прямые и окружности, принадлежащие не эквидистанте, а самому обрабатывающему контуру детали. При этом дополнительно задаются следующие операторы:
- расстояние от центра инструмента до контура Р форматом Р<№>; или Р/<АВ>; (отменяется другим оператором Р или оператором ФРО);
- положение инструмента относительно контура: ФР+, если справа от контура при движении инструмента, и ФР-, если слева (отменяется оператором ФРО или оператором ФР с противоположным знаком).
Расчет эквидистанты при этом производится автоматически. Вход в эквидистанту производится последовательностью операторов:
ТК<1>; ФР±; Р; ПР<К>;
ОТПР<1> TK<J> ±KR К;
ОТКР<1> ±KR<J>;
X<J>;
Y<J>,
где I - номер элемента исходного положения центра инструмента (начальная точка движения вне эквидистанты);
J - номер элемента входа в эквидистанту;
К - номер элемента контура детали при движении по контуру.
Выход из эквидистанты производится последовательностью операторов:
ПP<J>; ФРО; ПР<1>;
±KR<J>; ±KR<I>;
X<J>; TK<I>;
Y<J>;
Пример.
Обрабатываемый контур детали приведен на рисунке 38. Пунктиром показана эквидистанта.
Участок ограничивается операторами НУ<1>; КУ<1> - начало и конец участка. Обращение к участку производится операторами ОБУ<1> - обработать участок № 1, B<J> или В/<АВ>; - выполнить обработку J раз. Все участки должны быть описаны вне процедуры, т.е. перед НП<1>, или после КП<1>.
Рисунок 38 – Эквидистанта и контур детали
Фрагмент процедуры имеет вид:
ТКО; ТК1; ФР-; Р/5; ПР1;
-КР1; ПР2; -КР2; ФРО; ТКО.
Если контур детали содержит идентичные по конфигурации и технологии обработки участки, то в РД можно задать элементы только одного участка, а в РП обращаться к нему нужное число раз.
Пример (рис. 39).
HYO; S/100; Z/-20; ТК1; ПРО; ПР1; ПР2; ПРЗ; ТК1; S/800; Z/20;
KYO; НПО; S/1200; N/600; ТКО; ТК1; ОБУО; В/1; ТК1; ТК2; ОБУО;
В/1; ТК2; ТКО; КПО; !
Количество участков в процедуре не более 50. Перед оператором ОБУ движение ограничивается операторами ТК, ДОПР, ДОКР. Замена элементов уже заданного участка производится оператором.
Рисунок 39 – Обработка участков
Э1*32[(К2)]; ... Э<1>[(К<1>)],
где Э1 - заменяемый элемент;
Э<1> - заменяющий элемент;
К<1> - количество замен.
Оператор замены помещается между операторами ОБУ и В.
Пример.
ОБУО; Р/10*Р8(2); S/500*S/400; В/3, т.е. Р/10 заменить на Р/8 два раза, S/500 и S/400 один раз.
В САП-СМ4 возможно программирование обработки детали при использовании поворотных столов. Поворот стола вокруг шпинделя (оси Z) считается координатой F, а вокруг осей Х и Y - координатой Q. Программирование производится двумя способами:
1) операторами позиционирования
F<I>; Q<I>;
F/<AB>; Q/<AB>.
в режиме позиционирования (т.е. без непосредственной обработки столом) на фиксированные углы с шагом 5-15 градусов.
Пример (рис. 40). НУО; S/100; Z/-30; ТК1;
ТК2; Z/50; S/800; TK1; КУО;
НПО; S/800; N/300; TK1;
ОБУО; F/90; В/4; КПО; !
2) оператором движения ПО - «поворот» ПО±Г КР<1>
как в режиме позиционирования, так и в режиме обработки столом.
Рисунок 41 – Выборка 3-х пазов поворотом стола
Рисунок 40 – Выборка 4-х пазов при позиционировании столом
Диапазон угла поворота стола 0-360 градусов с дискретностью в 6-30 с.
Пример (рис. 41).
НУО; S/100; Z/-30; ТКО;
ПО +FKP1; TK1; Z/30; КУО;
НПО; S/800; N/300; ТКО;
ОБУО; F/60; В/3; КПО; !
Здесь в участке задана обработка паза поворотом стола на рабочей подаче при неподвижном инструменте, а в процедуре - поворот стола в режиме позиционирования (на 30 град.) при переходе к следующему пазу.
Программирование выражений - это аппарат САП-СМ4, автоматизирующий расчет координат опорных точек эквидистанты при интерполяции, программировании циклов, ветвлений, произвольных кривых, заданных таблично и др.
Метки. Процедура может быть разбита на участки, начала которых могут быть помечены метками формата М<1>.
Метки используются для указания адреса переходов.
Безусловный переход имеет формат ИДИМ<1>. Обработка начинается с фразы, следующей за меткой М<1>.
Пример.
НПО; S/800; ТКО; ТК2; М2;'ОБУО; В/4; ТК6; ПР4; ... ТКЗ-ИДИМ2; ТК4; ТКО; КПО; !
Условный переход имеет формат ЕСЛИ<Условие>; ИДИМ<1>.
Если условие выполнено, программа переходит к оператору с меткой М<1>, если нет, то к следующему за ИДИМ<1> оператору.
Индексы. Обработка по индексированным параметрам имеет формат ТИП<1>[.1]; OBy<I>[J]; ИДИМ<1>[,1],
где J - номер индекса.
Нестандартные циклы имеют формат:
М<1>; ОПЕРАТОРЫ ЦИКЛА; ЕСЛИ<Условие>; ИДИМ<1>.
Пример.
Программа обработки кулачка со спиралью Архимеда (рис. 42).
Рисунок 42 – Обработка кулачка со спиралью Архимеда
Спираль Архимеда (т.1-150) аппроксимируем ломаной линией, тогда координаты точек определяются по формулам:
XI(FI)=[RH+(RK-RH)/(FK-FH)*(FI-FH)]*COS(FI);
YI(FI)=[RH+(RK-RH)/(FK-FH)*(FI-FH)]*SIN(FI),
где
RH - начальный радиус (RH=60);
RK - конечный радиус (RK=70);
FH - начальный угол (FH=30°);
FK - конечный угол (FK=120°);
FI - текущий угол первой точки спирали.
Возьмем приращение DF=F(I)-F(I-1)= -1 град, тогда
F1=FH+DF; X1(F1), Y1(F1);
F2=F1+DF; X2(F2), Y2(F2);
………………………………
F150=F149+DF; X150(F150), Y150(F150).
ПРОГРАММА = КУЛАЧОК;
СТАНОК = 00001;
* СПИРАЛЬ АРХИМЕДА *
ТКО = 50, -70; RH = 60;
ПР1 = У/-70; RK = 70;
КР2 = О, О, 70; FH = F/300000;
ТК151 = 0, 70; FK = F/-1200000;
ТК152 = 0, 60; ШАГ = = F/-10000;
КР1 = 0, 0, 60; ТК1= = 0, 0;
ТК150 = R/70, Б/-120000 FO = FH !
НПО; S/500; N/400; ФР-; Р/5; ТКО;
ПР1; -КР2-.ТК151; ТК152; -КР1; МО;
XTK1=(PH+(RK-PH):(FK-FH)*(FO-FH))*COS(FO);
YTK1=(RH+(RK-PH):(FK-FH)*(FO-FH))*SIN(FO);
ТК1' ГО=ГО+ШАГ;
ЕСЛИ FO>FK; ИДИМО; ТК150; +КР2; ПР1; ФРО; ТКО; КПО; !
Сначала точке ТК1 в РД задаем координаты [О, О], а в НПО рассчитываются текущие координаты ТК<1>.
ГЛАВА 5
Дата добавления: 2019-02-07; просмотров: 1051;