1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

科技 [技术宅]多图加视频介绍软驱变身绘制螺线机器

本帖由 漂亮的石头2012-04-16 发布。版面名称:新闻聚焦

  1. 漂亮的石头

    漂亮的石头 版主 管理成员

    注册:
    2012-02-10
    帖子:
    487,766
    赞:
    47
    过去,电脑上有个盘符叫A盘,有个设备叫软驱。知道软驱是怎么工作的么?稍微改造一下,我们可以拿它来画圈圈,关键是能画得很美。
    [​IMG]
    [​IMG]

    DIYer: snackordie
    制作时间: 1天
    制作难度: ★★★☆☆
    GEEK指数: ★★★☆☆


    & 用旧软驱和Arduino制作一个有趣的螺线绘图机器人!


    参考资料:

    Bristol.hackspace.org.hk
    & Ashish Derhgawen的这篇文章:


    http://www.codeproject.com/KB/system/floppystepper.aspx
    & 更多有关软驱的信息:


    http://www.interfacebus.com/PC_Floppy_Drive_PinOut.html


    1 拆解软驱

    [​IMG]

    我们需要使用软驱内部的器件,所以首先就要将盖子拆下来,瞧瞧里面有些什么。我们需要将装载托盘拆掉,当它处于弹出状态时一般就可以直接提起来了。另外还需要拆除的是一个闩锁或者弹簧。仔细观察一下,根据你自己软驱的情况将不需要的东西拆掉!

    有些软驱有螺钉,有些则是在盖子上有几个卡口,你只要轻轻撬开就行了 装载托盘,我们需要将它拆掉。

    [​IMG]

    去除闩锁和弹簧。双极步进电机,读/写磁头,蜗杆传动。

    [​IMG]

    将读/写磁头的末端拆下,然后将螺钉拧回去,免得弄丢了!

    [​IMG]

    另外,你现在最好让驱动器认为软盘处于载入的状态(否则它就不会旋转转盘了)。所以你需要用泥胶或者教会将左手边的一个微控开关固定住。你也可以将一个开关拆掉,然后用一根导线将两个触点连接起来,从而直接跳过这部分。

    [​IMG]

    固定一个密度微动开关的小泥胶块,将所有的小螺钉和弹簧都保存好,你可以在其他的制作项目中用到它们!



    2 软驱的接线



    2.1 控制


    参见下面链接中的“软驱A管脚输出”(floppy dirve A pin out)表。

    http://www.codeproject.com/Articles/16715/Controlling-Floppy-Drive-Stepper-Motor-via-Paralle

    我们需要关注的是:
    & 10:0=moter enable drive 0(在0v时,电机就会旋转)
    & 14:0=drive select 0(让步进和方向命令都向着drive0) & 18:方向(移动步进电机的方向) & 20:步进(产生步进的脉冲) & 请注意所有的奇数管教都是接地的。 & 像这样给软驱接线: & 软驱的14号管脚?软驱的13号管脚(当我们将它连接到13号引脚的地线时,就能让它处于低电位,从而 选择驱动器0) & 软驱的1号管脚→Arduino地线(我们需要将Arduino的地线与软驱的地线连接起来) & 软驱的10号管脚→Arduino的4号管脚(转盘电机) & 软驱的18号管脚→Arduino的3号管脚(方向) & 软驱的20号管脚→Arduino的6号管脚(步进)



    2.2 电源 & 我们还需要为驱动器供电。我测量了一下电流消耗,峰值为300mA。我查了些资料,发现用Arduino的5V管脚是安全的。USB的额定电流消耗最大值为500mA,我们不会超出这个限制的。
    & 如果你有软驱的电源线,就可以将Arduino的地线接在黑色电线上,而Arduino的5V管脚则接在红色电线上。否则你就需要搞清楚哪一根是 1号管脚(在驱动器上可能有标识),然后使用软驱电源连接器(floppy power connector)这张表格确定该连接哪些管脚,比如1号管脚是5V,2号和3号管脚是接地。
    & 打开电源,检查一下驱动器前端是否有灯亮起来了。






    3 载入软件


    本制作项目有趣的地方就在于,你可以编制不同的软件来绘制不同的图形,你可以先在这个地址中学习一下:

    https://github.com/mattvenn/arduinosketchbook/tree/master/floppyDrawBot

    将它载入Arduino中。

    将floppyDrawbot.pde和timer.pde文件下载下来。用Arduino的编辑器打开* floppyDrawbot.pde,然后像这样添加timer.pde文件:

    在sketch(草图)菜单中,选择“add file”(添加文件)

    选择timer.pde文件

    然后编译并传输到Arduino中。如果一切正常的话,驱动器应该会旋转起来,机械臂也开始移动了!

    查看一下代码,了解具体的实现方法——很简单的。



    4 扩大转盘


    [​IMG]

    我们在转盘上面用胶水粘上了一个咖啡瓶盖和一张DVD

    既然我们已经可以通过Arduino来控制软驱了,那么就该添加绘图功能了!原来的转盘比较小,而且不够平整,无法绘图,所以我们要用一张DVD来扩大它的面积。你需要找些管状的东西,大约直径3厘米,高度2厘米。将它放好,然后检查一下读/写机械臂是否能顺利地来回移动。如果你的管子太大了,那么就必须将下面的读/写磁头削去一部分。我们使用的是Dremel工具配合研磨组件。你应该让它们尽量位于圆心,且保持水平,所以在涂胶水之前应该将它们牢牢固定住。
    5 添加绘图机械臂和握笔器


    [​IMG]

    移动绘图机械臂的螺栓。

    [​IMG]

    一圈铜线,将笔竖立起来。

    [​IMG]

    安装好了的绘图机械臂回复弹簧,读/写磁头的行程大约只有1.5厘米长,所以我们需要增加一个杠杆,扩大笔的移动范围。

    我们使用了软驱顶壳上的部分金属材料,通过Dremel工具配合研磨组件切割出了一个机械臂。再找一个有孔的,可以将笔插进去固定住的零件。如果你充分发挥聪明才智,废物利用的话,就可以省去打孔的工夫了!接着,我们用转轴,并装上一个软驱的旧弹簧,将它们固定好。

    为了得到更大的移动范围,我们可以再找一块金属材料,将读/写磁头延伸出去。我们用螺钉将它固定在读/写磁头上,并在另一头插上一根螺栓,与绘图机 械臂相连。通过调整金属零件的长度和螺栓的位置,你就可以制作出一个杠杆,扩大读/写磁头的移动范围,让笔能充分利用DVD的表面积。

    接通电源,检查一下笔能够在DVD的半径范围内顺利移动。只要弯曲一下金属零件,就可以对它们进行简单的调整了。
    6 绘图!


    再找一张CD作为模板,裁剪几个圆形纸片。然后将几张纸片装好(我们用的是一些零零碎碎的遮护胶带,将纸盘固定住),并在握笔器中插入一支笔,接着就可以让它画起来了!然后,你就可以修改代码,把你绘制的最漂亮的图片发给大家看看了!



    7 添加转盘速度控制


    [​IMG]

    5号管脚。

    [​IMG]

    调整为1MHz。

    [​IMG]

    将这条线切断。

    [​IMG]

    焊接上一根新的线。

    8 添加步进电机速度控制


    使用小型螺线管,让笔可以提升起来。使用激光打印机里的二极管激光发射器在纸张上烧灼出图案(或许可以使用热感纸?)。我们可以以极高的速度操作二极管,或许就能画出点阵圆或者虚线。制作一个可以握持多支笔的握笔器。编写一段能对环境作出反应的代码,这样就成了一个新式物理数据记录器!

    我们本想利用转盘电机的标志脉冲,将转盘和步进电机同步起来,但无法获取高质量的信号来实现这一想法。如果你能搞定的话,一定要告诉我们!
    文/果壳网
     
正在加载...