Модальные команды

Материал из NikiWiki
Перейти к:навигация, поиск
YourBunnyWroute.pngАвтор предупреждает! Статья не дописана!
Данная статья не дописана и требует до- или, даже, переработки. Примеры и данные в этой статье могут быть не проверены, тесты не отлажены, а информация не действительна. Я постараюсь, чтобы таких статей было по-меньше, но пока они есть. Смотрите: NikiWiki:Отказ от ответственности


Модальными называются команды, чье действие в пределах соответствующей модальной группы сохраняется до окончания программы или отмены действия предыдущей команды последующей.

Две команды одной модальной группы не могут действовать одновременно. Так, например, G00 отменит действие G01 или G02 и наоборот. Станок не может перемещаться сразу в двух точках, по этой причине все модальные команды объединены в группы.

Пример использование

Примером модальной команды может служить команда ускоренного перемещения G00, действие которой влияет на все команды из других групп. Так, например, если командой G00 X100 ось X станка была переведена в позицию 100, то любая другая команда из другой группы будет начинать свое действие именно из этой позиции.

G00 X100
G02 I10 F100

Приведенный пример переведет станок из текущей (какая бы она не была) в позицию X=100 (будет задействована одна ось X, остальные останутся в том же положении) и затем произведет фрезеровку окружности диаметром 20мм со скоростью подачи 100мм/мин.


Данный пример не совсем корректен, поскольку в данном коде использован G00 - ускоренное перемещение для позиционирования инструмента в точке начала обработки. Было бы правильно между кодом G00 и G02 вставить код G01, изменяющий параметр Z и "погружающий" инструмент в заготовку с определенной скоростью подачи. Хотя, в некоторых случаях и такой подход возможен.

Дополнительная информация

Группы модальных команд собраны в категории Категория:G модальные группы команд

Особенности для LinuxCNC

LinuxCNC.org

Отладка данного фрагмента кода производилась в LinuxCNC, учитывая то, что найденные мной в пространстве Интернет примеры кодов подпрограмм не на 100% соответствовали этой, смею предположить, что такой синтаксис характерен именно для используемой мной программы управления станком, а не любой другой.