G-Code loops и o-команды в PlanetCNC

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
atomichammer
Опытный
Сообщения: 136
Зарегистрирован: 20 янв 2017, 13:10
Репутация: 7
Настоящее имя: Anton
Откуда: Алматы
Контактная информация:

G-Code loops и o-команды в PlanetCNC

Сообщение atomichammer »

Добрый день
Написал программу для PlanetCNC, но имею проблему. В старой версии, на компе не подключенном к станку, она отображается (и скорее всего работает) корректно. А в новой - нет, отображается и отрабатывает только первый цикл, забивая на второй. Подскажите, где что поправить? Текст программы прилагаю.

Код: Выделить всё

(palka_v130_6v_2s)
(Material Size) (X=1220.000, Y=1220.000, Z=0.000)
%
G90G80G21G49
M6 T1
(Tool Number:1) (3.175 ìì ðàäèóñ öèëèíäðè÷åñêèé ôðåçû)
G43 H1 G0Z7.0000
M3 S15000


#1 = 0 (initial X offset)
#2 = 1 (initial counter value)
#3 = 53.8 (X increment value)
#4 = 16 (number of copies)

O1300 sub
G0 X531.4105 Y25.0000 Z7.0000
G1   Z-18.0000 F1200
G3 X522.9597 Y33.4125 I-8.4229 J-0.0103 F1500
G1 X503.0402 Y33.4125  
G3 X494.6413 Y25.8700 I-0.0314 J-8.4126 
G3 X501.3085 Y16.7608 I8.3676 J-0.8702
G3 X503.0402 Y16.5874 I1.7173 J8.4201
G1 X522.9597 Y16.5874  
G3 X531.4105 Y25.0000 I0.0279 J8.4228 
G0   Z7.0000
M99
O1300 endsub

O1400 sub
G0 X1023.4275 Y51.5875 Z7.0000
G1   Z-18.0000 F1200
G1 X1026.0001 Y51.5875  F1500
G2 X1027.1226 Y51.1225 I-0.0000 J-1.5875 
G2 X1027.5876 Y50.0000 I-1.1225 J-1.1225
G1  Y0.0000  
G2 X1026.0001 Y-1.5875 I-1.5875 J0.0000 
G1 X1021.0000 Y-1.5875  
G2 X1019.4125 Y-0.0000 I-0.0000 J1.5875 
G1 X1019.4125 Y2.4124  
X886.5876 Y2.4124 
X886.5876 Y0.0000 
G2 X885.0001 Y-1.5875 I-1.5875 J0.0000 
G1 X844.9999 Y-1.5875  
G2 X843.4124 Y-0.0000 I-0.0000 J1.5875 
G1 X843.4124 Y2.4124  
X710.5875 Y2.4124 
X710.5875 Y-0.0000 
G2 X709.0000 Y-1.5875 I-1.5875 J-0.0000 
G1 X669.0000 Y-1.5875  
G2 X667.4125 Y-0.0000 I0.0000 J1.5875 
G1 X667.4125 Y2.4124  
X534.5875 Y2.4124 
X534.5875 Y0.0000 
G2 X533.0000 Y-1.5875 I-1.5875 J-0.0000 
G1 X493.0000 Y-1.5875  
G2 X491.4125 Y-0.0000 I0.0000 J1.5875 
G1 X491.4125 Y2.4124  
X358.5875 Y2.4124 
X358.5875 Y-0.0000 
G2 X357.0000 Y-1.5875 I-1.5875 J0.0000 
G1 X317.0000 Y-1.5875  
G2 X315.4125 Y0.0000 I0.0000 J1.5875 
G1 X315.4125 Y2.4124  
X182.5874 Y2.4124 
X182.5874 Y0.0000 
G2 X180.9999 Y-1.5875 I-1.5875 J-0.0000 
G1 X141.0000 Y-1.5875  
G2 X139.4125 Y-0.0000 I-0.0000 J1.5875 
G1 X139.4125 Y2.4124  
X6.5875 Y2.4124 
X6.5875 Y0.0000 
G2 X5.0000 Y-1.5875 I-1.5875 J0.0000 
G1 X0.0000 Y-1.5875  
G2 X-1.5875 Y0.0000 I0.0000 J1.5875 
G1 X-1.5875 Y50.0000  
G2 X0.0000 Y51.5875 I1.5875 J0.0000 
G1 X5.0000 Y51.5875  
G2 X6.5875 Y50.0000 I-0.0000 J-1.5875 
G1 X6.5875 Y47.5874  
X139.4125 Y47.5874 
X139.4125 Y50.0000 
G2 X141.0000 Y51.5875 I1.5875 J-0.0000 
G1 X180.9999 Y51.5875  
G2 X182.5874 Y50.0000 I0.0000 J-1.5875 
G1 X182.5874 Y47.5874  
X315.4125 Y47.5874 
X315.4125 Y50.0000 
G2 X317.0000 Y51.5875 I1.5875 J-0.0000 
G1 X357.0000 Y51.5875  
G2 X358.5875 Y50.0000 I-0.0000 J-1.5875 
G1 X358.5875 Y47.5874  
X491.4125 Y47.5874 
X491.4125 Y50.0000 
G2 X493.0000 Y51.5875 I1.5875 J-0.0000 
G1 X533.0000 Y51.5875  
G2 X534.5875 Y50.0000 I0.0000 J-1.5875 
G1 X534.5875 Y47.5874  
X667.4125 Y47.5874 
X667.4125 Y50.0000 
G2 X669.0000 Y51.5875 I1.5875 J0.0000 
G1 X709.0000 Y51.5875  
G2 X710.5875 Y50.0000 I0.0000 J-1.5875 
G1 X710.5875 Y47.5874  
X843.4124 Y47.5874 
X843.4124 Y50.0000 
G2 X844.9999 Y51.5875 I1.5875 J0.0000 
G1 X885.0001 Y51.5875  
G2 X886.5876 Y50.0000 I-0.0000 J-1.5875 
G1 X886.5876 Y47.5874  
X1019.4125 Y47.5874 
X1019.4125 Y50.0000 
G2 X1021.0000 Y51.5875 I1.5875 J0.0000 
G1 X1023.4275 Y51.5875  
G0   Z7.0000
M99 
O1400 endsub

