这个感觉很酷呀,转载下。什么时候自己也做一个玩玩,体验一下DIY!

https://www.leiphone.com/news/201512/gptKGhCKq9jgHcEP.html

编者注:今天的DIY教程是教你如何快速制作一台数控绘图机,本项目来自Instructable。

在这个教程中,我会告诉你怎么快速制作属于自己的廉价Arduino Mini数控绘图机。图中这台绘图机是改进版,我对原有绘图机的结构和准确度都进行了一定的提升。好好阅读这篇文章,相信你也能轻松搞定自己的Arduino Mini绘图机。

简述:

在X轴和Y轴上,我们要用到两个步进电机和DVD/CD驱动器上的滑轨。在Z轴上,我们也会用到一个小型的伺服电机,用来驱动绘图笔上下移动。在安装基座上,我们则会用到树脂玻璃。

我本想将它搞成雕刻机和绘图机的两用版本,但经过了数次实验,我发现这台机器只能挂载绘图笔,有些可惜了。

基于Arduino开发板的电路使用了ATmega328单片机,2块L293D集成电路驱动器和USB串行适配器。用Arduino Uno开发板和一块面包板就能轻松搞定这一切。

想要打印你的绘图作品?只要加装一个蓝牙模块就好。

下面是数控绘图机的演示视频:

第一步:所需材料

提示:不懂的部分可以参考图片。

各部分硬件都购自www.gearbest.com,不过相信在万能的淘宝也可以买齐。

制作电路时你需要:

新手清单:

Arduino uno

面包板

2台L293D 集成电路电机驱动器

迷你伺服电机

2个DVD或CD驱动器

老鸟清单:

ATmega328p(刷入Arduino的Bootloader)

28针的DIP集成电路插座

16MHz晶体振荡器

2块22pF和1块100nF的电容

10k的电阻器

USB串行适配器

2块L293D集成电路

迷你伺服电机

2个DVD或CD驱动器

原型PCB电路板

4个两针的螺丝端子接头或2个四针的螺丝端子接头

你还需要一台Arduino UNO来为ATmega328单片机编程。

有了USB串行适配器,就可以像Arduino Uno那样连接电脑和电路板了。

为什么还要用到螺丝端子接头呢?因为在找到正确的组合前我们不愿轻易使用烙铁,要不然焊错了可就麻烦了。

制作安装基座时你需要:

为X轴准备一块20x16厘米的树脂玻璃(厚度控制在5毫米左右)。

为Y轴准备两块14x4厘米的树脂玻璃(厚度同上)。

约20个螺母、螺钉和垫片。

一些垫圈。

四个支撑角(最好为塑料材质)

如果没有树脂玻璃,你也可以用木头,金属或者CD和DVD驱动器的边角料。

工具:

螺丝刀

烙铁

焊料

电钻

切割工具

强力胶

第二步:步进电机

首先,我们要拆掉dvd/cd驱动器,您切将上面的步进电机取下来。如图1所示,用螺丝刀将其大卸八块并取下滑轨。

好了,现在我们就有了两台步进电机了,下一步要给它焊些线备用。在开始之前,请参阅下图2。下面我们要找到最好的线路搭配,所以可以请出万用表了,用两个鳄鱼夹夹住线路(如图3所示),然后将其放在“短路”功能上。一般来说第一跟第二条线都会使电路闭合,此时LED会亮起,同时警报声也会响起,但这也意味着我们找到了第一项电机,而第三和第四根线则会引出第二项电机。

在这台数控绘图机中,使用线一和线三的步进电机为第一项电机,而使用线二和线四的则为第二项电机。

找好了线路搭配我们就能开始进行下一步了。

第三步:安装基座,X轴和Y轴

X轴:

先将一个步进电机放在一块较大的树脂玻璃上,随后用马克笔标出其具体位置,以便随后为螺丝打孔。请一定确保其位置精确无误,然后就可用电钻打孔并用螺丝将电机固定紧。

下一步就轮到我们准备好的四个支撑角了,为它们找好位置并用马克笔标注,它们之间的间隔为5毫米。随后如图二所示,为它们打八个螺丝孔并用螺丝将其固定牢。

Y轴:

将另一个步进电机放在两块树脂玻璃上并用马克笔标明其详细位置,随后重复上面的步骤,在树脂玻璃上打四个孔以便用螺丝将其固定。

随后将这两块树脂玻璃放在X轴那块较大的树脂玻璃上,接着重复上述步骤将其固定好。

完成装配:

打好该打的眼,装好改装的螺丝,我们的装配就完成了。我在X轴那块树脂玻璃上安了一块金属板,它上面会放置便签纸供绘图机进行绘制。一般的便签纸都是75x75毫米的,但我们的绘图机只能绘出40x40毫米的图片,所以你要对其尺寸进行相应的修改。记住,这个项目中精度是非常重要的。

第四步:Z轴

这恐怕是结构中最为复杂的部分了。

