Httpplanetacam rucollegelearn12 Основы числового программного управления Автоматическое управление
Скачать 4.32 Mb.
|
Обе эти программы необходимо передать в СЧПУ, оператор станка должен вызвать программу О0001 и запустить ее. Главная программа работает с абсолютными координатами и перемещает инструмент последовательно в центр каждой из четырех групп отверстий. Когда СЧПУ встречает кадр с М98 Р1000, то происходит передача управления подпрограмме с номером 01000. В этот момент инструмент уже находится в центре группы отверстий. Переключаемся в режим относительного (инкрементального) программирования и используем постоянный цикл сверления. После завершения сверления четырех отверстий одной группы выключаем цикл сверления командой G80 и переходим в режим абсолютных координат G90, для того чтобы правильно выполнить позиционирование в главной программе. Код М99 передает управление кадру главной программы, который следует за кадром, вызвавшим эту подпрограмму. Затем инструмент перемещается в центр следующей группы отверстий, и снова вызывается подпрограмма 01000. И так далее, пока не просверлим все отверстия и СЧПУ не прочтет код завершения программы М30. Если бы мы создавали обычную программу обработки, то ее размер был бы значительно больше, так как пришлось бы указывать координаты всех 16 отверстий. Работая в таком формате, легче производить изменения. Например, если из менится диаметр окружности, на которой находятся отверстия группы, то в случае работы с подпрограммой достаточно пересчитать координаты центров четырех отверстий только в подпрограмме. Из главной программы можно вызвать несколько различных подпрограмм. Более того, из каждой подпрограммы можно вызвать несколько других подпрограмм. Системы ЧПУ могут накладывать ограничения на вложенность и количество выполняемых подпрограмм, поэтому внимательно прочитайте документацию станка и стойки, прежде чем начнете работать с подпрограммами. Работа с осью вращения (4-ой координатой) Нередки случаи, когда на трехкоординатный станок с ЧПУ дополнительно монтируют управляемый поворотный стол (делительную головку). Управляемый поворотный стол – это устройство, которое способно поворачивать закрепленную в нем деталь на требуемый угол по определенной команде. Обычно 4-ая ось управляется при помощи адресов А или В, а числовое значение определяет угол поворота в градусах. Рис. 10.4. Управляемые поворотные столы HAAS Существуют два варианта работы с управляемым поворотным столом. Первый вариант – нам просто необходимо повернуть его на определенный угол и затем выполнить какую-либо технологическую операцию (индексация). Второй вариант – нужно выполнить фрезерование одновременно с поворотом стола. В этом случае мы имеем синхронное линейное перемещение исполнительного органа станка по трем (или менее) координатам с вращением стола. При этом СЧПУ станка должна поддерживать данный вид интерполяции. Для управления поворотным столом достаточно в кадр с линейной интерполяцией, позиционированием или постоянным циклом добавить адрес А (В): G00 X_Y_Z_A_ – позиционирование; G01 X_Y_Z_A_F_ – линейная интерполяция. Типичный формат для работы с постоянным циклом: G81 Х0 Y0 Z-5 А0 F45 R0.5 А15 А30 А45 G80 Программирование 4-ой оси не должно вызвать у вас особых трудностей. Прос то нужно учесть несколько технических особенностей при работе с управляемым поворотным столом. Во-первых, поворотный стол может вращаться как в положительном, так и в отрицательном направлении. Направление вращения и соответствующий знак определяются по правилу правой руки. Во-вторых, поворот стола может быть запрограммирован как в абсолютных, так и в относительных координатах. В-третьих, у многих станков существует ограничение на числовое значение угла поворота. Например, вам нужно повернуть стол на 400°, а СЧПУ позволяет указывать угол не более 360°. Придется запрограммировать дополнительный кадр с углом в 40° относительно предыдущего положения стола. Ну и напоследок учтите, что чем дальше мы удалимся от центра вращения, тем большей будет ошибка линейного перемещения. Следующие примеры помогут вам понять, как программируется дополнительная ось вращения. В первом случае необходимо просверлить отверстия на периферии диска. Во втором случае нужно получить винтовую канавку на поверхности вала, используя одновременное линейное перемещение фрезы и вращение поворотного стола. Рис. 10.5. Требуется просверлить 4 отверстия на периферии диска, закрепленного в кулачках поворотного стола. Чтобы просверлить такие отверстия, нужно поворачивать стол через 90°
Рис. 10.6. Необходимо получить винтовую канавку на поверхности вала. Вал закреплен в кулачках управляемого поворотного стола. Самый простой способ обработки такой канавки – расчет при помощи CAD/САМ-системы
Параметрическое программирование Одним из самых интересных и эффективных методов программирования обработки является параметрическое программирование. Удивительно, но большинство технологов-программистов хоть и слышали об этом методе, но совершенно не умеют его использовать. В этом разделе вы познакомитесь с теорией параметрического программирования и коснетесь основ макроязыка системы ЧПУ современного станка. Большинство станочных систем ЧПУ имеют в своем распоряжении специальный язык для параметрического программирования (макропрограммирования). Например, в СЧПУ Fanuc этот язык называется Macro В. Если вы хоть немного знакомы с языком программирования Бейсик (Basic), то вы без труда разберетесь и с Macro В. Команды и функции именно этого языка мы рассмотрим подробно. В обычной управляющей программе вы указываете различные G-коды, а также направления и величины перемещений при помощи числовых значений. Например, G10 или Х100. Однако СЧПУ станка может делать то же самое при помощи переменных. Символом переменной в Macro В является знак #. Например, в программе можно указать следующие выражения: … #1=100 #2=200 #3=#1+#2 … Это означает, что переменной #1 присваивается значение 100, а переменной #2 – значение 200. Переменная #3 будет являться результатом суммы переменной #1 и переменной #2. С таким же успехом можно записать и G-код: … #25=1 G#25 … Переменной #1 присвоено значение 1. Тогда вторая строка по своей сути будет обозначать код линейной интерполяции G1. С переменными можно производить различные арифметические и логические операции, что позволяет создавать «умные» программы обработки или различные станочные циклы. В памяти системы ЧПУ существует область, в которой хранятся значения переменных. Вы можете заглянуть в эту область, если найдете раздел памяти СЧПУ, который обычно называется MACRO или VARIABLES. Присваивать значения переменным можно не только внутри программы, но и непосредственно – вводя значения в регистры этой памяти. Приведу несколько примеров. Можно составить такую программу: #1=25 #2=30 #3=#2+#1 В этом случае значения присваиваются переменным внутри программы. Чтобы в будущем изменить числовые значения переменных #1 и #2, придется отредактировать программу. Можно реализовать более удобный вариант, который позволит изменять значения переменных в любой момент, не прибегая к изменению самой программы: #3=#2+#1 Как видите, переменным #1 и #2 в программе не присвоено никаких значений. Оператор станка может войти в область переменных MACRO и ввести любое числовое значение для любой переменной.
После того как оператор станка присвоил переменной #1 значение 10, а переменной #2 значение 12 и выполнил программу, значение переменной #3 станет равным 22.
Все переменные системы ЧПУ можно условно разделить на 4 типа: нулевые; локальные; общие; системные. Локальные переменные могут быть использованы внутри макросов для хранения данных. При выключении электропитания локальные переменные обнуляются. У большинства станков с СЧПУ Fanuc нулевой серии локальными являются переменные с номерами от 1 до 33. Общие переменные могут работать внутри различных параметрических программ и макросов. При выключении электропитания некоторые общие переменные обнуляются, а некоторые сохраняют свои значения. У большинства станков с СЧПУ Fanuc нулевой серии общими являются переменные с номерами от 100 до 999. Системные переменные используются для чтения и записи различной системной информации – данных о позиции инструмента, величинах компенсации, времени и др. Номера системных переменных для Fanuc нулевой серии начинаются с 1000. Нулевые переменные всегда равны нулю. Для выполнения арифметических и логических операций язык Macro В предоставляет набор команд и операторов. Таблица 10.1. Основные арифметические и логические команды
Для управления переменными и для выполнения различных логических операций служат макрокоманды. Макрокоманды языка Macro В похожи на команды Бейсика. Команда безусловного перехода GOTO предназначена для передачи управления определенному кадру программы. Формат команды следующий: GOTO N – безусловный переход к кадру N; GOTO #A – безусловный переход к кадру, установленному переменной #A. Пример: … N10 G01 X100 N20 G01 X-100 N30 GOTO 10 … После выполнения кадра N30 система ЧПУ переходит к кадру N10. Затем снова работает с кадрами N20 и N30 – получается бесконечный цикл. Команда условия IF позволяет выполнять различные действия с условием. После IF указывается некоторое выражение. Если это выражение оказывается справедливым, то выполняется команда (например, команда безусловного перехода), находящаяся в кадре с IF. Если выражение оказывается несправедливым, то команда, находящаяся в кадре с IF, не выполняется, а управление передается следующему кадру. Формат команды следующий: IF [#a GT #b] GOTO N Пример: … #1=100 #2=80 N10 G01 X200 N20 IF [#1 GT #2] GOTO 40 N30 G01 X300 N40 M30 … В начале программного примера переменным #1 и #2 присваиваются значения 100 и 80 соответственно. В кадре N20 происходит проверка условия. Если значение переменной #1 больше значения переменной #2, то выполняется команда перехода GOTO к кадру окончания программы N40. В нашем случае выражение считается справедливым, так как 100 больше, чем 80. В результате после выполнения кадра N10 происходит переход к кадру N40, то есть кадр N30 не выполняется. В этой же программе можно изменить значения переменных: #1=100 #2=120 N10 G01 Х200 N20 IF [#1 GT #2] GOTO 40 N30 G01 Х300 N40M30 Во втором случае условие в кадре N20 не будет справедливым, так как 100 не больше, чем 120. В результате после выполнения кадра N10 не происходит переход к кадру N40, то есть кадр N30 выполняется как обычно. В выражении [#1 GT #2] используются операторы сравнения. В табл. 10.2 сведены операторы для сравнения переменных языка Macro В. Таблица 10.2. Операторы сравнения
Команда WHILE позволяет повторять различные действия с условием. Пока указанное выражение считается справедливым, происходит выполнение части программы, ограниченной командами DO и END. Если выражение не справедливо, то управление передается кадру, следующему за END.
Макропрограммой называется программа, которая находится в памяти СЧПУ и содержит различные макрокоманды. Макропрограмму можно вызывать из обычной программы с помощью G-кода, аналогично постоянным циклам. При вызове макропрограммы существует возможность прямой передачи значений для переменных макропрограммы. Команда G65 предназначена для немодального вызова макропрограммы. Формат для этой команды следующий: G65 P_L_A_B_ где G65 – команда вызова макропрограммы; Р_ – номер вызываемой макропрограммы; L_ – число повторений макропрограммы; А_ и В_ – адреса и значения локальных переменных. Пример: G65 Р9010 L2 А121 В303 – макропрограмма 9010 вызывается 2 раза, соответствующим локальным переменным присваиваются значения 121 и 303. Необходимо знать, какой локальной переменной присваивается значение с помощью того или иного адреса. Например, для СЧПУ Fanuc 0-MD будут справедливы следующие зависимости: |