Циклы в Gкоде: различия между версиями
Перейти к навигации
Перейти к поиску
Nick (обсуждение | вклад) (Новая страница: «Все просто: O100 REPEAT [10] (начало цикла в квадратных скобках количество проходов) O100 ENDREPEAT (…») |
Nick (обсуждение | вклад) |
||
| (не показана 1 промежуточная версия этого же участника) | |||
| Строка 1: | Строка 1: | ||
Все просто: | Все просто: | ||
| − | O100 REPEAT [10] (начало цикла в квадратных скобках количество проходов) | + | O100 REPEAT [10] (начало цикла, в квадратных скобках количество проходов) |
O100 ENDREPEAT (конец цикла) | O100 ENDREPEAT (конец цикла) | ||
| + | |||
| + | При этом используется особый О-код. После буквы "О" идет уникальный идентификатор, или цифренный O100, или буквенный O<my-repeat>. Идентификаторы конца и начала цикла должны совпадать. | ||
| + | |||
Потом усложняем: | Потом усложняем: | ||
| − | |||
#<start> = 0 (начальная точка) | #<start> = 0 (начальная точка) | ||
Текущая версия на 12:15, 20 апреля 2016
Все просто:
O100 REPEAT [10] (начало цикла, в квадратных скобках количество проходов) O100 ENDREPEAT (конец цикла)
При этом используется особый О-код. После буквы "О" идет уникальный идентификатор, или цифренный O100, или буквенный O<my-repeat>. Идентификаторы конца и начала цикла должны совпадать.
Потом усложняем:
#<start> = 0 (начальная точка) #<end> = 10 (конечная точка) #<step> = 0.1 (шаг) #<steps> = [[#<end>-#<start>]/#<step>] #<pos> = #<start> O100 REPEAT [#<steps>] (начало цикла в квадратных скобках количество проходов) G1 X#<pos> G1 Z-100 G1 Z0 #<pos> = [#<pos>+#<step>] O100 ENDREPEAT (конец цикла)
В вообще лучше всего так:
#<start> = 0 (начальная точка) #<end> = 10 (конечная точка) #<step> = 0.1 (шаг) #<pos> = #<start> O100 WHILE [#<pos> LT #<end>] (цикл пока pos меньше конечной точки) G1 X#<pos> G1 Z-100 G1 Z0 #<pos> = [#<pos>+#<step>] O100 ENDWHILE (конец цикла) G1 X#<end> G1 Z-100 G1 Z0
Также к этому коду можно добавить проверку на то что #<end> больше #<start>.