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

Курсы обучения программированию станков с ЧПУ


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

Открыт новый курс обучения расширенному программированию станков с системой управления Sinumerik
https://stepik.org/z/63067
Курс ещё разрабатывается, но первая его часть уже готова!

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


UnPinned posts
  • 2 недели спустя...
21.04.2022 в 16:52, Aveovar сказал:

Вроде все нормально, думаю только подачу добавить

Нет, инструмент пойдёт не по этой траектории

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

В праздничные дни приглашаю на онлайн-курсы программирования станков с ЧПУ. Вы узнаете о интересных приёмах программирования, получите возможность закрепить новые знания, решая разнообразные задачи, и узнаете, что программировать - это несложно, комфортно и увлекательно. Повысите свою эффективность написания программ, как на этом видео и гораздо больше! Проходить курсы можно в любое удобное время. До 10 мая, при записи на них, будет действовать скидка по промокоду МАЙ2022.

 

Программирование станка с системой ЧПУ FANUC (и Sinumerik)

Параметрическое программирование станков с ЧПУ FANUC

Sinumerik: расширенное программирование

 

 

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

Нет, инструмент пойдёт не по этой траектории

понял, не увидел что координата повернута, тогда G3

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

Доброго дня. Ищу учителя по солид воркс( +встроенный солид САМ) У меня простенький 3х осевой станок под управлением NS Студио. Создание Gкода я +-понял как, но вчера чет у меня очень тупила программа, зависала(я вот думаю может из за кривого эскиза, ну как вариант)

В общем и целом бы, учителя который мог бы по видео связи обучать( 1- 2 раза в неделю) и отвечать на вопросы простые по WhatsApp(к примеру)

 

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

В некоторые циках обработки системы Sinumerik требуется задавать координаты элемента (отверстия, резьбы, и др.). Это не позволяет обрабатывать группу элементов через модальный вызов этого цикла, как, например, это можно сделать для цикла сверления, что очень удобно. Тем, не менее, вызов таких циклов можно программировать модально, если добавить небольшую подпрограмму. В основной программе обращаемся к этой подпрограмме (например REZBA):
MCALL REZBA
X... Y...
X... Y...
и так далее, или даже HOLES2(...)
MCALL
M30

подпрограмма REZBA.SPF
R1=$AA_IW[X] R2=$AA_IW[Y]; считываем координаты текущего положения
CYCLE90(795,595,10,,47,24,20,3,1700,2,0,R1,R2)
M17
Какой модальный вызов, какой HOLES2? Приходите на курс https://stepik.org/z/63067

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

Чертёж сегодня - готовая деталь сегодня! Программируем фрезерование отверстий.

KREIS_CIMCO_FORUM.pngРаспродажа курсов на Stepik! C 25 марта по 8 апреля 2022 года:

Программирование станка с системой ЧПУ FANUC (и Sinumerik)

Параметрическое программирование станков с ЧПУ FANUC

Sinumerik: расширенное программирование

пришлось попотеть но по этой программе мой симулятор фрезерного фанука не отрабатывает то что написано после внесения изменений в блоки с23 по 25.

отрабатывает только первый столбик по расчетным параметрам.или это проблема моего симулятора или я чтото не догоняю.

 

 

 


