少年编程课(4):感应台灯和电扇


小外孙泡泡喜欢在iPad上玩“Real Racing
3”赛车游戏,只要他回到我家,就情不自禁地玩这个游戏。我发现这个游戏里赛车起跑的时候信号灯先是三个红灯亮,然后一个个红灯依次熄灭,然后绿灯亮起,赛车就像飞一样地冲出去了。于是我对他说,我给你一个任务,请你编程让这三个信号灯和游戏里的情况一样。
我本以为这会让他思考一阵的,没想到,他在十几分钟后就做成了。
视频:赛车起跑时的信号灯控制(视频也可点击这里观看)
见他很快掌握了红绿灯控制的方法,于是我继续教他新的课程。
新课程是“感应台灯”,就是利用超声波的原理,当有物体靠近台灯的时候台灯就亮起,物体离开台灯就熄灭。当然,所谓“台灯”,还是那个红绿灯器件。
这次,从编程的角度看,就是学习条件语句:如果……否则……;从硬件角度看,就是使用了一个超声波传感器器件;此外,还学习用蓝牙连接。
因为该软件有示例程序,因此泡泡很快就学会了。于是我们又进入下一课:“智能风扇”。这一课其实还是使用超声波传感器,只不过不是控制灯而是控制直流电机,所以又添加了一个直流电机器件。
泡泡用买来的和乐高兼容的那些积木,搭建了一个风扇。
视频:泡泡给他妈妈演示智能风扇(也可点击这里观看视频)
泡泡通过以上两个课程,学习了条件语句。
因为有了控制风扇的体验,于是泡泡有了一个想法。这想法就是,把直流电机带动风扇旋转当做赛车起跑。因此他想到的设计方案是,先把三个红灯点亮,然后红灯一个个依次熄灭,然后绿灯亮起,在绿灯亮起的时候,赛车(直流电机)就开始起跑。听到他的想法,我给了赞。不过,由于他随后离开我家回他自己家去了,所以要等下次他再来时才有机会实现他的想法了。
前一篇:从习惯用电脑转换到用手机