关闭视频

宅家福利|在线学习基于机智云的智能高精度红外体温测量方案(SOC)

发表于:2020年02月25日 12:20更新于:2020年06月01日 03:44

导语:

在举国之力抗疫斗争下,一切都正在往好的方向发展,相信再坚持坚持咱们就全面胜利啦!了解大家宅家躺睡做贡献却依然忍不住想做点什么的心情,机智云资深开发者小冯老师为大家奉上最新开发教程,在一罩难求、一计难寻的防疫刚需面前,机智如你不防跟着小冯老师一起动手做一款智能高精度红外体温计吧!手机看体温,后台有数据,全家防护扛扛滴!

01 项目概述

本教程开发基于机智云AIoT自助开发平台、机智云Gokit3开发板、机智云物联网平台的DEMO APP,采用高精度红外传感器MLX90614ESF测量传感器(常见集成模块GY-906,精度可达0.02℃),实现高精度智能红外体温测量,实时上传体温数据、APP/云端监测体温曲线,提升自我检测/应急处理能力及效率。

▲点击图片查看视频教学

本教程软硬件开源,提供开发文档及视频教学、社区技术支持在线协助学习开发,详细资料及开发程序请至机智云开发者社区club.gizwits.com下载:http://club.gizwits.com/thread-165632-1-1.html

 

02 准备工具

1、Gokit3开发板 1 块

了解开发板:

http://docs.gizwits.com/zh-cn/deviceDev/Gokit3/Gokit3开发套件简介.html

免费申请:http://www2.gizwits.com/zh-cn/gokit/

在线购买:送你一张¥20优惠券(截止3月31日),复制下方淘口令打开淘宝APP,联系客服领取优惠劵,把Gokit3带回家实现红外体温测量

₴9IWU1UZjHoY₴

 

2、红外体温传感器

本教程采用高精度红外传感器MLX90614ESF测量传感器,常见集成模块GY-906,精度可达0.02℃。(由于近期红外体温传感器已成为爆款一器难求,大家可以先用Gokit3开发板上自带的温度传感器跟着教程模拟开发,等行情好转了再买一个回来替换,开发原理是一样的。)

 

3、USB转TTL模块(下载器)

 

4、注册开发者账号 www.gizwits.com注册

5分钟了解机智云:http://docs.gizwits.com/zh-cn/quickstart/README.html

 

03 主要步骤

云端部署:

进入机智云开发者中心https://dev.gizwits.com/zh-cn/developer/product/创建一个新的产品,按照下图创建一个新的产品。

 

创建好产品之后,点击导航栏数据点,新增一个数据点,由于传感器的范围是-70-380℃,所以为了使用用范围广,创建如下图所示的温度数据点。

如果要手机APP显示中文测量温度,那么添加之后点击数据点后面的修改,将显示名称改成测量温度即可。

 

利用机智云自动代码功能,生成SOC代码,点击基本信息复制里面的Product Secret备用。

 

点击MCU开发,将复制的Product Secret粘贴进去,然后生成代码,将生成的代码下载到电脑备用。尽量避免中文路径的出现。

 

将代码解压到非中文路径备用

 

开发环境部署:

在此处,我们需要用到2个软件,一个用来给esp8266烧录程序,一个用来开发编译程序。2个软件打包云盘。将下载的2个软件分别解压(链接:https://pan.baidu.com/s/1Day4WA5HJNV9LlUqs4LFyQ 提取码:2x6a ),将解压过后开发软件里面的文件复制到英文路径下面。一定要是英文路径,否则不能编译或者编译出错。固件下载软件随便解压到就行。

 

程序实现:

1、项目导入。

打开开发环境,在左侧右键单击,导入项目(import)

 

选择Makefile项目,然后next

 

选择项目所在的路径,一定不要选错了,选错编译出错,根目录如图所示,编译器选择cygwin GCC

 

正确导入项目如下图所示。

 

打开根目录下面的Makefile文件

 

修改23、24、27行内容,这几个内容还是编译相关的,可以查阅乐鑫相关的手册,有对应的介绍,此处不在说明,照着修改就行了,修改了之后要记得保存,所有文件修改过后都需要保存再编译,否则修改内容不生效。到此就完成了项目的导入以及初步编译部署。

 

2、代码修改。

由于是基于机智云物联网平台的gokit3,自动代码生成的按键就是和开发板对应的,因此我们只需要添加传感器数据的采集,关于代码介绍,我只介绍核心部分,为了方便理解协议,此处我将不采用SDK的IIC驱动,也不单独创建新的.c,h文件。直接将代码写到gizwits_product里面。数据手册自行下载附件查看。我将会加在文章末尾作为附件。需要修改的文件如下图3个。

根据手册和gokit3原理图。我选用串口0作为IIC的通讯口,为啥要用串口0 ,因为串口0没有被板子其他传感器给占用。开发板和传感器接线如下(TXD RXD在gokit arduino引脚上标注的TXD RXD)。

GPIO1(TxD)----SCL

GPIO3(RxD)----SDA

5V------------VCC

GND----------GND

关于代码介绍,可以看程序代码里面的注释说明。

gizwits_product.h新增以下代码。

 

gizwits_product.c末尾新增如下函数

 

gizwits_product.c的userHandle新增如下代码

 

user_main.c的user_init函数新增初始化代码

 

修改完代码之后编译代码

 

正确无误编译信息如下

 

代码烧录:

打开下载软件,选择ESP8266

 

按照图片选择固件进行烧录

 

成功烧录之后手机APP配网绑定设备即可实时查看采集温度。开发板key2长按为一键配置,短按为热点配置。

 

本教程软硬件开源,提供开发文档及视频教学、社区技术支持在线协助学习开发,详细资料及开发程序请至机智云开发者社区club.gizwits.com下载:http://club.gizwits.com/thread-165632-1-1.html

 

 

文章由 iot开发平台 机智云 www.gizwits.com 整理发布