Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Fanuc SOi mate-md

.pdf
Скачиваний:
922
Добавлен:
21.03.2015
Размер:
6.94 Mб
Скачать

B-64144RU/01

ПРОГРАММИРОВАНИE

15. МАКРОПРОГРАММА ПОЛЬЗОВАТЕЛЯ

 

 

 

15.11.1

Метод ввода

Пояснения

D Условия прерывания

D Ввод

Прерывание с помощью макропрограммы пользователя возможно только в процессе выполнения программы. Прерывание разрешается в следующих условиях:

-Когда выбрана операция в памяти или операция ручного ввода данных

-Когда горит лампа STL (лампа пуска)

-Когда еще не выполняется прерывание с помощью макропрограммы пользователя

Как правило, функция прерывания с помощью макропро- граммы пользователя применяется посредством ввода М96, разрешающего сигнал прерывания (UINT), и M97, запре- щающего этот сигнал. Если задан М96, то прерывание с помощью макропрограммы пользователя может быть вызвано посредством ввода сигнала прерывания (UINT) до ввода М97 или перезагрузки ЧУ. После ввода М97 или перезагрузки ЧУ невозможно выполнить прерывание с помощью макропро- граммы пользователя, даже при вводе сигнала прерывания (UINT). Сигнал прерывания (UINT) пропускается до ввода другой команды М96.

M96

M97

M96

1

 

 

0

 

 

Сигнал

 

 

прерывания

 

 

(UINT)

 

 

Действующий введенный

 

 

сигнал прерывания

 

Когда UINT продолжает

 

 

 

 

действовать

Сигнал прерывания (UINT) становится действующим после ввода М96. Даже если сигнал вводится в режиме М97, то он пропускается. Если сигнал, введенный в режиме М97, остается действующимдо указанияМ96, прерываниес помощью макро- программы пользователя включается с момента ввода М96 (только если применяется схема запуска по состоянию); если применяется схема запуска по краю импульса, прерывание с помощью макропрограммы пользователя не включается, даже если задан М96.

ПРИМЕЧАНИЕ

Для получения информации о схемах запуска по состоянию и по фронту импульса, смотрите ”Сигнал прерывания с помощью макропрограммы пользо-

вателя (UINT)” в подразделе f II- 15.11.2.

327

15. МАКРОПРОГРАММА ПОЛЬЗОВАТЕЛЯ

ПРОГРАММИРОВАНИE

B-64144RU/01

 

 

 

15.11.2

Описание функций

Пояснения

DПрерывание типа подпрограммы и прерывание типа макропрограммы

DM-коды для управления прерыванием с помощью макропрограммы пользователя

Существует два типа прерываний с помощью макпропрограмм пользователя: Прерывания типа подпрограммы и прерывания типа макропрограммы. Используемый тип прерывания выбирается с помощью MSB (разряда 5 параметра 6003).

(a)Прерывание типа подпрограммы

Программа прерывания вызывается как подпрограмма. Это означает, что уровни локальных переменных остаются неизменными до и после прерывания. Этот тип прерывания невключаетсявуровеньвложенностивызововподпрограмм.

(b)Прерывание типа макропрограммы

Программа прерывания вызывается как макропрограмма пользователя. Это означает, что уровни локальных перемен- ных меняются до и после прерывания. Этот тип прерывания не включается в уровень вложенности вызовов макропро- грамм пользователя. Если вызов подпрограммы или макро- программы пользователя выполняется внутри программы прерывания, этот вызов включается в уровень вложенности вызовов подпрограмм или вызовов макропрограмм поль- зователя. Нельзяпередатьаргументыиз текущейпрограммы, даже если прерывание с помощью макропрограммы поль- зователя представляет собой прерывание типа макро- программы.

Как правило, управление прерываниями с помощью макро- программы пользователя осуществляется посредством М96 и М97. Темнеменее, этиМ-кодымогутужеиспользоватьсянеко- торыми изготовителями станков для иных целей (например, в качестве М-функции или М-кода вызова макропрограммы).

