DIY绘图仪---“再也不怕老师罚我们抄字典了。“

2018-05-115.6万
精华项目
AI 快速预览详细 收起
本文介绍了如何制作一台DIY绘图仪,通过Arduino单片机和步进电机实现自动写字和绘图功能。文章详细讲解了固件安装、接线图、机架结构以及G-Code生成和调试的过程。最终效果是一台能够根据G-Code指令进行精确绘图的机器。适合STEM教育场景,激发孩子对编程和机械的兴趣。
    DIY绘图仪---“再也不怕老师罚我们抄字典了。“图13

    如果上帝能够让你选择带一件东西回到过去,那么我一定会选择把“它”带回到我小学三年级的暑假,因为,在那个暑假我做了一件至今想来都不可思议以至于幸运的保留在我为数不多的小时记忆中的事情----罚抄整本《新华字典》。记得住事,记不住人,保留了检查一遍错别字的习惯,但就是想不起来是谁罚的。我们那个年代的人都实在,我不例外,缺心眼却没有缺斤少两的在开学那天老老实实的向老师递上一本完整的手抄版《新华字典》,那时候还调皮的写上了马某某著。还好这事不是发生在我上中学那会,要不然罚抄的就不是《新华字典》这个级别了。。。
   也许你会认为,我指的”它“不就是台打印机嘛,想想,这打印的和手写的东西,光从油墨在纸上留下的痕迹上就能轻易区分。我得弄台能够拿笔写字的机器。这个想法在我罚写的那个暑假里每天脑海中至少会出现十次,可是,那个年代,能够做的就是抄累了就拿起那本小人书看看,幻想一下自己成为书中主角,也能够给当时的心情一些慰藉,那本小人书叫《神笔马良》。
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图12
    一转眼二十多年过去,我们经历了经常使用的文字从“笔下”到“印制”再到“无纸化”的过程,但潜意识里一直有着手写至上的这么一个情节,不管是速记,做账,写简历,写文章,我都还是习惯手写,也许你会觉得我是那种具备写得一手漂亮字的活儿舍不得丢因为时不时还得拿出来显摆得人。错了,尽管我从小到大已经写过记不清数的字帖,但哥们儿确实没这天赋。我不得不说,我有一次对着一个学生写的我的名字看了很久,因为我发现,他竟然比我写的好。。。  看来,做一台写字机很有必要了。
    先在网上查了查,幸运的是已经有很多“绘图仪”的例子可以参考了。其实雕刻机,3D打印机,原理其实都大同小异,把一个平面上X,Y轴在时间轴上的坐标变化形成的轨迹实体化,加上落笔,抬笔的动作幅度就形成了写字,绘图的效果。在如果加上Z轴,也就是与平面垂直的那条轴上的动作,就产生立体形状了。也就是今天的3D打印机基本工作原理。如果没接触过这类项目那建议你先记住一个词,G-Code,这些形成工作流程轨迹的坐标流就是等会要说的G-Code的一部分

固件部分
    用大名鼎鼎的支持Arduino单片机的GRBL项目:https://github.com/gnea/grbl/wiki 做支撑, 用该项目做的雕刻机功能专业强大,但是新版1.1只支持Z轴使用步进电机做雕刻部分。不支持舵机。(因为抬笔落笔动作要干脆利落,所以如果只是做绘图仪的话我建议首选舵机)我们就使用旧版的固件0.9(在文尾),固件的安装方法:下载直接在ArduinoIDE菜单里面点项目→加载库→添加一个ZIP库→选择下载包添加,然后回到菜单:文件→示例→MIGRBL→grblUpload 上传到Arduino里即可。能力有限不能解释代码,大致上就是读取G-Code并转化成动作的框架,先可以不用管那么多,咱可以先把代码下到板子里。赶紧做出东西来是首要的。这套代码基本适用于Arduino比较常用的板子,我建议就用UNO吧,另外还需要一个专用的CNC扩展板以及两块A4988步进电机驱动板。不难买。
