好好搭搭官方文档
  • FAQ
  • 好好搭搭平台
    • 浏览器
    • 插件
    • 微信物联网小程序
      • 帐号绑定
      • 联网配置
      • 设备绑定
      • 物联应用
      • 在线编程
      • 自定义组件使用
    • 离线版
      • 好好搭搭Scratch中文离线版
      • 好好搭搭Scratch Arduino 2.0
      • Mixly For WuHan
    • 远程协助软件
    • PC端配网工具
    • 配网APP
  • 在线入门课程
    • Scratch编程入门
      • 第1课 喵喵初体验
      • 第2课 喵喵背古诗
      • 第3课 喵喵游西湖
      • 第4课 喵喵学做操
      • 第5课 喵喵学英语
      • 第6课 喵喵演奏会
      • 第7课 喵喵大抽奖
      • 第8课 喵喵运动会
      • 第9课 喵喵学画画
      • 第10课 喵喵出题目
      • 阅读材料一:好好搭搭Scratch中文离线版的使用
      • 阅读材料二:“好好搭搭”网站中的作品管理
      • 阅读材料三:使用PowerPoint制作中文文字角色
      • 阅读材料四:Scratch中的指令类型
      • 阅读材料五:Scratch中的三种程序结构
    • 基于Scratch的传感器板编程
      • 第1课 认识Scratch传感器板
      • 第2课 在Scratch中使用按键——点亮卧室里的灯
      • 第3课 在Scratch中使用LED——防火小卫士
      • 第4课 在Scratch中使用滑杆——生日快乐
      • 第5课 在Scratch中使用蜂鸣器——守卫松饼
      • 第6课 在Scratch中使用声音传感器——赛龙舟
      • 第7课 在Scratch中使用亮度传感器——太阳公公笑了
      • 第8课 在Scratch中使用摇杆――猴子接香蕉
      • 第9课 在Scratch中使用扩展模块——智能灯控
      • 第10课 综合作品制作——森林小卫士
    • 基于Scratch的Nova智能造物入门
      • 第1课 初识智能造物神器——Nova
      • 第2课 在Nova中使用单色LED——模拟红绿灯
      • 第3课 在Nova中使用数码管与按键——送给妈妈的计时器
      • 第4课 在Nova中使用蜂鸣器——音乐播放器
      • 第5课 在Nova中使用超声波传感器——魔法音乐盒
      • 第6课 在Nova中使用RGB LED与电位器——多彩台灯
      • 第7课 在Nova中使用声音与亮度传感器——智能声控灯
      • 第8课 在Nova中使用温湿度传感器——环境自动监测仪
      • 第9课 在Nova中使用电机与红外遥控――智能小风扇
      • 第10课 在Nova中使用舵机——会摇头的电风扇
      • 阅读材料一:“好好搭搭”插件的下载与安装
    • WU-Link智能造物入门
      • 第一课 初识物联网造物神器——WU-Link
      • 第二课 在WU-Link中使用点阵屏——玩转图案设计
      • 第三课 在WU-Link中使用点阵屏——送给妈妈的计时器
      • 第四课 在WU-Link中使用板载传感器——环境自动检测仪
      • 第五课 在WU-Link中使用加速度计——自制计步器
      • 第六课 在WU-Link中使用电子罗盘——指南针来了
      • 第七课 在WU-Link中使用红外传感器——红外电子琴
      • 第八课 Scratch与WU-Link互联互控——物联网点读机
      • 第九课 Scratch与WU-Link互联互控――物联网环境监测仪
      • 第十课 WU-Link之间的互联互控——抽签与抢答程序
      • 阅读材料一:WU-Link的无线网络连接设置
      • 阅读材料二:添加并绑定设备
  • 教学产品
    • Scratch传感器板
    • 好搭Box
    • Nova电子积木
      • Nduino HD
      • Nduino BOT
      • Nduino-Wulink
      • LED
      • 蜂鸣器模块
      • RGB模块
      • RGB灯带模块
      • 单按键模块
      • 四按键模块
      • 电位器模块
      • 亮度传感器模块
      • 超声波传感器模块
      • 声音传感器模块
      • 温湿度模块
      • 灰度传感器模块
      • 4位计时数码管
      • 4位计数数码管
      • 点阵模块
      • 红外接收模块
      • 红外对射模块
      • 蓝牙4.0模块
      • 单路电机驱动模块
      • 双路电机驱动模块
      • 大电流舵机驱动模块
      • MP3音乐模块
      • 火焰传感器模块
      • 霍尔开关模块
      • 继电器模块
      • 倾斜开关模块
      • 震动开关模块
      • 限位开关模块
      • 时钟模块
      • 陀螺仪模块
      • 摇杆模块
      • MQ2传感器模块
      • MQ3传感器模块
      • MQ7传感器模块
    • Arduino开源硬件
      • Arduino UNO主控板
      • Arduino IO扩展板
      • Wulink-UNO
      • haodaMIDI模块
      • LED灯模块
      • 蜂鸣器模块
      • RGB灯模块
      • 单按键模块
      • 四按键模块
      • 电位器模块
      • 亮度传感器模块
      • 超声波传感器模块
      • 声音传感器模块
      • LM35温度传感器
      • 温湿度传感器模块
      • 灰度传感器模块
      • 数码管模块
      • 点阵模块
      • 蓝牙模块
      • MP3模块
      • OLED模块
      • LCD1602显示模块
      • 红外接收模块
      • 红外发射模块
      • 激光发射模块
      • 继电器模块
      • 倾角传感器模块
      • 震动开关模块
      • 人体红外传感器模块
      • 上拉扩展模块
      • 土壤湿度模块
      • 颜色传感器模块
      • 摇杆模块
      • 音频录放模块
    • WU-Link
    • PythonBoard
    • 掌控
      • 掌控板刷好搭固件
      • WULink-Python
    • 3D打印套件
      • 时钟主板
      • 音乐主板
      • 通用主板
      • 机器人主板
      • 互联网主板
      • 电机主板
      • 灯光主板
      • 月球灯
    • 好搭磁性电子积木
    • 数字科学家
      • 主控
      • PH值传感器
      • 水浊度传感器
      • 拉力传感器
      • 压力传感器
      • 气压传感器
      • 水泵
    • KT板套件
    • 徽章板
    • 好搭Bit
      • Scratch3.0互动编程
      • MakeCode
      • Mind+
      • KittenBlock
      • MU Python编程
      • APP 移动端编程
  • 造物产品
    • WuLink-Nano
    • 好搭酷
  • 编程语法
    • Scratch
      • 指令
      • 程序结构
    • Arduino
      • 程序结构
      • 变量
      • 基本函数
      • 类库
    • Micropython
