一、传感妙用
第1课 空余车位检测

一、任务目标
理解双条件占用,能口述「为什么必须用并且,不能只看接近」。
二、我们要学什么
- 学习要点:接近 + 光强必须同时满足才判占用,不能只看一个数
- 本课过关:能指出红灯条件是「接近>50 并且 光强<30」;完整代码占用时点阵显示停放计时。
- 示例对齐:体验题对应 「1-1-1 空余车位检测」;完整代码对应 「1-1-2 空余车位检测并计时」。
三、本节要点
本节不是摄像头认车。体验 1-1-1 每秒读接近/光强、打印、改灯色;点阵停放秒数是完整代码 1-1-2。
四、解题思路
- 输入:接近传感、光照传感。
- 输出:体验:串口打印两数,一号灯红或绿;完整代码:占用时点阵显示停放计时。
- 生活对照:车位下方既要「有东西挡住」,又要「够暗」,才更像有车。
- 验证现象:用手靠近且遮光应变红;只靠近仍很亮或只遮光不靠近,应保持绿。
本课主要用到:板载接近与光照、指示灯;完整代码另用定时器、点阵屏。
- 1明确任务「空余车位检测」:先看灯色和串口打印,不要去找像素或二值化。
- 2写出占用条件:接近值大于五十,并且光强小于三十。
- 3体验:占用亮红灯,空闲亮绿灯;每轮延时约一秒。
- 4完整代码:占用时打开定时器累加停放时长,离开则计时清零并显示。
- 5载入后对照灯色与打印;再试只遮光或只靠近,看是否仍判为空闲。
流程示意(可对照左侧文字)
五、图形块功能讲解
下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。
| 图形块 | 分类 | 作用 | 本课用法 |
|---|---|---|---|
![]() | 控制 | 按条件反复执行内部积木;条件为「真」时相当于 「重复执行」 无限循环。 | 载入后可在工具箱对照本课用法。 |
![]() | 变量 | 给变量写入新值。 | 载入后可在工具箱对照本课用法。 |
![]() | 板载传感 | 读取近距或触摸相关数值。 | 体验:接近值 = ps_nl()。 |
![]() | 板载传感 | 外接或板载光照读数。 | 体验:光强值 = 光照值()。 |
![]() | 串口 | 一次打印多个值。 | 体验:print(接近值, 光强值)。 |
![]() | 变量 | 读取变量当前值。 | 载入后可在工具箱对照本课用法。 |
![]() | 控制 | 满足条件时执行对应分支,用于按键、传感阈值的判断。 | 载入后可在工具箱对照本课用法。 |
![]() | 逻辑 | 组合多个条件。 | 载入后可在工具箱对照本课用法。 |
![]() | 逻辑 | 比较两个值(大于/等于/小于等),得到真或假。 | 载入后可在工具箱对照本课用法。 |
![]() | 板载执行 | 设置板载状态灯颜色。 | 体验:占用红(1),空闲绿(2)。 |
![]() | 控制 | 暂停指定时间,常用于动画节奏或等待。 | 载入后可在工具箱对照本课用法。 |
![]() | 控制 | 按固定周期触发回调,适合节拍、采样。 | 完整代码:0号定时器、周期=1000,回调里累加停放计时。 |
![]() | 板载显示 | 按设定时间显示图案或字符串。 | 完整代码:占用时点阵显示停放计时。 |
![]() | 函数 | 封装一段可重复调用的积木。 | 载入后可在工具箱对照本课用法。 |
![]() | 变量 | 声明在函数内外都能用的变量。 | 载入后可在工具箱对照本课用法。 |
![]() | 数学 | 对变量做 +=、-= 等自身运算。 | 完整代码:停放计时 += 1。 |
六、知识点讲解
双条件占用:接近够近、环境够暗,两件事同时成立才把 1 号灯设成红。不是图像识别。接近值:ps_nl() 越大越像有物体靠近。体验阈值是 50。光强值:光照值() 越小越暗。体验阈值是 30。只用光强会把阴天当成「有车」。停放计时:完整代码在占用期间让定时器每秒 +1,离开就把计时和「开始停放」清掉。
对照与过关:改接近阈值或光强阈值再运行,红灯难易会变。能口述「为什么必须用并且,不能只看接近」。先对灯色,再对照完整代码的点阵秒数。
七、编程练习
点「载入」打开 MixVM(board=mini_design)。默认图形化积木;起步程序与积木均来自 MixGo MINI 兴趣课程/学期3。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。
兴趣课程:1-1-1 空余车位检测.mix。载入后运行。
正在载入编程环境
正在载入 MixGo MINI 仿真编程环境…
八、课堂练习
先完成两道判断题,再完成选择题;全部选定后点「检查」。
判断:本课体验是用摄像头像素/二值化判断车位。
判断:只有接近>50 并且 光强<30 时,1 号灯才设为红色。
体验题空闲时 1 号灯应是?
完整代码里停放计时何时增加?
九、本节小结
本课主题是车位占用:接近和光强必须同时满足才判占用。体验程序接近大于 50 并且光强小于 30 才亮红灯;完整程序占用时点阵显示停放计时。不能只看一个数。