По этой причине, чтобы установить М-коды для управления прерыванием с помощью макропрограммы пользователя пре- дусмотренMPR (разряд4 параметра6003). Привводеэтогопара- метра для того, чтобы использовать М-коды в управлении прерыванием с помощью макропрограммы пользователя, заданным параметрами, установите параметры 6033 и 6034 следующим образом:

Задайте в параметре 6033 М-код, разрешающий прерывание с помощьюмакропрограммыпользователя, изадайтевпараметре 6034 М-код, запрещающий прерывание с помощью макропро- граммы пользователя. При данной установке М-коды, задава- емыепараметрами, неиспользуются, аМ96 иМ97 используются вкачествеМ-кодовуправлениямакропрограммойпользователя независимо от установок параметров 6033 и 6034.

М-коды, используемые для управления прерыванием с по- мощью макропрограммы пользователя, проходят внутреннюю обработку (они не выводятся на внешние устройства). Тем не менее, с точки зрения программной совместимости нежела- тельно использовать другие М-коды, кроме М96 и М97, для управления прерываниями с помощью макропрограммы пользователя.

328

B-64144RU/01

ПРОГРАММИРОВАНИE

15. МАКРОПРОГРАММА ПОЛЬЗОВАТЕЛЯ

 

 

D Прерывания с

При выполнении прерывания с помощью макропрограммы

помощью

пользователя пользователь, возможно, пожелает прерывать

макропрограммы

выполнениеоператораЧУ, адругойпользователь, возможно, не

пользователя и

пожелает выполнить прерывание до завершения выполнения

операторы ЧУ

текущего блока. MIN (бит 2 параметра 6003) используется для

 

выбора одного из вариантов: выполнить прерывания даже в

 

середине блока или ждать конца блока.

Тип I (прерывание

выполняется даже в середине блока)

(i)Когда вводится сигнал прерывания (UINT), то любые осуществляемые перемещение или задержка немедленно прерываются, и выполняется программа прерывания.

(ii)Если в программе прерывания имеются операторы ЧУ, ко- манда в прерванном блоке теряется, и в программе преры- вания выполняется оператор ЧУ. Если управление возвра- щается к прерванной программе, выполнение программы возобновляется с блока, следующего за прерванным блоком.

(iii)Если в программе прерывания не имеется операторов ЧУ, с помощью М99 происходит возврат управления к прерван- ной программе, после чего выполнение программы возобновляется с команды в прерванном блоке.

 

Прерванная макропрограммой

Процесс

 

выполнения

 

Обычная программа

 

 

Перезапуск команды ЧПУ;

Сигнал прерывания

при отсутствии

операторов ЧУ в

(UINT)

программе прерывания

Процесс

 

выполнения

 

Прерывание с помощью макропрограммы пользователя

Тип II

(прерывание выполняется в конце блока)

(i)Есливыполняемыйблокнеявляетсяблоком, состоящимиз несколькихциклическихопераций, например, постоянным цикломсверленияиавтоматическимвозвратомвреферент- ное положение (G28), то прерывание выполняется следующим образом: Когда вводится сигнал прерывания (UINT), немедленно выполняются макрооператоры в программе прерывания, если только в программе прерывания не встречается оператор ЧУ. Операторы ЧУ не выполняются до завершения текущего блока.

329

15. МАКРОПРОГРАММА ПОЛЬЗОВАТЕЛЯ

ПРОГРАММИРОВАНИE

B-64144RU/01

 

 

 

(ii)Если выполняемый блок состоит из нескольких цикличес- ких операций, то прерывание выполняется следующим образом: Когда начинается последнее перемещение в циклических операциях, в программе прерывания выпол- няются макрооператоры, если только не встречается опе- ратор ЧУ. Операторы ЧУ выполняются после завершения всех циклических операций.

Процесс

выполнения

Обычная

 

программа

Сигнал прерывания

 

Процесс

(UINT)

 

выполнения

 

Прерывание с помощью

Оператор ЧУ в

макропрограммы

программе

пользователя

прерывания

DУсловия включения и отключения сигнала прерывания с помощью макропрограммы пользователя

DПрерывание с помощью макропрограммы пользователя в процессе выполнения блока, содержащего циклическую операцию

Для типа I

