2018-6-20 10:15:29 [显示全部楼层]
19399浏览
查看: 19399|回复: 4

[micro:bit基础教程] micro:bit造物粒子(基于Mind+)06— 电子蜡烛

[复制链接]
micro:bit造物粒子(基于Mind+)06— 电子蜡烛

麦克的故事
经历了一番太空历险之后,麦克和他的小伙伴终于有惊无险地回到了地球。
有一天,麦克看见新闻上关于温室效应的报道:人类的很多活动都可能造成碳排放,比如普通百姓简单的烧火做饭都能造成碳排放,很多物体被火烧后的废气都会产生碳排放。麦克深受启发要从小事做起减少碳排放,保护环境。
转眼间到了麦克生日这天,麦克突发奇想:能不能来做一个电子蜡烛,既特别还能保护环境呢?想着,麦克就开始倒腾起来:做一个能用声音吹灭的电子蜡烛。

所需元件
1× micro:bit主控板
micro:bit造物粒子(基于Mind+)06— 电子蜡烛图1
1× micro:bit扩展板
micro:bit造物粒子(基于Mind+)06— 电子蜡烛图2
1× LED灯模块
micro:bit造物粒子(基于Mind+)06— 电子蜡烛图3

1×  声音传感器模块
micro:bit造物粒子(基于Mind+)06— 电子蜡烛图4

能够通过它来感知外界声音的强弱,编写代码能实现由声音强弱控制LED小灯的亮灭。
1×  MicroUSB 连接线
micro:bit造物粒子(基于Mind+)06— 电子蜡烛图5
实现功能
  当声音强度模拟值小于80的时候,板载小灯显示数字“1”,表示声音较小,强度为1级;否则,声音强度模拟值大于80的时候,板载小灯显示数字“2”,表示声音较大,强度为2级。

【小知识】
想一想,是不是有点像我们之前做过的按钮风扇呢?在这里我们将再次用到如果...则...(否则)...的条件判断语句。

硬件连接
把声音传感器模块接到扩展板P0号接口上;把LED灯模块接到扩展板P1号接口上。
micro:bit造物粒子(基于Mind+)06— 电子蜡烛图6
编写程序
要想制作电子蜡烛,首先要认识声音传感器。我们可以将声音传感器与micro:bit板连接,通过microbit扩展的“显示”来观察声音强弱程度。

STEP1:单击指令区最下面的“micro:bit”,将“控制”代码模块中的条件语句“如果--否则”拖动至脚本区,将“运算符”中的“<”拖动至脚本区。条件语句代码模块的功能在于设定触发显示板载数字的条件,如果满足右边逻辑判断语句。则执行在“如果”右侧的代码语句,反之,如果不满足逻辑判断语句,则执行的是在“否则”右侧的代码。

micro:bit造物粒子(基于Mind+)06— 电子蜡烛图7  micro:bit造物粒子(基于Mind+)06— 电子蜡烛图8


STEP2:指令区的"读取模拟引脚P0" 能够读取P0引脚连接的声音传感器的模拟信号数值,模拟数值范围在0—1023之间。

micro:bit造物粒子(基于Mind+)06— 电子蜡烛图13
STEP3:设定“声音强度探测”的实现程序
逻辑指令中的“<”可以判断声音强度的模拟值是否达到设定的标准。
如下图,表示模拟读取引脚P0的数值“<80”成立的时候,即声音强度为1级的时候,板载小灯显示数字“1”,否则,模拟读取引脚P0的数值“>=80”时,声音强度为2级,板载小灯显示数字“2”。在“否则”代码之后,可以增加“等待1秒”,防止数字闪烁。

micro:bit造物粒子(基于Mind+)06— 电子蜡烛图9

对着声音传感器说话或者吹气,看你的板载LED点阵会不会显示相应的数字。
如果你已经很用力说话或吹气了却还是不能显示相应的数字,该怎么调节临界值80这个强度呢?改为更大还是更小?

任务二:电子蜡烛实现功能
当在Mind+软件上编写程序后,烧录至micro:bit小板子,通过声音传感器控制LED小灯的亮灭,就像过生日的时候吹蜡烛一样,对着声音传感器吹气,当声音达到一定强度的时候,比如之前设定的2级强度时,小灯就熄灭。
编写程序
STEP1:编程过程中,通过设置micro:bit的P0引脚值(连接声音传感器的引脚)来控制小灯的亮暗。
当声音达到设定的强度的时候,小灯熄灭;反之,当声音未达到设定强度时候,小灯保持亮起的状态。将如图所示的判断语句代码模块指令拖动入“循环执行”中。

micro:bit造物粒子(基于Mind+)06— 电子蜡烛图10

STEP2:没有吹气时,小灯呈现亮的状态;吹气时,小灯呈现灭的状态。当小灯呈现亮的状态时,应向当前引脚输出“高电平”;当小灯呈现灭的状态时,应向当前引脚输出“低电平”。使用“设置数字引脚P0输出”这个模块,由于当前小灯连接的是P1引脚,将P0修改为P1,拖至脚本区。

micro:bit造物粒子(基于Mind+)06— 电子蜡烛图12
STEP3:设定“电子蜡烛”的实现程序。
当声音传感器模拟值小于设定值80的时候,小灯保持亮起的状态,反之,轻轻一吹,声音强度大于80时,小灯将保持2秒的熄灭状态。

micro:bit造物粒子(基于Mind+)06— 电子蜡烛图11

更多课程,欢迎点击以下链接



第六空间2008  学徒

发表于 2018-7-13 14:29:33

我试了下,80数值太小了,我这边设成600效果不错。
回复

使用道具 举报

荼靡  见习技师

发表于 2018-10-25 11:30:43

这些模块可以去哪里买呀
回复

使用道具 举报

EVE  高级技匠
 楼主|

发表于 2018-10-27 00:54:59

第六空间2008 发表于 2018-7-13 14:29
我试了下,80数值太小了,我这边设成600效果不错。

有些模块的灵敏度会不一样、而且跟环境有很大关系
回复

使用道具 举报

EVE  高级技匠
 楼主|

发表于 2018-11-9 22:30:41

荼靡 发表于 2018-10-25 11:30
这些模块可以去哪里买呀

DF商城上购买,搜索Boson
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail