姓名:______________________________
日期:____________________
第 4 周
让机器人学会感知
读取真实的传感器数值,找出阈值,并给机器人做校准,好让它感知到的东西靠得住。
70 至 85 分钟
要点
机器人可以拥有的四种感官
机器人靠传感器感知世界。常见的有四种:触碰传感器(有没有被按下?)、距离传感器(最近的东西有多远?)、光线传感器(有多亮?)和颜色传感器(这个表面是什么颜色?)。
读数是一个数字,不是「是」或「否」
大多数传感器不会只说「是」或「否」,它们给出的是一个数字,叫作传感器读数。距离传感器可能读出 12 厘米;光线传感器可能读出亮度 47。
阈值把数字变成判断
阈值是你自己挑的一个分界数字,用来区分两种情况。如果你挑 15 厘米,那么小于 15 的读数就算「近」,大于 15 的就算「远」。
探测极限:每个传感器都有量程
没有哪个传感器什么都能感知。距离传感器超过一定量程就不管用了:它也许在 2 米以内读得挺准,再远就是一堆废数。它还能感知到的那个最远的点,就是它的探测极限。
噪声:为什么只测一次不够
把距离传感器对准一堵不动的墙,连着读几次。你可能会得到 30、31、30、29、31:明明什么都没变,数字却在小幅跳动。这种跳动就叫噪声。
校准与可靠性
校准的意思是核对或调整传感器,让它的读数在这个房间、这台机器人上是准确的。光线传感器在阳光充足的房间和在昏暗的房间读数不一样,所以同一个阈值不可能到处都好使:你得针对身处的这个房间去校准。
要认识的词
- 触碰传感器:
- 一种能判断自己有没有被按下的传感器,就像按钮或者保险杠。
- 距离传感器:
- 一种测量最近的物体有多远的传感器,通常以厘米为单位。
- 光线传感器:
- 一种测量环境有多亮或多暗的传感器,光越亮,给出的数字越大。
- 颜色传感器:
- 一种读取正前方表面颜色的传感器,比如红色、蓝色或白色。
- 传感器读数:
- 传感器在某一刻给出的数字,比如 20 厘米,或者亮度 47。
- 阈值:
- 你自己挑的一个分界数字,用来区分两种情况,比如「比 15 厘米还近就算近」。
- 探测极限:
- 超过这一点传感器就感知不到了,比如距离传感器读不出大约 2 米以外的东西。
- 校准:
- 调整或核对传感器,让它的读数在这个房间、这台机器人上是准确的。
- 噪声:
- 什么都没变,读数却还是会小幅跳动,正因如此才要多测几次。
- 可靠性:
- 你能有多信得过一个传感器每次都给出同样、正确的读数。
- 一次测量:
- 一场测试里的单独一次测量;通常要做好几次,然后互相比较。
- 基准读数:
- 在一个已知、稳定的条件下先测出来的读数,用来和其他读数作比较。
你的活动
传感器考察实验
目标:测量条件变化时传感器读数如何随之变化,并找出一个能干净利落分开两种情况的阈值。
- 挑一个条件一步一步地改(到墙的距离、亮度,或者表面的颜色),每改一步就读一次传感器。
- 把每个读数都记在记录表上。然后看着这些数字挑一个阈值:一个能把「近和远」或者「亮和暗」分开的分界值。
- 记住:这一周机器人只负责读数和报告。这些数字是什么意思,由你来判断。
写下发生了什么:
校准与阈值挑战
目标:靠多测几次来对付噪声,然后校准出一个在这个房间里可靠好用的亮暗(或远近)阈值。
- 挑一个稳定的条件,什么都别动,对着同一样东西连读几次;留意数字跳动了多少。这个跳动就是噪声。
- 在一个明显「低」的条件和一个明显「高」的条件下各测一次(暗对亮,或者近对远)。把阈值定在中间,好把两者干净利落地分开。
- 检验你的阈值:确认低条件的读数都落在一边、高条件的读数都落在另一边。如果不是,就调一调,这就是校准。
写下发生了什么:
预测
动手测试之前,先写下你的猜测。
测量之前先想想:墙在 20 厘米处时距离传感器读出 20 厘米,那你预测把墙挪到 40 厘米时它会读出什么?是更大还是更小的数字,大概是多少?
预测一下:对着同一堵不动的墙连读五次,每次会得到一模一样的数字吗?
测试并记录
距离与读数对照表
把墙(或者把条件)设到表上列出的每个距离,读取传感器并记下数字。要是数字在跳,就读三次取中间那个。
记录:每个设定距离下的传感器读数,以及你会把它算作近还是远
| 设定距离(厘米) | 传感器读数 | 算近还是算远? |
|---|---|---|
三次测量的噪声检查
挑一个条件,之后不要再改动它。连着读三次传感器,把每次读数都记下来,看看它跳动了多少。
记录:什么都没变的情况下,几次测量之间读数变化了多少(也就是噪声)
| 第几次测量 | 传感器读数 | 与第 1 次的差值 |
|---|---|---|
知识检测
逐题作答。选择题请把最合适的答案圈出来。
把每种传感器和它测量的东西连起来。
距离传感器
光线传感器
触碰传感器
颜色传感器
某样东西有多远
环境有多亮
有没有东西被按下
一个表面是什么颜色
(Draw a line from each item on the left to its match on the right.)
用你自己的话说说,什么是传感器阈值?
什么是传感器读数?
- A.传感器在某一刻给出的数字
- B.传感器的名字
- C.机器人的颜色
- D.一条让机器人动起来的指令
距离传感器对着一堵墙读出 30 厘米,对着一堵更近的墙读出 12 厘米。这说明读数是怎么回事?
- A.东西越近,读数越大
- B.东西越近,读数越小
- C.读数是随机的,没什么意义
- D.传感器坏了
你想让机器人把 15 厘米以内的一切都当作「近」。这个数字 15 叫什么?
- A.探测极限
- B.噪声
- C.阈值
- D.执行器
你对着同一堵不动的墙读了五次,得到 30、31、30、29、31。这些数字为什么会跳?
- A.墙一直在动
- B.因为有噪声,所以要多测几次
- C.阈值定错了
- D.传感器没电了
你的亮暗阈值在教室里好用,到了阳光充足的房间却失灵了。你该怎么办?
- A.放弃算了,光线传感器在外面就是不管用
- B.为新房间校准传感器,并定一个新的阈值
- C.让机器人跑得更快
- D.多装几个轮子
反思
你的传感器什么时候给出过出乎意料的读数?可能是什么造成的?
你对着一个不动的物体读了好几次,得到的数字却略有不同。这是为什么?你又是怎么处理的?
为什么一台在某个房间里感知得完美无缺的机器人,换个房间还得重新校准?