Для типа II

Сигнал прерывания становится действующим после начала выполнения блока, содержащего М96, разрешающего преры- вание с помощью макропрограммы пользователя. Сигнал ста- новится недействующим после начала выполнения блока, содержащего М97. В процессе выполнения программы преры- вания сигнал прерывания становится недействующим. Сигнал становитсядействующим, когданачинаетсявыполнениеблока, который непосредственно следует за прерванным блоком в основной программе после возврата управления из программы прерывания. В типе I, если программа прерывания состоит только из макрооператоров, сигнал прерывания становится действующим, когда начинается выполнение прерванного блока после возврата управления из программы прерывания.

Даже когда циклическая операция находится в процессе выполнения, перемещение прерывается, и выполняется про- грамма прерывания. Если программа прерывания не содержит операторов ЧУ, циклическая операция возобновляется после возврата управления в прерванную программу. При отсутствии операторов ЧУ оставшиеся операторы в прерванном цикле не учитываются, и выполняется следующий блок.

Когда начинается последнее перемещение при циклической операции, в программе прерывания выполняются макро- операторы, еслитолько невстречаетсяоператорЧУ. Операторы ЧУ выполняются после завершения циклической операции.

330

B-64144RU/01

ПРОГРАММИРОВАНИE

15. МАКРОПРОГРАММА ПОЛЬЗОВАТЕЛЯ

 

 

 

D Сигнал прерывания с Существует две схемы ввода сигнала прерывания с помощью помощью макропрограммы пользователя (UINT). Схема запуска по макропрограммы состоянию и схема запуска по фронту импульса. Когда пользователя (UINT) используется схема запуска по состоянию, сигнал является действующим, если он включен. Когда используется схема запуска по фронту импульса, сигнал становится действующим принарастающемфронте, вмоментпереключенияизсостояния выключенов состояние включено”. Выбор одной из двух схемосуществляетсяспомощьюTSE (разряда3 параметра6003).

Когда с помощью этого параметра выбрана схема запуска по состоянию, вызывается прерывание типа макропрограммы, если сигнал прерывания (UINT) является включенным в тот момент, когда сигнал становится действующим. Оставляя сигнал прерывания (UINT) включенным, можно повторно выполнить программу прерывания. Когда выбрана схема запуска по фронту импульса, сигнал прерывания (UINT) становится действующим только при нарастающем фронте. Следовательно, программа прерывания выполняется только мгновенно (в случаях, когда программа состоит только из макрооператоров). Когда схема запуска по состоянию является неподходящей или когда прерывание с помощью макропро- граммы пользователя должно выполняться только один раз для всей программы (в этом случае можно оставить сигнал прерываниявключенным), применимойявляетсясхемазапуска по фронту импульса. За исключением особых случаев при- менения, указанныхвыше, использованиелюбойиз схемимеет одинаковые последствия. Время с момента ввода сигнала до прерыванияспомощьюмакропрограммыпользователядляэтих двух схем - одинаковое.

1

 

 

0

 

 

Сигнал прерывания

Выполнение Выполнение Выполнение

Выполнение

(UINT)

прерывания прерывания прерывания

прерывания

Схема запуска

 

 

по состоянию

 

 

 

Выполнение

 

 

прерывания

 

Схема запуска

 

 

по фронту

 

 

импульса

 

 

На примере выше, если используется схема запуска по состоянию, то прерывание выполняется четыре раза; если используется схема запуска по фронту импульса, прерывание выполняется только один раз.

331

15. МАКРОПРОГРАММА ПОЛЬЗОВАТЕЛЯ

ПРОГРАММИРОВАНИE

B-64144RU/01

 

 

D Возврат из

ЗадайтеМ99 длявозвратауправленияотпрерыванияспомощью

прерывания с

макропрограммы пользователя к прерванной программе. С

помощью

помощью адреса Р можно также задать номер последователь-

макропрограммы

ности в прерванной программе. Если такой номер задан,

пользователя

осуществляется поиск программы по заданному номеру

 

последовательности с самого начала. Управлениевозвращается

 

к первому найденному номеру последовательности.

