三、智慧家居

第10课 人体感应灯

任务场景:人体感应灯
任务场景:人体感应灯

一、任务目标

理解人体感应开关灯,能说出阈值和延时各管什么。

二、我们要学什么

  • 学习要点:先设阈值和保持时间,再按 result 开关灯
  • 本课过关:能指出体验延时固定 2000ms;完整代码可调秒数。
  • 示例对齐:体验题对应 「3-2-1 人体感应灯」;完整代码对应 「3-2-2 可变人体感应灯」。

三、本节要点

result() 为真才开灯。体验没有 1号按键/2号按键。

1读场景明确真实任务
2对要点有人亮、离开灭
3载入运行兴趣课程积木/代码

四、解题思路

  • 输入:人体感应结果;完整代码另用 1 号按键/2 号按键。
  • 输出:1、2 号灯;完整代码另显示延时秒数。
  • 生活对照:楼道感应灯,可调保持多久。
  • 验证现象:靠近灯亮,离开一段时间后灭。

本课主要用到:人体传感、板载灯;完整代码另用点阵和按键。

  1. 1设定感应阈值约 5000。
  2. 2设定延时约 2000 毫秒。
  3. 3感应为真则两灯开。
  4. 4完整代码用按键改延时秒数。

流程示意(可对照左侧文字)

设定感应阈值约 5000设定延时约 2000 毫秒感应为真则两灯开完整代码用按键改延时秒数

五、图形块功能讲解

下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。

图形块分类作用本课用法
雷达检测阈值
板载传感设置雷达触发灵敏度。threshold(5000)。
是否交互
交互查询人体感应是否触发。xsensor.result() 决定灯。
math max min
数学取两个数中的较大或较小值。完整代码延时秒数下限 1。

六、知识点讲解

人体感应开关灯。阈值管灵不灵,delay 管人走后还亮多久。体验:延时写死 2000ms。完整代码:延时秒数×1000 写回模块。2号按键:秒数减 1,且不小于 1。

对照与过关:能说出阈值和延时各管什么。先弄清本课输入与输出,再进编程练习对照现象。

七、编程练习

点「载入」打开 MixVM(board=mini_design)。本学期外设课会自动导入对应外接模块到右侧仿真;默认图形化积木,起步程序与积木来自兴趣课程/学期5。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

兴趣课程:3-2-1 人体感应灯.mix。载入后运行。

八、课堂练习

先完成两道判断题,再完成选择题;全部选定后点「检查」。

  1. 判断:体验可以用 1号按键、2号按键 改感应保持时间。

  2. 判断:有人靠近且 result 为真时,1 号和 2 号灯都会开。

  3. 体验 delay_ms 的参数是?

  4. 完整代码 2号按键 会把延时秒数?

九、本节小结

本课主题是人体感应灯:先设阈值和保持时间,再按检测结果开关灯。体验程序延时固定约 2 秒;完整程序可调秒数。