接线图
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图2
这里有两点需要说明一下,一,我使用的是两相四线的35步进电机,大家在买电机时问清楚电机的参数,步距角(一个脉冲的角度变化我的是0.9度),工作电压以及线序(A+,A-,B+,B-对应的颜色)二,扩展板上每个A4988下面需要三个跳线帽,决定细分数,三个都接上。另外旁边四个针脚顺序是B+A+B-A-。他们就是接步进电机的位置了接错了,电机不动且有咔咔声,接对了,电机动,也会有较为不同的声音,正常的。如果遇到工作时声音很大和电机发热严重就要适当调节A4988上的旋钮(逆时针)
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图1
机架结构部分
    我有个舍不得扔“破烂”的习惯,质量较好包装盒,坏掉的电器,某个造型奇特的零件,都在我的收集范畴,因为你如果遇到”材料瓶颈“时突然发现你以前收集的某个零件正好能用到”瓶颈“处,那感觉真的是很棒的。我想大多数创客朋友们应该也都有这么一个给我们灵感的“破烂”箱,我没有买网上一些打包好的型材套件,最开始的第一版也不是我现在发出来的,我是用钓鱼线,塑料滑轮,自行车辐条,等组成的运动部分,废弃的洞洞板,覆铜板等做机架组成部分,但由于技术有限,稳定性和精度稍差,这里就不放出来了,后来我还是买了一些丝杆滑轨等,其他机架组成部分就用了积木,我把主要部件以及其作用和安装过程中的要点介绍一下。充分体会制作乐趣是主要的。
运动原理如图:
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图7
大致结构如图:
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图5
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图6
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图4
实际装配如图:
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图17
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图14
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图15
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图16

主要部件清单:
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图3
G-Code Controller部分
    搭建好了接好线后,大家一定想看看运行效果,我们就先看看G-Code Sender部分,简称UGS(文尾处有下载链接),解压UGS到任意文件夹,运行bin文件夹里面的ugsplatform64(32位运行上面那个)

软件界面:
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图8
插上线,选好端口,点打开,如果没问题,右侧控制台就会出来一大堆字母数字。这些就是固件的参数,当然这个参数是别人机器的,不一定适合自己,至于调参先放一放,我们先看看控制情况,左下有一些箭头,上下左右随便点一个,如果机器动了,说明前面的工作大致上没问题了。


G-Code Maker部分
    通过前面的介绍,我们发现了所有的环节都是围绕G-Code一环扣一环的,我们有了执行G-Code的机器,还有了通过电脑发送G-Code的上位机,最后我们还需要一个能够生产G-Code的软件,把我们需要画出来写出来的图片或文字转化成G-Code的软件---inkscape(文尾处有下载链接)
下面介绍该软件的用法:
首先正常安装好软件后,我们还要给它装一个插件,解压MI Inkscape Extension.zip(文尾处直接下载)到inkscape的安装文件夹C:\Program Files (x86)\Inkscape\share\extensions文件夹内
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图10
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图9


调试部分
   至于比例方面就需要参数调节。毕竟前文说了固件的参数是别人的,机器的写画范围以及电机的不同,都会导致你的画和实际的大小有差异。怎么调试呢?我们可以先测试自己XY上的行程范围来确定最大工作区域,连上UGS,用方向键X-Y-两个键把笔调节到极限位置,这个点就可以视为起点,接下来把笔手动压下,以刚能够点到纸上留下印迹为准,接下来,点X+到最大行程位置,接下来Y+,完成后,拿尺子量一下两条线段的长度,这两个参数就是X,Y两轴实际的最大行程了 。点软件界面的设置→固件设置右,拉到最下,改掉倒数第三(X轴最大行程)倒数第二位置(Y轴最大行程)的两个参数,数字输入完后需要按”回车“确认。→保存→关闭。
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图11
接下来,我们在 Inkscape画一张10mm和10mm的正方形,转化成GCode,画出来。用尺子量如果边长小于10mm,就需要增大$100 ,$101(X轴,Y轴上每行进1毫米的脉冲数)两个参数值 ,大于10mm则相反。虽然也可以通过公式计算,但是这样来的更方便。同上修改$100 ,$101两个参数,这时,比例应该就正常了。至于实际出图方向,可以在固件中改一些数值去实现。也可以用交换步进电机两相线的位置去试。我认为比例只要对,其实出图方向并不重要。嫌麻烦没关系,下面视频中我也会演示一遍。
视频演示
下面的视频包括
写画范围,比例的调试过程
示范inkscape图片转化生产.gcode文件的过程
和UGS发送方法以及演示效果。


