[SUBROUTINE] name = Ending type = Ending icon = icons/lathe-facing.png image = images/lathe-facing.png help = Торцевание детали. order = face_Z0 face_X0 face_safe face_Z1 face_X1 face_rdepth face_rough_feed face_allowance face_pdepth face_fin_feed [PARAM_face_safe] name = Safe distance type = float icon = icons/line.png image = images/line.png tool_tip = Безопасное расстояние value = 2 [PARAM_face_Z1] name = Z1 type = float icon = icons/line.png image = images/line.png tool_tip = Конечная координата Z value = 0 [PARAM_face_Z0] name = Z0 type = float icon = icons/line.png image = images/line.png tool_tip = Исходная координата Z value = 3 [PARAM_face_rdepth] name = rdepth type = float icon = icons/line.png image = images/line.png tool_tip = Черновая глубина реза value = 0.7 [PARAM_face_fdepth] name = fdepth type = float icon = icons/line.png image = images/line.png tool_tip = Чистовая глубина реза value = 0.5 [PARAM_face_allowance] name = Finishing allowance type = float icon = icons/line.png image = images/line.png tool_tip = Припуск на чистовую обработку value = 0.2 [PARAM_face_X0] name = X start type = float icon = icons/line.png image = images/line.png tool_tip = Исходный диаметр value = 11 [PARAM_face_X1] name = X finish type = float icon = icons/line.png image = images/line.png tool_tip = Конечный диаметр value = 0 [PARAM_face_fin_feed] name = Finishing feed type = float icon = icons/line.png image = images/line.png tool_tip = Подача резанья при чистовой обработке value = 100 [PARAM_face_rough_feed] name = Roughing feed type = float icon = icons/line.png image = images/line.png tool_tip = Подача резанья при черновой обработке value = 300 [DEFINITIONS] content = [CALL] content = # = #param_face_fdepth ; Глубина реза при чистовой обработке # = #param_face_allowance ; Припуск на чистовую обработку # = #param_face_z1 ; Чистовая конечная координата по Z # = #param_face_z0 ; Начальная координата по Z # = [# + #] ; Черновая конечная по Z # = #param_face_rough_feed ; Подача при черновой обработке # = #param_face_fin_feed ; Подача при чистовой обработке # = #param_face_rdepth ; Глубина реза при черновой обработке # = #param_face_safe ; Безопасное расстояние ; Расчет толщины торца # = ABS[ #param_face_x1 - #param_face_x0 + #] ; Ширина торца ; Расчет колличества проходов при черновой обработке # = ABS[ # + # - # ] # = [[# - [# mod #]] / #] ; Колличество проходов при черновой обработке # = 0 G90 G0 X[#param_face_x0 + #] Z[#param_face_z0 + #] G91 G1 Z-[#] F[#] X-[#] Z[#] G0 X[#] o100 do G91 G1 Z-[# + #] F[#] X-[#] Z[#] G0 X[#] # = [#+1] o100 while [# LT [#]] ; Последний черновой проход G90 G1 Z[# + # ] F[#] G91 G1 X-[#] F[#] Z[#] G0 X[#] ; Чистовой проход o101 if [# GT #] (print,Error: Finish cut leather then allowance for finishing!) o101 endif (print,Info: Finishing!) G90 G1 Z[#] F[#] G91 G1 X-[#] F[#] Z[#] G0 X[#] [BEFORE] content = [AFTER] content =