【花雕动手做】尝试手搓基于Arduino GRBL的2D笔式绘图写字机2

使用2020和2040铝型材,组装好的机子(V1版本),是这个样子

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
2、串口之美元符号“$”引出来的G语言

把串口信息简单的翻译了一下:

$$(查看Grbl设置)
$#(查看#参数)
$G(视图解析器状态)
$I(查看构建信息)
$N(查看启动块)
$x=值(保存Grbl设置)
$Nx=行(保存启动块)
$C(检查gcode模式)
$X(关闭报警锁)
H(运行归位循环)
~(循环开始)
! (进料保持)
? (当前状态)
ctrl-x(重置Grbl)

在这里插入图片描述
具体解释,就是关于 Grbl 的一些常用指令如下:

1)查看 Grbl 设置:
$$:查看 Grbl 的设置。
$#:查看参数数量。

2)查看状态和信息:
$G:查看解析器状态。
$I:查看 Grbl 版本信息。
$N:查看启动块(startup blocks)。

3)保存设置和启动块:
$x=value:保存 Grbl 设置,其中 x 是设置的编号,value 是要设置的值。
$Nx=line:保存启动块,其中 N 是块的编号,line 是启动块的内容。

4)其他操作:
$C:检查 G 代码模式。
$X:解除报警锁定。
H:运行归零循环(homing cycle)。
~:开始运行。
!:暂停进给。
?:查看当前状态。
ctrl-x:重置 Grbl。

这些指令可以帮助你在使用 Grbl 控制器时进行设置、查看状态和执行操作。

在这里插入图片描述

串口发送二个美元符号“$$”之后,回复的是:
$0=10 (step pulse, usec)
$1=25 (step idle delay, msec)
$2=0 (step port invert mask:00000000)
$3=0 (dir port invert mask:00000000)
$4=0 (step enable invert, bool)
$5=0 (limit pins invert, bool)
$6=0 (probe pin invert, bool)
$10=3 (status report mask:00000011)
$11=0.010 (junction deviation, mm)
$12=0.002 (arc tolerance, mm)
$13=0 (report inches, bool)
$20=0 (soft limits, bool)
$21=0 (hard limits, bool)
$22=0 (homing cycle, bool)
$23=0 (homing dir invert mask:00000000)
$24=25.000 (homing feed, mm/min)
$25=500.000 (homing seek, mm/min)
$26=250 (homing debounce, msec)
$27=1.000 (homing pull-off, mm)
$100=250.000 (x, step/mm)
$101=250.000 (y, step/mm)
$102=250.000 (z, step/mm)
$110=500.000 (x max rate, mm/min)
$111=500.000 (y max rate, mm/min)
$112=500.000 (z max rate, mm/min)
$120=10.000 (x accel, mm/sec^2)
$121=10.000 (y accel, mm/sec^2)
$122=10.000 (z accel, mm/sec^2)
$130=200.000 (x max travel, mm)
$131=200.000 (y max travel, mm)
$132=200.000 (z max travel, mm)

具体解释如下:
这些代码是用于配置 GRBL(一种开源的嵌入式 CNC 铣床控制器)的参数。每个参数的含义是:

$0:步进脉冲宽度(微秒)。这是控制步进电机的脉冲宽度,影响步进电机的运动精度。
$1:步进空闲延迟(毫秒)。设置步进电机在空闲状态下的延迟时间。
$2 和 $3:步进和方向端口反转掩码。这些参数用于配置步进和方向信号的反转。
$4:步进使能反转(布尔值)。设置步进电机使能信号的反转。
$5:限位引脚反转(布尔值)。配置限位开关的反转。
$6:探测引脚反转(布尔值)。设置探测引脚的反转。
$10:状态报告掩码。配置哪些状态报告应该发送给主机。
$11 和 $12:路径规划参数。分别是连接偏差和圆弧容差。
$13:报告单位(布尔值)。设置是否以英寸报告。
$20 和 $21:软限位和硬限位(布尔值)。配置是否启用软件和硬件限位。
$22:回零循环(布尔值)。设置是否启用回零循环。
$23:回零方向反转掩码。配置回零运动的方向。
$24 和 $25:回零速度。分别是回零移动和搜索速度。
$26:回零去抖时间(毫秒)。设置回零传感器的去抖时间。
$27:回零拉离距离(毫米)。配置回零运动后的拉离距离。
$100、$101 和 $102:步进电机的步进/毫米比率。分别是 X、Y 和 Z 轴的步进/毫米比率。
$110、$111 和 $112:轴的最大速度(毫米/分钟)。分别是 X、Y 和 Z 轴的最大速度。
$120、$121 和 $122:轴的加速度(毫米/秒²)。分别是 X、Y 和 Z 轴的加速度。
$130、$131 和 $132:轴的最大行程(毫米)。分别是 X、Y 和 Z 轴的最大行程。