(make holes)
O1500 WHILE [#2 LE #4]
G10 L2 P1 Y#1
M98 P1300
#1 = [#1+#3]
#2 = [#2+1]
O1500 ENDWHILE
(reset all offsets)
G10 L2 P1 X0.000Y0.000Z0.000

#1 = 0 (initial X offset)
#2 = 1 (initial counter value)
(make outer contours)
O1600 WHILE [#2 LE #4]
G10 L2 P1 Y#1
M98 P1400
#1 = [#1+#3]
#2 = [#2+1]
O1600 ENDWHILE
(reset all offsets)
G10 L2 P1 X0.000Y0.000Z0.000

M5
M30
%
Аватара пользователя
xvovanx
Мастер
Сообщения: 3655
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 899
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

Re: G-Code loops и o-команды в PlanetCNC

Сообщение xvovanx »

Уже есть тема про Cnc-planet, не стоит их плодить, пишите сюда
http://www.cnc-club.ru/forum/viewtopic. ... 08#p287431
atomichammer писал(а):...В старой версии, ... она отображается (и скорее всего работает) корректно. А в новой - нет, отображается и отрабатывает только первый цикл...
Очень похоже на то, что обновив версию программы у вас "слетела" китайская ломанная лицензия, и произошел переход в демо режим с ограничением в 25 шагов. Проверьте на любой другой программе (скажем, скопировав 30 раз одно и то же перемещение). Не остановится на 25 шаге?
Последний раз редактировалось xvovanx 27 июл 2018, 09:32, всего редактировалось 1 раз.
atomichammer
Опытный
Сообщения: 136
Зарегистрирован: 20 янв 2017, 13:10
Репутация: 7
Настоящее имя: Anton
Откуда: Алматы
Контактная информация:

Re: G-Code loops и o-команды в PlanetCNC

Сообщение atomichammer »

У меня самодельный контроллер и купленная лицензия. В остальном все работает нормально уже лет 5. Проблема именно в g-коде.
Аватара пользователя
xvovanx
Мастер
Сообщения: 3655
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 899
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

Re: G-Code loops и o-команды в PlanetCNC

Сообщение xvovanx »

atomichammer писал(а):У меня самодельный контроллер и купленная лицензия. В остальном все работает нормально уже лет 5.
xvovanx писал(а):Проверьте на любой другой программе (скажем, скопировав 30 раз одно и то же перемещение). Не остановится на 25 шаге?
Проверьте на всякий случай.

P.S. Несовместимости кодов у разных версий программы замечено не было.
atomichammer
Опытный
Сообщения: 136
Зарегистрирован: 20 янв 2017, 13:10
Репутация: 7
Настоящее имя: Anton
Откуда: Алматы
Контактная информация:

Re: G-Code loops и o-команды в PlanetCNC

Сообщение atomichammer »

Проверил. Точно не оно. У меня кроме этой программы еще сотен несколько других. Вот ссылка на мою тему со скринами на официальном форуме. Там, правда, другая программа, но принцип тот же. К сожалению, там никто не отвечает. Может, не стоит использовать M98-M99? Но я тогда не знаю, как выполнить подпрограмму много раз со смещением.
atomichammer
Опытный
Сообщения: 136
Зарегистрирован: 20 янв 2017, 13:10
Репутация: 7
Настоящее имя: Anton
Откуда: Алматы
Контактная информация:

Re: G-Code loops и o-команды в PlanetCNC

Сообщение atomichammer »

Вариант с использованием oXXX call так же не работает. Точнее, все то же самое. В старой версии норм, в новой (которая на станке), только первый цикл. Так же поменял местами порядок основной программы и подпрограмм, не помогло.
Аватара пользователя
xvovanx
Мастер
Сообщения: 3655
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 899
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

Re: G-Code loops и o-команды в PlanetCNC

Сообщение xvovanx »

В какой проге Г код готовите? В cnc-planet проге при загрузке всего кода код сразу обрезается или весь Г код отображается, но выполняются только две подпрограмки и происходит остановка в месте цикла смены относительных установок (make holes)?

P.S.пробуйте 2017 года (последнюю с офф.сайта), может с версии 2.10.1609.3001 (август 2016) ошибки с синтаксисом на этот счет были... :thinking:
atomichammer
Опытный
Сообщения: 136
Зарегистрирован: 20 янв 2017, 13:10
Репутация: 7
Настоящее имя: Anton
Откуда: Алматы
Контактная информация:

Re: G-Code loops и o-команды в PlanetCNC

Сообщение atomichammer »

Готовлю в арткаме 17 года для одной детали. Потом ручками правлю, добавляя циклы и убирая лишнее. Код отображается весь, в предпросмотре только первый цикл и отрабатывает тоже только первый цикл, потом останавливается. Ну походу косяк в софте, надо попробовать обновить. Просто он и так новее, чем тот, в котором все работает... мож наоборот откатить назад. Я чет с момента первой установки и до сего дня сколько ни обновлял - ни разу не увидел каких-то изменений, кроме логотипа загрузки. И с первых дней меня там все устраивало для моей версии контроллера Mk1.
Я просто сомневался, что я г-код правильно "готовлю", мож с циклами чего понапорол...
atomichammer
Опытный
Сообщения: 136
Зарегистрирован: 20 янв 2017, 13:10
Репутация: 7
Настоящее имя: Anton
Откуда: Алматы
Контактная информация:

Re: G-Code loops и o-команды в PlanetCNC

Сообщение atomichammer »

Обновил программу до последней версии - не помогло. Надо попробовать откатить до очень старой )
Аватара пользователя
aegis
Мастер
Сообщения: 3171
Зарегистрирован: 22 мар 2012, 06:59
Репутация: 1810
Настоящее имя: Михайло
Откуда: Україна, Конотоп=>Запоріжжя=>Харьків

Re: G-Code loops и o-команды в PlanetCNC

Сообщение aegis »

atomichammer писал(а):Но я тогда не знаю, как выполнить подпрограмму много раз со смещением
в конце подпрограммы переходи в приращения, давай сдвиг а потом опять возвращайся в абсолютные
нікому нічого не нав'язую.
Ответить

Вернуться в «Windows / Mach»