【教哈有方】非接触式智能识别测温仪

2020-03-221438
AI 快速预览详细 收起
本文介绍了一个名为“非接触式智能识别测温仪”的项目,旨在通过二哈识图(HuskyLens)AI视觉传感器和非接触式红外温度传感器,实现对学生的自动识别和体温测量。项目使用了掌控板2.0编程入门学习主控板、micro:bit掌控I/O扩展板、Gravity: UART MP3语音模块等硬件。最终效果是能够自动识别学生并测量体温,同时将数据上传至物联网平台,适用于校园防疫场景。

2020年春天,中国经历了一场大灾难,新型冠状病毒肆虐。全国人民众志成城抗击疫情,现在已取得了阶段性的胜利。虽然现在已是春暖花开,回归校园的日子指日可待,但是我们不能掉以轻心,要做好防控。我设计制作了这个“非接触式智能识别测温仪”原型,希望他能保护我的老师、我的同学,期待早日重返校园。

project-image
project-image

1、项目问题:通过二哈识别学生、红外测温测量温度,识别后显示学号及体温,并进行语音播报,并上传至物联网对数据进行收集整理。 

2.解决方案:通过二哈的人脸识别区分学生,红外测温,语音播报,上传物联网。 

3.项目重点:二哈端设置、红外测温及物联网的上传。

 4.项目难点:程序编写。

材料清单

  • Gravity: 二哈识图(HuskyLens)AI 视觉传感器 X1 链接
  • 非接触式红外温度传感器 X1 链接
  • 掌控板2.0编程入门学习主控板 X1 链接
  • micro:bit掌控I/O扩展板 X1 链接
  • Gravity: UART MP3语音模块 X1 链接
  • 无源音箱小喇叭 (8Ω3W) X1 链接

步骤1 原型设计

project-image
project-image
project-image

步骤2 结构设计

project-image

步骤3 代码调试

project-image
project-image
project-image

步骤4 部件组装

project-image
project-image
project-image

步骤5 功能调试

project-image
project-image
project-image
project-image
代码
/*!
 * MindPlus
 * mpython
 *
 */
#include <MPython.h>
#include <DFRobot_Iot.h>
#include <DFRobot_MLX90614.h>
#include <DFRobot_SerialMp3.h>
#include <DFRobot_HuskyLens.h>
// 静态常量
const String topics[5] = {"wnfwV9BZR","stpWwvuWg","YuCVQDuZg","",""};
// 创建对象
DFRobot_SerialMp3 serialMp3;
DFRobot_HuskyLens huskylens;
DFRobot_Iot       myIot;
DFRobot_MLX90614  mlx90614;


// 主程序开始
void setup() {
	mPython.begin();
	buzz.play(NYAN, Once);
	display.setCursor(25, 22);
	display.print("众志成城  抗击疫情");
	delay(2000);
	serialMp3.begin(&Serial1, P0, P1);
	// 哈士奇初始化
	huskylens.beginI2CUntilSuccess();
	huskylens.writeAlgorithm(ALGORITHM_FACE_RECOGNITION);
	// WIFI连接
	myIot.wifiConnect("@PHICOMM5003", "588100niko");
	while (!myIot.wifiStatus()) {yield();}
	display.setCursorLine(1);
	display.printLine("wifi已连接");
	delay(2000);
	display.fillScreen(0);
	myIot.init("iot.dfrobot.com.cn","INAQV9fWR","","SH0wV9fZRz",topics,1883);
	// MQTT
	myIot.connect();
	while (!myIot.connected()) {yield();}
	display.setCursorLine(1);
	display.printLine("MQTT已连接");
	delay(2000);
	display.fillScreen(0);
	delay(1000);
	serialMp3.playList(4);
	delay(1000);
}
void loop() {
	huskylens.request();
	if (huskylens.isLearned(1)) {
		if (huskylens.isAppear(1,HUSKYLENSResultBlock)) {
			display.setCursorLine(2);
			display.printLine((String((String("ID 1:") + String(mlx90614.getObjectTempC()))) + String("℃")));
			delay(1000);
			myIot.publish(topic_0, (String(mlx90614.getObjectTempC()) + String("℃")));
			delay(5000);
			if ((mlx90614.getObjectTempC()>37.3)) {
				serialMp3.playList(1);
			}
			else {
				serialMp3.playList(5);
			}
			display.fillScreen(0);
		}
	}
	if (huskylens.isLearned(2)) {
		if (huskylens.isAppear(2,HUSKYLENSResultBlock)) {
			display.setCursorLine(2);
			display.printLine((String((String("ID 2:") + String(mlx90614.getObjectTempC()))) + String("℃")));
			delay(1000);
			myIot.publish(topic_1, (String(mlx90614.getObjectTempC()) + String("℃")));
			delay(5000);
			if ((mlx90614.getObjectTempC()>37.3)) {
				serialMp3.playList(2);
			}
			else {
				serialMp3.playList(5);
			}
			display.fillScreen(0);
		}
	}
	if (huskylens.isLearned(3)) {
		if (huskylens.isAppear(3,HUSKYLENSResultBlock)) {
			display.setCursorLine(2);
			display.printLine((String((String("ID 3:") + String(mlx90614.getObjectTempC()))) + String("℃")));
			delay(1000);
			myIot.publish(topic_2, (String(mlx90614.getObjectTempC()) + String("℃")));
			delay(5000);
			if ((mlx90614.getObjectTempC()>37.3)) {
				serialMp3.playList(3);
			}
			else {
				serialMp3.playList(5);
			}
			display.fillScreen(0);
		}
	}
}

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

所需材料/产品

加载全部

    掌控板2.0 编程入门学习主控板 - Python、图形化编程开发板

    掌控板2.0 编程入门学习主控板 - Python、图形化编程开发板

    掌控板2.0 编程入门学习主控板 - Python、图形化编程开发板

    无源音箱小喇叭 (8Ω3W)

    无源音箱小喇叭 (8Ω3W)

    无源音箱小喇叭 (8Ω3W)

    micro:bit掌控IO扩展板(兼容行空板M10/K10、micro:bit、掌控)

    micro:bit掌控IO扩展板(兼容行空板M10/K10、micro:bit、掌控)

    micro:bit掌控IO扩展板(兼容行空板M10/K10、micro:bit、掌控)

相关推荐

评论(0)
- 没有更多了 -

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

相关推荐

所需材料/产品

掌控板2.0 编程入门学习主控板 - Python、图形化编程开发板

掌控板2.0 编程入门学习主控板 - Python、图形化编程开发板

掌控板2.0 编程入门学习主控板 - Python、图形化编程开发板

无源音箱小喇叭 (8Ω3W)

无源音箱小喇叭 (8Ω3W)

无源音箱小喇叭 (8Ω3W)

micro:bit掌控IO扩展板(兼容行空板M10/K10、micro:bit、掌控)

micro:bit掌控IO扩展板(兼容行空板M10/K10、micro:bit、掌控)

micro:bit掌控IO扩展板(兼容行空板M10/K10、micro:bit、掌控)

加载全部