Перейти к публикации

Программирование через R переменные


Рекомендованные сообщения

Нужно отрезать из прутка 10 штучек к примеру по 1.5 мм пробовал так но не получается 

R1=R1+1

R2=-1.5*R1

R3=R1-10

G54 Z=R2

R3<N10

 

 

Ссылка на сообщение
Поделиться на других сайтах


UnPinned posts
8 часов назад, Vl4d сказал:

Нужно отрезать из прутка 10 штучек к примеру по 1.5 мм

Добрый день. Можно так написать:

R1=1
WHILE R1<=10
N100 G0 G54 Z=(-1.5-шир._резца)*R1
N110
N120 R1=R1+1
ENDWHILE

Ссылка на сообщение
Поделиться на других сайтах
10 часов назад, Vl4d сказал:

Нужно отрезать из прутка 10 штучек к примеру по 1.5 мм пробовал так но не получается

Можно так:

Скрытый текст

R1=2   ;SHIRINA REZCA
R2=1.5 ;REZ
R3=1   ;CLK

R4=10 ;KOL-VO
G54
T1M6
S1000M3
G0X22Z0
REPEAT
Z=-(R1+R2)*R3
G1X0F0.07
G0X22
R3=R3+1
UNTIL R3>R4
Z10
M30

 

Изменено пользователем mannul
Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
28.01.2023 в 09:27, A_1 сказал:

Добрый день. Можно так написать:

R1=1
WHILE R1<=10
N100 G0 G54 Z=(-1.5-шир._резца)*R1
N110
N120 R1=R1+1
ENDWHILE

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

Ссылка на сообщение
Поделиться на других сайтах
$P_UIFR[2,Z,TR]=$P_UIFR[1,Z,TR]; копируем значение по Z из G54 в G55
FOR R1=1 TO 10
G55
; обрабатываем
; отрезаем
$P_UIFR[2,Z,TR]=$P_UIFR[2,Z,TR]-1.5-шир._резца
ENDFOR
M30

 

20 минут назад, Vl4d сказал:

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

 

Ссылка на сообщение
Поделиться на других сайтах
17 минут назад, A_1 сказал:

$P_UIFR[2,Z,TR]=$P_UIFR[1,Z,TR]; копируем значение по Z из G54 в G55
FOR R1=1 TO 10
G55
; обрабатываем
; отрезаем
$P_UIFR[2,Z,TR]=$P_UIFR[2,Z,TR]-1.5-шир._резца
ENDFOR
M30

 

 

Копируем значение по Z из g54в g55 там по нулям 

Ссылка на сообщение
Поделиться на других сайтах
22 минуты назад, Vl4d сказал:

Копируем значение по Z из g54в g55 там по нулям 

Ну, хорошо. Все равно копируем, потом уменьшаем на величину высота_детали+шир._резца для получения сдвига по оси Z

Ссылка на сообщение
Поделиться на других сайтах
  • 2 месяца спустя...

Подробную информацию о стойке и постановке задачи в студию! Желательно фото заготовки/детали и тип фиксации.

Ссылка на сообщение
Поделиться на других сайтах
  • 4 месяца спустя...
28.01.2023 в 14:56, mannul сказал:

Можно так:

  Скрыть содержимое

R1=2   ;SHIRINA REZCA
R2=1.5 ;REZ
R3=1   ;CLK

R4=10 ;KOL-VO
G54
T1M6
S1000M3
G0X22Z0
REPEAT
Z=-(R1+R2)*R3
G1X0F0.07
G0X22
R3=R3+1
UNTIL R3>R4
Z10
M30

 

 

Ссылка на сообщение
Поделиться на других сайтах
28.01.2023 в 14:56, mannul сказал:

Можно так:

  Скрыть содержимое

R1=2   ;SHIRINA REZCA
R2=1.5 ;REZ
R3=1   ;CLK

R4=10 ;KOL-VO
G54
T1M6
S1000M3
G0X22Z0
REPEAT
Z=-(R1+R2)*R3
G1X0F0.07
G0X22
R3=R3+1
UNTIL R3>R4
Z10
M30

 

а что такое R3? так то все понятно.CLK хм....

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, CNC User сказал:

а что такое R3? так то все понятно.CLK хм....

Счетчик, CLOCK

Ссылка на сообщение
Поделиться на других сайтах

я просто через костыли пользую....в  чпу всего год.делаю так 

G18 G90 G54
R1=9
N10 IF R1==0 GOTO N20
CALL "1_UST"
R1=R1-1
GOTO N10
N20
M5
M11
T1
M30

а вот подпрограмма 

G90G95G54
MSG("(*_*)") 
;***** CENTROVKA ******
T6D2
G0Z1.5
X0
G95 S600 M3 F0.08
M8
G1Z-3
G0Z1.5
X180
M78
G4 F1
M01

;***** OBTOCH *****
T2;PROFIL
S1400 M3
G0Z0.5X20
CYCLE95("KONTUR:KONTUR_E", 2.5,  ,0.8,  ,0.26, 0.2, 0.18, 9,  , ,0.5)
M9M5
G0X180Z0.5
M01

;***** REZBA *******(*_*)
T3
S1000 M3
G0Z-37X16
M8
CYCLE99(-38, 15.83, -68, 15.83,  ,2, 1.2, 0.03, 30, 0, 15, 1, 2, 300103, 1, 0.2, 0, 0, 0, 0, 0, 0, 0, 1,  , , ,0)
M9M5 M79
G0Z1X200
M01

;***** OTREZ ******
T4;OTREZNOY
S800 M3
G0Z-85X20
M8
G1X12F0.07
G0X19
Z-83
G1X19
X15Z-85
X0
G0X200Z-50
M9M5

