起源星 L0-06 · 我自己的仪表板
第六关:把光线 / 温度 / 声音变成实时数字,做一个属于自己的工程师仪表板
← 返回元宇宙首页
任务说明:读取光线 / 温度 / 声音的传感器数值,通过串口打印出来,做一个实时监控面板
适龄建议:9–13 岁 | 建议已经知道“模拟口 A0/A1/A2 是可以测量强度”的孩子来玩 | 本关重点是“数据格式 + 串口观察”。
目标:学会用固定格式串口输出多路传感器数据 知识点:模拟输入 / 多传感器 / 串口监视器 进阶:以后可以把这些数据接到 Python / 网页可视化里
积木编程区(搭建属于自己的“实时仪表板”协议)
用循环不断读取光线 / 温度 / 声音,把它们以固定格式打印出来,例如:LIGHT:512 TEMP:24.3 SOUND:180
设备状态:未连接 建议使用 UNO,光敏电阻接 A0,温度接 A1,声音接 A2。
光线
温度
声音
任务:像做“心电图”一样,不断记录传感器变化。
建议数据格式(每 0.5 秒一行):
  LIGHT:【光线值】 TEMP:【温度值】 SOUND:【声音值】
例如:LIGHT:523 TEMP:24.7 SOUND:180
这样以后无论是 Arduino 串口监视器,还是网页里的仪表板,都可以按同一个规则解析。
ORIGIN DASH · MULTI-SENSOR PANEL
协议约定:用 LIGHT:/TEMP:/SOUND: 作为每个数值的前缀,方便解析。
Arduino UNO A0 · 光线 A1 · 温度 A2 · 声音 ATmega328P
虚拟多传感器仪表板: 当你的程序打印类似 LIGHT:523 TEMP:24.7 SOUND:180 时,这里会更新仪表显示。 实验阶段也可以手动拖动下面的滑块,模拟不同的光线 / 温度 / 声音环境,再想象真实传感器会给出怎样的数值。
LIGHT
0
/ 1023
光线强度,0 代表很暗,越接近 1023 越亮。
A0 · 光敏电阻
TEMP
0.0
°C
环境温度,可以先假定 15–35°C 之间变化。
A1 · 温度传感器
SOUND
0
/ 1023
声音强度,越大代表周围越吵。
A2 · 声音传感器
说明:滑块只是为了让孩子在没接真传感器时也能“玩仪表板”。真正接线之后,仪表应该主要跟随串口输出的数值变化。
串口 / 仿真日志(用于观察仪表板背后的原始数据)
[系统] 这里会显示你通过 text_print 打印的内容,例如: LIGHT:512 TEMP:24.3 SOUND:180 日后可以用同样的格式,接进 Python / 网页 / 数据库 等地方做更复杂的可视化。
任务剧情 & 操作步骤
这一关从“看灯”升级成“看数字”,从感受世界到量化世界。

1. 剧情:你是起源星的「环境观测官」

起源星需要一套实时环境监控系统:外面有多亮?多冷?多吵?
你的任务是:把这些看不见摸不着的东西变成数字,打印出来,做成一个“工程师用的天气 / 噪音仪表板”。

2. 操作步骤(给孩子看的版本)

  • (1)先在积木里搭一个骨架:当程序开始时 → 永远重复 → (读取 + 打印 + 等待 0.5 秒)
  • (2)在“传感器读数”里拖出“读取光线/温度/声音”的积木,分别接成 3 个变量(例如 light / temp / sound)。
  • (3)用 text_join 拼出一行字符串,比如:"LIGHT:" + light + " TEMP:" + temp + " SOUND:" + sound
  • (4)用 text_print 打印这行字符串,最后再等待 0.5 秒,形成“每半秒一行”的数据流。
  • (5)点击“运行仪表板仿真”,观察右下角的日志窗口,再对比右侧仪表板上的数值变化。
  • (6)切到“代码模式”,看看 C++ 里是怎样用 analogRead + Serial.print/println 实现这一整套仪表板协议的。

3. 给家长的引导脚本

  • 可以问:“如果你把今天一整天的光线值都记下来,你能分辨出什么时候是白天什么时候是晚上吗?”
  • 可以让孩子想象:以后把这些数据画成折线图,是不是就变成了“光线/温度/噪音的时间曲线”了?
  • 当孩子随意打印字符串时,只提示:“给每个数值加上固定的前缀,这样别的程序才知道哪一个是光线,哪一个是温度。”

4. 本关完成标准

  • 能用固定格式(包含 LIGHT/TEMP/SOUND 前缀)打印出三路传感器数据。
  • 日志中每隔固定时间出现一行新的数据,形成“实时数据流”。
  • 能用自己的话解释:什么是“协议”(即:大家约定好前缀和顺序,任何仪表板都能根据这个协议画图)。
家长提示:这一关的本质是“建立数据协议”和“观察时间序列”。 日后无论是物联网、量化交易、环境监控,都是先把世界变成按时间排列的一串数字,再去分析和可视化。