人工智能实验
目的及要求
实验原理与内容
实验软硬件环境
实验过程(实验步骤、记录、数据、分析)
1、MQTT服务器配置
2、搭建微型数据库(TinywebDB)
3、配置哈士奇
总代码图
Gitee源码仓库
成品演示
一、目的及要求
【一】实现人脸识别
【二】实现云数据库应用
【三】实现测温数据mqtt上传至物联网云平台
三、实验软硬件环境
硬件:掌控板
软件:Mind+
四、实验过程(实验步骤、记录、数据、分析)
1、MQTT服务器配置
左边的id以及密码是掌控板配置用的,topic0—用来收掌控板发来的消息
连接WIFI,把Easy IoT的三个参数填入MIND+中的MQTT初始化参数的红框中即可实现连接MQTT。
2、搭建微型数据库(TinywebDB)
(1)注册一个账号,进行登录
(2)登陆后会进入如下页面,留意:
- API地址
- 用户名
- 密钥

(3)选择数据浏览设计一个简单的数据库,录入信息
(4)在mind+中连接数据库,方框中填入第二步中对应的三个参数
3、配置哈士奇
- 哈士奇初始化

- 哈士奇保存的人脸

- 哈士奇未保存的人脸

总代码图
Gitee源码仓库
Gitee源码仓库:https://gitee.com/liu-zhiweiii/code-display/blob/master/%E5%AE%9E%E9%AA%8C%E4%B8%89.sb3
代码如下(示例):
/*!
* MindPlus
* mpython
*
*/
#include <MPython.h>
#include <DFRobot_Iot.h>
#include <DFRobot_DS18B20.h>
#include <mPython_tinywebdb.h>
#include <DFRobot_HuskyLens.h>
// 动态变量
String mind_s_XingMing;
// 静态常量
const String topics[5] = {"JBXT5iKGR","","","",""};
// 创建对象
DFRobot_Iot myIot;
mPython_TinyWebDB mydb;
DFRobot_HuskyLens huskylens;
DFRobot_DS18B20 ds18b20_P8;
// 主程序开始
void setup() {
mPython.begin();
ds18b20_P8.begin(P8);
myIot.wifiConnect("HONOR V30", "41250529");
while (!myIot.wifiStatus()) {yield();}
display.setCursorLine(1);
display.printLine("WIFI连接成功");
myIot.init("iot.dfrobot.com.cn","BkJeLh2Gg","","fk16YhhMgz",topics,1883);
myIot.connect();
while (!myIot.connected()) {yield();}
display.setCursorLine(1);
display.printLine("MQTT连接成功");
mydb.setServerParameter("http://tinywebdb.appinventor.space/api", "liuzhiwei","a46a5f05");
huskylens.beginI2CUntilSuccess();
huskylens.writeAlgorithm(ALGORITHM_FACE_RECOGNITION);
huskylens.writeName(String("2018764329"), 1);
huskylens.writeName(String("2018764344"), 2);
}
void loop() {
huskylens.request();
if (huskylens.isAppearDirect(HUSKYLENSResultBlock)) {
if (huskylens.isLearned(huskylens.readBlockCenterParameterDirect().ID)) {
display.setCursorLine(1);
display.printLine("请保持面向摄像头");
display.setCursorLine(2);
display.printLine((String("当前室内温度为") + String(ds18b20_P8.getTempC())));
mind_s_XingMing = mydb.getTag((String(huskylens.readBlockCenterParameterDirect().ID)));
display.setCursorLine(3);
display.printLine(mind_s_XingMing);
myIot.publish(topic_0, mind_s_XingMing);
delay(1000);
}
}
display.setCursorLine(3);
display.printLine("未录入人脸");
delay(1000);
}
成品演示

MQTT服务器接收消息如下图所示

版权声明:本文为weixin_44521903原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。