中国计量学院检测技术课程设计报告Word下载.docx
《中国计量学院检测技术课程设计报告Word下载.docx》由会员分享,可在线阅读,更多相关《中国计量学院检测技术课程设计报告Word下载.docx(13页珍藏版)》请在冰豆网上搜索。
该系统可以方便的实现实现温度采集和显示,并可根据需要任意设定上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。
DS18B20与ATmega16结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景,适用于现代社会的发展要求。
2.课题的任务和要求
检测技术课程设计是《机械工程测试技术》和《检测技术》课程后续的集中实践环节,是对常见非电量物理量的检测方法与手段、模拟和数字电子技术、单片机技术及数据采集等知识的综合训练和实践。
其主要目的在于训练学生将理论知识和实践结合的应用能力和动手能力,加深对非电量信号传感采集、传输、处理、显示等测试技术核心内容的理解和掌握,通过实践形成测试系统的整体观念,理解测量的精度、误差、标定、抗干扰等概念。
课程设计基本要求是可选对温度、速度、位移、振动、力矩、压力、感应信号等其中之一或几种量的组合进行测量,构建一完整的测量系统,具备信号的测量、转换、显示和处理等功能;
设计中应考虑测量过程中的干扰、误差、标定等问题及相关处理方法。
课程设计验收的内容:
焊接完成开发板一套,PCB图,下位机程序,上位机程序,课程设计报告图,下位机程序,上位机程序,课程设计报告(每人一份,同一小组报告内容可相同)。
3.方案设计
3.1功能描述
本温度自动报警系统主要有以下功能:
①实时采集温度信号并显示
②单片机对温度信号能够实时监控
③能够设置报警温度上下限
④能够自动实现鸣叫报警
3.2系统组成
本温度自动报警系统主要由四部分组成:
主控模块,采集模块,显示模块和报警模块。
其中:
主控模块实现巡回监视温度信号的功能,采集模块实现温度信号的采集,显示模块实现温度值和报警点的显示,报警模块实现报警的功能。
系统框图如下所示:
主控模块
显示模块
报警模块
采集模块
键盘模块
3.3芯片选择
3.3.1主控模块
主控模块采用ATMEL公司生产的ATmega16。
ATmega16是一个低电压,高性能CMOS8位单片机,片内含4K的可反复擦写的FLASH只读存储器和128BYTES的随机存取数据存储器,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口。
ATmega16可以按照常规方法进行编程,也可以在线编程。
器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
内置功能强大的微型计算机的ATmega16提供了高性价比的解决方案。
3.3.2采集模块
采集模块采用DALLAS半导体公司生产的数字化温度传感器DS18B20。
DS1820是世界上第一片支持"
一线总线"
接口的温度传感器。
一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。
DS18B20也支持"
接口,测量温度范围为-55~125度,在-10~85度范围内,精度为0.5度。
现场温度直接以"
的数字方式传输,大大提高了系统的抗干扰性。
适合于恶劣环境的现场温度测量,如:
环境控制、设备或过程控制、测温类消费电子产品等。
与前一代产品不同,新的产品支持3V~5V的电压范围,使系统设计更灵活、方便。
而且新一代产品更便宜,体积更小。
DS18B20内部结构主要由四部分组成:
64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。
其管脚排列如下:
DQ为数字信号输入/输出端;
GND为电源地;
VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
可选更小的封装方式,更宽的电压适用范围。
DS18B20可以程序设定9~12位的分辨率,分辨率设定及用户设定的报警温度存储在EEPROM中,掉电后依然保存。
3.3.3键盘模块
键盘模块用于设置温度的报警上下限。
键盘模块采用独立按键方式。
分别由单片机的三个接口驱动。
三个按键分别代表不同作用。
按键1用于状态切换(温度监控和上下限设定界面切换),按键2用于上下限设定时的增,按键3用于上下限设定时的减。
考虑到系统要求并不高,所以采用独立键盘,简单实用,降低了软件的要求,并且硬件电路复杂度也降低,安全可靠。
3.3.4显示模块
显示模块采用5110液晶屏。
LPH7366是NOKIA公司生产的可用于其5110、6150,6100等系列移动电话的液晶显示模块,国内厂家也生产有类似的兼容产品。
该产品除应用于移动电话外,也可广泛应用于各类便携式设备的显示系统。
与其它类型的产品相比,该模块具有以下特点:
1.84x48的点阵LCD,可以显示4行汉字。
2.采用串行接口与主处理器进行通信,接口信号线数量大幅度减少,包括电源和地在内的信号线仅有9条。
支持多种串行通信协议(如AVR单片机的SPI、MCS51的串口模式0等),传输速率高达4Mbps,可全速写入显示数据,无等待时间。
3.可通过导电胶连接模块与印制版,而不用连接电缆,用模块上的金属钩可将模块固定到印制板上,因而非常便于安装和更换。
4.LCD控制器/驱动器芯片已绑定到LCD晶片上,模块的体积很小。
5.采用低电压供电,正常显示时的工作电流在200μA以下,且具有掉电模式。
3.3.5报警模块
当液晶屏幕显示“!
”时,即为报警
4硬件电路设计
4.1主控模块
单片机ATmega16是该模块也是整个电路的核心器件。
实现巡回监视温度信号。
当温度超过给定的门限值时出现报警信号(液晶显示器显示当前温度值和报警点,判断液晶屏幕是否显示“!
”的报警信号)。
其电路图如下:
4.2采集模块
采集模块主要由温度传感器DS18B20实现温度信号的采集及A/D转换,可以将检测到的温度直接显示在数码管上。
4.3键盘模块
考虑到系统要求并不高,所以采用独立键盘,简单实用,降低了软件的要求,并且硬件电路复杂度也降低。
4.4显示模块和报警模块
采用5110液晶屏,其模块如下:
5软件设计流程
系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序,按键扫描处理子程序等。
5.1主程序流程图
主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1s进行一次。
这样可以在一秒之内测量一次被测温度,其程序流程见图3.1所示。
初始化
读取温度
SET键是否按下
读出温度值温度计算处理显示数据刷新
发温度转换开始命令
N
Y
调用显示子程序
设置报警温度
图3.1主程序流程图
5.2读出温度子程序
读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。
其程序流程图如图3.2示。
5.3温度转换命令子程序
温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。
温度转换命令子程序流程图如上图,图3.3所示。
图3.3温度转换流程图
图3.2读温度流程图
5.4计算温度子程序
计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定,其程序流程图如图3.4所示。
5.5显示数据刷新子程序
显示数据刷新子程序主要是对分离后的温度显示数据进行刷新操作,当标志位为1时将符号显示位移入第一位。
程序流程图如图3.5。
图3.4 计算温度流程图 图3.5 显示数据刷新流程图
5.6按键扫描处理子程序
按键采用扫描查询方式,设置标志位,当标志位为1时,显示设置温度,否则显示当前温度。
如下图3.6示。
图3.6按键扫描处理子程序
6.性能分析
本温度自动报警装置可以成功地实现现场温度采集并通过5110液晶屏显示。
1)、测温范围0—99.9℃
2)、温度传感器采用DS18B20,根据所选用的传感器,设计合理的测温电路。
3)、3位数码显示,实时显示当前温度值。
4)、键盘设置温度上、下限报警值,当温度到达设定值,蜂鸣器鸣叫报警。
5)、记录历史最高温和最低温度
6)、
7)、
7.上位机制作
7.1LabVIEW软件
LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:
其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。
LabVIEW软件是NI设计平台的核心,也是开发测量或控制系统的理想选择。
LabVIEW开发环境集成了工程师和科学家快速构建各种应用所需的所有工具,旨在帮助工程师和科学家解决问题、提高生产力和不断创新。
与C和BASIC一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。
LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储,等等。
LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。
LabVIEW是一种用图标代替文本行创建应用程序的图形化编程语言。
传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而LabVIEW则采用数据流编程方式,程序框图中节点之间的数据流向决定了VI及函数的执行顺序。
VI指虚拟仪器,是LabVIEW的程序模块。
LabVIEW提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。
用户界面在LabVIEW中被称为前面板。
使用图标和连线,可以通过编程对前面板上的对象进行控制。
这就是图形化源代码,又称G代码。
LabVIEW的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码。
7.2基于labview的温度检测系统上位机设计
主要由一个while循环、一个条件结构、VISA配置串口、VISA写入、VISA读取和VISA关闭等控件组成。
上位机监控界面程序框图如下图图所示。
8.课程设计体会
二周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,并且在软件反复地调试过程中,对自己编程的技能有了很大的提高。
同时也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。
在设计过程中,与同学分工设计,和同