用红外控制乐高的马达制作的小火车

micro:bit编程、教学、展示
STEM
回复
头像
shaoziyang
帖子: 3917
注册时间: 2019年 10月 21日 13:48

用红外控制乐高的马达制作的小火车

#1

帖子 shaoziyang »

来自:https://www.hackster.io/philipp-henkel/ ... bit-aecc10

图片

挑战
我们用可视化编程语言进行实验,用多种颜色的乐高连接。利用基于浏览器的可视化开发环境makecode编程,乐高火车于是诞生了。

我们的旅程
我们从一个使用Scratch和Arduino的解决方案开始。我们有一个工作原型,它设置复杂,容易出错。我们后来使用了microbit的德国兄弟:Calliope,它配有电机驱动器从而减少了所需的硬件和连接电缆。我们用乐高进行的第一次现场测试失败了很多次。分析显示,我们要控制至少两个引擎,以及越亮越好的LED。而Calliope仅有一个电机驱动。

我们的方案
最后,我们为MakeCode建立了一个定制的软件包,使得带有红外LED的micro:bit可以发送命令到Power Functions IR接收器 - 就像遥控器一样。现在,我们能够以最少的硬件要求控制多个设备,并提供易于使用的编程模块。我们在https://github.com/philipphenkel/pxt-powerfunctions上的GitHub上发布了我们的软件包。如果您有任何问题,请在那里提出问题。

硬件设置
您需要主要有两件事:一个microbit和一个发射940 nm波长红外光的红外LED。来自旧遥控器的任何红外线LED都能完成这项工作。我们使用SFH 4546和TSAL 6200进行测试。我们将LED连接到香蕉连接器和电缆。将LED的长边连接到模拟引脚。我们推荐使用引脚0,因为在MakeCode软件包中默认配置了这个引脚。将LED的短脚插入GND。

图片

将LED连接到引脚0和GND

只需要几块积木,就可以将microbit紧固件固定在您的乐高上。

图片

microbit与乐高积木


软件设置
打开MakeCode并通过“ 高级” 菜单中的“ 添加软件包” 添加我们的电源功能包。您需要输入我们的项目URL
https://github.com/philipphenkel/pxt-powerfunctions ,点击返回,然后选择电源功能包。

图片

版本库URL是添加软件包所必需的


新功能块将通过Power Functions菜单提供,当您将鼠标悬停在功能块上时,将显示帮助。
图片


MakeCode中的电源功能块


传输功率函数命令
让我们开始使用Power Functions。首先,我们需要配置IR LED的引脚。如果您使用引脚0,则可以跳过此步骤,因为它是默认设置。根据需要重新配置电机的方向。这就像在乐高遥控器上切换方向切换。

图片

配置IR LED和电机


现在是启动和停止我们连接到乐高红外线接收器蓝色输出的引擎的时候了。不要忘记正确设置接收机的频道。

图片

使用按钮控制电机


另外,您还可以随时使用乐高的Power Functions遥控器发送附加指令。示例:在车站自动停车如何使火车停在特定的位置?我们决定使用micro:bit来测量光照水平,并设计了一个光栅。我们把这个电路板安装在火车车厢上,并用两对乐高电源功能LED构建了一个“灯塔”。

图片

灯塔

图片

我们的火车

图片


火车的大脑

我们的计划如下:
  • 绘制光照水平。
  • 如果灯光水平高于阈值,停止训练5秒钟。
  • 然后向前移动3秒,直到下一个光照水平检查。
图片


通过光栅时暂停几秒钟

图片

列车停在光栅


 

回复

  • 随机主题
    回复总数
    阅读次数
    最新文章