本文用的的材料包括以下主要部件:
1. Arduino uno开发版一块
2. L293D扩展板一块

3. 舵机一只
4.废旧光驱两只
5. 导线若干
1. 拆解光驱
普通光驱的激光头移动是通过步进电机来完成的,探头移动的距离只有4cm左右,这也限制了我们的绘图仪最大只能画44 cm大小的图。虽然不同品牌的光驱结构有所不同,但都大同小异,尽量拆除无用的部件,只留下步进电机、导轨、移动架等必需件。
2. 测试步进电机
步进电机有四根引线,应该是两相四拍电机。可以参照下图把杜邦线剪去一头进行焊接,这样看上去会比较齐整。
由于电机没有具体参数,需要我们自己摸索。按上图对这接脚进行编号,用万用表测量电阻,发现1、2导通,3、4导通,电阻值都是14.5欧左右,其余两两均不导通。尽管不同电机排序可能不一样,但只要记住哪两根线是一组就行了。
3. 起落笔的控制舵机可以用来控制绘图笔的起落。关于起落笔的控制装置,则只能是“八仙过海”,看各位各显神通了。给大家一个参考。这里首先制做一个杠杆装置:
然后把它固定到垂直的移动台上,把舵机放在后面,撬动杠杆一端,另一端就把笔给提起来或者放下了。
这个装置的关键之处在于笔尖在移动过程中不能存在虚位,即落笔后笔尖永远只能在一个位置,不能前后左右晃动。我们这里巧妙地利用中性笔的笔芯和外壳水平位置相对固定、而上下可以移动,实现了笔尖的精准定位,这样笔芯用完也容易更换:
4. 连线把舵机线接在扩展板一角标有SER1或SERVO_2的针脚上,记住SER1对应的是开发板上的D10脚,SERVO_2对应D9脚,到时在程序中要修改这个参数。电源线连接。通常只有usb线供电是带不动电机的,这时候就要用到额外的电源。如下图,在开发板上有一圆孔的电源接口,理论上需接7-12V的电源,这时usb端口将不负责供电。如果把这个电源端接在电脑的另一usb口上,也会增强电流输入。但如果电流还是不够,这时就需要使用另外的电源适配器或电池组了。
软件部分相对比较复杂,需要的同学留邮箱。
5.调试使用扩展板有专门的库文件,需要导入到arduino库文件夹中,在“网盘文件”中找到“L293d扩展板库文件.rar”,下载并解压,把文件夹“AFMotor”拷到电脑arduino的库文件夹libraries中,win7典型的位置处于“文档”下的arduinolibraries。
在“网盘文件”中找到文件夹“Mini_CNC_Arduino_Plotter”,里面是写入arduino的程序代码和需要修改的参数说明文档。用arduino编译器打开代码,修改相应参数后写入到开发板中。注意选择正确的串口端口
打开编译器的串口通讯界面,选择回车结尾,此时你就可以输入命令了,不分大小写。
通电前电机的起始位置被认为是(0,0),如输入
G1 X20 Y20
则笔会移动到(20,20)的坐标点,单位(mm),再输入
G1 X30
则笔从当前位置移动到(30,?),Y轴保持不变,再输入
G1 Y35
则笔从当前位置移动到(?,35),X轴保持不变。
如果要提笔,则输入
M300 S50
如果要落笔,则输入
M300 S30
以上就是我们调试所要的全部命令,首先通过移动X轴或Y轴来确定步进电机移动方向,如果方向反了,就把相应电机上其中一对引线互换。其次要确定提笔和落笔位置对应的舵机转动角度,通过反复测试调整到最佳角度。
6. 准备图像文件gcode文件是专门用于绘图坐标命令文件,但并不是任意该格式的文件都能用于我们的绘图仪“网盘文件”里的Inkscape.rar,在本地电脑解压缩就可以使用了。关于使用方法,里有详细视频教程。通过该软件,我们就能得到后缀名为gcode的文本文档了。
7. 与开发板的串口通信
上面得到的gcode文档需要通过串口通信传输到arduino开发板中,这里用到一个小程序。在“网盘文件”中找到“gctrl4windows.rar”下载并解压,里面有使用说明。