最近设计了一个项目基于单片机的非接触红外测温系统,与大家分享一下:

一、基本介绍

项目名:非接触红外测温
项目编号:mcuclub-jk-003
单片机类型:STC89C52、STM32F103C8T6
具体功能:
1、通过MLX90614非接触人体红外测温模块测量人体温度;
2、通过红外避障管检测手腕(手指)是否放在测温模块上,3s稳定后保持显示并判断温度,如果温度不在设置的上下限值之间,则声光报警3次,在设定范围内,稳定后响一声;
3、通过按键设置温度上下限,K3恢复温度显示;
4、通过显示屏显示温度值和是否触发红外避障管。
扩展功能:通过蓝牙模块将测量数据发送到手机端,并且当温度过高或过低有提示

二、51实物图

单片机型号:STC89C52

板子为绿色PCB板,两层板,厚度1.2,上下覆铜接地。元器件基本上为插针式,个别降压芯片会使用贴片式。

供电接口:TYPE-C

三、51仿真图

仿真软件版本:proteus8.9

电路连线方式:网络标号连线方式

注意:部分实物元器件仿真中没有,仿真中会用其他工作原理相似的元件代替,这样可能导致实物程序和仿真程序不一样

四、32实物图

单片机型号:STM32F103C8T6

板子为绿色PCB板,两层板,厚度1.2,上下覆铜接地。元器件基本上为插针式,个别降压芯片会使用贴片式。

供电接口:TYPE-C

五、原理图

软件版本:AD2013

电路连线方式:网络标号连线方式

注意:原理图只是画出了模块的引脚图,而并不是模块的内部结构原理图

六、PCB图

由原理图导出,封装很大一部分都是作者自己绘制,不提供封装库,只提供连接好的源文件。中间有一个项目编号,隐藏在单片机底座下,插入单片机后不会看到。

两层板,上下覆铜接地。

七、系统框图

本设计以单片机为核心控制器,加上其他模块一起组成此次设计的整个系统,其中包括中控部分、输入部分和输出部分。中控部分采用了单片机控制器,其主要作用是获取输入部分的数据,经过内部处理,逻辑判断,最终控制输出部分。输入由四部分组成,第一部分是非接触测温模块,通过该模块可以检测当前人体的体温;第二部分是红外避障模块,通过该模块可以检测是否有人;第三部分是按键模块,通过该模块可以切换界面,设置温度的正常范围;第四部分是供电模块,通过该模块给系统进行供电;输出由三部分组成,第一部分是显示模块,通过该模块可以显示监测的数据以及设置的阈值;第二部分是报警模块,当监测到当前人体体温不在设置的范围之内进行声光报警。除此之外,蓝牙模块既作为输入又作为输出,蓝牙模块和手机进行连接,将检测的人体体温发送到手机端。具体系统框图如图所示。

八、软件设计流程

系统的主流程图如图所示。在主程序中:首先对各个模块进行初始化,随后进入while主循环,在主循环中,首先进入第一个函数按键函数,该函数主要分为两部分,第一部分为调用按键扫描函数获取按键键值,第二部分通过键值进行相应的处理操作,包括切换界面、设置阈值等;紧接着进入第二个函数监测函数,该函数主要通过调用相应的驱动函数获取测量值,并通过蓝牙模块将监测的数据传输到手机端,用户也可以通过手机端发送指令,设备根据用户发送的指令执行对应的处理;紧接着进入第三个函数显示函数,该函数显示监测值及阈值;最后进入第四个函数处理函数,该函数主要判断当前温度是否在设置的阈值之内,如果温度大于设置的最大值,则声光报警,并且打开制冷继电器进行降温,如果温度小于设置的最小值,则声光报警,并且打开加热继电器进行加热,如果温度在设置的阈值之内,则取消声光报警,并关闭加热和制冷继电器。

九、部分程序展示

软件版本:keil5

逻辑程序和驱动程序分开,分布于main.c和其他.c文件

void Manage_function(void)
{if(flag_display == 0)                                                            //测量界面{ if(CEWEN == 0 && flag_finish == 0){                                                 //如果有人测温flag_timer_begin = 1;if(flag_3s == 1){flag_timer_begin = 0;flag_3s = 0;flag_fasong = 1;flag_finish = 1;temp_value_stable = temp_value; if(temp_value_stable <= temp_max*10 && temp_value_stable >= temp_min*10)  {                                                                                      //如果温度正常,不报警flag_state = 0;beep_num = 2;while(beep_num--){LED = ~LED;BEEP = ~BEEP;Delay_function(100);}                      }else                                       //如果温度不正常,报警{if(temp_value_stable > temp_max*10)flag_state = 1;elseflag_state = 2;beep_num = 6;while(beep_num--){LED = ~LED;BEEP = ~BEEP;Delay_function(300);}} }                        }else                                                                                       //无人测温,关闭报警{flag_timer_begin = 0;flag_3s = 0;LED = 1;BEEP = 1;}}else                                                                                         //设置界面,关闭报警{LED = 1;BEEP = 1;}
}

【单片机毕业设计】【mcuclub-jk-003】基于单片机的非接触红外测温的设计相关推荐

  1. 基于stm32人脸识别和红外测温

    目录 一.项目功能 二.原理图 三.实物视频 四.实物图片 五.程序 资料下载地址:基于STM32人脸识别和红外测温 一.项目功能 本系统由stm32f103c8t6单片机最小系统电路+k210人脸识 ...

  2. ESP32启明云端又有新玩法|基于ESP32+热像仪传感的物联网非接触智能测温终端为高考护航了

    今天是高考第一天,想想N年前的自己,高考前抱着破罐子破摔的心态,书丢一边,好吃好喝迎高考!所以结局惨淡无比! 不提伤心事了,今天祝所有的高考考生都能取得自己满意的成绩! 今天提到的ESP32的新玩法跟 ...

  3. 【单片机毕业设计】【mcuclub-115】红外测温自动门 | 自动感应门

    设计简介: 项目名:基于单片机的自动门控制系统设计-标准版 单片机:STC89C52 功能: 1.通过两个人体红外传感器检测自动门内外是否有人来,若门内有人来,自动门开: 2.若门外有人来,延时三秒, ...

  4. 【分享】基于单片机嵌入式的家用智能节水淋浴控制器的设计-基于单片机的电子贺卡控制系统设计-基于单片机的倒计时牌控制系统设计-基于单片机的彩灯控制器系统设计-多模式彩灯-单片机的八路路数字电压表控制设计

    1334基于单片机嵌入式的家用智能节水淋浴控制器的设计-全套毕设课设设计资料 三个ds18b20分别采集进水口热水  冷水 和温水的水温,然后分别显示出来,按下开始按键,系统初始化,自动设置出水温度为 ...

  5. 基于51单片机的红外测温智能空调

    设计简介: 本设计是基于单片机的红外测温智能空调控制器设计,主要实现以下功能: 可实现LCD1602显示温度的示数和空调开关: 可实现通过按键可以设置温度的最大值以及最小值: 可实现通过红外遥控控制空 ...

  6. 26、基于51单片机mlx90614(GY-906)非接触式红外测温上下限声光报警系统设计

    摘要 门式红外人体测温安检仪与传统的安检系统比较,增加了人体测温功能,在流行病多发季节可以适当的提醒人们减少外出,必要时可采取强制措施禁止出行以减少疾病的传播:并且测温为非接触式,与传统的接触式测温相 ...

  7. stm32单片机+amg8833+红外热成像/单片机红外测温成像/stm32 amg8833红外热成像

    基于stm32单片机的amg8833红外热成像/单片机红外测温成像,测温模块用的是AMG8833 IR 8x8红外热像传感器. 具体功能:可红外热成像,可以设置报警阈值,可以语音播报温度异常,单片机s ...

  8. 基于STM32F1的手势识别PJ7602和测温报警MLX90614

    基于STM32F1的手势识别和测温报警 器件:我使用的是正点原子的STM32f103MiNi和手势识别模块PJ7602还有红外测温模块MLX90614 温度模块MLX9061 ![在这里插入图片描述] ...

  9. 基于MAX6675的k型热电偶测温系统

    基于MAX6675的k型热电偶测温系统 亲测 本人亲测代码有效 测温整数误差控制在0摄氏度 如果所显示和实际误差相差25摄氏度 请在仿真中点击MAX6675属性调节把环境温度改为0 即k型热电偶冷端温 ...

最新文章

  1. css3之border-radius理解
  2. 关于网站调用在线翻译api实现翻译功能
  3. 为什么Android项目mainactivity中有一个变量R_博客笔记大汇总,Android优化总结篇
  4. Sage CRM升级注意事项一
  5. boost::fusion::pop_back用法的测试程序
  6. 「编程面试题库」,大佬开发的一款小程序~
  7. android homme一般多钱,【ANDROID HOMME】ANDROID HOMME官网介绍_ANDROID HOMME口碑_什么值得买...
  8. sublime快捷键收藏
  9. jQuery 鼠标滚轮插件应用 mousewheel
  10. Linux学习之SAMBA共享(无密码)
  11. 了解java虚拟机mdash;垃圾回收算法(5)
  12. 股票收市前三分钟下单有效吗?
  13. MySQL GUI图形化界面常用软件推荐
  14. 卡巴斯基6.0最新授权文件[6.0.2.523可用]
  15. CamTwist 3.4.3最新版(macOS 虚拟摄像头)
  16. linux返回上一步命令
  17. FOne CodeSec代码泄露检测工具
  18. SpringBoot整合Drools
  19. 下载安装Android SDK及环境配置(超详细)
  20. cad vba 打开文件对话框_AutoCAD VBA选择文件夹的代码

热门文章

  1. chatgpt论文润色
  2. 菜逼的Android旅程
  3. 江苏中原建设集团有限公司10KV正式用电工程电能管理系统的设计与应用
  4. 软件测试技术课后习题:第2章软件测试基本概念-广东高等教育出版社,主编杨胜利
  5. 风丘方案助力车企升级 解决“国六”标准新难题
  6. Unity Bakery使用说明(一)
  7. 地图投影技术剖析与思考
  8. ssh: connect to host XXX port 22: Connection timed out的问题
  9. python turtle库画七彩蟒蛇_Python学习之turtle库和蟒蛇绘制程序
  10. 【Deep Learning 1】GA遗传算法