;***** BARPULLER *****
T6;BARPULER(OSEVOI)
G94
SPOS=0
F2500
G0X100Z-84.8
G1X0
M11
G4F1
G1Z0.1
M10
G4F2
G0X150Z3

M30

;*************CONTOUR************
KONTUR:

;#7__DlgK contour definition begin - Don't change!;*GP*;*RO*;*HD*
G18 G90 DIAMON;*GP*
G0 Z0 X11 ;*GP*
G1 X12.93 CHR=.8 ;*GP*
Z-38 X13.03 ;*GP*
X15.92 CHR=1.2 ;*GP*
Z-69 ;*GP*
X19 ;*GP*
;CON,V64,2,0.0000,2,2,MST:1,2,AX:Z,X,K,I;*GP*;*RO*;*HD*
;S,EX:0,EY:11,ASE:90;*GP*;*RO*;*HD*
;LU,EY:12.93;*GP*;*RO*;*HD*
;F,LFASE:.8;*GP*;*RO*;*HD*
;LA,EX:-38,EY:13.03;*GP*;*RO*;*HD*
;LU,EY:15.92;*GP*;*RO*;*HD*
;F,LFASE:1.2;*GP*;*RO*;*HD*
;LL,DEX:-31;*GP*;*RO*;*HD*
;LU,EY:19;*GP*;*RO*;*HD*
;#End contour definition end - Don't change!;*GP*;*RO*;*HD*

KONTUR_E:;************* CONTOUR ENDS ************

кто подскажет как 808 дт может ли она открывать dmp файлы(png)

и если да то как ето сделать то?

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

и где они находятся тоже непонятно...

стоика 808dt станок Z-MAT FTH 400_1000

Ссылка на сообщение
Поделиться на других сайтах

Сдвиг в Синумерик очень удобно делать через Trans.

Описываете нужный контур,получаете деталь для отрезки,например 6мм.Отрезаете. Далее просто пишете Trans z=-6. И проигрываете программу.Итого 0= -6..

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

N190 IF R99==6 GOTOC WUU
N200 TRANS Z=R30
N210 IF R99==1 GOTOC WUZ
N220 TRANS Z=R31
N230 IF R99==2 GOTOC WUZ
N240 TRANS Z=R32
N250 IF R99==3 GOTOC WUZ
N260 TRANS Z=R33
N270 IF R99==4 GOTOC WUZ
N280 TRANS Z=R34
N290 IF R99==5 GOTOC WUZ

Пример,как присвоить сдвиг на 6 деталей.

Ссылка на сообщение
Поделиться на других сайтах

Не нашел только в Синумерик,как слить текущую координату в R параметры.

В принципе не очень важно,но интересно-как!?

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

Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, Diodik сказал:

Сдвиг в Синумерик очень удобно делать через Trans.

Описываете нужный контур,получаете деталь для отрезки,например 6мм.Отрезаете. Далее просто пишете Trans z=-6. И проигрываете программу.Итого 0= -6..

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

N190 IF R99==6 GOTOC WUU
N200 TRANS Z=R30
N210 IF R99==1 GOTOC WUZ
N220 TRANS Z=R31
N230 IF R99==2 GOTOC WUZ
N240 TRANS Z=R32
N250 IF R99==3 GOTOC WUZ
N260 TRANS Z=R33
N270 IF R99==4 GOTOC WUZ
N280 TRANS Z=R34
N290 IF R99==5 GOTOC WUZ

Пример,как присвоить сдвиг на 6 деталей.

ПОПРОБУЙТЕ ATRANS ЭТО АДИТТИВНОЕ СМЕЩЕНИЕ (ИНКРЕМЕНТНЫЙ СДВИГ)

Ссылка на сообщение
Поделиться на других сайтах
42 минуты назад, CNC User сказал:

ПОПРОБУЙТЕ ATRANS ЭТО АДИТТИВНОЕ СМЕЩЕНИЕ (ИНКРЕМЕНТНЫЙ СДВИГ)

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

N870 IF R99==6 GOTOC WUL
N880 TRANS Z=R30
N890 IF R99==1 GOTOC WUL
N900 TRANS Z=R31
N910 IF R99==2 GOTOC WUL
N920 TRANS Z=R32
N930 IF R99==3 GOTOC WUL
N940 TRANS Z=R33
N950 IF R99==4 GOTOC WUL
N960 TRANS Z=R34
N970 IF R99==5 GOTOC WUL 

 

Так надежнее и удобнее

3 часа назад, Ander сказал:

Clip_2783.png

Спасибо,попробую в деле..

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

Нарисовалась проблема с sqrt.

При запуске подпрограммы,она отрабатывает 1 раз и вываливает Арифметическая ошибка в кадре ,где вычисляется корень ,а именно R22=sqrt(R5),причем результат первого прогона верный..В чем может быть проблема? Вычисляю в цикле while-endwhile.

Ссылка на сообщение
Поделиться на других сайтах
14 часов назад, Diodik сказал:

Нарисовалась проблема с sqrt.

При запуске подпрограммы,она отрабатывает 1 раз и вываливает Арифметическая ошибка в кадре ,где вычисляется корень ,а именно R22=sqrt(R5),причем результат первого прогона верный..В чем может быть проблема? Вычисляю в цикле while-endwhile.

Здравствуйте. Проверьте, что под корнем:

MSG(<<R5)
M0
STOPRE
R22=sqrt(R5)

 

Ссылка на сообщение
Поделиться на других сайтах

Казус в том,что цикл на 14 проходов,первые 4 прохода вычисляет верно,но пятый - не верно.

Считаю координату по х, по формуле X= 2*√(R+R8)*(R-R8)

R8=R8+1.5(припуск на проход по Z)

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...