想将它安装安装在Y轴上,你需要一个平面。在这个平面上,你要安装好伺服电机(Z轴)和笔架。在伺服电机的驱动下,绘图笔要能正常的上下移动。如果还是不太清楚,请参考上图进行理解。

提示:充分发挥自己的想象力。

第五步:电路

搞定了第四步,我们的基础硬件部分就制作完成了,现在可以开始制作电路并对X轴和Y轴的步进电机进行测试了。

上图为面包板的电路图。

完成这一步需要你的耐心。下一步中我们还会对X轴和Y轴的步进马达进行测试。如果它们工作不正常,你就要及时改变线路的连接方式。

电源:

一个USB接口可无法提供足够的电流,所以你还得再加一根USB线。接上电源后,电压依然为5V,不过电流已经翻番了。

注意:

如果你想用其他的硬件,如电机端罩或步进电机驱动电路等,就得对以上电路和Arduino代码进行修改。当然,具体的修改细节我无能为力,你可以在网上搜索相关教程。

第六步:在X轴和Y轴测试步进电机

下面是我们测试X轴和Y轴的代码,你可以用Codebender将其嵌入Arduino开发板。

Codebender是一个在线的Arduino IDE,你可以直接在浏览器上对你的Arduino开发板进行编程,只要点击"Run on Arduino"按钮就可以开始了,强烈推荐大家尝试。

X轴:

在测试中,你得确保X轴的电机能从前方移动到后方(上图中黑色箭头)。

代码下载

Y轴:

在测试中,你得确保Y轴的电机能从左方移动到右方(上图中红色箭头)。

代码下载

第七步:数控代码

下面是我们要用到的主要的数控代码,你可以用Codebender将其嵌入Arduino开发板。

在这一步中,你的绘图笔会升上来。如果它没反应,你得修改下penUp和penDown的变量,这样就可以对伺服电机进行调整(只需点击Edit编辑按钮)。

点击“Run on Arduino”按钮就可以从浏览器上对你的开发板进行编程了。

代码下载

第八步:GCTRL程序

现在我们就可以开始绘制我们第一幅画作了。不过在这里我们还需要一个名为gctrl.pde的处理程序,它可以将gcode图片发送给数控绘图机。

那么什么是gcode呢?其实它是一个文档,其中包含了相关的X,Y,Z轴坐标信息。头文件的坐标值设定如下:

M300 S30.00(伺服电机向下)

G1 X20.00 Y10.00 F2500.00

M300 S50.00(伺服电机向上)

你可以点击链接下载该处理程序,随后找到能打开它的相关软件并点击“Play”按钮来开启程序。

依照上图的指示:

点击'p' 并选择你的Arduino串行端口。

点击'g'并选择'TEXT.gcode'或'gear.gcode'文档。

(如果运行出错,请点击'x'让绘图机停下来,然后再试一次。)

第九步:怎样制作自己的gcode文档

想要制作自己的gcode文档,你得使用Inkscape。

Inkscape是一款免费的专业的高质量矢量图形软件,无论是Windows,Mac OS X还是Linux都可以顺利运行,它不但是专业设计师的最爱,还是业余爱好者的神器,你可以用该软件做出插图,图标,地图,标志等。Inkscape的原生格式为W3C open standard SVG,此外它还是一款开源软件。你可以点击链接下载该软件(记得要下载0.48.5版本)。

下载完成后你需要安装一个附加组件,这样才能将输出的图片转为gcode文档。下面是该附加组件的下载链接,该软件有安装提示,上手无难度。

Inkscape的设置

首先,打开Inkscape,进入文件菜单并点击"Document Properties",随后按照上图中图1的提示进行相关调整(记得将相关单位调为厘米)。设置好后就可以关闭该窗口了,下面我们要使用屏幕上4到8厘米的空白区域(如图2)。

怎样绘制文本

文本方面,你可以对其朝向和大小进行修改。步骤:点击游标为文本设定大小(如图3所示),在面板上选择Path并在下拉菜单中点击"Object to Path"。

请观看视频:

怎样绘制图片

这一步要比绘制文本难得多,因为图片的背景必须是透明的。将图片拖曳进Inkscape,点击OK进入下一个界面,现在你就可以调整图片尺寸了(如图4)。步骤:点击菜单中的Path,并选择"Trace Bitmap",随后按照图5 所示对其进行修改。搞定后点击OK并关闭窗口。接着我们要调整灰度图并删除其背景颜色。然后再次点击Path并选择"Object to path",图6会教你如何删除图像轮廓。

请关看视频:

以gcode文档格式进行输出

最后,返回文件菜单,点击以gcode文档保存并在下一个界面点击OK,这样就大功告成了。随后你就可以开心的用gctrl应用在你的Arduino数控绘图机上绘图了。

第十步:完工

如果能按上面的步骤一步步走下来,相信你已经制作出自己的数控绘图机了,希望你能喜欢。

 2015-2016赛季全球创客马拉松深圳大学站将在12月18日火热启动!关注“硬创邦”(微信号:leiphone_bang),可实时跟进最新活动消息!而且,雷锋网在未来三个月内选一个合适的时间,在北上深选择一个地点,举办创马“火星救援”专场!详情可点此处了解。