Powered by GitBook
On this page
  • 模块与指令
  • 滑竿
  • “读取滑竿”指令:
  • 作品制作
  • 第一步:设置舞台背景与角色
  • 第二步:在背景中编写音乐调节脚本
  • 第三步:在背景中编写亮度调节脚本
  • 第四步:编写小猫和蛋糕角色脚本

Was this helpful?

  1. 在线入门课程
  2. 基于Scratch的传感器板编程

第4课 在Scratch中使用滑杆——生日快乐

Previous第3课 在Scratch中使用LED——防火小卫士Next第5课 在Scratch中使用蜂鸣器——守卫松饼

Last updated 6 years ago

Was this helpful?

小猫喵喵的生日到了。为了给它一个惊喜,朋友们为它精心设计了一个生日晚会。生日之夜,“生日快乐”歌声奏响,还可以通过传感器板上的滑杆调整音量、调整房间灯光亮度。小猫在浓浓的生日氛围中与朋友欢度生日之夜。

模块与指令

要完成本课的创意构思,需要了解以下的新知识、使用以下的新指令:

滑竿

滑杆的实质是一个滑动变阻器,它可以通过滑动滑片调整电路中电阻的大小,从而改变电路的电流强度。

“读取滑竿”指令:

读取传感器板上滑杆的数值,取值范围是(0,1023)。该指令的数值会随着滑片的左右移动呈线性变化,传感器板在正常摆放的前提下,往左移,数值越小;越往右移,数值越大。

试一试

登录“好好搭搭”网站,连接传感器板,根据下表的要求操作,观察舞台上显示的滑杆传感器数值,将不同状态下的滑杆传感器数值记录下来。

作品制作

要完成本课范例,可以先添加舞台、角色,设置舞台和角色的初始状态;然后根据音乐的音量与滑杆参数值、房间亮度与滑杆值参数之间的关系,通过传感器板上的滑杆调整生日晚会的音乐和灯光,滑杆值越大,音乐越响,灯光越亮。

第一步:设置舞台背景与角色

