创建账户即可获得 100 个免费积分!注册时请输入代码 PIXEL100。

PixelLines
服务
线稿矢量化SVG
线稿矢量化
Contour VectorizationSVGDXF
Contour Vectorization
Centerline VectorizationSVGDXF
Centerline Vectorization
照片转 SVG 矢量化SVG
照片转 SVG 矢量化
照片转 SVG Manual ProSVGPNG
照片转 SVG Manual Pro
SVG to DXFSVG→DXFDXF
SVG to DXF
画廊定价API
工作空间
  1. 首页/
  2. 指南与资源/
  3. G-Code CNC、激光雕刻机和绘图仪指南

完整的 G-Code 指南:从初学者到专业人士

G-Code 是什么、机器如何使用它以及完整的生产流程 — 从 SVG 和光栅图像到用于笔式绘图仪、激光雕刻机、3D 打印机和 CNC 铣床的机器就绪文件。

G-Code是什么?

G-Code(几何代码)是驱动 CNC 机器的纯文本语言。每个文件(通常为.gcode、.nc 或.cnc)都是一系列指令,告诉机器移动到哪里、多快以及何时激活其工具。各行从上到下执行,一次一行。

将您的设计视为蓝图,将 G-Code 视为路线导航。 3D 打印机无法处理 JPG。笔式绘图仪不知道字母“A”是什么样子。 G-Code 通过将任何形状分解为基本运动(直线、圆弧和工具开/关命令)来解决这个问题,任何运动控制器都可以可靠地执行这些运动。

该标准可以追溯到 20 世纪 50 年代的 MIT,于 1963 年正式命名为 RS-274,并于 1982 年作为 ISO 6983 在国际上发布。尽管已经存在了很长时间,G-Code 仍然是制造领域的通用语言——从业余爱好者桌面打印机到工业五轴铣床。

完整的 SVG 至 G-code 管道图
完整的 SVG 到 G-code 管道
机器就绪检查清单图
机器就绪检查

G-Code用在哪里?

  • 笔式绘图仪(AxiDraw、HP 7475A、DIY GRBL):在纸上移动物理笔以复制矢量艺术品 - 对于艺术家和创客来说,这是 G-Code 最容易访问的入口点之一。
  • 激光雕刻机和切割机:在调节功率的同时控制光束,将图像刻录到木材上或从丙烯酸树脂上切割形状。
  • FDM 3D 打印机(Prusa、Creality、Bambu Lab):在送丝时在 X、Y、Z 方向上协调打印头,逐层构建物体。
  • CNC 铣刀和铣刀:引导旋转切削刀具穿过材料进行雕刻、型腔加工和仿形加工。
  • CNC 车床、等离子切割机、水刀和线切割机床:均使用 G-Code 或相近衍生产品。

G-Code 文件的剖析

每一行(称为块)都是一个完整的指令。机器会记住其行间状态 - 第 10 行设置的进给率在第 200 行保持活动状态,除非您更改它。这称为模态状态。

这是一个绘制 50×50mm 正方形的笔式绘图仪程序:

G21 ; millimeters

G90;绝对定位

G0 Z5.0 ; lift pen

G0 X0 Y0 ; move to origin

M3 S1000 ; pen down

G1 X50.0 Y0 F2000

G1 X50.0 Y50.0

G1 X0 Y50.0

G1 X0 Y0

M5 ; pen up

M2 ; end

分解G1 X50.0 Y25.3 F1500:G1 = 画一条直线,X50.0 Y25.3 = 目的地,F1500 = 1500 mm/min。请注意,G1 仅出现一次 - 每个后续坐标线都会自动重复使用它,直到您写入 G0 或其他运动命令。分号后面的任何内容都是注释,被机器忽略。

基本 G-Code 命令

这些命令几乎适用于所有固件 - 从业余爱好者 GRBL 到工业 Fanuc。

  • G0 — 快速移动:以机器允许的速度重新定位。切勿在激光或主轴处于活动状态时使用。
  • G1 — 线性移动:以设定的进给率 (F) 绘制或切割直线。所有 CNC 工作的主要命令。
  • G2 / G3 — 顺时针/逆时针圆弧:使用 I/J 中心偏移或 R 半径在单个命令中生成平滑曲线。一个 G2/G3 取代了数十个微小的 G1 段。
  • G4 — 停留:暂停设定时间。 ⚠ P 单位不同:GRBL = 秒(G4 P1.5 = 1.5s),Marlin = 毫秒(G4 P1500 = 1.5s)。
  • G20 / G21 — 英寸/毫米单位。始终将其设置在每个文件的开头。
  • G28 — 所有轴归位。行为因固件而异——使用前务必进行验证。
  • G90 / G91 — 绝对/相对定位。默认为G90; G91 使每个坐标都相对于当前位置。
  • G92 — 将当前位置设置为原点,不移动。用于定义工作中的工作原点。
  • M3 S[value] — 工具打开:发射激光、旋转主轴或降低笔伺服系统。 S 控制功率、RPM 或伺服角度。
  • M5 — 工具关闭。始终包含在任何快速移动之前。
  • M104 / M109 — 设置热端温度(3D 打印)。 M109 等待达到目标后再继续。
  • M140 / M190 — 设置床温度(3D 打印)。 M190 等待 — 在打印开始之前使用。
  • F——进给率,单位为毫米/分钟。模态:持续存在,直到您更改它。
  • S — 功率或速度:激光功率(GRBL 上为 0–1000)、主轴 RPM 或伺服角度。
  • E — 挤出机灯丝距离(仅限 3D 打印)。
  • I、J — 圆弧中心距当前位置的偏移量,与 G2 和 G3 一起使用。
G4 停留:秒与毫秒

GRBL 使用秒 — G4 P1.5 暂停 1.5 秒。 Marlin 使用毫秒 — G4 P1500 是相同的暂停。使用错误的设备意味着您的机器几乎不会暂停或冻结几分钟。请务必检查您的固件文档。

工作流程 1:笔式绘图仪

  1. 1

    矢量软件设计

    绘图仪只能理解路径,不能理解像素、填充或原始文本。使用 Inkscape、Illustrator 或 Affinity Designer 创建 SVG 笔划路径。将所有文本转换为轮廓。删除填充、位图和效果——转换器会默默地忽略它们。

  2. 2

    优化SVG

    合并重复的路径(笔将跟踪同一条线两次),简化密集节点,并将文档尺寸设置为毫米(而不是像素),以避免以后出现 DPI 缩放问题。

  3. 3

    转换为 G-Code

    转换器将每个路径转换为 G1 移动,并在断开的笔划之间插入 M3/M5 提笔命令。最重要的设置是路径排序——绘制笔画的顺序。糟糕的排序会让笔在页面上蜿蜒数千次。对于密集的艺术品,最近邻排序可以将行进时间缩短 50% 或更多。

  4. 4

    通过 G-Code 发送器发送

    通过 Universal Gcode Sender (UGS) 或 bCNC 将文件流式传输到 GRBL 固件。发送者将线路一一传递; GRBL 将每个脉冲转换为步进电机脉冲。

工作流程 2:激光雕刻机/切割机

  1. 1

    选择您的模式:矢量或光栅

    矢量模式以恒定功率追踪路径 - 用它来切割轮廓和雕刻线。光栅模式像打印机一样来回扫描,逐个像素地改变功率 - 将其用于照片和阴影填充。单个作业可以在不同的层上使用两种模式。

  2. 2

    使用激光设置生成 G-Code

    LightBurn 或 LaserGRBL 等工具输出 M3 S[value] 来发射激光,并输出 M5 来停止激光。在光栅模式下,每条 G1 线上的 S 值都会发生变化,从而再现灰度渐变。为此,GRBL 必须在激光模式下编译 - 它禁用速度斜坡并启用即时功率响应。

  3. 3

    首先在废品上进行测试

    功率和速度因材料而异。在开始实际工作之前,始终对相同材料进行小功率/速度网格测试。

激光和 CNC 安全

激光:佩戴适合您波长的安全眼镜(CO2 = 10,600nm;二极管雕刻机 ≈ 450nm - 这些需要不同的眼镜)。确保通风——雕刻过程中几乎所有材料都会产生有毒烟雾。切勿让正在运行的激光器无人看管。 CNC:在运行主轴之前夹紧工件 - 未固定的工件可能会高速抛出。在开始之前了解紧急停止情况。

