micro:bit造物粒子(基于Mind+)06— 电子蜡烛-Arduino中文社区 - Powered by Discuz! Archiver

dfrobot 发表于 2019-11-18 14:58

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

本帖最后由 dfrobot 于 2019-11-18 15:52 编辑

micro:bit造物粒子(基于Mind+)06— 电子蜡烛
麦克的故事经历了一番太空历险之后,麦克和他的小伙伴终于有惊无险地回到了地球。有一天,麦克看见新闻上关于温室效应的报道:人类的很多活动都可能造成碳排放,比如普通百姓简单的烧火做饭都能造成碳排放,很多物体被火烧后的废气都会产生碳排放。麦克深受启发要从小事做起减少碳排放,保护环境。转眼间到了麦克生日这天,麦克突发奇想:能不能来做一个电子蜡烛,既特别还能保护环境呢?想着,麦克就开始倒腾起来:做一个能用声音吹灭的电子蜡烛。
所需元件1× micro:bit主控板http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/100338bkmzhuhqr1q2uhxz.png1× micro:bit扩展板http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/100359inil5v8vlhf8njna.png1× LED灯模块http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/100430vtiyzs6mlj2yi5sp.png
1×声音传感器模块http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/100441d6oojxjr910phdr1.png
能够通过它来感知外界声音的强弱,编写代码能实现由声音强弱控制LED小灯的亮灭。1×MicroUSB 连接线http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/100455yi0cg5wzwbfo5wct.png实现功能当声音强度模拟值小于80的时候,板载小灯显示数字“1”,表示声音较小,强度为1级;否则,声音强度模拟值大于80的时候,板载小灯显示数字“2”,表示声音较大,强度为2级。
【小知识】想一想,是不是有点像我们之前做过的按钮风扇呢?在这里我们将再次用到如果...则...(否则)...的条件判断语句。
硬件连接把声音传感器模块接到扩展板P0号接口上;把LED灯模块接到扩展板P1号接口上。http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/101159yicayhyaoa3ihfoz.png编写程序要想制作电子蜡烛,首先要认识声音传感器。我们可以将声音传感器与micro:bit板连接,通过microbit扩展的“显示”来观察声音强弱程度。
STEP1:单击指令区最下面的“micro:bit”,将“控制”代码模块中的条件语句“如果--否则”拖动至脚本区,将“运算符”中的“<”拖动至脚本区。条件语句代码模块的功能在于设定触发显示板载数字的条件,如果满足右边逻辑判断语句。则执行在“如果”右侧的代码语句,反之,如果不满足逻辑判断语句,则执行的是在“否则”右侧的代码。
http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/101236uvf9vgfs0egsnm0b.png    http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/101247qwehbj4eukcoj7hh.png

STEP2:指令区的"读取模拟引脚P0" 能够读取P0引脚连接的声音传感器的模拟信号数值,模拟数值范围在0—1023之间。
http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/221134z8i57yalgf1hqwgf.pngSTEP3:设定“声音强度探测”的实现程序。逻辑指令中的“<”可以判断声音强度的模拟值是否达到设定的标准。如下图,表示模拟读取引脚P0的数值“<80”成立的时候,即声音强度为1级的时候,板载小灯显示数字“1”,否则,模拟读取引脚P0的数值“>=80”时,声音强度为2级,板载小灯显示数字“2”。在“否则”代码之后,可以增加“等待1秒”,防止数字闪烁。
http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/101449vlihu8wuulouollk.png
对着声音传感器说话或者吹气,看你的板载LED点阵会不会显示相应的数字。如果你已经很用力说话或吹气了却还是不能显示相应的数字,该怎么调节临界值80这个强度呢?改为更大还是更小?
任务二:电子蜡烛实现功能当在Mind+软件上编写程序后,烧录至micro:bit小板子,通过声音传感器控制LED小灯的亮灭,就像过生日的时候吹蜡烛一样,对着声音传感器吹气,当声音达到一定强度的时候,比如之前设定的2级强度时,小灯就熄灭。编写程序STEP1:编程过程中,通过设置micro:bit的P0引脚值(连接声音传感器的引脚)来控制小灯的亮暗。当声音达到设定的强度的时候,小灯熄灭;反之,当声音未达到设定强度时候,小灯保持亮起的状态。将如图所示的判断语句代码模块指令拖动入“循环执行”中。
http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/102403tppcxib7rxxicij7.png
STEP2:没有吹气时,小灯呈现亮的状态;吹气时,小灯呈现灭的状态。当小灯呈现亮的状态时,应向当前引脚输出“高电平”;当小灯呈现灭的状态时,应向当前引脚输出“低电平”。使用“设置数字引脚P0输出”这个模块,由于当前小灯连接的是P1引脚,将P0修改为P1,拖至脚本区。
http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/221004s3cn05033n050prp.pngSTEP3:设定“电子蜡烛”的实现程序。当声音传感器模拟值小于设定值80的时候,小灯保持亮起的状态,反之,轻轻一吹,声音强度大于80时,小灯将保持2秒的熄灭状态。
http://mc.dfrobot.com.cn/data/attachment/forum/201806/20/102631hcfhtbtf9m3msh5m.png
更多课程,欢迎点击以下链接

[*]入门课程

[*]micro:bit造物粒子(基于Mind+)— 入门篇
[*]micro:bit造物粒子(基于Mind+)02— 自制表情包
[*]micro:bit造物粒子(基于Mind+)03— 闪烁的LED
[*]micro:bit造物粒子(基于Mind+)04— 手控信号灯
[*]micro:bit造物粒子(基于Mind+)05— 变速风扇
[*]micro:bit造物粒子(基于Mind+)06— 电子蜡烛
[*]micro:bit造物粒子(基于Mind+)07— 自动门
[*]micro:bit造物粒子(基于Mind+)08— 音乐盒
[*]micro:bit造物粒子(基于Mind+)09— 炫彩灯带
进阶课程
[*]micro:bit造物粒子(基于Mind+)10— 自平衡仪
[*]micro:bit造物粒子(基于Mind+)11— DJ演奏台
[*]micro:bit造物粒子(基于Mind+)12— 可移动门铃
[*]micro:bit造物粒子(基于Mind+)13— 拆弹游戏
▲mind+官网:http://www.mindplus.cc
Mind+最早是由DFRobot公司于2013年推出的图形化编程软件,能够让不懂编程的艺术家们通过几分钟的学习即可控制Arduino开源硬件,从而拓宽一些新的思维方式。
页: [1]
查看完整版本: micro:bit造物粒子(基于Mind+)06— 电子蜡烛