单元三

第9课 外接颜色传感器-颜色传感器测试

知识点:外接颜色传感器;颜色传感器测试

真实任务:完成「外接颜色传感器-颜色传感器测试」:改输入看执行器/显示是否跟随。

建议先修:第8课(卡住时先回去过一遍)。

任务场景:外接颜色传感器-颜色传感器测试
任务场景:外接颜色传感器-颜色传感器测试

外接颜色传感器:对照十学期兴趣课程示例,在自强板上完成输入—计算—输出。

一、任务目标

用颜色读数打印 RGB,还能判断偏红、偏绿还是偏蓝。

二、我们要学什么

  • 学习要点:颜色分量|先读 RGB,再比较哪路最大
  • 本课过关:能完成:说出颜色分量就是把一次读数拆成 R、G、B;载入编程体验,指出约每 1 秒在串口打印一次颜色读数;再运行完整程序,指出先转成元组再取出三路,比较后打印偏红、偏绿或偏蓝。
  • 示例对齐:编程体验对应 3-1-1 外接颜色传感器-颜色传感器测试.mix;完整程序对应 3-1-2 外接颜色传感器-颜色传感器简单应用.mix。

三、本节要点

本课要利用颜色传感器认识颜色分量:一次读数里有三路。重难点是分清两套——编程体验整包打印;完整程序拆开比较并说出偏向。要点对齐「颜色分量|先读 RGB,再比较哪路最大」。

1读场景把颜色探头对准色块,看它偏红、偏绿还是偏蓝
2对要点颜色分量|先读 RGB,再比较哪路最大
3载入运行十学期兴趣课程积木/代码

四、解题思路

任务:利用颜色传感器,用两套程序认识颜色传感。编程体验打印原始读数;完整程序拆成 R、G、B 再打印偏向。请把色卡靠近探头对照串口。

本课主要用到:外接颜色传感器(I2C 引脚 1、2);串口。

  1. 1利用颜色传感器,换色卡,看串口读数或偏向。
  2. 2初始化 I2C 和颜色传感器。
  3. 3循环读取颜色,约每秒一次。
  4. 4编程体验直接打印这次读数。完整程序转成元组,取出 R、G、B,比较后打印偏向。
  5. 5完成补全与从头编写,并对照现象。

流程示意

初始化I2C传感器循环读取颜色体验打印原始读数完整拆成RGB比较后打印偏向完成补全与从头编写并对照现象

五、图形块功能讲解

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

图形块分类作用本课用法
I2C 初始化
通信初始化 I2C 总线。SCL=1、SDA=2。两套都用这组引脚。
I2C 初始化传感器
外接传感器为 I2C 传感器建立连接。创建 UCS12071 颜色传感器对象。
打印输出
串口在控制台打印一行信息,便于调试。体验打印 color() 的原始结果;完整也可打印元组。
外接光学传感
外接传感器读取 UCS 系列传感器。读取当前颜色。两套都约每秒读一次。
打印
串口把内容显示到输出区。完整程序打印「偏红」「偏绿」「偏蓝」。
转为元组
元组把其它序列转成元组。完整把颜色读数转成元组,才能按下标取。
取元组项
元组按位置取值。完整取出第 0、1、2 项,分别当作 R、G、B。

六、知识点讲解

颜色分量一次读数里有 R、G、B 三路。哪一路更大,就偏向那种颜色。

先弄清:先读再拆开比较;再进编程练习对照串口。

七、编程练习

点「载入」打开 MixVM(board=sant_design)。默认图形化积木;起步程序与积木均来自 MixGo SANT 十学期兴趣课程/学期9。若题目带外设 design,载入时会自动导入接线。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

十学期兴趣课程:3-1-1 外接颜色传感器-颜色传感器测试.mix。载入后运行。

八、课堂练习

先完成两道正误判断,再做其余题目;选出后点「检查」。

  1. 判断:编程体验约每 1 秒在串口打印一次颜色读数。

  2. 判断:完整程序也是只打印原始读数,不比较 R、G、B。

  3. 本课说的「颜色分量」指的是?

  4. 编程体验和完整程序的主要差别是?

  5. 运行完整程序,把红色色卡靠近时应在串口看到?

九、本节小结

本课认识颜色分量:先读 RGB,再比较哪路最大。编程体验打印原始读数;完整程序拆开后打印偏红、偏绿或偏蓝。