Skip to content

吉他

吉他

根据这篇教程来制作一把micro:bit吉他吧!

https://youtu.be/GYmdTFvxz80

时长

总共有5个活动。根据编程概念的熟悉程度,每个活动大约需要30-45分钟。

制作材料

  • 大块的硬纸板
  • 胶布
  • 马克笔或者颜料
  • 铝箔
  • 剪刀
  • 1块micro:bit、一个电池盒和2节7号电池
  • 4-5个鳄鱼夹
  • 耳机

活动

制作吉他的琴身

制作材料

  • 大块的硬纸板
  • 胶布
  • 马克笔或者颜料
  • 剪刀

步骤 1:设计琴身

吉他设计参考来源: https://youtu.be/xMSrWaOZkFg

  • 搜索吉他剪影的设计理念,并自定义吉他的形状。
  • 在平坦的纸板上追踪设计(最好是40-80厘米的硬纸板)。

  • 忽略一些难以在硬纸板上裁剪出的部分

  • 拆开一个纸盒以获得一个更长的纸板,并且可以增强折痕

步骤 2:裁剪琴身

剪切硬纸板:https://youtu.be/aUQkrFoEank

步骤 3:个性化吉他

用胶布、马克笔、颜料和其他可以用到的材料创作出不同的风格(你们都是艺术家哦!)

装饰吉他:https://youtu.be/zNAZTJeSxY8

每个人都可以创作出一个不同的设计哦!

补充说明!

坚固吉他:https://youtu.be/q0GkQdJmxjE

用一个带角度的硬纸条来使吉他更加坚固。(可选)

按钮、显示&声音

制作材料

1块micro:bit、一个电池盒和2节7号电池

2-4个鳄鱼夹

耳机

方块

步骤 1:制作一个笑脸

在浏览器中打开 https://makecode.microbit.org/

基本中,将一个显示LED积木块拖拽到代码编辑区域,并用LED创作出一个表情。

用USB线将micro:bit连接至电脑,并点击下载。根据操作指引,将代码下载到micro:bit上。

步骤 2:添加笑脸LED按钮事件

输入中,将一个当按钮A被按下积木块拖拽到代码编辑区域。

  • 将上面的显示LED积木块放入到这个积木块中。
  • 创建一个当按钮B被按下积木块,并将另一个带有笑脸的显示LED积木块放入其中。
  • 将代码下载到micro:bit, 并试着按下A、B按钮。

步骤 3:用鳄鱼夹连接耳机

用一个鳄鱼夹将耳机插头的底端连接到micro:bit上的GND引脚。

用另一个鳄鱼夹将耳机插头的顶端micro:bit上的P0引脚。

连接micro:bit和电池:https://youtu.be/zwRTmpKIaVU 将micro:bit和电池组连接到吉他的琴身上。

连接耳机的扬声器:https://youtu.be/ewyEW_U5G9M 用鳄鱼夹连接耳机

micro:bit可以播放音乐

播放铃声积木块可以播放从CB5范围内的字母音调。用一连串音调组成一首歌,就像《生日快乐歌》的开头(C、C、D、C、F、E)。

步骤 4:给按钮A&B添加播放铃声事件

音乐中,将播放音调C持续1拍积木块拖拽出来,放到当按钮A被按下下方的 显示LED积木块中。

  • 通过选择一个音符(字母)来修改音调,并体验一下高音和低音。
  • 节拍设置成1。

重复按钮B的事件 将代码下载到micro:bit 通电后,用耳机试一试AB两个按钮。

祝贺你完成了吉他制作的基本步骤!

挑战: 给每个按钮创建更长的示例音乐,而不仅仅是单个音符。 提示: 搜索“ABC 音乐音调”或者“简易音乐音符”,以及一首歌的名称。

Extra

笑脸 改造耳机

光传感器和音调控制

用光传感器来控制吉他弹奏的电子琴的音调。

概念: - 输入 - 光强度 - 音调/频率 - 比率映射 - 无限循环 - 带有编程性质的数学(乘法)

时长:30 - 45分钟

用光传感器来演奏音调 https://youtu.be/2cKg9pokVC4

micro:bit的LED光传感器

  • micro:bit根据照射到LED屏幕的光线来检测外部的光线强度。
  • 亮度级别积木块反应一个从0(黑暗)到255(明亮)的数值。
  • 需要一个无限循环来持续检测当前的亮度级别和控制音调。

无限循环

无限循环真的是使代码永远运行。当有需要不断检查一个事件或者是在代码中使用一个变化中的数值,无限循环就变得非常有用了。

方块

步骤 1:创建一个亮度等级检测器

搭建积木块基本中拖拽出一个无限循环积木块,放入到代码编辑区域。 从LED中拖拽出一个绘制条形图积木块,放入无限循环的下方。 从输入中拖拽出一个亮度等级积木块,放入到绘制条形图积木块中。

将绘制条形图的值设置为最高 = 255

步骤 2:测试改变条形图高度所需要的亮度

绘制条形图的亮度输入:https://youtu.be/pqU7bTcfQ_s (试着改变绘制条形图的最大值,看看它对条形图高度的影响)

255是最大的亮度输入读数 ,试一试小于255的其他数字。找到一个数值使图像可以显示1-5根条形图。

频率

