micro:bit造物粒子(基于Mind+)05— 变速风扇

2018-06-125.6万
AI 快速预览详细 收起
micro:bit造物粒子05—变速风扇是一个基于Mind+平台的项目,通过micro:bit主控板、扩展板、风扇模块、按钮模块和旋钮模块,实现了风扇转速的控制。项目分为两个任务:按钮风扇和变速风扇。按钮风扇通过按钮模块控制风扇的启停,而变速风扇则通过旋钮模块调节风扇的转速。这个项目不仅锻炼了孩子的动手能力,还激发了他们对编程的兴趣。
micro:bit造物粒子(基于Mind+)05— 变速风扇

星际飞船在宇宙中随着惯性飘荡着,看着舷窗外明暗交替的灯光。
船舱内的温度也慢慢升高了起来,麦克的额头上都渗出了汗珠。麦克擦了一把汗说:“我们来做个小风扇凉快凉快吧。”micro:bit立刻表示赞成。
但是两人却有点无从下手,突然麦克灵机一动,想到了小米老师上节课所教给同学们的内容,呼吸灯的明暗变化不就是一个风扇的变速原理吗。于是,麦克和micro:bit开始了小风扇的制作。

所需元件
1× micro:bit主控板
micro:bit造物粒子(基于Mind+)05— 变速风扇图1
1× micro:bit扩展板
micro:bit造物粒子(基于Mind+)05— 变速风扇图2
1×风扇模块
micro:bit造物粒子(基于Mind+)05— 变速风扇图3

与家用风扇的原理相似,内部有马达,扇叶可以旋转,转速可以调整。
1× 按钮模块
micro:bit造物粒子(基于Mind+)05— 变速风扇图4

1× 旋钮模块
micro:bit造物粒子(基于Mind+)05— 变速风扇图5

1× MicroUSB 连接线
micro:bit造物粒子(基于Mind+)05— 变速风扇图6
任务一:按钮风扇
实现功能
当按下按钮的时候,外接风扇转动,松开按钮以后,风扇停止转动。


硬件连接
把按钮模块(旋钮模块)接到扩展板P0号接口上;

把风扇模块接到扩展板P1号接口上。
micro:bit造物粒子(基于Mind+)05— 变速风扇图7
风扇模块的使用
硬件连接时,我们将micro:bit与电脑相连接,进行程序调试和下载;

实验中,由于风扇或舵机等传感器的耗电量较大,所以,需要外接电源(或电脑USB口)独立供电。外接电源接在扩展板的外接电源接口VIN。
micro:bit造物粒子(基于Mind+)05— 变速风扇图8

通过检测P0号引脚的值判断按钮是否被按下。当按钮被按下时,设置风扇连接引脚为高电平,风扇转动,当松开按钮时,设置风扇连接引脚为低电平,风扇停止转动。

STEP1:按钮模块属于数字输入,单击“microbit”模块,选择“读取数字引脚P0”指令,并拖到脚本区。
micro:bit造物粒子(基于Mind+)05— 变速风扇图9

STEP2:“运算符”模块中的“ =  ”可以判断按钮是否被按下,如果按钮值为“1”成立,说明按钮被按下,否则,按钮没有被按下。将“数字读取引脚P0”嵌套在等式中
micro:bit造物粒子(基于Mind+)05— 变速风扇图10

STEP3:条件判断——怎样判断按钮是否按下?在“控制”模块中找到“如果那么执行,否则执行”指令。拖入脚本区的循环模块中。
micro:bit造物粒子(基于Mind+)05— 变速风扇图11

STEP4:将“ =  ”左右成立的条件指令嵌套到判断指令“如果那么执行,否则执行”中。
micro:bit造物粒子(基于Mind+)05— 变速风扇图12

STEP5:“microbit”模块中找到“设置数字引脚P0 输出 低电平”指令,将指令修改成“设置数字引脚P1 输出 高电平”和“设置数字引脚P1 输出 低电平”,分别放在“那么执行”和“否则执行”下面,当按钮按下之后,就会执行这个指令让风扇转起来。松开按钮的时候,风扇停止转动。
micro:bit造物粒子(基于Mind+)05— 变速风扇图13

任务二:变速风扇
实现功能
当旋钮旋至较大值时,micro:bit控制风扇转速增大;当旋钮旋至较小值时,micro:bit控制风扇转速变小。旋钮的旋转值不同,对应的风扇转速不同。
硬件连接
将任务一按钮风扇用到的按钮模块换成旋钮模块。
micro:bit造物粒子(基于Mind+)05— 变速风扇图14
编写程序
通过读取旋钮的值,来决定风扇转动的速度。旋钮的值为模拟值,取值范围在0-1023之间,将其值映射为风扇的速度值。
STEP1:旋钮连接板子的P0号引脚,单击“microbit”模块,选择“读取模拟引脚P0”指令,并拖到脚本区。
micro:bit造物粒子(基于Mind+)05— 变速风扇图15

STEP2:风扇的速度由P0对应的旋钮值决定,将P0的值赋值给P1,可以控制风扇速度的改变。Microbit板的读取模拟引脚(旋钮)的值范围是0-1023,比输出模拟(风扇)的范围0-255大,旋钮的参数范围远远超过了输出范围,除了可以使用“ /  (除号)”模块缩小范围,也可以使用“映射”指令,将0-1023的范围映射缩小到0-255。

将“运算符”模块中的“映射 从__到__”拖入脚本区,将“读取模拟引脚P0”放在“映射”两字的右侧框里,将数值改为“从 [0,1023] 到 [0,255]”。

注意:在高版本的Mind+(1.5.0及以上)中,模拟输出的范围调整为0-1023,因此不再需要使用映射到255。

micro:bit造物粒子(基于Mind+)05— 变速风扇图16
STEP3:将“microbit”模块中的“设置模拟引脚P0 输出 ”拖入脚本区的“循环执行”中,将P0改为P1。并两个指令嵌套在一起。
micro:bit造物粒子(基于Mind+)05— 变速风扇图17
能力提升
旋钮和按钮只能控制小等和风扇吗,能不能控制其他的硬件呢?编个程序旋钮或者按钮,控制点阵屏试试看吧。

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

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(10)
小火花73965
请问一下这个拓展板连接USB线但是在吗,mind+中没有相应的串口是怎么回事呀?
EVE
EVE
作者
回复小火花73965
可能是没装串口驱动,解决办法是在连接设备的那个地方点击“一键安装串口驱动”
哆啦a梦
请问用映射来做变速风扇,为什么不转呢?
EVE
EVE
作者
回复哆啦a梦
风扇需要的驱动力比较大,用手拨一下扇叶看看
1212122112
adsasdadasdsadasda
啥子
学习了
373316737
6666666666666666666666666
373316737
6666666666666666666666666
373316737
6666666666666666666666666
绝地智者
厉害了,新手来顶一顶帖子,加油学习~
Nick-ccq
此版本为V1.5.5 因此不需要映射。
CHUXUEZHE
已解决.
CHUXUEZHE
我的版本是v1.7.1如果按照你的方式风扇会转动,但是没有办法通过旋钮实现变速,速度恒定不变的,请问是什么原因呢?
rzyzzxw
老师课程写得很棒。邀请你加入我们社群,一起玩bit吧。
EVE
EVE
作者
回复rzyzzxw
好的呀,感谢!已经加您啦
- 没有更多了 -