亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

组件与材料

组件数量
Arduino Nano 33 BLE Sense1
ESP8266 ESP-01 模块1
Arducam Mini 2MP Plus 摄像头1
MAX7219 点阵显示屏 (4合1, 32x8)1
蜂鸣器1
SG90/MG995 微型舵机2
Adafruit Micro-Lipo 充电板1
Adafruit 锂聚合物电池1
Arduino MKR WiFi 10101
RGB 共阴极 LED1
HC-SR04 超声波测距模块1

所需工具

应用与在线服务

项目背景

疫情带来的挑战

COVID-19 疫情迫使全球实施社交距离,商场客流骤降导致大量零售、餐饮、娱乐业员工失业(仅美估计超 400 万)。对于无法远程办公的一线员工和商家,如何在保障安全的前提下维持运营成为核心难题。

Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

核心痛点

本项目针对上述痛点,开发了六大无接触子系统,均基于 TinyML (TensorFlow Lite) 部署在 Arduino Nano 33 BLE Sense 上,配合 ESP8266 上传数据至 ThingSpeak 云端看板,实现实时监控与自动化响应。

六大子系统详解

1. 语音控制无接触电梯系统

动机:电梯按钮为高频接触面。超声波/手势方案存在误触发率高、需近距离操作等缺陷。语音指令“上/下”可远距离、高准确度触发。

模型训练:在 Edge Impulse Studio 采集“up”“down”各 1 分 30 秒(每样本 2 秒),窗口增量 300ms,采用 1D CNN (Keras) 分类。训练 100 epochs,准确率 91.2%,测试集准确率 75%。模型约 24-28KB,部署为 Arduino 库。

Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

核心逻辑:

if (found_command[0] == 'up') {
  digitalWrite(LEDG, LOW); // 绿灯亮
  servo_7.write(0);        // 舵机按下“上”键
  delay(100);
  digitalWrite(LEDG, HIGH);
  servo_7.write(180);      // 舵机复位
}
if (found_command[0] == 'down') {
  digitalWrite(LEDG, LOW);
  servo_7.write(0);        // 舵机按下“下”键
  delay(100);
  digitalWrite(LEDG, HIGH);
  servo_7.write(180);
}
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

2. 人脸识别智能对讲系统

动机:传统对讲机需按键呼叫,存在接触传播风险。采用人检测模型自动识别来访者并触发门铃。

模型:使用 TensorFlow 预训练人检测模型(三类:unused/person/notperson),输入 96x96 图像,网络结构:Depthwise Conv2D → Conv2D → Average Pool2D → Flatten。Arducam Mini 2MP Plus 采集图像,经 SPI 传输给 Nano 33 BLE Sense 推理。

响应逻辑:

uint8_t person_score = output->data.uint8[kPersonIndex];
uint8_t no_person_score = output->data.uint8[kNotAPersonIndex];
if (person_score > no_person_score) {
  digitalWrite(LEDG, LOW);      // 蜂鸣器响
  digitalWrite(LEDR, HIGH);
  myDisplay.print("Person");    // 矩阵屏显示"Person"
  servo_8.write(0); delay(500); // 可选:舵机按下原对讲机视频键
  servo_8.write(180);
}
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

3. 自主 IoT 体温监测系统

动机:人工测温距离近、无数据记录。采用 AMG8833 热成像模块 + HC-SR04 超声波检测入场人员,自动测温并上传 ThingSpeak,异常体温(>38.1℃)触发蜂鸣器报警并关闭闸机(舵机模拟)。

逻辑流:

ultra(); // 超声波测距
servo1.write(0); // 开闸
if (distance <= 20) {
  float temp = amg.readThermistor();
  Send_Data_To_ThingSpeak(temp);
  if (temp > 38.1) {
    servo1.write(180); // 关闸
    digitalWrite(BUZZER, HIGH); // 报警
  }
}
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

4. TinyML + IoT 排队管理系统

动机:商场限流依赖人工计数,无实时数据对外公开,顾客无法知晓等待时间与店内密度。

方案:入口/出口各部署一套人检测系统(Arducam + Nano 33 BLE Sense)。检测到人进入 → 舵机开闸 → 计数+1 → 上传 ThingSpeak。计数达 50 人上限 → 关闸 15 分钟 → LED 矩阵显示等待时间。出口同理减少计数。ThingSpeak 看板实时显示进/出人数,顾客可据此选择最佳到访时段。

等待时间估算算法:


X = 累计入场人数
Y = 累计出场人数
Z = 容纳上限 (50)
count = Z - (X - Y) // 负值表示超员
if (count < 0) wait_time = (-count) * 平均停留时间;
else wait_time = 0;
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

5. 口罩检测系统(基于人检测扩展)

动机:强化口罩合规。在 Edge Impulse 训练 MobileNetV2 0.35 分类器(mask/no_mask),数据集 813 张训练/487 张测试,量化后模型约 676KB,准确率 92.6%(测试集 98.15%)。部署于 Nano 33 BLE Sense,检测结果同上传 ThingSpeak 统计戴/未戴口罩趋势,辅助管理决策。

Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

6. 超市货道人员检测与自主 UV 消毒系统

动机:病毒在物表可存活数天,人工消毒无法根据实时人流动态作业。在各货道部署人检测系统,根据人数阈值分级预警并触发 UV 消毒。

分级阈值示例(可按货品类型调整):

数据实时上传 ThingSpeak,可叠加地图可视化,顾客可查看各区域实时密度与消毒记录。

Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

商业价值与落地优势

代码仓库

原理图

Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集
Spectrino:基于 Arduino Nano 33 BLE Sense 与 ESP8266 的 TinyML 与 IoT 无接触解决方案集

制造工艺

  1. 树莓派 3 接 DHT11 传感器上传数据到 ThingsIo.ai 云平台
  2. 用 Arduino UNO 和 OLED 显示屏制作经典 Pong 游戏:分步教程
  3. 基于 Arduino 与 MAX30100 的实时物联网心率监测系统
  4. Pixie:基于 Arduino Pro Mini 的 NeoPixel 智能腕表 - 极简 DIY LED 时钟
  5. 基于 Arduino Mega 与 Nextion 显示屏的交互式气象站
  6. TinyML 植物健康评估:Arduino Nano 33 BLE Sense + 步进电机扫描建模
  7. DIY Arduino 智能手表:打造属于你的 Apple Watch 风格腕表
  8. Arduino 驱动的真空荧光显示器(VFD)控制器套件
  9. Arduino Nano 驱动 128x64 OLED 实时运行康威生命游戏 (元胞自动机)
  10. Azure IoT智能游泳池监控系统:温度感知与远程控制
  11. 为物联网资产追踪解决方案选择正确无线协议
  12. 物联网追踪方案赋能敞车货运运营升级