工作流程 3:3D 打印

  1. 1

    建模并导出为 STL 或 STEP

    使用 Fusion 360、Blender、FreeCAD 或类似工具进行设计。 STL 为标准交换格式; STEP 为工程零件提供更精确的几何形状。

  2. 2

    切片成层

    切片器(PrusaSlicer、Cura、Bambu Studio)将模型切割为 0.1–0.3mm 水平层,并计算刀具路径、支撑、填充和桥梁。典型的移动类似于 G1 X42.5 Y88.3 E0.0234 F4500 — 移动头部,同时挤出 0.0234mm 的细丝。切片机还插入 M109 和 M190 以在打印开始之前加热喷嘴和床。

  3. 3

    通过SD卡或网络发送

    Marlin、Klipper 或 RepRapFirmware 执行该文件。 Klipper 将计算卸载到 Raspberry Pi 并支持输入整形 - 它通过加速度计测量帧共振并将其从运动命令中过滤出来,从而减少振铃伪影并实现更高的打印速度。

工作流程 4:CNC 加工

  1. 1

    CAD 模型

    使用 Fusion 360、SolidWorks 或 FreeCAD。加工零件要求公差为0.01–0.05mm,因此模型质量直接决定零件质量。

  2. 2

    在 CAM 中定义刀具路径

    CAM 软件(Fusion 360 CAM、VCarve、Mastercam)可让您指定刀具、切削策略(自适应清除、轮廓、型腔加工)、切削深度、主轴转速和进给率。目标是在不损坏钻头或燃烧材料的情况下实现有效的工具接合。

  3. 3

    控制器的后处理

    每台工业 CNC 机器都有自己的方言 - Fanuc、Siemens Sinumerik、Heidenhain、Haas。 CAM 软件内的后处理器可将通用刀具路径转换为机器所需的精确语法。使用错误的后处理器不仅会产生不良零件,还会使机器撞上工件,损坏工具并造成安全隐患。

SVG 到 G-Code:实际发生的情况

SVG 路径使用 Bézier 曲线、圆弧和直线。 G1 只能绘制直线,因此转换器必须通过两种方式弥补差距:

刻面将曲线分成许多细小的直线段。更平滑的曲线需要更短的段,这意味着更大的文件,并且当机器的命令缓冲区无法跟上时可能会出现运动卡顿。

圆弧拟合更加智能:它会检测一系列短线段何时共同形成一个圆,并用单个 G2 或 G3 命令替换整个组。需要 360 条 G1 线的圆变成一条 G-Code 线。文件收缩高达 90%,运动非常平稳,并且机器在通过弧线时保持连续的速度。并非所有 GRBL 版本都支持 G2/G3 — 在启用之前进行检查。

错误的 SVG DPI = 输出尺寸错误

Illustrator 出口为 72 DPI。 Inkscape 在 v0.92 之前使用 90 DPI。现代工具使用 96 DPI。如果您的转换器假定为 96 DPI,但您的文件来自 Illustrator,则每个尺寸都大 33% — 100mm 形状图位于 133mm。修复:将转换器的 DPI 设置与源应用程序相匹配,或者更好的是,将 SVG 文档尺寸设置为毫米,以使 DPI 完全无关。

G-Code 方言:为什么一个文件不适合所有机器

核心运动命令(G0、G1、G2、G3)在任何地方都适用。其他一切——启动顺序、工具更改、注释语法——因固件系列而异。在专业的 CNC 机器上使用错误的控制器运行 G-Code 不仅会产生错误的输出,还会导致工件快速碰撞。

  • GRBL:爱好者笔式绘图仪、激光雕刻机和小型 CNC 路由器的主要固件。基于Arduino,受到转换器和CAM工具的广泛支持。
  • Marlin:FDM 3D打印机占主导地位。在标准运动命令之上添加挤出机控制、温度 M 代码和床调平。
  • Klipper:在 Raspberry Pi 上运行的现代 3D 打印机固件。实现输入整形和更高的打印速度,而这在使用相同硬件的 Marlin 上是无法实现的。
  • Smoothieware:适用于中档激光雕刻机和 CNC 的 32 位 ARM 固件 — 比基于 Arduino 的 GRBL 具有更多的计算空间。
  • Fanuc:全球占主导地位的工业CNC控制器。包括固定循环 (G81–G89) 和宏编程。
  • 西门子Sinumerik / Heidenhain / Haas:欧洲和美国工业控制器有自己的方言。 Fanuc 后处理器无法在 Sinumerik 机器上正确运行。

