Arduino CNC 绘图仪(绘图机)
组件和用品
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
| × | 1 | ||||
![]() |
| × | 1 |
必要的工具和机器
![]() |
| |||
![]() |
|
应用和在线服务
![]() |
| |||
| ||||
![]() |
| |||
|
关于这个项目


大家好!我希望你已经喜欢我之前的教程“如何制作你自己的 Arduino 培训平台”,并且你已经准备好接受一个新平台了,像往常一样,我制作了这个教程来指导你一步一步地制作这种超级惊人的低成本电子项目这是“CNC绘图机”,也称为“CNC绘图”或“Arduino CNC机器”。 ^_^
我在网上找到了很多教程来解释如何制作 CNC 绘图仪,但是由于缺乏信息,制作这样的机器有点困难,这就是我决定开始这个教程的原因,我将向您展示详细介绍如何轻松制作自己的绘图机 .
拿到我们从JLCPCB订购的定制PCB后,这个项目非常方便。
改善我们机器的外观,并且本指南中有足够的文档和代码让您轻松创建您的机器。我们只用了 5 天就完成了这个项目,只用了三天就可以获得所有需要的零件并完成硬件制作和组装,然后用 2 天时间准备代码并开始一些调整。开始之前先来看看吧。
您将从本教程中学到什么:
- 根据项目的功能为您的项目选择正确的硬件
- 准备电路图以连接所有选定的组件
- 组装所有项目部件(机械和电子组装)
- 机器平衡的缩放
- 开始操纵系统
第 1 步:什么是绘图机?
由于我已经为初学者制作了这个教程,所以我应该首先详细解释绘图机是什么以及它是如何工作的!
正如维基百科中定义的那样,CNC 代表计算机数字控制,这是一种计算机控制结构的机器,它通过从计算机发送的串行端口接收指令,并根据接收到的指令移动其执行器。这些机器大多是基于步进电机的机器,其中包括主题轴上的步进电机。
另一个提到“轴”的词,是的,每台数控机床都有定义的轴数,由计算机程序控制。

另一个提到“轴”的词,是的,每台数控机床都有定义的轴数,由计算机程序控制。

在我们的例子中,我们制作的 CNC 绘图仪是一台双轴机器“图 1 中的详细信息”,其轴上有一个小型步进电机“图 2 中的步进器”,这些步进器将移动活动托盘并使其在双轴中移动计划使用绘图笔创建绘图设计。笔将使用我们结构中的第三个引擎来保持和释放,这将是一个伺服电机。
第 2 步:步进电机是主要执行器
步进电机或步进电机或步进电机是一种无刷直流电机,可将完整旋转分为多个相等的步长。然后可以命令电机的位置在这些步骤之一移动和保持,而无需任何位置传感器用于反馈(开环控制器),只要电机在扭矩和速度方面根据应用仔细调整大小。第一节,从哪里获得我们项目的步进电机,很简单,只需拿起一个旧的 DVD 阅读器,就像 以下 图片。

我有两个 2 美元,你需要做的就是把它拆开来取出步进电机和它的支架,如下图所示,我们需要两个。



从 DVD 阅读器中取出电机后,您应该通过识别电机线圈使它们准备好使用 结束。每个步进电机都有两个线圈,您可以使用万用表通过测量电机引脚连接器之间的电阻来识别线圈末端“如下图所示 "并且对于每个线圈,测量值应约为 10 欧姆。

识别电机线圈后,只需焊接一些电线即可通过它们控制电机“见下图”


第 3 步:电路图

我们机器的核心是 arduino Nano 开发板将根据从计算机接收到的指令来控制每个执行器的运动,为了控制这些步进电机,我们需要一个步进电机驱动器来控制每个执行器的速度和方向。
在我们的例子中,我们将使用 L293D H 桥电机驱动器 “参见图 3”,它将通过其输入接收从 arduino 发送的电机命令,并使用其输出控制步进电机。

为了将所有需要的部件与我们的 Arduino 板连接在一起,我制作了显示第一张图片的电路图,您应该对步进电机和伺服电机进行相同的连接。
下一张图片通过原理图详细解释了电路图以及 Arduino 和其他组件之间的链接应该如何,确保您可以根据需要调整这些链接。