频率的计量单位是Hz(赫兹),即每秒的循环或者是每秒的震动。一个正常人的耳朵可以检测到的频率范围是20Hz20,000Hz。micro:bit和耳机一起生成能够被检测到的大概的输出范围是50Hz - 6,000Hz。

261Hz 代表着一个C音调。

播放音调积木块可以指定一个数字化的频率,通过用一个带有代表C的数值的数字积木块来改变字母C 的音调。

步骤 3:用数学积木块乘以频率

积木块 输入.当按钮被按下(按钮.A, () => { 音乐.播放音调(261 * 2, 音乐.节拍(节拍数.½)) })

创建一个带有**数学**选项的**播放音调**积木块,用**乘法**积木块来设置**音调**。

接下来

添加一个按钮B积木块,用一个2以外的数字来乘以261以达到设置音调的目的。

将代码下载到micro:bit

测试乘以了 261Hz C 频率的声音

步骤 4:用亮度输入来控制频率

积木块 基本.永远(() => { 音乐.播放音调(输入.亮度等级() * 25,音乐.节拍(节拍数.¼)) })

创建一个无限循环,将一个播放音调积木块放入其中。

设置音调。使用乘法积木块将亮度等级输入乘以25或者试一试乘以大于或者小于25的其他数字。

测试吉他的亮度音调控制 用你的手盖住LED屏幕使micro:bit检测到的亮度发生变化,从而控制音调。

干得不错,这把吉他的声音很不错哦!

挑战:给亮度等级乘积模块创建一个变量,用按钮来改变亮度。(可选)

加速度计节拍控制

用加速度计来控制吉他的节奏 概念:重力加速度、X/Y/Z坐标节奏节拍映射图、绝对值

时长:30 - 45分钟

加速度计控制节奏:https://youtu.be/kA0HpqCWsjs

方块

加速度计、重力和倾斜

micro:bit内置了一个加速度传感器。这个传感器可以测量施加在micro:bit主板上的力。在地球上,我们受到了将我们拉向地面的重力的影响。

https://youtu.be/0SULoTKmkhI

当micro:bit屏幕朝上平放在桌面的时候,重力和micro:bit的Z轴对齐。

如果你将它向上或者向下倾斜,重力将会与Y轴对齐。这也就是我们检测倾斜的方法!如果沿着Y轴的力增加,micro:bit的倾斜将会变得更加垂直。

沿着不同的坐标轴(X/Y/Z轴)测量加速度

加速度积木块大概测量的是milli-g(毫克),也就是1g(克)的1/1000或者是1/1000的重力加速度。

步骤 1:图像加速度

创建代码 用于测量Y轴加速的的变化,并通过图像显示在LED屏幕上。 下载代码到micro:bit。 测试LED屏幕上1-5个条形变化的运动

补充说明

试着沿着X轴和Z轴绘制加速度。你能解释它们的不同吗?

映射 将一个标准映射到另一个标准上是很常见的-例如:温度。

步骤 2:将加速度映射到节奏上

micro:bit传感器生成的信号值是在0~1023之间。映射积木块会将信号转换成我们所需要的一个范围。

创建代码 将Y轴的加速度映射为节奏。 下载代码到吉他上的micro:bit。 测试加快和减慢节奏的动作。

步骤 3:结合光传感器音调控制

将上面的步骤都结合起来吧!

将上述的代码和之前活动中的光传感器音调控制代码结合起来。 下载代码到吉他上的micro:bit。 现在,用光传感器和加速度计调节吉他的音调和节奏吧!

按下引脚切换

用按下引脚来切换吉他的开关状态。

概念: - 电路 - 导体 - 变量/全局变量 - 条件:if,else - 布尔逻辑:True/False

时长:约45分钟

制作材料:

2-3个鳄鱼夹

方块

电路&开关

  • 电路需要电源(电池),电阻(如LED)和导体(金属,水,手)。
  • 开关通过用导体闭合(完成)电路来接通电源,因而电可以流动。 金属箔和金属丝是很好的导体。

在这项活动中,我们将通过人体来导电,从而闭合吉他的电路,实现吉他的开启和关闭状态的切换。

步骤 1:引脚按下测试

创建引脚按下代码 下载代码到micro:bit上

https://youtu.be/PAIU-vHqyGU

拿起micro:bit, 用一只手按住GND引脚,另一只手选择性地按住P0、P1和P2其中一个引脚。 电路信号是通过引脚来传输的。micro:bit检测到的信号经过你的两只手,再传输到micro:bit的GND引脚。

步骤 2:在吉他上安装导电金属箔

https://youtu.be/NX0ECcpXFes 在吉他琴身上添加金属箔,使其在弹奏时易于被触摸。

用鳄鱼夹将金属箔连接到micro:bit的GND引脚。

https://youtu.be/YkymZGNmkrE 在吉他琴颈上添加金属箔

用鳄鱼夹将金属箔连接到micro:bit的P1引脚。

步骤 3: 添加吉他开关

on这个全局变量,我们可以在micro:bit的开和关之间切换信息。

创建开关的代码 将代码下载到micro:bit 通过触摸P1来测试LED屏幕在开和关状态下的信息切换 最后需要编写的代码:在切换开关上,我们是想用 on = !on; 还是更直接一点的 on = true; on = false;

现在开始弹奏吉他吧!

用两只手同时触摸两块金属箔来接通开关的电路,并按下连接金属箔的引脚,来控制吉他的开关。

https://youtu.be/GYmdTFvxz80