扩展:
   接下来,我会重新做个稍大一点的绘图机(标准A4尺寸),可能还会加上蓝牙,通过手机APP发送GCode,还想在上面加上限位开关。还想把Z轴用上步进电机。用继电器去控制马达铣刀或是激光。慢慢来吧。如果有大神们发现文中有错误,感谢提出。如果有没说明白的位置,也欢迎留言,我会尽快回复。

补充:
这些天发现Z轴工作不太稳定,那块泡沫打磨条经不起折腾,时间长了,间隙就大了,会导致写出来的字存在一些外观上的差异,
更换笔极为不便,因为固定笔的打磨条口径是固定的,伸展性几乎可以忽略不计,有些时候想玩玩圆珠笔和铅笔,得需要一个可以调节口径的固定笔的装置,
这些天一直在想办法.还好,找到国外一个玩家的3D打印方案,用它写了几天,目前还算稳定.分享给大家.
另外,我一直在寻找比较适合这台机器的笔,它要具备:耐折腾,出墨顺畅稳定且不会浸染A4纸,笔头与纸摩擦小,.所以只要逛超市,看到勾线笔,都会买回来试.
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图21
inkscape字体选项中添加汉字的方法同Windows系统中安装字体.字体文件复制到fonts文件夹内即可.
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图23
建议字体大小24
新版Z轴与其写字效果:
DIY绘图仪---“再也不怕老师罚我们抄字典了。“图24
下载:
由于文件太大我就放出下载地址吧用于发送GCODE的ugs上位机:http://winder.github.io/ugs_website/download/

用于生产GCode的inkscape  : https://inkscape.org/en/gallery/ ... -0.48.5-1-win32.exe
inkscape插件以及Arduino的固件
下载附件inkscape插件.zip

下载附件MIGRBL固件.zip

可选:示例练手的图片包

下载附件示例图片.rar

测试中文字体,安装在C:\Windows\Fonts
下载附件书体坊郭小语钢笔楷体.rar
z轴3D模型下载地址:
https://www.thingiverse.com/thing:1341835

1.jpg (79.55 KB, 下载次数: 14171)

STEM教育 · DIY绘图仪:再也不怕老师罚抄字典_image_3.webp

mobile01-4c82881c1b3edeed920bfc855d26b885.jpg (36.27 KB, 下载次数: 14035)

STEM教育 · DIY绘图仪:再也不怕老师罚抄字典_image_6.webp

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(26)
驴友花雕
驴友花雕
学习了,做的不错,有借鉴意义
IOHDHQ
IOHDHQ
楼主,其他主板能做吗!
ljs硬件
ljs硬件
66666666666666666666666666
山水1
山水1
楼主,跪未软件包,因为提供的连接下载不了
Ariw
Ariw
限位怎么设置啊楼主,直接短接限位没用,又不会改固件
机器人-脑洞大开
机器人-脑洞大开
可以可以的
机器人-脑洞大开
机器人-脑洞大开
6666666666666666666
A-再見如畫
A-再見如畫
大神,为何我下载的UGS是英文 你的是中文啊 哪里有中文版,给个链接,谢谢大神
DFBk9YQRr-m
DFBk9YQRr-m
楼主,这表MIGRBL固件,添加不上,好像缺少主程序,怎麽办,在线急,谢谢
光3
光3
很详细,谢谢分享
DFBylmE59AV
DFBylmE59AV
1
Eternity
Eternity
楼主,你好,抬笔的固件是怎么改的
gada888
gada888
就是不知道做一个要花多少钱
俗人
俗人
打扰了拿个经验
ggg12580
ggg12580
不错 支持支持
Treasure
Treasure
ugs在github上下载好后找不到.EXE的文件,怎么打开啊,急
晨
请问你是怎么写出单线字?我写出来的都是空心字?谢谢!
晨
回复创客马老师
谢谢指点,我看楼主最后一张图好像是单线字,一直想看有没什么软件!
创客马老师
创客马老师
作者
回复
这个没有别的办法,可以考虑用粗一点的笔或者减小字体大小
晨
请问你是怎么写出单线字?我写出来的都是空心字?
pjzmj2012
pjzmj2012
工作电压,以及线序(A+,A-,B+,B-对应的颜色
pjzmj2012
pjzmj2012
国外一些网站有教程,但我建议最好先不要用无线传输,因为GCODE的传输过程是不能有迟滞和错误的.