这些参数可以根据你的具体需求进行调整,以适应你的 CNC 机床。

在这里插入图片描述

3、什么是Arduino GRBL CNC?

Arduino GRBL CNC 是指将Arduino微控制器结合开源固件GRBL,打造而成的一套低成本、高灵活性的计算机数控(CNC)系统。通过编写G代码指令,我们可以控制连接在Arduino上的步进电机,实现对材料的切割、雕刻等加工任务。

简单来说,就是将一个简单的Arduino板子,改造成了一个能够精确控制工具,在材料上进行加工的小型CNC机床。

1)核心概念
Arduino: 一款开源的电子原型平台,基于简单易用的硬件和软件,为用户提供了一个灵活的实验平台。
GRBL: 一款专为Arduino设计的开源G代码解释器。它可以将标准的G代码指令转化为控制步进电机的信号。
G代码: 一套标准化的数字控制指令集,广泛应用于数控机床。通过G代码,我们可以精确地控制机床的运动、速度、位置等。
CNC: 计算机数控的缩写,是一种利用计算机按照事先编制的程序,控制机床进行加工的自动化制造方式。

2)工作原理
编写G代码: 使用CAM软件(如Fusion 360、Blender)或文本编辑器编写G代码指令,描述加工路径和参数。
上传到Arduino: 将编写的G代码通过串口上传到加载了GRBL固件的Arduino。
GRBL解析: GRBL固件逐行解析G代码指令,将其转换为Arduino可以理解的控制信号。
驱动电机: Arduino根据解析后的信号,驱动连接的步进电机,控制工具(如铣刀、激光头)按照G代码指令的路径运动,完成加工任务。

3)优势
成本低廉: 相比商用CNC机床,Arduino GRBL成本更低,适合DIY爱好者和小型工作室。
灵活性高: GRBL固件可定制性强,可以根据不同的应用场景进行调整和扩展。
开源开放: GRBL是一个开源项目,用户可以自由查看、修改和分享代码,社区活跃,资源丰富。
易于学习: Arduino编程相对简单,G代码的语法也比较容易掌握。

4)应用场景
CNC加工: 切割木材、塑料、金属等材料。
3D打印: 控制喷头移动,逐层堆叠材料,形成三维物体。
激光切割: 利用激光切割各种材料。
绘图仪: 控制绘图笔在纸上绘制图形。

5)注意事项
精度: 相比于商用CNC机床,Arduino GRBL的精度可能受到硬件和软件的限制。
稳定性: Arduino的稳定性可能不如工业级控制器,需要进行适当的优化和调试。
学习曲线: 虽然Arduino和G代码相对容易学习,但要熟练掌握并搭建一套完整的CNC系统,仍需要一定的时间和精力。

总结
Arduino GRBL CNC为DIY爱好者提供了一个低成本、高灵活性的CNC解决方案。通过学习G代码编程和Arduino开发,你可以创建属于自己的个性化CNC机床,实现各种创意。

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
「雕爷学编程」Arduino动手做寻迹的实验可以使用TCRT5000红外反射光电开关寻迹传感器模块。这个传感器模块可以通过检测周围的光反射来进行寻迹操作。你可以将这个模块连接到mBot的主控板mCore V1.5的RJ25接口上,因为mBot的主控板兼容Arduino系统,所以你可以使用Arduino编程语言来控制mBot进行寻迹操作。请参考【Arduino】168种传感器模块系列实验中的实验六十六,该实验详细介绍了如何使用TCRT5000红外反射光电开关寻迹传感器模块进行寻迹。祝你成功完成实验!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [【雕爷学编程】Arduino动手做(194)---makeblock mbot 主控板2](https://blog.csdn.net/weixin_41659040/article/details/132141677)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [【雕爷学编程】Arduino动手做(65)---红外寻迹传感器](https://blog.csdn.net/weixin_41659040/article/details/106604080)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

驴友花雕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值