Невозможно осуществить прерывания во время выполнения программы прерывания с помощью макропрограммы пользо- вателя. Для разрешения другого прерывания выполните М99. Когда задан только М99, то он выполняется до завершения выполненияпредыдущихкоманд. Следовательно, прерываниес помощьюмакропрограммыпользователяразрешено толькодля последней команды программы прерывания. Если это неудоб- но, управление прерываниями с помощью макропрограммы пользователя должно осуществляться посредством ввода в

программу M96 и M97.

Когда выполняется прерывание с помощью макропрограммы пользователя, невозможно вызвать другие прерывания с помощью макропрограммы пользователя; когда вызывается прерывание, автоматически запрещаются дополнительные прерывания. Выполнение М99 позволяет вызвать другое прерывание с помощью макропрограммы пользователя. Если в блоке задан один М99, то он выполняется до завершения предыдущего блока. В следующем примере прерывание разрешено для Gxx блока O1234. Когда вводится сигнал, O1234 выполняется снова. Управление О5678 осуществляется с помощью M96 и M97. В данном случае прерывание разрешено для O5678 (разрешено после возврата управления к О1000).

O1000 ;

 

 

M96P1234;

O1234

 

Прерывание

Прерывание

 

 

GxxXxxx;

 

M96P5678

M99

O5678

;

 

 

M97

 

Прерывание

 

GxxXxxx;

 

M96

M97

M99 Прерывание

;

 

332

B-64144RU/01 ПРОГРАММИРОВАНИE 15. МАКРОПРОГРАММА ПОЛЬЗОВАТЕЛЯ

 

ПРИМЕЧАНИЕ

 

 

ЕслиблокМ99 состоиттолькоизадресов O, N, P, L или

 

 

М, то этот блок рассматривается в качестве блока,

 

 

принадлежащего предыдущему блоку в программе.

 

 

Следовательно, для данного блока остановка

 

 

единичного блока не выполняется. С точки зрения

 

 

программирования, ¡ и©приведенныениже, посу-

 

 

ществу идентичны (Различие состоит в том, выпол-

 

 

няется ли Gff до того, как распознается М99).

 

 

¡ Gff Xfff ;

 

 

M99 ;

 

 

© Gff Xfff M99 ;

 

D Прерывание с

 

 

Прерывание с помощью макропрограммыы пользователя

помощью

отличается от обычного вызова программы. Это прерывание

макропрограммы

вызываетсясигналомпрерывания(UINT) вовремявыполнения

пользователя и

программы. Как правило, любые изменения модальной

модальная

информации, внесенные программой прерывания, не должны

информация

повлиять на прерванную программу.

 

По этой причине, даже если модальная информация изменена

 

программой прерывания, то восстанавливается модальная

 

информация, существовавшаядопрерывания, когдаспомощью

 

M99 управление возвращается к прерванной программе.

 

Когда с помощью М99 Рхххх управление возвращается от

 

программы прерывания к прерванной программ, программа

 

сноваможетуправлятьмодальнойинформацией. Вэтомслучае,

 

в прерванную программу передается новая непрерывная

 

информация, измененнаяпрограммойпрерывания. Восстанов-

 

ление старой модальной информации, существующей до

 

прерывания, нежелательно. Это вызвано тем, что, после

 

возврата управления, некоторые программы могут работать

 

различно в зависимости от модальной информации,

 

существующей до прерывания. В этом случае применяются

 

следующие меры:

 

(1)Программа прерывания предоставляет модальную инфор-

 

мацию, которая будет использована после возврата управ-

 

ления к прерванной программе.

333

15. МАКРОПРОГРАММА ПОЛЬЗОВАТЕЛЯ

ПРОГРАММИРОВАНИE

B-64144RU/01

 

 

 

(2)После возврата управления к прерванной программе, модальная информация при необходимости задается снова.

O∆∆∆∆

 

M96Pxxx

Oxxx;

 

Сигнал прерывания (UINT)

 

 

Измените модальную

 

информацию

(Без указания Р)

 

Модальная

информация остается M99 (Pffff); неизменной до и после прерывания.

Nffff;

(С указанием Р)

 

Присутствует новая модальная информация, измененная программой прерывания.