G54
T1M6
G40 G80 G49 G21
G54
G0 X0.0 Y0.0
G43 Z50.0 H1
#1=0(ST T X)
#2=0(ST T Y)
#3=40.(SHAG X)
#4=40.(SHAG Y)
#5=6.(N OTV X)
#6=5.(N OTV Y)
#7=20.(D SVR )
#8=30.0
#9=#6
WHILE[#5GT0]DO1
WHILE[#6GT0]DO2
#124=#1+#3*[#5-1]
#125=#2+#4*[#6-1]
S4000M3
G0 X#124 Y#125
G0 Z2.0
G1 Z-20.0F500
N11 G41 D1 X[#124-#8/2+#7/2] Y[#125+#7/2]
N12 G3 X[#124-#8/2] Y#125  I0.0 J[-#7/2]F2000
N13 G3 X#124 Y[#125-#8/2] I[#8/2] J0
N14 G3 X[#124+#8/2] Y#125 I0 J[#8/2]
N15 G3 X#124 Y[#125+#8/2] I[-#8/2] J0.0
N16 G3 X[#124-#8/2] Y#125 I0 J-[#8/2]
N17 G3 X[#124-#8/2+#7/2] Y[#125-#7/2] I[#7/2] J0. F500
N18 G1 G40 X#124 Y#125
G0 Z2.0
#6=#6-1
END2
#5=#5-1
END1

M97P100

M30
N100
G52X-#3
T1M6
G40 G80 G49 G21
G0 X0.0 Y0.0
G43 Z50.0 H1
#1=0(ST T X)
#2=0(ST T Y)
#3=40.(SHAG X)
#4=40.(SHAG Y)
#5=6.(N OTV X)
#6=5.(N OTV Y)
#7=20.(D SVR )
#8=30.0
#9=#6
WHILE[#5GT0]DO1
WHILE[#6GT0]DO2
#124=#1+#3*[#5-1]
#125=#2+#4*[#6-1]
S4000M3
G0 X#124 Y#125
G0 Z2.0
G1 Z-20.0F500
N11 G41 D1 X[#124-#8/2+#7/2] Y[#125+#7/2]
N12 G3 X[#124-#8/2] Y#125  I0.0 J[-#7/2]F2000
N13 G3 X#124 Y[#125-#8/2] I[#8/2] J0
N14 G3 X[#124+#8/2] Y#125 I0 J[#8/2]
N15 G3 X#124 Y[#125+#8/2] I[-#8/2] J0.0
N16 G3 X[#124-#8/2] Y#125 I0 J-[#8/2]
N17 G3 X[#124-#8/2+#7/2] Y[#125-#7/2] I[#7/2] J0. F500
N18 G1 G40 X#124 Y#125
G0 Z2.0
#6=#6-1
END2
#5=#5-1
END1
M99

 

7 минут назад, alex0800 сказал:

пришлось попотеть но по этой программе мой симулятор фрезерного фанука не отрабатывает то что написано после внесения изменений в блоки с23 по 25.

отрабатывает только первый столбик по расчетным параметрам.или это проблема моего симулятора или я чтото не догоняю.

 

 

 


G54
T1M6
G40 G80 G49 G21
G54
G0 X0.0 Y0.0
G43 Z50.0 H1
#1=0(ST T X)
#2=0(ST T Y)
#3=40.(SHAG X)
#4=40.(SHAG Y)
#5=6.(N OTV X)
#6=5.(N OTV Y)
#7=20.(D SVR )
#8=30.0
#9=#6
WHILE[#5GT0]DO1
WHILE[#6GT0]DO2
#124=#1+#3*[#5-1]
#125=#2+#4*[#6-1]
S4000M3
G0 X#124 Y#125
G0 Z2.0
G1 Z-20.0F500
N11 G41 D1 X[#124-#8/2+#7/2] Y[#125+#7/2]
N12 G3 X[#124-#8/2] Y#125  I0.0 J[-#7/2]F2000
N13 G3 X#124 Y[#125-#8/2] I[#8/2] J0
N14 G3 X[#124+#8/2] Y#125 I0 J[#8/2]
N15 G3 X#124 Y[#125+#8/2] I[-#8/2] J0.0
N16 G3 X[#124-#8/2] Y#125 I0 J-[#8/2]
N17 G3 X[#124-#8/2+#7/2] Y[#125-#7/2] I[#7/2] J0. F500
N18 G1 G40 X#124 Y#125
G0 Z2.0
#6=#6-1
END2
#5=#5-1
END1

M97P100

M30
N100
G52X-#3
T1M6
G40 G80 G49 G21
G0 X0.0 Y0.0
G43 Z50.0 H1
#1=0(ST T X)
#2=0(ST T Y)
#3=40.(SHAG X)
#4=40.(SHAG Y)
#5=6.(N OTV X)
#6=5.(N OTV Y)
#7=20.(D SVR )
#8=30.0
#9=#6
WHILE[#5GT0]DO1
WHILE[#6GT0]DO2
#124=#1+#3*[#5-1]
#125=#2+#4*[#6-1]
S4000M3
G0 X#124 Y#125
G0 Z2.0
G1 Z-20.0F500
N11 G41 D1 X[#124-#8/2+#7/2] Y[#125+#7/2]
N12 G3 X[#124-#8/2] Y#125  I0.0 J[-#7/2]F2000
N13 G3 X#124 Y[#125-#8/2] I[#8/2] J0
N14 G3 X[#124+#8/2] Y#125 I0 J[#8/2]
N15 G3 X#124 Y[#125+#8/2] I[-#8/2] J0.0
N16 G3 X[#124-#8/2] Y#125 I0 J-[#8/2]
N17 G3 X[#124-#8/2+#7/2] Y[#125-#7/2] I[#7/2] J0. F500
N18 G1 G40 X#124 Y#125
G0 Z2.0
#6=#6-1
END2
#5=#5-1
END1
M99

 

 

Изменено пользователем alex0800
Ссылка на сообщение
Поделиться на других сайтах
1 час назад, alex0800 сказал:

пришлось попотеть но по этой программе мой симулятор фрезерного фанука не отрабатывает то что написано после внесения изменений в блоки с23 по 25.

отрабатывает только первый столбик по расчетным параметрам.или это проблема моего симулятора или я чтото не догоняю.

 

 

 


G54
T1M6
G40 G80 G49 G21
G54
G0 X0.0 Y0.0
G43 Z50.0 H1
#1=0(ST T X)
#2=0(ST T Y)
#3=40.(SHAG X)
#4=40.(SHAG Y)
#5=6.(N OTV X)
#6=5.(N OTV Y)
#7=20.(D SVR )
#8=30.0
#9=#6
WHILE[#5GT0]DO1
WHILE[#6GT0]DO2
#124=#1+#3*[#5-1]
#125=#2+#4*[#6-1]
S4000M3
G0 X#124 Y#125
G0 Z2.0
G1 Z-20.0F500
N11 G41 D1 X[#124-#8/2+#7/2] Y[#125+#7/2]
N12 G3 X[#124-#8/2] Y#125  I0.0 J[-#7/2]F2000
N13 G3 X#124 Y[#125-#8/2] I[#8/2] J0
N14 G3 X[#124+#8/2] Y#125 I0 J[#8/2]
N15 G3 X#124 Y[#125+#8/2] I[-#8/2] J0.0
N16 G3 X[#124-#8/2] Y#125 I0 J-[#8/2]
N17 G3 X[#124-#8/2+#7/2] Y[#125-#7/2] I[#7/2] J0. F500
N18 G1 G40 X#124 Y#125
G0 Z2.0
#6=#6-1
END2
#5=#5-1
END1

M97P100

M30

Здравствуйте. В Вашей программе после END2 нет строки #6=#9.  Она восстанавливает значение заданного количества отверстий вдоль оси Y.

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

Здравствуйте. В Вашей программе после END2 нет строки #6=#9.  Она восстанавливает значение заданного количества отверстий вдоль оси Y.

я проверил с этим добавлением  в симуляции делает один столбик и дальше не идет.

возможно мой симулятор дальше не отрабатывает

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

я проверил с этим добавлением  в симуляции делает один столбик и дальше не идет.

возможно мой симулятор дальше не отрабатывает

Да, возможно, он не отрабатывает вложенный цикл

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

G54
T2M6
#1=20.0(GL OTV)
#2=7(K KOL PvT OTV v str)
#3=7(L KOL POVT STR)
G40 G80 G49 G21
G54 S3000 M3
G0 X0.0 Y20.0
G43 Z50.0 H2

G0 Z2.0
G91
G98 G81 X20.  Z-#1 R5.0 K#2 F200
G80 G90
M97 P10.0 L#3
G28X0Y0Z0M5
M30

N10 G0 X0.G90
G91 Y30.0
G91
G98 G81 X20.  Z-#1 R5.0 K#2 F200
G80 G90
M99
это быстрое решение обработки отверстий врешетке-сетке

image.png

Изменено пользователем alex0800
Ссылка на сообщение
Поделиться на других сайтах

G54
T1M6
G40 G80 G49 G21
G54
G0 X0.0 Y0.0
G43 Z50.0 H1
#1=0(ST T X)
#2=0(ST T Y)
#3=40.(SHAG X)
#4=40.(SHAG Y)
#5=6.(N OTV X)
#6=5.(N OTV Y)
#7=20.(D SVR )
#8=30.0
#9=#6
WHILE[#5GT0]DO1
WHILE[#6GT0]DO2
#124=#1+#3*[#5-1]
#125=#2+#4*[#6-1]
S4000M3
G0 X#124 Y#125
G0 Z2.0
G1 Z-20.0F500
N11 G41 D1 X[#124-#8/2+#7/2] Y[#125+#7/2]
N12 G3 X[#124-#8/2] Y#125  I0.0 J[-#7/2]F2000
N13 G3 X#124 Y[#125-#8/2] I[#8/2] J0
N14 G3 X[#124+#8/2] Y#125 I0 J[#8/2]
N15 G3 X#124 Y[#125+#8/2] I[-#8/2] J0.0
N16 G3 X[#124-#8/2] Y#125 I0 J-[#8/2]
N17 G3 X[#124-#8/2+#7/2] Y[#125-#7/2] I[#7/2] J0. F500
N18 G1 G40 X#124 Y#125
G0 Z2.0
#6=#6-1
END2
#6=#9
#5=#5-1
END1

M97P100

M30
N100
G52X-#3
T1M6
G40 G80 G49 G21
G0 X0.0 Y0.0
G43 Z50.0 H1
#1=0(ST T X)
#2=0(ST T Y)
#3=40.(SHAG X)
#4=40.(SHAG Y)
#5=6.(N OTV X)
#6=5.(N OTV Y)
#7=20.(D SVR )
#8=30.0
#9=#6
WHILE[#5GT0]DO1
WHILE[#6GT0]DO2
#124=#1+#3*[#5-1]
#125=#2+#4*[#6-1]
S4000M3
G0 X#124 Y#125
G0 Z2.0
G1 Z-20.0F500
N11 G41 D1 X[#124-#8/2+#7/2] Y[#125+#7/2]
N12 G3 X[#124-#8/2] Y#125  I0.0 J[-#7/2]F2000
N13 G3 X#124 Y[#125-#8/2] I[#8/2] J0
N14 G3 X[#124+#8/2] Y#125 I0 J[#8/2]
N15 G3 X#124 Y[#125+#8/2] I[-#8/2] J0.0
N16 G3 X[#124-#8/2] Y#125 I0 J-[#8/2]
N17 G3 X[#124-#8/2+#7/2] Y[#125-#7/2] I[#7/2] J0. F500
N18 G1 G40 X#124 Y#125
G0 Z2.0
#6=#6-1
END2
#5=#5-1
END1
M99

 

image.png

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

 

 

Изменено пользователем alex0800
Ссылка на сообщение
Поделиться на других сайтах

G54
G40 G49 G80 G90
#1=124.0
#2=120.0
#3=60.0
#4=105.0
#5=[COS[#3]*#2]
#6=[SIN[#3]*#2]
#7=[COS[#3]*#4]
#8=[SIN[#3]*#4]
T1M6
G0X-[#1+20] Y0.0
S4000M3 
G43 Z30.0 H1
G1 Z3.0F2000
G1 Z-15.0 F1000
G41 Y-20.0F2000D1
G3X-#1 Y0.0 R20.0
G2 X0.0 Y#1 R#1
G2X#1 Y0.0 R#1
G2X0.0 Y-#1 R#1
G2 X-#1 Y0.0 R#1
G1 X-[#1+20.] Y20.
G0 Z30.0
G40
T2M6 
S4000 M3
G0 X0.0 Y110.0
G43 Z30.0 H2
M97 P100
 G68 X0.0 Y0.0 R-90.0
M97 P100
G68 X0.0 Y0.0 R-180.0
M97 P100
 G68 X0.0 Y0.0 R-270.0
M97 P100
G69
G28 X0Y0Z100.
M30

N100
G0 X0.0 Y100.0
G1 Z-1.5 F1000
G1 Y#2
G0 Z5.0
G0 X#7 Y#8
G1 Z-1.5 F1000
G1 X#5 Y#6
G0 Z5.0
G0 X-#5 Y#6
G1 Z-1.5
G1 X-[#7] Y#8
G0 Z5

m99

image.png

 

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

Сколько раз будет выполнен участок программы с N100 по N120?

DEF INT _I
FOR _I=-5 TO -10
N100
N110
N120
ENDFOR

☐ 0

☐ 5

☐ бесконечно много

☐ возникнет ошибка

 https://stepik.org/z/63067

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

Хотите узнать, как запрограммированы циклы сверления? Может, Вы желаете написать свой цикл обработки, который будет учитывать особенности режущего инструмента и Ваши знания эффективного его использования?

CYCLE81.png

Fanuc или Sinumerik? Записывайтесь на соответствующий курс:

Параметрическое программирование станков с ЧПУ FANUC

Sinumerik: расширенное программирование

Если Вы только начали работать со станками с ЧПУ узнайте о эффективных приёмах программирования:

Программирование станка с системой ЧПУ FANUC (и Sinumerik)

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

#1=ATAN[SQRT[3]]/[2+1]
Какое значение будет записано в #1 после выполнения этого кадра?

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

Какие ещё ATAN, SQRT? Записывайтесь на курс Параметрическое программирование станков с ЧПУ FANUC

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

В переменных R1, R2 и R3 хранятся значения длин сторон прямоугольного параллелепипеда. Напишите программу, которая рассчитает площадь его наибольшей грани и результат запишет в R4.

Параллелепипед.jpg

Проверить ответ: https://stepik.org/z/63067 (Курс "Sinumerik: расширенное программирование")

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

Как исправить программу?

Лето.png

До 30 июня действует скидка на курс Параметрическое программирование станков с ЧПУ FANUC по промокоду ИЮНЬ2022, а также на курсы Sinumerik: расширенное программирование и Программирование станка с системой ЧПУ FANUC (и Sinumerik)

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

Если вы захотите написать собственный цикл измерения, то вам пригодится следующая информация:

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

Перемещение измерительного щупа до касания и сброса остатка пути осуществляется добавлением в кадр с перемещением управляющего слова MEAS=N, где N - номер измерительного щупа на станке, например:

G1 X100 MEAS=1 F300

В этом случае измерительный щуп остановится при его отклонении, например, в точке с координатой X104.365. Остаток пути - 4.365 мм - будет сброшен (стёрт).

Если в отклонённом положении потребуется переместить щуп до его обратного срабатывания ("выпрямления"), то с этим перемещением задают команду с отрицательным знаком перед номером щупа:

G1 X110 MEAS=-1 F300

Остаток пути в этом случае тоже будет стёрт.

Между кадрами перемещений с командой MEAS необходимо программировать команду STOPRE, для остановки чтения программы

Проверить, сработал щуп или нет можно с помощью системной переменной $AC_MEA[N], где N - номер измерительного щупа на станке, например:

IF  $AC_MEA[1]==1
MSG("Щуп отклонён")
ENDIF

IF  $AC_MEA[1]==0
MSG("Щуп не отклонён")
ENDIF

Значения координат в момент срабатывания щупа будут находиться в системных переменных $AA_MM[...], где "..." - имя соответствующей оси. Эти значения можно считать, например:

STOPRE
R1=$AA_MM[X]; в системе координат станка
R2=$AA_MW[X]; в системе координат детали

Записать результаты вычислений, например, в таблицу нулевых точек можно следующим образом:

$P_UIFR[1, C, TR]=R10

Эта команда записывает значение переменной R10 в в грубое смещение (TR), в G54 (1) по оси C

И не забудьте, весь цикл поместить в конструкцию IF NOT $P_SEARCH - ENDIF, чтобы он не привёл к непредсказуемым результатам в режиме поиска.

 

Появились вопросы? Записывайтесь на курс Sinumerik: расширенное программирование

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • lem_on
      ну с дуру известно что сломать можно.
    • Viktor2004
      руку привязки так сломать легко
    • lem_on
      По моему вполне логично если станок вывалится в ошибку если рука не доехала до места. У меня так же если кулачки или деталь на пути, просто пихаеш ее до места и станок опять активен. Но нынешние пановья даже не могут написать модель станка.
    • Viktor2004
      Я согласен что скорее всего проблема механическая Но если логика прописана криво и возможно не предусмотрела остановку в промежуточном состоянии, разве не логично будет попробовать принудительно подав напряжение дернуть эту руку вверх-вниз? Возможно то что туда попало выпадет  
    • Guhl
      Если оставить за скобками вопрото том, что до м19 работает нормально, а после нет, то вы не считали сколько у него реально импульсов на оборот? с помощью стороннего плк, например  А если ориентацию м5 снимать, а не м20?
    • lem_on
      Что это за станок такой в котором сразу ладер ковырять надо, даже не смотря на возможность механической проблемы? Или профдеформация?
    • Viktor2004
      не сразу я понял в чем вопрос. Долго соображал что такое режим управления скоростью. При завершении ориентации PMC снимает сигнал G70.6 ? И если он после снятия сигнала продолжает удерживать шпиндель, при каких условиях эта ориентация все же снимается? После нажатия аварийного грибка или еще как?
    • Viktor2004
      Ладдер пришлите. Будем принудительно пробовать поднимать и опускать
    • streamdown
      Коллеги приветствую! IPS 8. Подскажите пожалуйста, кто какое серверное железо использует? Интересуют параметры при одновременной работе, ну например, 400 пользователей онлайн
    • gudstartup
      так он так и позиционируется по m19 pmc выдает g70.6 а чпу отвечает f45.7 но ориентацию и смещение в 4077 он отрабатывает нормально шпиндель встает ровно и смена происходит хорошо. вопрос почему после ввода команды управления скоростью он все еще продолжает контролировать число импульсов между нуль метками хотя в принципе уже должен отменить позиционный контроль и просто считать обороты по 0 метке как он это делает без М19? это все понятно но почему оно продолжает проверять это после завершения ориентации мне непонятно
×
×
  • Создать...