乐高海龟作图机器人 LEOGO

二十多年前,当我还是一个中学生,在Apple II上初学计算机编程。我第一门学会的计算机语言,就是LOGO语言。LOGO是一种很奇妙的语言,非常适合计算机初学者。使用LOGO的海龟,’REPEAT 4 [ FD 100 RT 90 ]’ 就画了一个正方形,’REPEAT 360 [ FD 1 RT 1 ]’ 可以画一个圆!

这次我制作的是一个海龟机器人,可以通过编程,在白纸上像LOGO的海龟一样画画。我给它取名叫LEOGO,因为它是LEGO和LOGO的混血儿!它使用了文具店最常见的圆珠笔芯,将笔芯通过乐高零件固定,然后用橡皮筋悬挂在控制臂上。

你可以从 http://bricksafe.com/files/ruf/leogo/leogo.ldr 下载搭建图纸,用LDView打开并一步步浏览。当然,还需要一套 8547/NXT 来完成制作。下面的视频是搭建图纸的分拆步骤:

编程是在电脑上完成的,电脑通过蓝牙控制机器人。我还创建了一个python模块,名叫 ‘leogo.py’,它提供了海龟作图的一些基础指令,例如fd()是前进,bk()是后退,lt()左转,rt()右转,还有pd()/pu()分别是落笔和抬笔,后来还增加了goto(x,y)和line(x1,y1,x2,y2)来快速画线条。你可以从 http://bricksafe.com/files/ruf/leogo/leogo.py 下载这个模块。

为了让它能够工作,你还需要在电脑上准备一下运行环境,必须要安装的有 python、nxt-python ( http://code.google.com/p/nxt-python/ ) 和 nbc/nxc ( http://bricxcc.sourceforge.net/nbc/ ),如果是使用Windows操作系统,又希望和NXT的蓝牙通信能工作,还需要安装pyBluez( https://code.google.com/p/pybluez/ )。

然后可以试试这个简单的海龟作图程序:

from leogo import *
pd()        // 落笔
for i in range(0,4):
    fd(300) // 前进300毫米
    rt(90)  // 右转90度
done()

找一张白纸,把这个海龟机器人放上去,它就能按照上面程序所要求,画出一个正方形。

创意无极限。

相关文章

Gee Bee R-1 竞速飞机 本小品是给乐构英雄会的 飞行器MOC活动  定制的,颗粒MOC不是我的专长,玩票而已,纯属支持。 飞机尺寸: 长13厘米,宽17厘米,高6厘米。 ...
绿色原野-2015苏州越野赛用车 这辆车是针对乐构英雄会的2015年越野车场地特别设计的,和去年的越野车设计思路完全不同。高度和宽度缩小了一些,电池盒放在了车辆中间最低的位置,以尽可能的降低重心。 外观是自行设计的,但是受哈来来...