1.通过“背景库”对话框添加“派对”(party)图片作为舞台背景;再通过“角色库”对话框添加小猫(Cat1)、蛋糕(Cake)角色;调整这两个角色的大小、将它们拖动到舞台的合适位置。

2.选中背景缩略图,单击“声音选项卡”中的

按钮,在“声音库”对话框的“循环音乐”类别中,打开“生日音乐”(birthday)声音。

3.隐藏舞台上除“滑杆”以外,其它无关的传感器数值。

第二步:在背景中编写音乐调节脚本

在背景脚本中,有两段脚本代码与“生日快乐”音乐有关:第一段代码如下左图所示,用于播放音乐。

第二段代码如上右图所示,用于实现通过滑杆调整音乐的音量大小。也就是通过滑动传感器板上的滑杆,可以改变音乐的音量大小。要实现这个效果,可以在舞台脚本代码中,将“读取滑杆”指令组合到“音量设定”指令的参数框内,具体脚本代码如上右图所示。

想一想

以上代码中,直接将滑杆值设定为音量值,在滑动传感器板的滑杆时出现了什么问题?你认为应该如何解决?

如果直接将“读取滑杆”指令组合到“音量设定”指令的参数框内,会导致音量调节不正常。当“读取滑杆”指令值从“0”变化到“100”时,音量调节还是正常的,但当“读取滑杆”指令值大于“100”以后,由于音量已达到最大值,所以继续调节滑杆,并不会改变音乐音量的大小。

这是由于滑杆的取值范围(0,1023)与音量的取值范围(0,100)不一致所造成的。因此,先要将滑杆与音量的数值进行换算。为方便计算,可以将滑杆的最小值看做“0”、最大值看做“1000”;当音量是“0”时,没有声音;当音量是“50”时,用正常声音播放音乐;当音量为“100”时,用最响的声音播放音乐。具体如下图所示:

通过上图,可以看出:滑杆数值是音量数值的10倍,也就是以下这个换算公式:音量数值=滑竿数值/10。

用滑杆控制音量的脚本代码也可以修改为如下图所示:

想一想

如果要用滑杆精确控制音量,换算公式应该是怎样的?

第三步:在背景中编写亮度调节脚本

在本课的范例作品中,通过传感器板上的滑杆还可以改变背景图片的亮度。与用滑杆控制音量一样,用滑杆控制背景图片亮度,也需要先找到它们之间的转换公式。但与控制音量不一样的是:图片亮度的取值范围是(-100,100),是由一段负数、一段正数组成的,因此滑杆和亮度的数值不能直接相除。如下图所示:

可以先把亮度值转化为正数,也就是在原来数值的基础上增加100,使亮度值最小是“0”,最大是“200”,如下图所示:

再观察上图,就可以得出滑杆是亮度数值的5倍,也就是如下所示的换算公式:亮度数值=滑杆数值/5-100。

用传感器板上的滑杆控制背景图片亮度的脚本代码如下图所示:

试一试

为了使背景的亮度变化呈现更好的效果,还可以怎样优化脚本?

第四步:编写小猫和蛋糕角色脚本

小猫、蛋糕这两个角色也应该随着背景图片的亮度变化而变化,具体的代码与背景图片的代码类似,可以通过复制得到:

单击选中背景缩略图,将“脚本区”中的“亮度特效设定”代码分别拖动到“角色列表区”小猫角色缩略图及蛋糕角色缩略图上,就可以将这段代码复制到这两个角色中。这样小猫和蛋糕的亮度也能够跟着背景图片亮度的改变而改变。

拓展思考

除了可以用传感器板上的滑杆控制Scratch舞台的亮度、声音,还可以综合前面所学的知识,为生日晚会添加更多的乐趣。比如,伴随着“生日快乐”音乐的响起,传感器板上的红灯渐渐亮起,房间内的气球也缓缓升起,小猫的朋友们依次出现,祝小猫生日快乐。

或者扫描下方二维码可以观看相关的视频。

或者扫描下方二维码可以观看相关的视频。

或者扫描下方二维码可以观看相关的视频。

或者扫描下方二维码可以观看相关的视频。

或者扫描下方二维码可以观看相关的视频。

或者扫描下方二维码可以观看相关的视频。

或者扫描下方二维码可以观看相关的视频。

或者扫描下方二维码可以观看相关的视频。

单击此处
单击此处
单击此处
单击此处
单击此处
单击此处
单击此处
单击此处