第 4 步:PCB 制作(由 JLCPCB 生产)
关于JLCPCB
JLCPCB(深圳市嘉力创电子科技发展有限公司)是中国最大的PCB样机企业,是一家专业从事PCB快速样机和小批量PCB生产的高科技制造商。凭借10多年的PCB制造经验,JLCPCB在国内外拥有超过200, 000家客户,每天拥有超过8, 000个PCB原型制作和小批量PCB生产的在线订单。年生产能力为 200, 000 平方米。适用于各种 1 层、2 层或多层 PCB。 JLC是一家规模大、设备精良、管理严格、质量上乘的PCB专业制造商。

会说话的电子产品
制作电路图后,我将其转换为 PCB 设计以生产它“见下图”,为了生产 PCB,我选择了 JLCPCB 最好的 PCB 供应商和最便宜的 PCB 供应商来订购我的电路。有了它们可靠的平台,我需要做的就是点击一些简单的点击来上传 gerber 文件并设置一些参数,如 PCB 厚度颜色和数量,然后我只花了 2 美元就在五天后得到了我的 PCB。




相关下载文件
您可以从此处获取电路 (PDF) 文件。正如您在上面的图片中看到的,PCB 制造得非常好,因为它显示了相关原理图的“下一张图片”。
而且我的 PCB 设计与我们为主板制作的相同,所有标签和徽标都在那里指导我在焊接步骤中。如果您想为相同的电路设计下订单,您也可以从这里下载该电路的 Gerber 文件。



第 5 步:为您的机器设计一个支架!

为了给我们的机器带来更好的外观,我决定使用 Solidworks 软件设计这三个部分“见图 1” ,这些部件将帮助我们将 DVD 阅读器组装在一起,在 FabLab Tunisia 的朋友的帮助下,我已经获得了这些部件的 DXF 文件 我已经使用数控激光切割机生产了设计的零件,我们使用了 5 毫米 MDF 木材来生产这些零件。

另一个设计是绘图笔架,我通过 3D 打印过程获得了它。您可以从下面的链接下载所有相关文件。
第 6 步:配料

现在让我们回顾一下这个项目所需的必要组件,我使用的是上面提到的 Arduino Nano,它将成为我们机器的核心。该项目还包括两个带有驱动器 IC 的步进电机和一个伺服电机。您会在下面找到一些适合商品的推荐亚马逊链接
为了创建此类项目,我们需要:
- 我们从 JLCPCB 订购的 PCB
- Arduino Nano:https://amzn.to/2SDSTgO
- 2 x L293D H 桥驱动程序:https://amzn.to/2C6PWyb
- 2 x IC 插座 DIP 16 针:https://amzn.to/2RAyCvu
- 1 x IC 插座 DIP :https://amzn.to/2SPXMTW
- SIL 和螺丝接头连接器:https://amzn.to/2Ril1JC
- 1 x 伺服电机 SG90 :https://amzn.to/2VEsAZF
- 2 个 DVD 阅读器:
- 3D 打印部件
- 激光切割部件
- 一些用于组装的螺丝
- 我们从 JLCPCB 或任何其他绘图笔作为礼物收到的笔
步骤 7:电子组装和测试

我们现在转到所有电子元件的焊接组装。像往常一样,您会在顶部丝绸层上找到每个组件的标签,表明其在电路板上的位置,这样您就可以 100% 确保不会出现任何焊接错误。

做一些测试
焊接电子元件“见第一张图片”后,我将 DVD 阅读器拧到 X 轴板上,我对主板做了同样的事情,然后将电机线放入螺丝头中,使用步进电机测试进行简单测试代码“见下一张图片”。如您所见,步进器移动良好,我们走在正确的道路上。

