Гравировка произвольного пятизначного номера
Уже встречались посты, как делают варианты произвольной гравировки, решил поделится своим решением.
Простая задача. Нужно гравировать произвольный пятисимвольный номер (00001 - 99999). Требования к отрисовке - не просто обойти символ по контуру, а заштриховать внутри, как карман. Со стойки такую закраску придумывать долго и грустно, поэтому делаем в CAD\CAM системе заготовки и варианты гравировки каждой цифры. Все символы в пределах одного блока, привязка всегда одинакова. Покажу на примере символа 0.
Подчищаем проги от ненужных G-кодов после поста и скидываем на стойку по следующему правилу:
Символ 0 - O5000
Символ 1 - O5001
....
Символ 9 - O5009
Значение номера для гравировки запишем в макропеременную #700, в этом случае значения не пропадут после ресета, M30 и отключения питания.
Начало гравировки зададим в системе координат G54.1 P1
Теперь пишем свою простенькую программу:
%
O7777 (имя программы)
M6T5 (вызов гравера)
G54.1 P1 G90 G0 X0 Y0 S7000 M3 (рабочая система координат G54.1 P1, абсолютный ускоренный сдвиг в нули по X и Y, семь тыщ оборотов по часовой)
G43 H5 G0 Z50. (ускоренный подвод до Z50. с корректором на длину 5)
(немножко побыдлокодим)
#10=FIX[#700/10000] (вычисление смещения для первого символа)
#11=FIX[#700/1000-#10*10] (вычисление смещения для второго символа)
#12=FIX[#700/100-#10*100-#11*10] (вычисление смещения для третьего символа)
#13=FIX[#700/10-#10*1000-#11*100-#12*10] (вычисление смещения для четвертого символа)
#14=FIX[#700-#10*10000-#11*1000-#12*100-#13*10] (вычисление смещения для пятого символа)
#700=#700+1. (следующий номер с шагом 1)
M1 (жми кнопку, Макс)
G52X0.Y0. (смещение начальной точки отрисовки символа)
G65P[5000+#10] (вызов подпрограммы с нужным символом)
G52X3.5Y0. (смещение начальной точки отрисовки символа +3.5 по X)
G65P[5000+#11] (вызов подпрограммы с нужным символом)
G52X7.Y0. (смещение начальной точки отрисовки символа +7 по X)
G65P[5000+#12] (вызов подпрограммы с нужным символом)
G52X10.5Y0. (смещение начальной точки отрисовки символа +10.5 по X)
G65P[5000+#13] (вызов подпрограммы с нужным символом)
G52X14.Y0. (смещение начальной точки отрисовки символа +14 по X)
G65P[5000+#14] (вызов подпрограммы с нужным символом)
M5 (остановка вращения шпинделя)
G0 G91 G28 Z0 (домой в нули по Z)
G0 G91 G28 X0 Y0 (домой в нули по X Y)
G90 (абсолютные координаты)
M30 (стоп)
%
После отработки программы заданный номер гравировки изменится на следующий. От оператора потребуется только ставить детали и жать кнопку.
Лига ЧПУшников
1.8K постов11.5K подписчиков
Правила сообщества
никакой политики