最简单、低成本的制作Rovio机器人导航灯塔

折腾就是好玩。

最近又开始折腾几年前买的Rovio机器人,最感兴趣的就是它的 NorthStar 室内导航系统。

Wowwee Rovio机器人的导航灯塔已经买不到了,自己孜孜不倦在网上搜索各种资料,然后自行找到一个最简单的方式制作了:

1. 所需硬件:

Arduino uno x2 (淘宝价格最低约10元每个,合计20元)

红外发射管 x2 (940nm ,淘宝价格约0.5元每个,合计1元)

杜邦线 4条

合计成本21元

2. 代码:极简单,只需要1句代码:

tone(10, 3150)

或 tone(10,2070)

写在setup() 函数里。

编译,分别刷入到两个Arduino里面

3.成功。

将红外发射管的正极通过杜邦线连接到Arduino的D10脚,负极连接到GND脚,成功。

就是这么简单,就是这么低成本!

4.还能再低成本吗?

可以,只需要1个Arduino,输出两个pwm来控制两个红外发射管即可(总成本11元)。但是,所需要的代码量就巨大了,大概100多行,而且还涉及到各个定时器、中断相关的代码,相对就不够“最简单”。

5.还能再低成本吗?

可以,将Arduino替换为STC15W4K58S4(单价5元以下),或者直接使用Avr 328p芯片(单价5元以下)刷入Arduino bootloader,输出两个pwm来控制红外发射管(总成本6元),所需代码量和硬件知识就需要更多,对c语言要求也更高,不过代码量反而可以比Arduino少很多…

6.下一步?

下一步自制10个导航灯塔,每个房间放一个,让Rovio自由穿梭…

7. 附: Wowwee Rovio 机器人导航系统North Star的Room号对应频率(只需使用60Hz系统):

60HZ系统

北极星定位系统60HZ发射频率(50%占空比,波长:940nm)
ID LED1频率 LED2频率
9 5010 4050
8 4890 3930
7 4770 3810
6 4650 3690
5 4530 3570
4 4410 3450
3 4290 3330
2 4170 3210
1 3150 2070
0 3030 2010(基地)

50HZ系统

北极星定位系统50HZ发射频率(50%占空比,波长:940nm)
ID LED1频率 LED2频率
9 4725 3825
8 4625 3725
7 4525 3625
6 4425 3525
5 4325 3425
4 4225 3325
3 4125 3225
2 4025 3125
1 3925 3025
0 2025 2325(基地)

8 . 附:完整Arduino代码:

void setup(){
tone(10, 3150);
}

void loop(){
//nothing to do
}

 

关于 killererer

    “没有人”是QQ中的名字,回忆出处,应该是来源于任贤齐的那首《心太软》,“你想哭就哭吧,没有人会知道”。不过最初使用“没有人”这个昵称,倒没有想到这么浪漫而多情的歌词,而是在MUD中(相信现在很少有人知道了),通常会有一段段文字描述周围的环境,我就取了名字叫“没有人”,于是走到任何一个地方,其他的玩家就会看到诸如“没有人走了过来”,“没有人对你大喝一声:狗贼,我们的帐还没完!”,呵呵,于是还没反应过来就被我kill了。     “没有人”的出处大概就如此吧,我自信是网上第一个使用这个昵称的,虽然你现在在QQ上可以搜出一大堆。因为,在1997年的时候,上网还是一种小范围的活动,连QQ还没出来呢,而腾讯的老总,都还是我们当时的网友。而且那个时候,在木棉站,诸如“killer”的id(当然是我的),还可以注册到,不像现在在很多网站,我多数只能用“killererer”来注册了:(     红雪,是来自于古龙小说中的人物--“傅红雪”,惊异于他的身世与经历,同情中怀着一份憧憬,于是取其名“红雪”。姓,当然是不能要的,受之于父母,还不该随便。     红雪,在第一声听到的时候,总被人认为是女性化的名字。     but I'm a man.     而且不再是boy.     所以也渐渐少了少年轻狂时那份同情与憧憬。     所以渐渐也想忘却。     所以还是叫我没有人吧。     没有人的地方,当然是无人地带。     所以,欢迎来到无人地带!
此条目发表在 数码 分类目录,贴了 , , , , 标签。将固定链接加入收藏夹。

发表评论

邮箱地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>