此外还可加入全球创客马拉松主群(群号:259592983),参与我们的互动讨论~

旧DVD驱动器没用了?DIY一个Arduino Mini数控绘图机吧相关推荐

  1. MacBook 通过Boot Camp安装win7双系统时提示缺少所需的CD/DVD驱动器设备驱动程序。

    最近家里的MacBook Air系统出了点问题,把win7删除之后,在再次装回win7的时候出了点问题 提示如下图 通过Boot Camp安装win7双系统时,提示缺少所需的CD/DVD驱动器设备驱动 ...

  2. DIY一个基于树莓派和Python的无人机视觉跟踪系统

    DIY一个基于树莓派和Python的无人机视觉跟踪系统 无人机通过图传将航拍到的图像存储并实时传送回地面站几乎已经是标配.如果想来点高级的--在无人机上直接处理拍摄的图像并实现自动控制要怎么实现呢?其 ...

  3. xbox手柄适配器驱动_修复XBox DVD驱动器

    xbox手柄适配器驱动 I've had a suspicion that my XBox's DVD Drive was on it's last legs. Ordinary games have ...

  4. 如何优雅的DIY一个高大上的小台灯

    利用TLD5098EL英飞凌恒流电源开发板,强行DIY一个亮度可调的台灯. 没错就是写字台上用的那个,你以为没什么好说的?你错了,神坛讨论已久,当然也给出了结论,供您参考:欧司朗卤素台灯. 科普卤素台 ...

  5. DIY 一个树莓派无人机

    学习目标:DIY 一个树莓派无人机 这篇文章来源于DevicePlus.com英语网站的翻译稿. 提示:这里可以添加学习目标 学习内容: 提示:这里可以添加要学的内容 今天,我们将利用一些现成的组件组 ...

  6. 安装win7时提示:“缺少所需的CD/DVD驱动器设备驱动程序。…………”

    提示"缺少所需的CD/DVD驱动器设备驱动程序" | 浏览:3461 | 更新:2013-07-02 14:21 问题描述:安装win7时提示:"缺少所需的CD/DVD驱 ...

  7. 用U盘装win7纯净版系统提示缺少所需的CD/DVD驱动器设备驱动程序解决办法

    最近用U盘重装了一下win7纯净版系统,遇到了一个问题,就是进入U盘启动后,安装提示缺少所需的CD/DVD驱动器设备驱动程序,如下图所示, 乍一看应该是缺少U盘驱动程序,导致计算机无法识别U盘.但回头 ...

  8. diy 格力空调arduino遥控器

    diy 格力空调arduino遥控器 公司的中央空调莫得遥控器,手机也没红外,自己做一个 先看格力的红外编码 这个是参考https://blog.csdn.net/yannanxiu/article/ ...

  9. 安装win7缺少所需的CD/DVD驱动器设备驱动程序

    问题描述: 现在估计大家都不用光盘来安装windows了吧,基本上最简便的就是U盘安装,通过U盘来安装WINDOWS7这个操作系统,实际操作过程中我们用到最多的工具要数UltraISO这个软件了. 通 ...

最新文章

  1. 利用IDA6.6进行apk dex代码动态调试
  2. TP的门面Facade:静态方式调用方法
  3. 2017.4.11 AM
  4. php开发大型网站如何优化,PHP编写大型网站问题
  5. 计算机的数据库应用领域,【信息管理论文】信息管理中计算机数据库技术的应用(共4410字)...
  6. 【Java学习笔记之三十一】详解Java8 lambda表达式
  7. 微信小程序:冒泡事件及其阻止
  8. python 框架是什么意思_Python框架有哪些?区别是什么?
  9. svn server服务器搭建
  10. Crontab定时任务表达式
  11. Docker技术之容器与外部相连
  12. (MATLAB)把视频读得明明白白
  13. Excel中的Array Formula
  14. Spark推测执行spark.speculation
  15. flutter 抓包使用教程
  16. 机器人能送药、治病、消毒,最大程度保护医生护士不被传染!
  17. USACO——挤牛奶
  18. STC单片机对AT24C02进行数据读写操作
  19. ROOT后安装Magisk,使用Magisk Hide 解决建设银行APP-一元流量不能用问题
  20. Uber与Lyft:与其说是生意,不如说是幻想

热门文章

  1. 驱动调试(三)oops确定函数PC
  2. 【Java】读取单颗北斗卫星导航星历文件进行卫星位置计算(RENIX3.04)
  3. 粉笔公考——方法精讲——判断推理
  4. 微服务雪崩效应及解决办法
  5. nohup command/dev/null 21 是什么意思?
  6. 程序媛征男友需求说明书
  7. Spring Boot SOAP Client – WebServiceTemplate 案例
  8. OpenFOAM动网格技术介绍【转载】
  9. 同相比造句_对比造句_造句大全
  10. 史上最全Staking指南,教你把握投资机会!