将照片转换为可绘制路径

照片仅包含像素,没有路径数据。在对照片进行绘图或矢量雕刻之前,必须将其转换为 SVG。常见方法:

  • 线条艺术追踪:将主体的轮廓和结构边缘提取为 SVG 路径。最适合轮廓清晰的徽标、肖像和插图。
  • 阴影线/交叉阴影线:将图像亮度映射到线条密度 - 较暗的区域会获得更紧密的线条。结果唤起了传统的雕刻和精美的情节。
  • 点画:将亮度映射到点密度。每个点都是简短的笔触或激光停留——类似于点画插图。
  • 轮廓映射:将亮度视为高程,在亮度阈值处绘制同心线。从照片中产生流畅、有机的结果。
  • 算法风格(Voronoi、流场、波浪图案):通过图像亮度调制的数学变换,用于抽象但可识别的机器绘制艺术。

完整的管道:照片 → SVG → G-Code 和 Pixel2Lines

Pixel2Lines 将您的照片转换为干净、可机用的 SVG,其专业风格专为笔式绘图仪和激光雕刻机而设计 - 线条画、剖面线、点画等。输出路径被构造为离散笔划,最大限度地减少笔抬起和行进时间。

获得 SVG 后,SVG 到 G-Code 服务会生成包含机器配置文件设置、预检检查和预览工件的最终文件。

这个两步管道(通过服务将照片通过 Pixel2Lines 发送到 SVG,通过服务将 SVG 发送到 G-Code)将您从光栅源转换为机器准备的激光或绘图仪文件,而无需手动写入 G-Code。

飞行前检查表

  • 首先进行模拟 - 使用 NCViewer(浏览器,免费)或 CAMotics(桌面,免费)在机器移动之前渲染完整的刀具路径。捕获错误的尺寸、缺失的笔式升降机以及意外的急流。
  • 验证单位 - G20(英寸)或 G21(毫米)必须符合您的预期尺寸。
  • 设置工作原点 — 机器归位,G92 或 WCS 偏移正确放置。
  • 检查 Z 轴间隙 - 提笔或激光关闭高度必须物理地离开工件和任何夹具。
  • 寻找重复的路径——每个轮廓仅一次;重复双刻或双切。
  • 检查进给速度——太快会导致跳过步骤;太慢会浪费时间。
  • 确认 G4 驻留单位 — GRBL 为秒,Marlin 为毫秒。
  • 在安全高度进行试运行 — 验证整个行程范围适合机器的工作区域。
  • 废料测试 - 对于激光和 CNC,在提交最终工件之前始终在废料上切割相同的材料。

常见问题和修复

  • 图纸镜像:SVG Y向下增大; G-Code Y 向上增加。在转换器中启用 Y 轴反转。
  • 输出尺寸错误:DPI 不匹配。 Illustrator = 72,旧 Inkscape = 90,现代工具 = 96。将转换器 DPI 与源应用程序匹配,或以毫米为单位定义 SVG 尺寸。
  • 机器在曲线上卡顿:太多微小的片段溢出了运动缓冲区。启用圆弧拟合、增加线性化公差或降低进给率。
  • 笔拖动且永远不会抬起:M5 命令丢失,或者 Z 间隙太低,无法物理抬起纸张。
  • 工作时间比预期长得多:路径排序不佳。在重新生成 G-Code 之前,使用 vpype 重新排序路径。
  • 机器在启动时移动到错误位置:未设置工作原点。重新归位,点动至预定原点,并在启动前运行 G92 X0 Y0。

我可以手写G-Code吗?

是的——对于简单的形状来说这是一个有用的练习。对于任何复杂的事情,请使用 CAM 软件或专用转换器。

G-Code 在所有机器上都一样吗?

