Вот цикл сварки, для всех голов:
Код: Выделить всё
(Читаем тайминги)
M66 E0 L0
#<press_time> = #5399
M66 E1 L0
#<weld_time> = #5399
M66 E2 L0
#<forging_time> = #5399
#<pin> = 0
O<weld> REPEAT [14] (14 раз)
M64 P[#<pin>*3] (включаем выход сжатия)
G4 P#<press_time> (ждем необходимое сжатия)
M64 P[#<pin>*3+1] (включаем выход сварки)
G4 P#<weld_time> (ждем необходимое сварки)
M65 P[#<pin>*3+1] (выключаем выход сварки)
M64 P[#<pin>*3+2] (включаем выход проковки --- кстати, что такое проковка??? Или это просто выключенная сварка, но оставленный прижим? )
G4 P#<forging_time> (ждем необходимое проковки)
M65 P[#<pin>*3+2] (выключаем выход проковки)
M65 P[#<pin>*3] (выключаем выход сжатия)
M66 P[#<pin>] L3 Q5 (ждем 1 L3 на пине ввода motion.digital-in-#<pin> в течении 5 (Q5) секунд)
O<check> IF [#5399 EQ -1] (Проверяем значение пина ввода, если =-1 - значит не дождались 1 = ошибка)
(DEBUG, Ошибка при ожидании поднятия головы #<pin>)
M0
O<check> ENDIF
#<pin> = #<pin>+1
O<weld> ENDREPEAT