找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 637|回复: 0

Linuxcnc G代码M代码

[复制链接]

72

主题

11

回帖

431

积分

管理员

积分
431
发表于 2025-2-4 19:18:55 | 显示全部楼层 |阅读模式
以下是 LinuxCNC 数控系统中 G代码M代码 的详细介绍,涵盖标准功能及部分扩展特性。LinuxCNC 是一款开源的数控系统,兼容大部分标准 G/M 代码,并支持用户自定义功能。内容基于 LinuxCNC 2.8+ 版本及常见编程规范整理:

一、G代码(准备功能)
G代码控制机床的运动模式、坐标系、刀具补偿等核心功能。
1. 运动控制
  • G00 - 快速定位

    • 格式:G00 X_ Y_ Z_
    • 功能:以机床最大速度移动至目标点,非切削运动。

  • G01 - 直线插补
    • 格式:G01 X_ Y_ Z_ F_
    • 功能:以指定进给速度 F(单位由 G94/G95 决定)沿直线切削。

  • G02/G03 - 圆弧插补
    • 顺时针圆弧(G02) / 逆时针圆弧(G03)
    • 格式:
      • G02 X_ Y_ I_ J_ F_(圆心相对起点偏移量 I, J)
      • G02 X_ Y_ R_ F_(圆弧半径 R,R 正负决定圆弧大小)。

    • 功能:在 G17/G18/G19 指定平面内绘制圆弧。

  • G33 - 螺纹切削
    • 格式:G33 Z_ K_
    • 功能:加工螺纹,K 为螺距(需主轴编码器同步支持)。


2. 坐标系与单位
  • G17/G18/G19 - 平面选择

    • G17(XY平面)、G18(XZ平面)、G19(YZ平面)。

  • G20/G21 - 单位制
    • G20(英制,inch)、G21(公制,mm)。

  • G54~G59.3 - 工件坐标系
    • 格式:G54(默认坐标系)至 G59.3(扩展坐标系)。
    • 功能:调用预存的工件坐标系原点偏移。

  • G90/G91 - 绝对/增量坐标
    • G90(绝对坐标)、G91(增量坐标)。

  • G92 - 临时坐标系偏移
    • 格式:G92 X_ Y_ Z_
    • 功能:将当前点设为新坐标系原点(临时生效)。


3. 刀具补偿
  • G40/G41/G42 - 刀具半径补偿

    • G40(取消补偿)、G41(左补偿)、G42(右补偿)。
    • 格式:G41 D_(D 对应刀具半径补偿值)。

  • G43/G44/G49 - 刀具长度补偿
    • G43 H_(正向补偿)、G44 H_(负向补偿)、G49(取消补偿)。
    • H 为刀具长度补偿号。


4. 固定循环(钻孔/攻丝)
  • G73~G89 - 钻孔循环

    • 常用指令:

      • G81 - 简单钻孔
        G81 X_ Y_ Z_ R_ F_(R 为安全平面,Z 为钻孔深度)。
      • G82 - 钻孔+底部暂停
        格式:G82 X_ Y_ Z_ R_ P_ F_(P 为暂停时间,单位:秒)。
      • G83 - 深孔啄钻
        格式:G83 X_ Y_ Z_ R_ Q_ F_(Q 为每次啄钻深度)。
      • G84 - 刚性攻丝
        格式:G84 X_ Y_ Z_ R_ F_(需主轴编码器同步)。
      • G80 - 取消循环
        结束所有固定循环。

5. 进给速率模式
  • G94 - 每分钟进给

    • F 单位为 mm/min 或 inch/min(默认模式)。

  • G95 - 每转进给
    • F 单位为 mm/rev 或 inch/rev(需主轴编码器)。


6. 高级功能
  • G10 - 参数设置

    • 格式:G10 L_ P_ X_ Y_ Z_
    • 功能:动态设置刀具补偿或坐标系参数(L 指定参数类型)。

  • G61/G64 - 路径控制模式
    • G61(精确停止模式)、G64(连续路径模式,默认)。



二、M代码(辅助功能)
M代码控制机床的辅助操作,如主轴、冷却液、程序流程等。
1. 程序控制
  • M00 - 强制暂停

    • 功能:停止程序,需手动恢复。

  • M01 - 选择性暂停
    • 功能:仅在操作面板“选择性暂停”启用时生效。

  • M02/M30 - 程序结束
    • M02(结束程序)、M30(结束并复位到程序头)。


2. 主轴控制
  • M03/M04/M05 - 主轴启停

    • M03 S_(正转,S 为转速,单位 RPM)、M04(反转)、M05(停止)。

  • M19 - 主轴定向
    • 功能:主轴停止在固定角度(用于换刀)。


3. 冷却液控制
  • M07/M08/M09 - 冷却液开关

    • M07(雾状冷却液)、M08(液状冷却液)、M09(关闭)。

4. 换刀与工具控制
  • M06 - 换刀

    • 格式:M06 T_(T 为刀具号,需与刀库配置匹配)。

5. 子程序与宏
  • M98/M99 - 子程序调用

    • M98 P_(调用子程序,P 后接子程序号或文件名)。
    • M99(子程序结束返回主程序)。

6. 扩展功能
  • M100~M199 - 用户自定义宏

    • 支持通过 HAL(硬件抽象层)或 Python 脚本扩展自定义功能。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|数控爱好者 ( 苏ICP备2025155256号-1 )

GMT+8, 2025-4-11 17:26 , Processed in 0.074409 second(s), 19 queries .

Powered by Linuxcnc X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表