核心运动命令是通用的。启动顺序、工具更换和扩展功能存在显着差异。用于 GRBL 绘图仪的 G-Code 可能需要进行重大更改才能在 Fanuc 铣床上运行 - 并且在工业机器上使用错误的方言可能会导致崩溃。

GRBL是什么?

GRBL 是一款在 Arduino 级微控制器上运行的开源 CNC 固件。它是业余爱好者笔式绘图仪、DIY 激光雕刻机和小型 CNC 路由器的标准。它通过加速感知运动规划器和前瞻缓冲来实现核心 RS-274 标准。

笔绘图应使用什么进给率?

圆珠笔:5000–8000 mm/分钟。毡尖笔或毛笔:2000–4000 mm/分钟。钢笔或玻璃笔尖:1500–3000 mm/分钟。始终先在废纸上进行测试。

G-Code能否在移动过程中连续控制激光功率?

是的。在 GRBL 激光模式下,S 可以在每条 G1 线上发生变化 - 这就是光栅雕刻在单次扫描中再现平滑灰度梯度的方式。

G-Code 和 HPGL 有什么区别?

HPGL(惠普图形语言)由 20 世纪 70 年代至 90 年代的 HP 笔式绘图仪使用。它使用两个字母的命令(PU = 笔向上,PD = 笔向下,PA = 绝对绘图)和绘图仪单位为每毫米 40,而不是毫米或英寸。大多数现代绘图仪工具都可以读取这两种格式。

在运行之前如何模拟 G-Code?

NCViewer (ncviewer.com) 是最快的选项 - 粘贴您的文件,它会立即呈现刀具路径。 CAMotics 模拟 CNC 工作的 3D 材料去除。 Universal Gcode Sender 具有内置路径预览。始终遵循屏幕上的模拟,在安全高度进行物理试运行。

相关指南

笔式绘图仪的工作原理

笔式绘图仪机械结构、运动控制和专业功能可塑造速度、准确性和线条质量。

SVG 笔绘图优化

如何准备 SVG 文件以获得最佳绘图仪输出 - 节点减少、路径合并、图层结构和导出设置。

如何将照片转换为 SVG 线条图

将照片转换为可用于 CNC、激光、乙烯基和钢笔绘图工作流程的 SVG 线条图的分步指南。

使用笔式绘图仪进行剖面线和交叉剖面线

如何从灰度图像生成剖面线图案 - 密度映射、角度变化和交叉剖面线技术。

使用 Pixel2Lines 服务准备 SVG G-Code

上传干净的 SVG,选择激光或绘图仪配置文件,查看预检报告,然后下载带有预览工件的机器配置文件 G-Code。

开通SVG转G-Code服务

想要先清洁或测量您的 SVG?

在浏览器中打开免费的 SVG 编辑器,检查比例、清理路径,并在无需上传文件的情况下导出可直接交付的文件。

评论

请登录或创建账户才能发表评论。

登录或注册

正在加载评论...

专业流程服务


  • 线稿矢量化矢量
  • 照片到 SVG 激光雕刻矢量
  • 照片转 SVG 矢量化矢量
  • 照片转 SVG Manual Pro矢量
  • 移除背景位图
  • SVG to DXF矢量
  • 画廊
  • 定价
  • 联系
  • 关于我们
  • 技术
  • 定制开发

转换工具


  • 文件转换器
  • JPG 转 PNG
  • JPG 转 WebP
  • JPG 转 AVIF
  • PNG 转 JPG
  • PNG 转 AVIF
  • PNG 转 WebP
  • WebP 转 JPG
  • WebP 转 PNG
  • WebP 转 AVIF
  • AVIF 转 JPG
  • AVIF 转 PNG
  • AVIF 转 WebP
  • SVG 转 PNG
  • SVG 转 JPG
  • SVG 转 WebP
  • SVG 转 AVIF
  • SVG 转 PDF高级
  • SVG 转 EPS高级
  • SVG 转 AI高级
  • PDF 转 PNG
  • BMP 转 PNG
  • DXF 转 SVG高级

指南


  • 有用的指南
PixelLines
  • 法律
  • 隐私政策
  • 条款
  • Cookie