klot
МЕСТНЫЙ
- Регистрация
- 01.05.2023
- Сообщения
- 0
- Реакции
- 0
- Баллы
- 20
- Город
- SPB
Всем здравствуйте, прошу помощи.
у меня есть Gcode такого типа
и таких точек около 40 000 и где-то сломалось сверло,(у меня на глазах) обломок торчит, я жму паузу, станок работает на FluidNC
в консоли FluidNC такие строки
надо сменить сверло не потерять ноль и запустить работу с точки поломки, в консоли координаты на которой сломалось сверло нет
и вот я например рассчитываю координаты для этой строки:
Таким образом, координаты последней обработанной точки в рабочих координатах (WPos) составляют:
𝑋 WPos = −18.192
𝑌 WPos = 46.558
что визуально похоже на правду
Но такой точки в моём Gcode нет!
пробовал скрипт на питоне написать, с подбором ближайших координат, но понимаю, что изобретаю колесо
вероятно тут есть знающие люди, которые подскажут как можно узнать с какой точки перезапустить Gcode,
удалив из него уже сделанную работу.
у меня есть Gcode такого типа
G1 F1000 Z1.0
G0 X-162.4 Y244.65
G1 F1000 Z-2.0
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.5
G1 F1000 Z1.0
G0 X-161.0 Y244.65
G1 F1000 Z-2.0
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.5
G1 F1000 Z1.0
G0 X-159.6 Y244.65
G1 F1000 Z-2.0
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.5
G1 F1000 Z1.0
G0 X-159.6 Y242.55
G1 F1000 Z-2.0
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.5
G1 F1000 Z1.0
G0 X-162.4 Y242.55
G0 X-162.4 Y244.65
G1 F1000 Z-2.0
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.5
G1 F1000 Z1.0
G0 X-161.0 Y244.65
G1 F1000 Z-2.0
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.5
G1 F1000 Z1.0
G0 X-159.6 Y244.65
G1 F1000 Z-2.0
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.5
G1 F1000 Z1.0
G0 X-159.6 Y242.55
G1 F1000 Z-2.0
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-2.5
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.0
G1 F1000 Z1.0
G1 F1000 Z-3.5
G1 F1000 Z1.0
G0 X-162.4 Y242.55
и таких точек около 40 000 и где-то сломалось сверло,(у меня на глазах) обломок торчит, я жму паузу, станок работает на FluidNC
в консоли FluidNC такие строки
<Run|MPos:286.998,330.356,-4.767|FS:600,0|WCO:290.500,276.800,-1.500|SD:39.57,/sd/opt777.ngc>
<Run|MPos:286.998,330.356,-1.340|FS:243,0|Ov:100,100,100|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.704,329.062,-0.500|FS:288,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-2.711|FS:225,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-2.973|FS:720,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-0.512|FS:240,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-2.662|FS:387,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-3.791|FS:600,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-0.832|FS:27,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-1.569|FS:657,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-4.000|FS:330,0|WCO:290.500,276.800,-1.500|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-1.596|FS:297,0|Ov:100,100,100|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-0.822|FS:660,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-4.074|FS:77,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-3.576|FS:797,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:286.998,330.356,-1.340|FS:243,0|Ov:100,100,100|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.704,329.062,-0.500|FS:288,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-2.711|FS:225,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-2.973|FS:720,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-0.512|FS:240,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-2.662|FS:387,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-3.791|FS:600,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-0.832|FS:27,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-1.569|FS:657,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-4.000|FS:330,0|WCO:290.500,276.800,-1.500|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-1.596|FS:297,0|Ov:100,100,100|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-0.822|FS:660,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-4.074|FS:77,0|SD:39.57,/sd/opt777.ngc>
<Run|MPos:285.591,328.949,-3.576|FS:797,0|SD:39.57,/sd/opt777.ngc>
надо сменить сверло не потерять ноль и запустить работу с точки поломки, в консоли координаты на которой сломалось сверло нет
и вот я например рассчитываю координаты для этой строки:
<Run|MPos:272.308,323.358,-0.681|FS:570,0|WCO:290.500,276.800,-1.500|SD:39.60,/sd/opt777.ngc>
MPos (Machine Position):
X = 272.308
Y = 323.358
Z = -0.681
WCO (Work Coordinate Offset):
X = 290.500
Y = 276.800
Z = -1.500
Расчёт WPos (Work Position):
𝑋 WPos = 272.308 − 290.500 = −18.192
𝑌 WPos = 323.358 − 276.800 = 46.558
𝑍 WPos = −0.681 −(−1.500) = 0.819
MPos (Machine Position):
X = 272.308
Y = 323.358
Z = -0.681
WCO (Work Coordinate Offset):
X = 290.500
Y = 276.800
Z = -1.500
Расчёт WPos (Work Position):
𝑋 WPos = 272.308 − 290.500 = −18.192
𝑌 WPos = 323.358 − 276.800 = 46.558
𝑍 WPos = −0.681 −(−1.500) = 0.819
Таким образом, координаты последней обработанной точки в рабочих координатах (WPos) составляют:
𝑋 WPos = −18.192
𝑌 WPos = 46.558
что визуально похоже на правду
Но такой точки в моём Gcode нет!
пробовал скрипт на питоне написать, с подбором ближайших координат, но понимаю, что изобретаю колесо
вероятно тут есть знающие люди, которые подскажут как можно узнать с какой точки перезапустить Gcode,
удалив из него уже сделанную работу.