震动检测器

我们之前在发布 CodeLab Adapter 3.3.1里写到 @taotao 的发现

周末活动的参与者 @taotao 今天在 Neverland 里编程时发现,在他没有动手拧动贴有 marker 的纸质方向盘时,marker 的角度信息仍然会发生细微变化,一开始我们都感到疑惑,以为是个 bug。但经过排查,发现原因是因为摄像机能捕获到肉眼不可见的 marker 位置变化, 而 marker 的位置变化则由桌面的微小震动引起(通过实验获知),所以它可以用于检测桌子的震动!
以上是程序代码,从舞台区的变量值,可以看到精度很高,能检测微小的震动引起的 marker 空间位置变化信息。而 Scratch 的动态交互式风格,让@taotao 在 debug 时发现了这个细微变化,提出这个看起来像是 bug 的问题,它实际是一个发现!
如果进一步放大震动,甚至有可能用于检测地震。
这是我们设计 node_physical_blocks 插件时,未曾想到的应用场景,由一个编程入门者的疑惑引起的发现。

今天我们使用@taotao 的意外发现,构建的大楼震动检测器: