打造多功能安全报警系统:从基础到进阶
1. 基础超声波传感器逻辑
在开始构建复杂的安全报警系统之前,我们先从一个基础的超声波传感器逻辑入手。有一个函数默认每 225 毫秒调用一次,其逻辑如下:
if (!init) {
ultraBaseline = ultraReadings.sort()[4];
console.log("Calculated baseline: %s", ultraBaseline);
}
init = true;
ultraReadings.push(inches);
这个函数的具体步骤如下:
1. 声明 inches 变量以方便使用。
2. 判断采样读数的数量是否等于或超过 10。
- 如果读数数组中的值超过 10 个,从数组顶部移除一个值。
- 如果 init 变量为 false ,说明已达到用于推导基线测量的目标读数数量。通过对值进行排序并选择接近中间的值来确定基线。
- 将 init 变量设置为 true (只要至少有 10 个读数)。
3. 最后,将新值添加到读数数组的末尾。
这里需要区分 change 和 data 事件:
- change 事件:只有当 Ping 对象实例检测到当前读数与上
超级会员免费看
订阅专栏 解锁全文
1398

被折叠的 条评论
为什么被折叠?



