arduino:废旧光驱DIY激光雕刻机(完善中……)

光驱diy画图仪

  1. 硬件清单
    Arduino UNO R3、CNC shield V3、A4988(2个)、Micro Servo 9g、光驱(2个)、12V1A电源适配器、结构件材料(自制)、线材、热熔胶等。

Arduino UNO R3 淘宝上买一个原装的要八九十元、国产的十几元就可以买到,效果是一样;

CNC shield V3 直接买这个扩展板对没基础的maker来说,接线会方便很多,不需要用面包板或洞洞板焊接线。购买时要注意买“跳帽”,这个也不能忘记。
在这里插入图片描述
在这里插入图片描述
Arduino CNC shield原理图:
在这里插入图片描述
A4988 购买时,一般都会配有散热片,给A4988上的芯片散热。

在这里插入图片描述

Micro Servo 9g 这个要注意,常见的有180度和360度两种旋转的舵机,我们要买180度的舵机。
在这里插入图片描述
光驱 买光驱是因为正在光驱上有安装好的微型步进电机、光杆和滑台,我们可以直接用它作为一个方向的运动平台。如果觉得现有的平台很重、很丑,那就需要自己3D打印或切割一些结构件了,会比较麻烦。
在这里插入图片描述

  1. 接线
    a. 微型步进电机焊接
    先将光驱上多余的部分卸掉,然后从微型步进电机的四个焊点焊接引出四根线,方便和控制板连接。
    在这里插入图片描述
    在这里插入图片描述
    b.控制板安装
    在这里插入图片描述
    CNC shield直接扣到Arduino UNO板上。
    将2个A4988扣到X、Y插座上,注意看图中它们的方向。散热片直接贴再芯片上。
    将步进电机引出的四根线连接到A4988旁的引针上。步进电机四个引脚分别是两个绕组的两端,两两相连。我们使用万用表的蜂鸣器测出互相连接的两个引脚。相连的两个引脚接到控制板上相邻的两个针脚上就行。
    舵机的三根线分别是信号线、电源正极和地线。电源正极和地线接到下图左边两个针脚上,信号线接右侧的针脚上。
    在这里插入图片描述

  2. 软件下载
    Grbl固件:Grbl是一款针对Arduino/AVR328芯片的嵌入式G代码编译和运动控制器。将grbl固件上传到arduino UNO中,arduino就可以作为画图仪的控制器了。
    Grbl有不同版本,有控制激光雕刻机,也有控制画图仪的,区别在于画图仪中我们会用到舵机控制笔的运动,而激光雕刻机是控制激光的亮灭。我们用到的是有舵机版本的。
    ArduinoBuilder:用于将grbl固件上传到arduino控制板中。
    微雕管家:这是控制绘图仪的上位机,软件使用非常方便,可以直接匹配相关参数,不需要一一设置。
    下载连接:https://pan.baidu.com/s/1VixCIF4I8rQonRlTvrhn-w

下载好全部软件后,我们先用数据线将控制板和电脑连接,再打开ArduinoBuilder软件

装入下载的.hex文件

点击COM按钮,软件将上传文件到控制板中,软件会提示上传进度,上传结束这个软件的使命就完成了。

微雕管家双击安装包安装就可以了。安装时会提示你将控制板和电脑连接,按照提示操作就可以了。

  1. 成品调试
    双击打开微雕管家软件,将控制板和电脑连接,设备端口有显示就代表软件已经和控制板连接成功。

点击进入设备参数,找到光驱类型的雕刻机,再点击左侧“应用此机器的最佳设置”,右侧的光驱雕刻机参数就设置完成了。下面我们就可以让雕刻机动起来了。

返回位图打印界面,点击X+、X-、Y+、Y-,光驱的步进电机就可以动起来了。

可以控制步进电机运动之后,由于步进电机的电流较大,会出现电机运行时噪声大、过热等现象,可以通过调节A4988上的旋钮减小电流。逆时针调小电流,顺时针增大电流。调节之后可以在电机运行时用手触摸判断是否过热。正常情况电机只是微热,没有噪音。

调节完成之后,我们可以尝试在刀路雕刻中添加图片或文字。点击开始之后,两个光驱上的点击就会开始运转,同时舵机会在有笔画的地方旋转一个角度,我们可以把笔接在舵机上,让舵机控制画笔和纸接触。
最后把光驱和舵机的位置固定(根据你身边有的材料自己DIY一个支架吧,网上可以搜到许多的例子作为参考),一个简单的绘图仪就完成了。

学会了这些,只需要把光驱换成大的步进电机、丝杠和滑轨,控制器和软件不变,一个大型的绘图仪就完成了。

再用激光器替换画笔和舵机,一个激光雕刻机就完成了。

之后,还可以以此为基础制作制作3D打印机哦。

自平衡车资料参考:

  1. https://www.geek-workshop.com/forum.php?mod=viewthread&tid=9879&extra=&authorid=30638&page=1

  2. https://www.arduino.cn/thread-3275-1-1.html

  3. https://www.arduino.cn/forum.php?mod=viewthread&tid=42559

一、硬件

Arduino Uno + CNC Shield V3 + GRBL v1.1固件.

  1. CNC shield直接扣到Arduino UNO板上。

  2. 将2个A4988扣到X、Y插座上,注意看图中它们的方向。散热片直接贴再芯片上。将步进电机引出的四根线连接到A4988旁的引针上。步进电机四个引脚分别是两个绕组的两端,两两相连。我们使用万用表的蜂鸣器测出互相连接的两个引脚。相连的两个引脚接到控制板上相邻的两个针脚上就行。

  3. CD/DVD 机械部件:通常光驱的电机是18度(每圈20步),行程是3毫米。所以当驱动设置在1/32细分时,GRBL的$100参数是(20 * 32) / 3 = 213.33 (步/毫米). 搜索关键词:“DIY光驱丝杆滑台”

2. 软件

2.1. java runtime

下载地址:https://www.java.com/inc/BrowserRedirect1.jsp?locale=zh_CN

2.2. Inkscape

InkScape 下载网址: https://inkscape.org
首先正常安装好软件后,我们还要给它装一个插件,解压MI Inkscape Extension.zip(文尾处直接下载)到inkscape的安装文件夹C:\Program Files (x86)\Inkscape\share\extensions文件夹内

2.2.1 G代码简介以及如何使用Inkscape生成G代码

https://www.norwegiancreations.com/2015/08/an-intro-to-g-code-and-how-to-generate-it-using-inkscape/

2.3 Universal-G-Code-Sender

下载地址:https://github.com/winder/builds/tree/master/UniversalGCodeSender
UGS 下载网址: https://winder.github.io/ugs_website/download/

2.4 SourceRabbit GCode Sender

SourceRabbit GCode Sender is a GRBL compatible, cross platform CNC control software.
It features a highly optimized and asynchronous (event-driven) UI and USB-to-Serial communication and can be also used on computers with small amount of RAM and CPU.
https://github.com/nsiatras/sourcerabbit-gcode-sender

2.5 LaserGRBL

下载地址:https://github.com/arkypita/LaserGRBL
Official website http://lasergrbl.com

LaserGRBL is a Windows GUI for GRBL. Unlike other GUI LaserGRBL it is specifically developed for use with laser cutter and engraver. In order to use all of LaserGRBL feature, your engraver must supports laser power modulation through gcode “S” command. LaserGRBL is compatible with Grbl v0.9 and Grbl v1.1

All downloads available at https://github.com/arkypita/LaserGRBL/releases

2.6 CuraEngine

下载地址:https://github.com/Ultimaker/CuraEngine
CuraEngine是一个强大,快速且强大的引擎,用于将3D模型处理为Ultimaker和其他基于GCode的3D打印机的3D打印指令。它是大型开源项目“ Cura”的一部分。https://ultimaker.com/en/products/cura-software
CuraEngine
The CuraEngine is a C++ console application for 3D printing GCode generation. It has been made as a better and faster alternative to the old Skeinforge engine.

The CuraEngine is pure C++ and uses Clipper from http://www.angusj.com/delphi/clipper.php Furthermore it depends on libArcus by Ultimaker, which can be found at http://github.com/Ultimaker/libArcus

This is just a console application for GCode generation. For a full graphical application look at https://github.com/Ultimaker/Cura which is the graphical frontend for CuraEngine.

The CuraEngine can be used seperately or in other applications. Feel free to add it to your application. But please take note of the License.

2.7 grbl

下载地址:https://github.com/gnea/grbl/releases

2.4 可视化G代码

下载:https://camotics.org/download.html

INSTALL4J

https://www.ej-technologies.com/products/install4j/overview.html

ImplicitCAD

数学启发式CAD程序。CSG,斜面和外壳;2D&3D; gcode生成。
ImplicitCAD是在haskell中实现的程序化CAD程序。与传统的CAD程序不同,像在编程中一样,程序性CAD程序使用对象的文本描述。就像在编程中一样,使用了变量,控制结构和抽象之类的概念。这提供了许多优点:

可以抽象和重用对象
重复性任务可以自动化
可以参数化设计对象
可以使用软件开发的常用工具(例如版本控制)
下载地址:https://github.com/colah/ImplicitCAD

注意问题:

  1. A4988模块上的可调电位器,需要调整好电流大小,控制步进电机运动之后,由于流经步进电机的电流较大,会出现电机运行时噪声大、过热等现象,可以通过调节A4988上的旋钮减小电流。逆时针调小电流,顺时针增大电流。调节之后可以在电机运行时用手触摸判断是否过热。正常情况电机只是微热,没有噪音。
  2. 控制部分: 注意,现在国内卖的CNC Shield大多是V3, 使用GRBL v1.1版(最新版,v0.9也是)时,要把Spindle EN接到Z+上来控制激光功率。

脉冲计算

计算每毫米的脉冲数
光驱特点:每步18度(一圈20步),丝杆直径一般为3mm,丝杆螺距为3mm,也就是步进电机每转一圈,移动距离为3毫米,
咱主要修改“脉冲数”脉冲/mm这个参数
首先你必须知道你买的滑台的以下参数

  • 步进电机每转一圈前进的距离:3mm
  • 每转一圈全部的脉冲:20
    光驱的步进电机一般为18度,所以
    = 360 18 20 步数(脉冲数)=\frac{角度}{每步度数}=\frac{360}{18}=20
    即每转一圈需要20个脉冲(步)
  • 驱动每一步的微步数:16,驱动选择多少细分就是多少
    这个参数计算方法如下
    \frac{每圈步数*微步}{每圈移动距离}
    按照上面给出的计算公式
  • 不细分: (20×1)÷3=6.666
  • 2细分: (20×2)÷3=13.333
  • 4细分: (20×4)÷3=26.666
  • 8细分: (20×8)÷3=53.333
  • 16细分: (20×16)÷3=106.666

参考网址

  1. DF创客社区–DIY绘图仪:http://mc.dfrobot.com.cn/thread-37159-1-1.html
  2. 如何使用 Arduino 制作一个绘图仪: https://linux.cn/article-9714-1.html
    3.激光雕刻切割机使用100问 https://www.jianshu.com/p/6afda0c18b96
  3. 如何使用GRBL控制伺服:https://www.instructables.com/id/How-to-Control-a-Servo-Using-GRBL/
发布了97 篇原创文章 · 获赞 120 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/acktomas/article/details/103628157