1.一秒变脸

您当前位置: 首页 > Superkit积木套件 > 4.Python课程

1.一秒变脸.rar  点击下载

学习目标 

本次课程我们主要学习如何通过Python编程,让变脸王积木造型实现一秒变脸的玩法。

积木搭建

积木搭建步骤详见资料中【组装课程】--变脸王】的安装图纸或者积木安装画册。

舵机接线

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

如下图所示:

image.png

注意事项:

第一次进行与积木舵机相关的课程时,我们需要先将舵机上的齿轮拆下,把本次课程的程序上传至micro:bit然后打开Super:bit扩展板电源开关等待积木舵机转至初始位置接着,我们可以关闭电源,调整变脸王的面罩关闭如下图所示,再装上舵机齿轮。(之前已经使用过变脸王与舵机相关程序可跳过此步骤

image.png

代码与解析

本次课程的程序如下图所示。

image.pngimage.png

首先从microbit导入本节课需要用到的库:superbit用于superbit扩展板random用于产生随机数

superbit.servo270(superbit.S1, 50): 初始化使得积木舵机转动到50°

microbit.sleep(500): 延时00毫秒;

superbit.servo270(superbit.S1, 140): 初始化使得积木舵机转动到140°

display.scroll("Go!"): 点阵上滚动显示字符串Go!

 

def Face_show():

    global a

    a = random.randint(1, 7): 随机输出1~6,这里要注意函数random.randint(a, b)输出的随机数是a~(b-1)

    if a == 1:

        display.show(Image.HAPPY)

...

定义一个函数用来随机显示不同的图案。

while True:

    superbit.servo270(superbit.S1, 50)

    microbit.sleep(200)

    Face_show()

    microbit.sleep(200)

    superbit.servo270(superbit.S1, 140)

    microbit.sleep(1000)

无限循环,舵机转动到50°(变脸王面罩关闭),延时200毫秒之后,调用随机显示图案函数Face_show()延时200毫秒,舵机转动到140°(变脸王面罩打开),我们可以看到点阵上的图案已经随机变化了。

编写及下载程序


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

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

image.pngimage.png 

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

image.png 

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

image.png 

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

实验现象

程序下载成功以后,打开电源开关,舵机会初始化到50°(变脸王面罩关闭)500毫秒之后,舵机会转动到140°(变脸王面罩开启),点阵上显示“GO!。然后开始随机变脸,并以这样的状态保持循环。

本次程序中写了六种图案,大家可以自行修改程序增加更多的图案显示。