Модальная информация, когда с помощью М99 выполняется возврат управления

Модальная информация, когда с помощью М99 Рffff выполняется

возврат управления

DСистемные переменные (информация о положении) для программы прерывания

Модальная информация, существовавшая до прерывания, становится действующей. Новая модальная информация, измененная программой прерывания, становится недействующей.

Новая модальная информация, измененная программой прерывания, остаетсядействующейпослевозвратауправления. Старая модальная информация, которая была действующей в прерванном блоке, может считываться с помощью системных переменных макропрограммы пользователя #4001 - #4120.

Обратите внимание на то, что, если модальная информация изменена программой прерывания, то системные переменные

#4001 - #4120 не меняются.

S Координаты точки А могут считываться с помощью системных переменных #5001 до момента возникновения первого оператора ЧУ.

SКоординаты точки A’ могут считываться после появления оператора ЧУ, не задающего перемещения. .

S Координаты станка и координаты заготовки точки B’ могут считываться с помощью системных переменных #5021 - #5041 и с большими номерами.

334

B-64144RU/01

ПРОГРАММИРОВАНИE

15. МАКРОПРОГРАММА ПОЛЬЗОВАТЕЛЯ

 

Вызванное прерывание Траектория центра инструмента

 

 

В

 

 

В

 

 

А

 

 

А

 

 

Вектор

 

 

смещения

 

 

Запрограммированная

 

 

траектория инструмента

D Прерывание с

Когда вводится сигнал прерывания (UINT) и вызывается

помощью

программа прерывания, модальный вызов макропрограммы

макропрограммы

отменяется (G67). Темнеменее, когдавпрограммепрерывания

пользователя и

задан G66, модальный вызов макропрограммы становится

модальный вызов

действующим. Когда с помощью М99 выполняется возврат

макропрограммы

управления из программы прерывания, модальный вызов

 

возвращается в состояние, в котором он находился до

 

выполнения прерывания. Когда с помощью M99Pxxxx;

 

выполняется возврат управления, модальный вызов в

 

программе прерывания остается действующим.

D Прерывание с

Когда в процессе выполнения операции возврата в режиме

помощью

холостого хода после операции поиска для перезапуска

макропрограммы

программы вводится сигнал прерывания (UINT), программа

пользователя и

прерывания вызывается после завершения операции

перезапуск

перезапуска по всем осям. Это означает, что тип прерывания II

программы

используется независимо от установки параметра.

D Операция группового

Невозможно выполнить макропрограмму пользователя типа

ЧУ и макропрограмма

прерыванияво время операции группового ЧУ или

пользователя типа

выполнения программы с использованием внешнего

прерывания

устройства ввода - вывода.

335

16. ФУНКЦИЯ ВВОДА ДАННЫХ СХЕМЫ

ПРОГРАММИРОВАНИE

B-64144RU/01

 

 

 

16ФУНКЦИЯ ВВОДА ДАННЫХ СХЕМЫ

Данная функция позволяет пользователям выполнить программирование посредством простого получения данных (данныхсхемы) изчертежаивводацифровыхзначенийспанели ручного ввода данных.

Это устраняет необходимость программирования с исполь- зованием существующего языка ЧПУ.

С помощью этой функции изготовитель станка может под- готовить программу цикла обработки отверстия (например, цикла растачивания или цикла нарезания резьбы метчиком) с помощью функциимакрокомандыпользователяи сохранитьее в памяти программ.

Этомуциклуприсваиваются названиясхемы, например, BOR1, TAP3 и DRL2.

Оператор может выбрать схему из меню названий схем, отображенного на экране.

Данные(данныесхемы), которыенеобходимозадатьоператору, должны создаваться заранее с помощью переменных в цикле сверления.

Оператор может идентифицировать эти переменные с использованием таких названий, как ГЛУБИНА (DEPTH), ОТКИДКА НА ОБРАТНОМ ХОДУ (RETURN RELIEF), ПОДАЧА (FEED), МАТЕРИАЛ (MATERIAL) или других названий данных схемы. Оператор присваивает значения (данные схемы) этим названиям.

336

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]