/*********************************************** ****************************************************** ****************************************************** ************************* * - 作者:BELKHIR Mohamed * * - 职业:(电气工程师)MEGA DAS 所有者 * * - 主要用途:工业应用 * * - 版权所有 (c) 持有人:保留所有权利 ** - 许可证:BSD 2-Clause 许可证 * * - 日期:20/04/2017 ** *************** ****************************************************** ****************************************************** ****************************************************** **//*********************************** 笔记 ********** ****************************//// 允许以源代码和二进制形式重新分发和使用,无论是否修改// 提供满足以下条件:// * 源代码的重新分发必须保留上述版权声明、此// 条件列表和以下免责声明。// * 二进制形式的重新分发必须复制上述版权声明,// 文档中的此条件列表和以下免责声明// 和/或随分发提供的其他材料。// 本软件由版权持有者和贡献者“按原样”提供// 和任何明示或默示保证,包括但不限于//对特定用途的适销性和适用性的默示保证。 █░░░█░░░░░░░░░░▄▄░██░█ █░▀▀█▀▀░▄░░▄▀░▄▀░▄▀░▄▀░▄▀░▄▀█ ░░▄▄▄▄▄░░██░▀▀░█ ─▀▄▄▄▄▄▀─────▀▄▄▄▄▄▄▀*./h步进电机库 const int stepPerRotation =20; // 轮流的步数。 CD/DVD 的标准值// 表示 X 轴步进电机 Pins Stepper myStepperX(stepPerRotation, 8,9,10,11);无效设置(){myStepperX.setSpeed(100); // 步进电机速度myStepperX.step(100);delay(1000);myStepperX.step(-100); delay(1000);}void loop() {}
第 8 步:组装机械零件
我们通过将第二个步进电机拧到 Y 轴平台上来继续我们的结构的组装“见下图”。

准备好 Y 轴后,您将准备好两个轴来创建我们在第一步“查看接下来的两张图片”中谈到的双轴计划。您需要做的就是将两个轴置于 90°


笔筒的制作
我们通过将小斧头放入弹簧中以固定 3D 打印笔架来准备笔架,然后我们将伺服电机拧到其位置“见图 4”,笔架已准备就绪,因此我们将其粘在笔架上Y 轴使用一些热胶或任何其他方式使其能够按照步进电机的步骤在 Y 轴上滑动“见图 5”,然后我们将我们的活动平台粘在 X 轴的支架上“见图 6”,我们完成了将引擎电线拧到板上的连接器上。经过一番安排,我们已经为“见图7”的动作做好了机械设计。




第 9 步:软件部分

转到软件部分,我们将结合三个软件来激活机器,我在第一张图中做了一个简短的描述,我们将使用 Inkscape 软件进行设计,该软件生成我们机器所需的 gcode 文件,当然为了理解gcode指令机器应该有自己的代码,我们将使用Arduino IDE软件上传,最后一部分是如何将机器代码链接到gcode文件,这是由处理软件完成的。
第一步是上传arduino board scketch,你可以从github上发布的链接下载,不要忘记根据你的shcematic更新步进电机引脚。
准备 Gcode 'Inkscape'
然后我们转到 Inkscape 并调整一些参数“看下两张图片”,例如纸框和单位。


我们准备好我们的设计并将其保存为 MakerBat unicon 格式“查看接下来的两张图片”,如果此格式在您的 Inkscape 版本中不可用,您可以放置一个附加组件来拥有它,一旦您点击(保存)一个新窗口会出现 Gcode 文件参数调整。


你需要做的就是按照和我们一样的调整,一切都会好起来的,只要按照“接下来的三张图片”然后你这样设置这些参数,你就有了你的 gCode 文件。



将机器链接到 Gcode 文件“处理 3”
转向处理软件,有点像Arduino IDE'看下图'

因此,您应该打开“CNC 程序”文件,您可以从 Github 上的同一存储库下载该文件,然后运行它“查看接下来的两张图片”。


将出现第二个窗口,您需要按后一个 p 在你的键盘上选择机器的COM端口'看下一张图片',然后按后面的g 选择需要的gcode文件,选择后机器会直接开始绘图。

第 10 步:测试和结果
现在是时候进行一些测试了,一旦上传了 Gcode 文件,机器就会开始绘图,我真的很喜欢 LED 闪烁,它显示了发送到每个步进电机的序列。

设计做得非常好,你可以看到这个项目很棒而且很容易制作,





不要忘记观看我们之前的项目,即“如何制作自己的 Arduino 培训平台。”并订阅我们的 YouTube 频道以获取更多精彩视频。
最后一件事,确保你每天都在做电子产品。
它是来自 MEGA DAS 的 BEE MB。下次见!
代码
CNC_Plotter所有需要的软件
在这个仓库中你会找到我用来完成这个项目的所有文件 https://github.com/BEEMB/CNC_Plotter定制零件和外壳
STL 和 DXF 文件
在此链接中找到制作激光切割零件和 3D 打印零件所需的所有文件,请访问 thingiverse.com示意图
您将在此文件中找到我们项目的电路图(PDF 格式)和相关 PCB 的 Gerber 文件 schamatic_Z2mcsRwq7L.rar制造工艺