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

Программирование через 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 пользователей

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




  • Сообщения

    • maxx2000
    • vladimir.songin
      То есть отключаю аналоговую обратную связь от аналогового входа, и подключаю вместо энкодера? Так не делал но сомнения у меня: Вход энкодера может  быть 12 или 5 вольт. У нас 12. Два пина питание, два пина Каналы A B соответственно, один пин REF (непонятно что он означает и как работает). Остальные соеденены вместе. На какие из них подавать аналаговый вход обратной связи дефлектора.  сигналы от энкодера приходят, проверял осцилографом на самом разьёме непосредственно на входе DM02, и некое значение уже могло бы отобразиться в поле энкодера при отключенном аналаговом входе.  Если отключить аналоговый вход, то видим единичку в обоих полях, но уже писал об этом.  
    • Алексей 1977
      Кто знает подскажите как отключить этот ненужный набор букв и символов в готовой УП? Я так думаю надо редактировать постпроцессор? Заранее спасибо ( Общая длина: 130.0) ( Заготовка:) ( MIN X: -10.970) ( MIN Y: -10.970) ( MIN Z: -6.500) ( MAX X: 10.970) ( MAX Y: 10.970) ( MAX Z: 0.000) ( COORDINATE SYSTEM: Глобальная СК) ( Кончик инструмента:) (   X: -0.000) (   Y: 0.000) (   Z: 10.000) ( Рекомендованная длина: 50.000) ( Количество кромок: 4) ( Инструмент:   Концевая фреза) ( DIAMETER: 10.000) ( Безопасность:) ( Рабочие ходы инструмента: Безопасная БЕЗ зарезов) ( Подводы инструмента: Безопасная БЕЗ зарезов) ( Переходы инструмента: Безопасная БЕЗ зарезов) ( Рабочие ходы патрона: Столкновения НЕ проверялись) ( Подводы патрона: Столкновения НЕ проверялись) ( Переходы патрона: Столкновения НЕ проверялись) ( Траектория: Шаблон) ( STEPOVER: 5.000) ( ДОПУСК:0.100) ( THICKNESS:0.000) ( Статистика:) ( LENGTH: 95.318)( LIFTS: ( TIME: 0/00/05) 1) G0X0Y0 G43Z10.H13 X4.75Y-8.227 Z5. G1Z0F500 X9.5Y-5.485F1000 Y5.485 X0Y10.97 X-9.5Y5.485 Y-5.485 X0Y-10.97 X4.75Y-8.227 G0Z10.
    • gudstartup
      считывание происходит при помощи вх\вых сигналов контроллера plc 
    • gudstartup
      @Maks Horhe так все таки скиньте бэкап эмулируем ваше чпу в cncguide и посмотрим куда поедет?  можете снять видео с фиксацией координатных позиций после каждого кадра. Выложу вашу программу пусть программисты посмотрят все ли в ней ок. %O0002 G40 G17 G94 G90 G49 G80 N1 G91 G28 Z0.0 N2 G91 G28 X0.0 Y0.0 N3 G91 G28 B0.0 C0.0 N4 M03 S200 N5 G90 G0 G53 B0.0 C0.0 N6 G54 N7 X0.0 Y0.0 N8 G90 G43 H01 N9 G90 G0 X0.0 Y0.0 N10 G90 G0 Z200.0 N11 G01 Z10.0 F1500. N12 M00 N13 G00 Z200.0 N14 G40 G49 G69 N15 G00 G53 Z0.0 N16 G00 G54 B0.0 C0.0 N17 G68.2 X0.0 Y0.0 Z0.0 1135. J39.2044 K-129.2315 N18 G53.1 N19 G01 X0.0 Y0.0 F1500 N20 G90 G43 H01 N21 G90 G01 X0.0 Y0.0 F1500 N22 G90 G01 Z200. F1500 N24 M00 N25 G00 Z200. N26 G40 G49 G69 N27 G91 G28 Z0.0 N28 G28 X0.0 Y0.0 N29 G91 G28 B0.0 C0.0 N30 M5 N31 M30
    • gudstartup
      @karlf 530 считывает ключ по специальному протоколу при помощи plc и получает его серийный номер а из него определяет возможные режимы доступа. там нет драйвера а есть plc модуль или несколько эти модули написаны на питоне  надпись smartkey исчезает с экрана при запуске чпу??
    • ДОБРЯК
      Для того, чтобы получить правильные высшие) формы при виртуальном эксперименте, нужно сделать грамотную КЭ модель. От разговора на эту тему вы постоянно уклоняетесь.  То нет компьютера под рукой, сделать простейший тест, то теряете интерес. :=) Сходимости энергии деформации при расчетах статики, недостаточно для точного определения высших собственных форм и частот.  Для того, чтобы грамотно использовать метод конечных элементов, нужно сделать много-много тестов в статике, динамике и ... Одной кнопки и двух конечных элементов в 3Д программе недостаточно для определения высших собственных форм...  У вас в качестве инструмента всего два конечных элемента, шести узловая несовместная оболочка Тимошенко и десяти узловой тетраэдр. И еще контакты при решении задачи на собственные числа. Вам ли говорить про правильность определения высших собственных форм для сложных изделий... :=)    
    • vad0000
      Покажите схему с разрешением на движение
    • vad0000
      Вход, а не выход Вытащить Аналоговый вход и все, как будто туда ничего не подключено И если мы подключим сигнал к энкодеру оси Х, то он стнтет одинаковый с аналоговым входом, который не подключен?
    • Snake 60
      @waze4534  Посмотрите вверх и прочитайте текст на красной полоске...
×
×
  • Создать...