Skip to content

3.3 智能时钟

3.3.1 造型介绍

  这是一台可以 “倒计时提醒” 的智能时钟,设定时长后点阵屏实时跳动剩余时间,计时结束蜂鸣器自动鸣响,是学习计时的贴心小闹钟。

3.3.2 学习目标

  1. 理解倒计时计时器的工作逻辑,掌握数据接收、变量控制与条件判断的编程方法。

  2. 学会使用点阵屏显示数字、蜂鸣器播放提示音,实现完整的计时反馈效果。

3.3.3 积木搭建

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

3.3.4 模式切换

本造型需要用在线大模型,如果已经进入在线大模型模式即可跳过此步骤直接进入设备接线步骤,否则请参考"4.4.10 固件更新"的内容重新烧录对应固件。

3.3.5 设备接线

将点阵模块接线插入 ESP32 主控器 接口;

将 WonderLLM 模块接线插入 ESP32 主控器 接口。

如图所示:

3.3.6 程序编写

(1) 程序原理图

(2) 添加扩展库

  • 在 “扩展” 中选择 “传感器” 添加 “WonderLLM” ;
  • 在 “扩展” 中选择 “输出模块” 添加 “点阵模块” 。

(3) 核心代码块解析

指令块所在类别功能说明
向WonderLLM大模型发送自定义文本信息。
配置MCP工具调用参数,自定义工具名称、描述、执行指令与返回参数,设置调用阻塞与数据返回规则。
开启或关闭MCP开关,控制WonderLLM是否启用自定义工具调用能力。
读取MCP工具执行完成后返回的结果数据。
控制对话消息输出模式,可发送动作结束标识、开启或关闭对话内容打印输出。
控制点阵屏输出并展示指定数字,可实时刷新屏幕显示数值。
控制点阵屏加载并显示预设图案,可自定义切换各类图形、符号画面。
驱动蜂鸣器播放指定音高、节拍的乐曲,后台模式下运行时不阻塞后续程序执行。
立即停止蜂鸣器发声,终止当前播放的音调或乐曲。
布尔逻辑判断,对输入条件进行真假判定或取反运算。
自定义录入或调用文本内容,生成可参与拼接、判断、显示的字符串数据。
判断数组、元组、字典内是否存在指定元素,返回布尔结果。
根据指定键名,提取字典中对应存储的数值或文本内容。

(4) MCP参数配置

工具名称:self.robot.setTime

​ 1.工具描述: You are an intelligent alarm clock with a countdown function that can be set. Parameter: 1 Countdown time: in seconds.

​ 简述:你是一个智能闹钟,带有可以设置的倒计时功能。参数:1.倒计时时间:秒为单位。

​ 2.指令名称:setTime

​ 3.返回参数:[["time","int","0","0","10"]]

​ 4.是否阻塞直到调用完成:是

​ 5.是否返回数据:否

​ 6.功能:这段 MCP 配置是给 WonderLLM 模块定义倒计时工具:让 WonderLLM 能下发 0-10 秒时长指令控制机器人启动 / 停止倒计时,调用时程序会阻塞等待倒计时完整执行完毕,且无需向 WonderLLM 回传运行数据。

(5) 完整程序展示

  1. 上电初始化 WonderLLM 模块的硬件接口为 3,并启用 MCP 工具,配置 setTime 倒计时参数区间,同步初始化点阵模块的硬件接口为 7;

  2. 程序循环等待语音下发倒计时时长参数,持续接收模型反馈指令;

  3. 读取时长数值后点阵屏实时递减刷新剩余秒数,计时归零蜂鸣发声提醒;

  4. 计时结束全部设备复位,等待下一条语音计时指令。

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

3.3.7 程序下载

3.3.8 扩展提升

项目一:双任务倒计时区分提醒

  语音可分段设置短时、长时两组倒计时,计时运行中点阵实时刷新剩余秒数,计时完成后点阵显示 “END”,蜂鸣分段长短音区分不同倒计时任务,练习多变量计时存储与条件音效判断。

项目二:整点声光提示功能

  单次计时结束后,若设定时长为整十秒,点阵显示数字图案,蜂鸣播放连续提示旋律,无语音操作 20 秒后点阵屏熄灭省电,掌握定时判断、点阵动态图案与屏幕休眠逻辑。

3.3.9 技术支持与产品讨论

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

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

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