picoCTF - RE - speeds and feeds writeup

本文介绍了G-code,一种用于计算机数控(CNC)设备的编程语言,常用于3D打印和其他制造过程。通过分析示例代码,解释了G-code指令如G00、G01等的含义及其在控制设备路径和速度中的作用。通过在线NCviewer,将代码转换为可视化图形,展示了G-code如何创建复杂的3D形状。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这道题太酷了,看到内容是一堆这样的代码:

G17 G21 G40 G90 G64 P0.003 F50
G0Z0.1
G0Z0.1
G0X0.8276Y3.8621
G1Z0.1
G1X0.8276Y-1.9310
G0Z0.1
G0X1.1034Y3.8621
G1Z0.1
G1X1.1034Y-1.9310
G0Z0.1
G0X1.1034Y3.0345
G1Z0.1
G1X1.6552Y3.5862
G1X2.2069Y3.8621
G1X2.7586Y3.8621
G1X3.5862Y3.5862
G1X4.1379Y3.0345
G1X4.4138Y2.2069

看到这些东西我整个人都迷茫了,赶紧看下 hint,说的是 What language does a CNC machine use?

马上 Google 一下,发现这个代码是 G-code,是一种十分常用的 computer numerical control (CNC) programming language,就是数控的编程语言。比如 3D 打印的控制就是用的这种代码。G-code 维基百科上列举了它的常见 code。

比如题目中的代码:

第一行:
G17 G21 G40 G90 G64 P0.003 F50
其中:
G17	XY plane selection
G21	Programming in millimeters (mm)
G40	Tool radius compensation off
G90	Absolute programming. Fixed cycle, simple cycle, for roughing (Z-axis emphasis)
G64	Default cutting mode (cancel exact stop check mode)
P	Serves as parameter address for various G and M codes
F	Defines feed rate

后面的内容:
G0Z0.1
G0X0.8276Y3.8621
G1Z0.1
G1X0.8276Y-1.9310
其中:
G00	Rapid positioning 表示直接定位到目标位置
G01	Linear interpolation 表示直线要绘制到目标位置
X Y Z 分别是坐标信息

因此猜测这个代码 3D 绘制出的内容就是 flag。于是我把代码输出到文件中保存,找个网站上传上去打算画出来看看。我用的是 NC viewer

speeds_and_feeds_flag
哇哦,炫酷!

G-code 例子解析参考:G-code Explained | List of Most Important G-code Commands

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值