舞台王者

舞台王者1.学习目标2.积木搭建3.电机接线4.代码解析5.编写及下载程序6.实验现象

 

1.学习目标

本次课程我们主要学习如何通过Python编程实现,搬运达人一边“唱歌”一边“跳舞”,也就是电机,舵机,蜂鸣器,RGB灯同时工作。

 

2.积木搭建

积木搭建步骤详见资料中【组装课程】--【搬运达人】的安装图纸或者积木安装画册。

 

3.电机接线

小车左边电机接线插入Super:bit扩展板M1接口,黑线靠近电池一侧;

小车右边电机接线插入Super:bit扩展板M3接口,黑线靠近电池一侧;

积木舵机接线插入Super:bit扩展板S1接口,舵机橙色接线插入S1的黄色引脚处。

如下图所示:

image-20250607163959305

 

!注意事项:

第一次进行与积木舵机相关的课程时,我们需要先将舵机上的齿轮拆下,把本次课程的程序上传至micro:bit;然后打开Super:bit扩展板电源开关,等待积木舵机转至初始位置;接着,我们可以关闭电源,调整小车铲子角度与地面平行,再装上舵机齿轮。(若之前已经使用过搬运达人与舵机相关程序,可跳过此步骤)

image-20250607094947210

 

4.代码解析

本次课程的程序请见舞台王者.py文件。

首先从microbit导入本节课需要用到的库:superbit库专用于superbit扩展板;music库用于播放音乐;neopixel用于控制RGB灯。

display.show(Image.HAPPY):在microbit点阵上显示笑脸图案; np = neopixel.NeoPixel(pin12, 4):RGB灯初始化设置,一共有4个RGB灯,连接在microbit主板的P12引脚上面(可查询硬件接口手册得知); superbit.servo270(superbit.S1, 105):初始化使得积木舵机转动到105°左右;

while True: 无限循环

music.play('E4:4'):蜂鸣器播放音调。参数一E4表示音调,参数二4表示节拍。

superbit.servo270(superbit.S1, 135):积木舵机转动到135°;

superbit.motor_control(superbit.M1, 255, 0):接在M1接口的电机以255的速度正转;

superbit.motor_control(superbit.M3, 255, 0):接在M3接口的电机以255的速度正转;

np[0] = (255, 0, 0)

np.show():第一个RGB灯点亮红色。

依此循环。

关于音调:

这里播放的是歌曲《欢乐颂》,大家可以在网上自行查阅该歌曲的简谱,然后根据简谱编写相应的程序。例如:music.play('E4:4'), music.play('F4:8') ...

 

5.编写及下载程序

1.打开Mu软件,在编辑窗口输入代码。注意!所有的英文与符号都应该在英文状态下输入,使用Tab键(制表键)进行缩进,最后一行以空白程序结尾。

2.点击大拇指‘Check’按钮,检查一下我们的代码是否有错误。如果某一行出现光标或者下划线,表示语法错误,请检查并修改,如果没有错误,左下方会提示检测没有问题。

image-20250616213555929

3.点击‘REPL’按钮,检查是否下载了Superbit库,如果没有请参考【课前准备】-->【Python编程环境介绍】。

image-20250616213637497

4.程序编写完成之后,用microUSB数据线连接电脑和microbit主板,请点击‘Flash’按钮,将程序下载到micro:bit主板上。(需要再次点击‘REPL’按钮,关闭导入库文件功能,才可以正常下载程序)。

image-20250616213730022

5.如果出现下载失败的问题,请确认microbit是否通过microUSB数据线与电脑正常连接,并且已经导入了Superbit的Python库。

 

6.实验现象

程序下载成功以后,micro:bit点阵会显示笑脸,如下图所示。打开电源开关,搬运达人会播放音乐《欢乐颂》,并且会前进-->后退-->左旋-->右旋-->左转-->右转,RGB灯会切换不同的颜色,铲子也会不断地举起、放下。

image.png

如果需要重新开始请按下micro:bit主板背后的复位键。