FANUC серия 0i-MC. РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ - часть 42

 

  Главная      Книги - Разные     FANUC серия 0i-MC. РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ (B-64124RU/01)

 

поиск по сайту            правообладателям  

 

 

 

 

 

 

 

 

 

 

 

содержание      ..     40      41      42      43     ..

 

 

 

FANUC серия 0i-MC. РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ - часть 42

 

 

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

15.

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

B--64124RU/01

306

Если в программе определено значение переменной

,

то можно

пропустить десятичную точку

.

Пример

:

Если определено

#1=123;

то фактическое значение

переменной

#1

равно

123.000.

Для обращения к значению переменной в программе

,

задайте

адрес слова после номера переменной

.

Если выражение

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

,

заключите это выражение

в квадратные скобки

.

Пример

: G01X[#1+#2]F#3;

Переменное значение

,

к которому происходит обращение

,

автоматически округляется согласно наименьшему вводимому
приращению в данном адресе

.

Пример

:

Если

G00X#1;

выполняется на ЧПУ с

1/1000-

мм

,

и если

переменной

#1

присвоено

12.3456,

то фактическая команда

воспринимается как

G00X12.346;.

Для изменения знака переменного значения

,

к которому

происходит обращение

,

поставьте знак минус

(-)

перед

#.

Пример

: G00X-#1;

Если происходит обращение к неопределенной переменной

,

то

эта переменная пропускается вплоть до адресного слова

.

Пример

:

Если значение переменной

#1

равно

0,

а значение

переменной

#2

всегда равна нулю

,

то выполнение

G00Y#1Z#2;

сводится к

G00X0;.

Если значение переменной не определено

,

такая переменная

называется

нулевой

переменной

.

Переменная

#0

всегда

нулевая переменная

.

В нее нельзя записывать

,

но можно

считывать

.

(a)

Цитирование
Если цитируется неопределенная переменная

,

сам адрес

также пропускается

.

[

Пример

]

Когда

#1 - 0

и

#2 - 0,

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

G00 X#1

Y#2;

будет тем же

,

как при выполнении

G00 X0; .

(b)

Операция

<

пусто

>

аналогична операции с

0,

кроме замены на

<

пусто

>

Если

#1 = <

пусто

>

Если

#1 = 0

#2 = #1

#

#2 = <

пусто

>

#2 = #1

#

#2 = 0

#2 = #1*5

#

#2 = 0

#2 = #1*5

#

#2 = 0

#2 = #1+#1

#

#2 = 0

#2 = #1 + #1

#

#2 = 0

D

Пропуск десятичной
точки

D

Обращение к
переменным

D

Неопределенная
переменная

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

B--64124RU/01

15.

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

307

(c)

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

<

пусто

>

отличаются от

0

только для

EQ

и

NE.

Если

#1 = <

пусто

>

Если

#1 = 0

#1 EQ #0

#

Установлено

#1 EQ #0

#

Не установлено

#1 NE 0

#

Установлено

#1 NE 0

#

Не установлено

#1 GE #0

#

Установлено

#1 GE #0

#

Установлено

#1 GT 0

#

Не установлено

#1 GT 0

#

Не установлено

VARIABLE

O1234 N12345

NO.

DATA

NO.

DATA

100

123.456

108

101

0.000

109

102

110

103

111

104

112

105

113

106

114

107

115

ACTUAL POSITION (RELATIVE)

X

0.000

Y

0.000

Z

0.000

B

0.000

MEM **** *** ***

18:42:15

[ MACRO ] [ MENU ] [

OPR

] [

] [ (OPRT) ]

D

Если значение переменной пусто

,

то эта переменная

становится нулевой

.

D

Знак

********

избыточное значение

(

если абсолютное

значение переменной больше

99999999)

или недоста

-

точное значение

(

если абсолютное значение переменной

меньше

0.0000001).

С помощью переменных невозможно обратиться к номерам
программ

,

номерам

последовательностей

или

номерам

условных пропусков блоков

.

Пример

:

Нельзя использовать переменные в следующих случаях

:

O#1;
/#2G00X100.0;
N#3Y200.0;

Ограничения

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

15.

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

B--64124RU/01

308

Системные переменные могут использоваться для считывания
и записи внутренних данных ЧУ

,

например

,

значений

компенсации погрешностей инструмента и данных текущего
положения

.

Тем не менее

,

обратите внимание на то

,

что

некоторые системные переменные могут только считываться

.

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

.

Возможен обмен сигналами между программируемым устрой

-

ством станком

(

РМС

)

и макропрограммами пользователя

.

Таблица

15.2 (

а

)

Системные переменные для

интерфейсных сигналов

(

Когда параметр

MIF

(

бит

0

ном

. 6001)

установлен на

0.)

Номер

переменной

Функция

#1000 -- #1015 ,

#1032

Можно направить

16--

разрядный сигнал от РМС к

макропрограмме

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

.

Переменные

от

#1000

до

#1015

используются для поразрядного

считывания сигнала

.

Переменная

#1032

используется

для считывания всех

16

разрядов сигнала за один раз

.

#1100 -- #1115 ,

#1132

Можно

направить

16--

разрядный

сигнал

от

макропрограммы пользователя к РМС

.

Переменные

от

#1100

до

#1115

используются для поразрядной

записи сигнала

.

Переменная

#1132

используется для

записи всех

16

разрядов сигнала за один раз

.

#1133

Переменная

#1133

используется для записи за один

раз всех

32

битов сигнала

,

направленного от

макропрограммы пользователя к РМС

.

Обратите

внимание на то

,

что для

#1133

можно использовать

значения от

--99999999

до

+99999999.

(

Когда параметр

MIF

(

бит

0

ном

. 6001)

установлен на

1.)

Номер

переменной

Функция

#1000 -- #1031

Можно направить

32--

битный сигнал от РМС к

макропрограмме

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

.

Переменные

от

#1000

до

#1031

используются для побитного

считывания сигнала

.

#1100 -- #1131

Можно направить

32--

битный сигнал от макропро

--

граммы пользователя к РМС

.

Переменные от

#1100

до

#1131

используются для побитной записи сигнала

.

#1032 -- #1035

Переменные

#1032 -- #1035

используются для вывода

за один раз всех

32

битов сигнала

,

направленного от

PMC

к макропрограмме пользователя

.

Обратите

внимание на то

,

что для

#1032 -- #1035

можно

использовать значения от

--99999999

до

+99999999.

#1132 -- #1135

Переменные

#1132 -- #1135

используются для записи

за один раз всех

32

битов сигнала

,

направленного от

макропрограммы пользователя к

PMC.

Обратите

внимание на то

,

что для

#1132 -- #1135

можно

использовать значения от

--99999999

до

+99999999.

Для получения детальной информации смотрите руководство по
связи

(B-64113EN-1).

15.2

СИСТЕМНЫЕ
ПЕРЕМЕННЫЕ

Пояснения

D

Интерфейсные
сигналы

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

B--64124RU/01

15.

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

309

Значения коррекции на инструмент могут быть считаны и
записаны

с

использованием

системных

переменных

.

Используемые номера переменных зависят от номера пар
коррекции

,

в зависимости от того

,

проводится ли различие

между коррекцией на геометрический размер инструмента и
коррекцией на износ инструмента

,

или же между коррекцией на

длину инструмента и коррекцией на режущий инструмент

.

Если

число значений коррекции не больше

,

чем

200,

также могут

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

#2001

до

#2400.

Таблица

15.2 (c)

Системные переменные для памяти коррекции на

инструмент

B

Коррекция на длину

инструмента

(H)

Коррекция на режущий

инструмент

(D)

Номер

коррек

-

ции

Коррекция на

геометри

-

ческие

размеры

инструмента

Коррекция на

износ

инстру

-

мента

Коррекция
на геомет

-

рические

размеры

инстр

-

та

Компен

-

сация

износа

инстру

-

мента

1

:

200

:

400

#11001(#2201)

:

#11201(#2400)

:

#11400

#10001(#2001)

:

#10201(#2200)

:

#10400

#13001

:

:

#13400

#12001

:

:

#12400

Таблица

15.2 (c)

Системная переменная для макросигналов

тревоги

Номер

переменной

Функция

#3000

Если переменной

#3000

присвоено значение от

0

до

200,

то ЧПУ выполняет остановку и выдает сигнал тре

--

воги

.

После выражения можно вкл

.

аварийное сообще

--

ние длиной не более

26

символов

.

На экране ЭЛТ наря

--

ду с аварийным сообщением высвечиваются ном

.

ава

--

рий путем прибавления

3000

к значению в

#3000.

Пример

:

#3000=1(TOOL NOT FOUND);

На экране аварийных сообщений высвечивается

“3001 TOOL NOT FOUND”
(3001

ИНСТРУМЕНТ НЕ НАЙДЕН

).

Выполнение программы может быть прервано

,

а затем

отобразиться сообщение

.

Номер

переменной

Функция

#3006

Если запрограммировано

“#3006=1 (MESSAGE);”,

то в

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

,

и затем делается остановка

.

Если сообщение

,

содержащее до

26

символов

,

заключ

.

между символом начала ввода

(“(”)

и символом конца

ввода

(“)”),

запрограммир

.

в одном блоке

,

то сообщ

.

отображается на внешнем экране для оператора

.

D

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

D

Макросигналы тревоги

D

Остановка и
отображение
сообщения

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

15.

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

B--64124RU/01

310

Можно считывать и записывать информацию о времени

.

Таблица

15.2 (d)

Системные переменные для информации о

времени

Номер

перемен

-

ной

Функция

#3001

Эта переменная функционирует в качестве таймера

,

который все время ведет отсчет с приращением

1

миллисекунда

.

При включении питания эта переменная

сбрасывается

на

0.

По

достижении

2147483648

миллисекунд значение таймера сбрасывается на

0.

#3002

Эта переменная функционирует в качестве таймера

,

который ведет отсчет с приращением

1

час

,

когда горит

лампа пуска

.

Этот таймер сохраняет свои показания даже

при отключении питания

.

По достижении

9544.371767

часов значение таймера сбрасывается на

0.

#3011

Эта переменная может быть использована для считывания
текущих

данных

(

год

/

месяц

/

день

).

Информация

год

/

месяц

/

день преобразуется в истинное десятичное

число

.

Например

, 28

сентября

2001

будет представлено в

виде

20010928.

#3012

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

(

часы

/

минуты

/

секунды

).

Информация

часы

/

минуты

/

секунды

преобразуется

в

истинное

десятичное число

.

Например

, 3

часа дня

34

минуты

56

секунд представлено в виде

153456.

Можно изменить состояние управления автоматической
работой

.

Таблица

15.2 (e)

Системная переменная

(#3003)

для управления

автоматической работой

#3003

Единичный блок

Завершение

вспомогательной

функции

0

Разрешено

Ожидается

1

Запрещено

Ожидается

2

Разрешено

Не ожидается

3

Запрещено

Не ожидается

S

При включении питания значение этой переменной равно

0.

S

Если запрещена остановка единичного блока

,

операция

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

,

даже если

переключатель единичного блока установлен в положение
ВКЛ

.

S

Если не задано ожидание завершения вспомогательных
функций

(M, S

и

T-

функций

),

то выполнение программы

переходит

к

следующему

блоку

до

завершения

вспомогательных функций

.

Также не выдается сигнал

завершения распределения

DEN.

D

Информация о
времени

D

Управление
автоматической
работой

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

B--64124RU/01

15.

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

311

Таблица

15.2 (f)

Системная переменная

(#3004)

для управления

автоматической работой

#3004

Останов подачи

Ручная

коррекция

подачи

Точная

остановка

0

Разрешено

Разрешено

Разрешено

1

Запрещено

Разрешено

Разрешено

2

Разрешено

Запрещено

Разрешено

3

Запрещено

Запрещено

Разрешено

4

Разрешено

Разрешено

Запрещено

5

Запрещено

Разрешено

Запрещено

6

Разрешено

Запрещено

Запрещено

7

Запрещено

Запрещено

Запрещено

S

При включении питания значение этой переменной равно

0.

S

Если блокировка подачи запрещена

:

(1)

Если

нажата

кнопка

блокировки

подачи

,

станок

останавливается в режиме остановки единичного блока

.

Тем

не менее

,

операция остановки единичного блока не

выполняется

,

если режим единичного блока запрещен

переменной

#3003.

(2)

Когда кнопка блокировки подачи нажата

,

а затем отпущена

,

лампа блокировки подачи загорается

,

но станок не

останавливается

;

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

,

и

станок останавливается в первом блоке

,

в котором разрешена

блокировка подачи

.

S

Если запрещена ручная коррекция блокировки подачи

,

то

всегда применяется ручная коррекция

100%,

независимо от

положения переключателя ручной коррекции подачи на
пульте оператора станка

.

S

Если запрещена проверка точной остановки

,

то проверка

точной остановки

(

проверка положения

)

осуществляется

даже в тех блоках

,

в которых не выполняется резание

.

O0001 ;
N1 G00 G91 X#24 Y#25 ;
N2 Z#18 ;

G04 ;

N3 #3003=3;

N4 #3004=7;
N5 G01 Z#26 F#9 ;
N6 M04 ;

N7 G01
Z--[ROUND[#18]+ROUND[#26]] ;

G04 ;

N8 #3004=0;
N9 #3003=0;

N10M03 ;

M99 ;

Рис

. 15.2

Пример использования переменной

#3004

в цикле нарезания резьбы

N1

N2

N3, N4

N6

N7

N8, N9,
N10

N5

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

15.

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

B--64124RU/01

312

Можно

считывать

и

записывать

установки

.

#9 (FCV) :

Использовать возможность преобразования ленты

FS15

#5 (SEQ) :

Автоматически вставлять номера последовательностей

#2 (INI)

:

Ввод в миллиметрах или ввод в дюймах

#1 (ISO) :

Использовать

EIA

или

ISO

в качестве кода вывода

#0 (TVC) :

Выполнить проверку четности по вертикали

TV

#15

#14

#13

#12

#11

#10

#9

#8

FCV

Значе

--

ние

#7

#6

#5

#4

#3

#2

#1

#0

SEQ

INI

ISO

TVC

Значе

--

ние

#3005

Статус

зеркального

отображения

для

каждой

оси

,

установленный с использованием внешнего переключателя или
операции установки

,

может быть считан с помощью выходного

сигнала

(

сигнала проверки зеркального отображения

).

Можно

проверить статус зеркального отображения

,

имеющегося в

настоящий момент

.

См

. III-4.6)

Полученное двоичное значение

преобразуется в десятичную запись

.

#7

#6

#5

#4

#3

#2

#1

#0

Значение

#3007

4--

я ось

3--

я ось

2--

я ось

1--

я ось

Для каждого разряда

0 (

функция зеркального отображения отключена

)

или

1 (

функция зеркального отображения включена

)

.

Пример

:

Если

#3007

равен

3,

то функция зеркального отображения включена для первой и второй оси

.

указывается

S

Если функция зеркального отображения установлена для
определенной оси как сигналом зеркального отображения

,

так и установкой

,

значение сигнала и заданное значение

пропускаются через схему ИЛИ и затем выводятся

.

S

Если включаются сигналы зеркального отображения для
осей

,

не являющихся управляемыми осями

,

то они все же

считываются в системную переменную

#3007.

S

Системная

переменная

#3007

является

системной

переменной

,

защищенной от записи

.

При попытке записать

данные в эту переменную

,

выдается сигнал тревоги

P/S 116

ПЕРЕМЕННАЯ

,

ЗАЩИЩЕННАЯ

ОТ

ЗАПИСИ

(”WRITE PROTECTED VARIABLE”).

Можно считывать и записывать требуемое количество деталей

(

планируемое

)

и кол

-

во обработанных деталей

(

завершенное

).

Таблица

15.2 (g)

Системные переменные для требуемого числа

деталей и числа обработанных деталей

Номер переменной

Функция

#3901

Кол

--

во обработанных деталей

(

завершенное

)

#3902

Требуемое кол

--

во деталей

(

планируемое

)

D

Установки

D

Зеркальное
отображение

D

Количество
обработанных деталей

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

B--64124RU/01

15.

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

313

ПРИМЕЧАНИЕ

Не заменяйте отрицательным значением

.

Можно считывать модальную информацию

,

заданную в блоках

,

вплоть до непосредственно предшествующего блока

.

Таблица

15.2 (h)

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

информации

Номер

переменной

Функция

#4001

#4002
#4003
#4004
#4005
#4006
#4007
#4008
#4009
#4010
#4011
#4012
#4013
#4014
#4015
#4016
:
#4022
#4102
#4107
#4109
#4111
#4113
#4114
#4115
#4119
#4120
#4130

G00, G01, G02, G03, G33, G75, G77,
G78, G79

(

Группа

01)

G17, G18, G19

(

Группа

02)

G90, G91

(

Группа

03)

G22, G23

(

Группа

04)

G94, G95

(

Группа

05)

G20, G21

(

Группа

06)

G40, G41, G42

(

Группа

07)

G43, G44, G49

(

Группа

08)

G73, G74, G76, G80--G89

(

Группа

09)

G98, G99

(

Группа

10)

G50, G51

(

Группа

11)

G66, G67

(

Группа

12)

G96, G97

(

Группа

13)

G54--G59

(

Группа

14)

G61--G64

(

Группа

15)

G68, G69

(

Группа

16):

:

:

G50.1, G51.1

(

Группа

22)

B

код

D

код

F

код

H

код

M

код

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

S

код

T

код

P

код

(

номер выбранной в данный момент

дополнительной системы координат

)

Пример

:

Если выполняется

#1=#4002;

в

#1

получится значение

17, 18

или

19.

Если заданная системная переменная для считывания
модальной информации относится к группе

G-

кодов

,

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

,

включается сигнал

тревоги

P/S.

D

Модальная
информация

 

 

 

 

 

 

 

содержание      ..     40      41      42      43     ..