Команды Siemens Sinumerik STOPRE, MSG, WHILE и другие
![Команды Sinumerik](https://cnc-maniac.ru/wp-content/uploads/2021/12/Команды-Sinumerik.jpg)
Программная команда STOPRE в Sinumerik 840D
Одним из ключевых преимуществ системы управления Sinumerik 840D является ее способность предварительно обрабатывать команды программы обработки до фактического их выполнения.
Говоря проще, Sinumerik 840D считывает команды быстрее, чем сама машина с ЧПУ.
Это подразумевает, что Sinumerik 840D заранее читает программу ЧПУ. При нажатии кнопки запуска цикла система управления Sinumerik 840D может прочитать весь код ЧПУ раньше, чем станок начнет его выполнение, из-за чего реальная машина может отставать.
Таким образом, Sinumerik 840D обрабатывает данные быстрее, чем работает станок.
Однако такая стратегия имеет как свои сильные стороны, так и потенциальные риски.
Преимущества упреждающего чтения в Sinumerik 840D
Когда система Sinumerik 840D заблаговременно обрабатывает программу ЧПУ, станок может работать более слаженно и без рывков. Это особенно полезно при выполнении сложных операций, так как контроллер уже заранее решает необходимые вычисления, что позволяет машине плавно выполнять сложные профили.
Недостатки упреждающего чтения в Sinumerik 840D
Однако у такого подхода есть и минусы. Машина может отставать, в то время как ЧПУ уже значительно впереди.
Это может привести к ошибкам при использовании переменных (например, R-параметров). Если, к примеру, вы присваиваете локальной переменной одно значение, а позже обновляете его, то есть риск, что машина прочитает старое значение, так как контроллер уже обновил его, а станок еще нет.
В такой ситуации может возникнуть несоответствие, когда машина прочитает первоначальное значение переменной, а контроллер уже пересчитал новое.
Как устранить проблему
Sinumerik 840D предлагает решение в виде команды STOPRE (остановка упреждающего чтения).
Команда STOPRE очищает все данные, считанные заранее, приводя систему и станок к одной точке синхронизации.
После выполнения STOPRE Sinumerik 840D вновь начинает опережающее чтение, пока программа не завершится или команда STOPRE не будет вызвана снова.
Использование команды STOPRE в Siemens Sinumerik
Команда STOPRE в Siemens Sinumerik играет ключевую роль, позволяя эффективно решить проблему с локальными переменными, описанную ранее, простым и надежным способом.
Также STOPRE применяется, когда необходимо взаимодействовать с различными компонентами станков с ЧПУ, такими как патрон или задняя бабка, обеспечивая синхронизацию процессов.
Команда Sinumerik MSG для вывода сообщений оператору
Команда MSG в Sinumerik позволяет выводить любые строки текста из программы обработки детали на экран оператора в виде сообщений.
Такие сообщения могут быть как информационными, так и критически важными, отображающими данные в реальном времени.
Пример использования MSG в программе ЧПУ:
MSG («Первая строка программы»)
G54
…
Удаление сообщений Sinumerik MSG
Сообщение можно убрать, запрограммировав MSG () без текста. Если не сделать этого, сообщение будет отображаться до появления следующего или до завершения программы.
Вывод переменных с помощью MSG
С помощью оператора «<<» можно выводить значения переменных прямо в сообщениях.
MSG("Позиция:" << $AA_IM[X])
Пример:
N20 MSG ("X-позиция" << $AA_IW[X] << "Проверка!")
Отображение R-параметров с помощью MSG
N10 R12=$AA_IW [X]; Текущая позиция по оси X в R12.
N20 MSG("Проверьте позицию оси X" << R12)
...
N90 MSG()
Когда стоит использовать MSG в Sinumerik
Сообщения обычно выводятся для передачи важной информации оператору. Часто после команды MSG используется команда M00 Program Stop, чтобы оператор знал, что нужно сделать, и мог нажать Cycle-Start для продолжения выполнения программы.
N3000 MSG ("Начало операции нарезания резьбы")
N3010 M00
N3020 MSG()
Команда MSG также может использоваться для простого информирования о текущем процессе.
N87 MSG ("Нарезание резьбы")
N88 CYCLE...; Цикл нарезания резьбы.
N898 MSG()
Команда WHILE в программировании SINUMERIK 840D
Sinumerik 840D предоставляет множество управляющих структур для программирования, таких как:
- IF
- LOOP
- FOR
- WHILE
- REPEAT
Ниже приведен пример программы ЧПУ с использованием команды WHILE:
G01 G90 X0 Z10 F1000
WHILE $AA_IM[X] <= 100
G1 G91 X10 F500
G1 G90 Z–20 F100
Z5
ENDWHILE
Описание работы программы
Данная программа выполняет вырезку паза на передней поверхности детали, поэтапно смещаясь вдоль оси X. Стартуя с позиции X0, она продвигается к X100 с шагом 10 единиц при каждом перемещении по оси X.
Используемые команды:
- G01: Линейная интерполяция
- G90: Абсолютное программирование
- G91: Инкрементное программирование
Первый блок программы переводит инструмент в начальное положение: X0 по оси X и Z10 по оси Z.
Следующий блок проверяет, не превышает ли текущая позиция оси X значение 100, используя системную переменную Sinumerik 840D, и запускает цикл WHILE.
В ходе каждого прохода инструмент перемещается по оси X на 10 единиц от текущей позиции благодаря активному инкрементному программированию (G91), а затем смещается по оси Z на -20 единиц в абсолютных координатах (G90).
После этого инструмент возвращается в позицию Z5, и цикл повторяется, пока условие WHILE остаётся истинным.
ENDWHILE завершает цикл, после чего программа прекращает выполнение, когда условие становится ложным.
Команды DIAMOF, DIAMON, DIAM90 в Siemens Sinumerik
Ось X на токарных станках ЧПУ обычно задаётся в диаметральных размерах, однако при необходимости программирования можно переключиться на радиальные размеры.
![Команды DIAMOF, DIAMON, DIAM90 в Sinumerik](https://cnc-maniac.ru/wp-content/uploads/2021/12/Sinumerik-DIAMOF-DIAMON-DIAM90.jpg)
DIAMOF; Радиальные размеры DIAMON; Диаметральные размеры DIAM90; Диаметр для G90 ; Радиус для G91
Пример использования DIAMOF и DIAMON:
![Пример команд DIAMOF и DIAMON](https://cnc-maniac.ru/wp-content/uploads/2021/12/Примеры-DIAMOF-DIAMON.jpg)
Пример использования Sinumerik CYCLE95 с командой DIAMOF:
N110 G18 DIAMOF G90 G96 F0.8
N120 S500 M3
N130 T1 D1
N140 G0 X70
N150 Z160
N160 CYCLE95("START:END",2.5,0.8,0.8,0,0.8,0.75,0.6,1,,, )
N170 G0 X70 Z160
N175 M02
START:
N180 G1 X10 Z100 F0.6
N190 Z90
N200 Z70 ANG=150
N210 Z50 ANG=135
N220 Z50 X50
END:
N230 M02
Пример использования команды Sinumerik CYCLE95 с DIAMON
N110 G18 G90 G96 F0.8
N120 S500 M3
N130 T1 D1
N140 G0 X140
N150 Z160
N160 CYCLE95("START:END",2.5,0.8,0.8,0,0.8,0.75,0.6,1,,, )
N170 G0 X140 Z160
N175 M02
START:
N180 G1 X20 Z100 F0.6
N190 Z90
N200 Z70 ANG=150
N210 Z50 ANG=135
N220 Z50 X100
END:
N230 M02
Примеры команд DIAMOF, DIAMON и DIAM90
Использование команды DIAMOF
N10 G0 X0 Z0; Подход к стартовой точке
N20 DIAMOF; Отключение диаметрального режима
N30 G1 X30 S2000 M03 F0.8; Переход к позиции X30 в радиальном режиме
Использование команды DIAMON
N40 DIAMON; Активация диаметрального измерения
N50 G1 X70 Z-20; Переход в позицию X70 по диаметру и Z-20
N60 Z-30
Пример использования команды DIAM90
N70 DIAM90; Программирование диаметра для абсолютного позиционирования
; Программирование радиуса для инкрементального перемещения
N80 G91 X10 Z-20; Инкрементальное позиционирование
N90 G90 X10; Абсолютные координаты
Команда ANG = для задания угла в Sinumerik
Если конечные точки контура не указаны на чертеже, возможно использование команды ANG =… для определения линии по углу.
Команда ANG = может применяться в плоскостях G17, G18 и G19. Положительные значения задают угол против часовой стрелки.
Пример использования команды ANG =
![Команда ANG = Пример](https://cnc-maniac.ru/wp-content/uploads/2021/12/ANG-Пример.jpg)
N10 G18 G90 G96 F0.8
N20 S500 M3
N30 T1 D1
N40 G0 X140 Z160
N50 G1 X20 Z100 F0.6
N60 Z90
N70 Z70 ANG=150
N80 Z50 ANG=135
N90 Z50 X100
N100 G0 X200 Z200
N110 M30
G90: Абсолютное программирование и команда AC
Что такое абсолютные координаты в программировании?
Абсолютные координаты означают, что каждая запрограммированная позиция всегда определяется относительно нулевой точки системы координат. В Siemens Sinumerik команда AC позволяет получать доступ к абсолютным значениям конкретной оси без переключения на абсолютный режим (G90).
Абсолютные размеры (G90) являются модальной командой, то есть она активируется и остаётся включённой, пока не будет использована команда G91 для инкрементального программирования.
Абсолютные координаты с использованием команды G90
Для программирования в абсолютных координатах лучше всего применять команду G90. Это модальный G-код, который активен до тех пор, пока не будет задана команда G91 для относительных измерений.
Пример использования команды G90
G90
Использование команды AC для немодальных абсолютных координат
Если требуется доступ к абсолютным координатам при активном инкрементальном программировании (G91), можно воспользоваться немодальной командой AC. Она позволяет быстро и просто определить абсолютные значения по отдельным осям без необходимости перехода в режим G90.
Команда AC также может быть использована для позиционирования шпинделя (SPOS, SPOSA) или задания параметров интерполяции (I, J, K).
Пример использования команды AC
= AC ()
Пример программы с командой AC
![Команда AC Пример программы](https://cnc-maniac.ru/wp-content/uploads/2021/12/Пример-программы-с-использованием-команды-AC.jpg)
N10 G90 G0 X45 Y60 Z2 T1 S2000 M3 ; Активен абсолютный режим
N20 G1 Z-5 F500; Круговая интерполяция с центром в абсолютных координатах
N30 G2 X20 Y35 I=AC(45) J=AC(35)
N40 G0 Z2
N50 M30
Эта программа показывает использование команды AC для получения абсолютных координат центра окружности в инкрементальном режиме.
Заключение
В данной статье рассмотрены основные примеры применения команд Siemens Sinumerik, таких как DIAMOF, DIAMON, DIAM90, а также команда для задания углов ANG = и работа с абсолютными размерами с использованием G90 и немодальной команды AC. Эти команды позволяют гибко и точно управлять обработкой деталей на станках с ЧПУ, обеспечивая как относительное, так и абсолютное программирование координат в зависимости от задач оператора. Команда AC предоставляет дополнительную возможность интеграции абсолютных координат в инкрементальные программы, что упрощает работу с различными типами обработки и позволяет повышать эффективность работы оператора.
Использование этих функций способствует улучшению точности и сокращению времени обработки за счет гибкости и простоты программирования, что делает их полезными инструментами в арсенале оператора станков с ЧПУ.