基于Arduino的水温检测Word文件下载.docx
- 文档编号:13049625
- 上传时间:2022-10-03
- 格式:DOCX
- 页数:8
- 大小:1.53MB
基于Arduino的水温检测Word文件下载.docx
《基于Arduino的水温检测Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于Arduino的水温检测Word文件下载.docx(8页珍藏版)》请在冰豆网上搜索。
附录:
4
Arduino程序代码 4
示意图:
6
6
1.设计背景及意义
生活中,工业中,常常需要测量水温来进行生产生活,水温测量系统在现在的社会生产中,扮演的角色越来越重要;
为了提高学生的动手能力,激发在校学生学习、应用和交流机械电子工程技术在机械电子工程领域中工程应用和推广,并为河南省先进制造装备产业培养和储备有关机械电子工程技术的复合型高级工程技术应用人才,机械电子工程专业进行了学科竞赛。
2.水温测量系统设计思路
温度传感器感应温度,
电位器设定高低温度
单片机接收数据并处理
LCD1602显示
指示灯,报警器工作
图1水温测量系统设计思路图
3.元件的选择
3.1传感器的选择
DS18B20的测温范围-55℃~+125℃,固有测温误差(注意,不是分辨率,这里之前是错误的)0.5℃,使用范围多为中低温干燥;
纯水的沸点为100︒C,在DS18B20的测量范围内,可以使用。
热电偶是一种感温元件,它把温度信号转换成热电动势信号,通过电气仪表转换成被测介质的温度。
热电偶测温的基本原理是两种不同成份的均质导体组成闭合回路,当两端存在温度梯度时,回路中就会有电流通过,此时两端之间就存在Seebeck电动势——热电动势,这就是所谓的塞贝克效应。
两种不同成份的均质导体为热电极,温度较高的一端为工作端,温度较低的一端为自由端,自由端通常处于某个恒定的温度下。
根据热电动势与温度的函数关系,制成热电偶分度表;
分度表是自由端温度在0℃时的条件下得到的,不同的热电偶具有不同的分度表。
在热电偶回路中接入第三种金属材料时,只要该材料两个接点的温度相同,热电偶所产生的热电势将保持不变,即不受第三种金属接入回路中的影响。
因此,在热电偶测温时,可接入测量仪表,测得热电动势后,即可知道被测介质的温度。
热电偶是工业中常用的温度测温元件,具有如下特点:
①测量精度高:
热电偶与被测对象直接接触,不受中间介质的影响。
②热响应时间快:
热电偶对温度变化反应灵敏。
③测量范围大:
热电偶从-40~+1600℃均可连续测温。
④性能可靠,机械强度好。
⑤使用寿命长,安装方便。
经过比较,我决定选择热电偶传感器,该传感器,不但可以测量水温,还可以测量水蒸气的温度,适用范围更广,在生活中适用的范围更广。
3.2单片机的选择
随着科技的发展,单片机也越来越现代化,从原来的8位到16位到现在的32位,而且使用也是越来越方便,自带的库文件也越来越完全,为开发者提供了很大的方便。
C51,S52是性价比最高的芯片,是学习单片机的入门芯片,但是自身带的功能比较少,avr是最新的芯片,语言代码也和C51有很大的区别,对于新手来说上手比较慢,arduino也是属于avr旗下的一款芯片,但是自带的库文件很多,很适合大学生制作,而且我自己也有arduino的板子,故在经济和制作方便的前提下我选择了arduino开发板来制作水温测量系统。
3.3选择温度显示方式
数码管成本低,但是显示的不够形象,没有LCD1602液晶显示屏显示的清晰明了,而且LCD1602可以使用更少的单片机端口,方便后续功能的增加,故选择LCD1602液晶屏显示。
3.4元件清单
序号
名称
数量
1
Max6675
2
K型热电偶传感器
3
Arduino
4
电位器
5
LCD1602
LED
7
小喇叭
8
1K电阻
9
面包板
10
公共杜邦线
若干
4.系统工作原理
通过热电偶传感器感受到温度的变化,通过max6675冷端补偿等,把数据信号传给arduino,同时电位器通过对点位的调整设定高低温度的限度,单片机接收数据并进行处理,当温度过高的时候喇叭鸣叫,当温度过低的时候指示灯点亮,正常工作时由LCD1602显示温度。
图2protuse仿真电路
[1]赵英杰.完美图解Arduino互动设计入门.北京.科学出版社.2014.
[2]周杏鹏.现代检测技术.北京.高等教育出版社.2010.
Arduino程序代码
#include<
LiquidCrystal.h>
//调用arduino自带的LiquidCrystal库
#include"
Max6675.h"
Max6675ts(2,3,4);
LiquidCrystallcd(12,11,9,8,7,6);
//设置接口
byteH=A0;
byteL=A1;
inthigh,low,a;
voidsetup()
{
ts.setOffset(0);
Serial.begin(9600);
lcd.begin(16,2);
//初始化LCD
lcd.print("
Temp"
);
//使屏幕显示文字Temp
pinMode(13,OUTPUT);
pinMode(5,OUTPUT);
delay(10);
//延时10ms
}
voidloop()
floatm=0;
high=map(analogRead(H),0,1023,0,110);
low=map(analogRead(L),0,1023,0,110);
if(low>
high){m=high;
high=low;
low=m;
floatt=ts.getCelsius()*0.96;
//得到温度t
if(t>
=high){tone(5,450);
}//设置最高、最低温度
if(t<
high){noTone(5);
low){digitalWrite(13,HIGH);
=low){digitalWrite(13,LOW);
Serial.println(t,2);
//串口输出
lcd.clear();
//清屏
lcd.print("
//使屏幕显示文字Temp
lcd.setCursor(7,0);
//设置光标位置为第二行第一个位置
lcd.print(t);
//显示温度
lcd.print((char)223);
//显示o符号
C"
//显示字母C
lcd.setCursor(0,1);
//设置光标在第二行第一个
H"
lcd.print(high);
lcd.setCursor(8,1);
L"
lcd.print(low);
//显示最低温度
//显示字母C
delay(1500);
//延时1.5秒,这里也就是刷新速度。
}
图3实物示意图
图4接口示意图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Arduino 水温 检测