Skip to content

3.3 声控摩天轮

3.3.1 造型介绍

这是一座会 “听声变速” 的声控摩天轮,根据声音传感器检测到的声音次数控制转动速度,转动时主控板 RGB 灯还会持续闪烁,就像游乐园里的欢乐摩天轮,声音越热闹,转得越快,灯光越炫。

3.3.2 学习目标

  1. 在作品中实践 360° 积木舵机、声音传感器与主控 RGB 灯的基础功能,理解声音检测、速度控制与灯光闪烁的联动逻辑。
  2. 掌握声控摩天轮的机械搭建。
  3. 学会编写 “声音计数 + 速度切换 + 灯光闪烁” 的程序,理解多设备协同工作原理。

3.3.3 积木搭建

PDF 未正常显示? 在新窗口打开

3.3.4 设备接线

将声音传感器接线插入 ESP32 主控器 接口;

将 360° 积木舵机接线插入 ESP32 主控器 接口,舵机 接线插入 S1 的 引脚处。

如图所示:

3.3.5 程序编写

(1) 程序原理图

(2) 添加扩展库

在 “扩展” 中选择”传感器“添加 “声音传感器” 。

(3) 核心代码块解析

指令块所在类别功能说明
开启RGB彩灯自动循环渐变多种色彩的流动炫彩灯光效果。
熄灭指定编号(1/2/全部)的RGB彩灯,停止灯光输出。
控制指定接口的360°舵机,按设定的自定义速度持续转动。
获取对应接口声音传感器采集到的环境音量数值,用于判断声响大小。
获取设备上电后运行的总毫秒数,用于计时、延时判断、程序时间差计算。

(4) 完整程序展示

  1. 启动时,定义变量 “声音次数” 和 “状态” ,将两个变量初始化为 0 、1,进入声音检测等待状态;

  2. 在主程序中进行声音检测和计时:当 “状态” 为 1 时,若声音传感器(接口 5 )检测到音量值大于 35,将 “声音次数” 加 1,记录当前系统时间到变量 “时间“,防抖等待 0.1 秒,当前系统时间 - “时间“> 3000ms(3 秒),将 ”状态“ 设为 0,进入电机控制阶段,即摩天轮转动阶段;

  3. 在主程序中根据 ”声音次数“ 进行电机控制:当 “状态” 为 0 时,若声音次数为 1,电机 S1 以 20 速度控制摩天轮转动 5 秒后停止,如声音次数为 2,电机 S1 以 35 速度控制摩天轮转动 5 秒后停止,若声音次数大于等于 3 ,电机 S1 以 50 速度转动 5 秒后停止,每次转动主控 RGB 灯都进入闪烁各种颜色的呼吸灯,模拟游乐场的灯光,动作完成后,将 “状态” 设为 1,“声音次数” 设为 0,重新记录系统时间,等待下一次声音触发,控制频率为 0.01 秒,保证响应及时。

  • 程序源文件存放于「附录文件」目录内的「程序文件」,可前往该处下载压缩包获取。

3.3.6 程序下载

3.3.7 扩展提升

项目一:拍手分级变速摩天轮 3 秒时间窗口内拍手 1 次低速旋转 5 秒、2 次中速、3 次高速,无拍手安静后自动停机;不同拍手次数匹配专属灯光(单次红常亮、两次绿闪烁、三次炫彩流动)。练习声音计数、时间窗口防抖、多分支分级控制。 项目二:声光音乐联动摩天轮 摩天轮转动时同步播放对应速度的背景音乐,转速越快乐曲节奏越快,停机后灯光、音乐同步关闭。整合声音传感器、舵机、RGB 彩灯、蜂鸣器,打造完整游乐园声光一体智能装置。

3.3.8 技术支持与产品讨论

如果您在产品使用过程中遇到困难,欢迎您通过如下方式向我们反馈:

表单未正常显示? 在新窗口打开

如果您在产品体验后有更好的创意,欢迎您进入幻尔社区将您的创意分享: