酒精测量仪毕业论文设计Word文档下载推荐.docx
《酒精测量仪毕业论文设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《酒精测量仪毕业论文设计Word文档下载推荐.docx(25页珍藏版)》请在冰豆网上搜索。
![酒精测量仪毕业论文设计Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-11/24/9897a61f-5201-4775-83db-edfea4678ecd/9897a61f-5201-4775-83db-edfea4678ecd1.gif)
1〕单片机的选择
本系统采用单片机为控制核心。
我们选择单片机STC89C51为控制核心;
主要基于考虑STC89C51是无法解密低功耗,超低价高速,高可靠强抗静电,强抗干扰,功能强大的单片机。
STC89C51有40个引脚,32个外部双向输入/输出〔I/O〕端口,同时含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,片振荡器与时钟电路,89C5X可以按照常规方法进展编程,也可以在线编程。
同时STC89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口与中断系统继续工作。
掉电方式保存RAM中的容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发本。
STC单片机有PDIP、PQFP/TQFP与PLCC等三种封装形式,以适应不同产品的需求。
STC89C51单片机单片机引脚功能如图
图1
•Vcc:
电源电压
•GND:
地
STC89C51是的低电压,高性能CMOS8位单片机,片含8Kbytes的可反复擦写的只读程序存储器(PEROM)和256Kbytes的随机存取数据存储器,器件采用高密度,非易失性存储技术生产,与标准MCS-51指令系统与8051产品引脚兼容,片置通用8位中央处理器和FLASH存储单元,功能强大,STC89C51单片机适合于许多较为复杂控制应用场合[3]。
主要性能参数:
•8K字节可重擦写FLASH闪存存储器
•1000次写/擦循环
•时钟频率:
0Hz—24MHz
•三级加密存储器
•256字节部RAM
•32个可编程I/O口线
•3个16位定时/计数器
•6个中断源
•可编程串行UART通道
•低功耗的空闲和掉电模式
•片振荡器和时钟电路
2〕传感器
气体传感器是气体检测系统的核心,通常安装在探测头。
从本质上讲,气体传感器是一种将某种气体体积分数转化成对应电信号的转换器。
探测头通过气体传感器对气体样品进展调理,通常包括滤除杂质和干扰气体、枯燥或制冷处理、样品抽吸,甚至对样品进展化学处理,以便化学传感器进展更快速地测量[2]。
在选择传感器的时候,一定要考虑到稳定性、灵敏度、选择性和抗腐蚀性,本系统选择MQ3型酒精传感器。
MQ3酒精传感器是气敏传感器,其具有很高的灵敏度、良好的选择性、长期的使用寿命和可靠的稳定性[4]。
MQ3型气敏传感器由微型Al2O3、陶瓷管和SnO2敏感层、测量电极和加热器构成的敏感元件固定在塑料或者不锈钢的腔体,加热器为气敏元件的工作提供了必要的工作条件。
传感器的标准回路有两局部组成:
其一为加热回路;
其二为信号输出回路,它可以准确反映传感器外表电阻的变化。
传感器外表电阻RS的变化,是通过与其串联的负载电阻RL上的有效电压信号VRL输出面获得的[6]。
二者之间的关系表述为:
RS/RL=(VC-VRL)/VRL,其中VC为回路电压,10V。
负载电阻RL可调为~200K,加热电压Uh为5V。
上述这些参数使得传感器输出电压为0~5V。
MQ3型气敏传感器的结构和外形如如下图,标准回路如如下图。
为了使测量的精度达到最高,误差最小,需要找到适宜的温度,一般在测量前需要将传感器预热20s。
MQ3标准回路如图
图2
3〕数模转换器
实现A/D转换的根本方法很多,有计数法、逐次逼近法、双斜积分法和并行转换法。
由于逐次逼近式A/D转换具有速度,分辨率高等优点,而且采用这种方法的ADC芯片本钱低,所以我们采用逐次逼近式A/D转换器。
逐次逼近型ADC包括1个比拟器、一个模数转换器、1个逐次逼近存放器〔SAR〕和1个逻辑控制单元[5]。
逐次逼近型是将采样信号和电压不断进展比拟,一个时钟周期完成1位转换,依次类推,转换完成后,输出二进制数。
这类型ADC的分辨率和采样速率是相互牵制的。
优点是分辨率低于12位时,价格较低,采样速率也很好。
ADC0832模数转换器具有8位分辨率、双通道A/D转换、输入输出电平与TTL/CMOS相兼容、5V电源供电时输入电压在0~5V之间、工作频率为250KHZ、转换时间为32微秒、一般功耗仅为15MW等优点,适合本系统的应用,所以我们采用ADC0832为模数转换器件。
ADC0832具有以下特点:
•8位分辨率;
•双通道A/D转换;
•输入输出电平与TTL/CMOS相兼容;
•5V电源供电时输入电压在0~5V之间;
•工作频率为250KHZ,转换时间为32μS;
•一般功耗仅为15mW;
•8P、14P—DIP〔双列直插〕、PICC多种封装;
•商用级芯片温宽为0度to+70度,工业级芯片温宽为−40度to+85度;
芯片接口说明:
•CS_片选使能,低电平芯片使能。
•CH0模拟输入通道0,或作为IN+/-使用。
•CH1模拟输入通道1,或作为IN+/-使用。
•GND芯片参考0电位〔地〕。
•DI数据信号输入,选择通道控制。
•DO数据信号输出,转换数据输出。
•CLK芯片时钟输入。
•Vcc/REF电源输入与参考电压输入〔复用〕。
4〕LCD显示
液晶显示模块与计算机的接口电路有两种方式。
它与单片机的接口方法分为直接访问方式和间接控制方式。
直接访问方式是把液晶模块作为存储器或I/O设备直接接在单片机的总线上,单片机以访问存储器或I/O设备的方式操作液晶显示模块的工作。
间接控制方式如此不使用单片机的数据系统,而是利用它的I/0口来实现与显示模块的联系。
即将液晶显示模块的数据线与单片机的P0口连接作为数据总线,另外三根时序控制信号线通常利用单片机的P2口中未被使用的I/O口来控制。
这种访问方式不占用存储器空间,它的接口电路与时序无关,其时序完全靠软件编程实现。
LCD1602字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16×
1,16×
2,20×
2和40×
2行等的液晶显示模块,模块组件部主要由LCD显示屏、控制器、列驱动器和偏压产生电路构成。
1602液晶显示屏采用标准的16脚接口,其中各接口的功能如下表所示:
引脚号
引脚名
电平
输入/输出
引脚说明
1
VSS
电源地
2
VDD
电源正极(+5V)
3
VL
液晶显示偏压信号
4
RS
0/1
输入
数据/命令选择端,0:
输入指令,1:
输入数据
5
R/W
读/写选择端,0:
向LCD写入指令或数据,1:
从LCD读取信息
6
E
1→0
使能信号,1时读取信息,1→0(下降沿)执行指令
7
D0
数据总线(最低位)
8
D1
数据总线
9
D2
10
D3
11
D4
12
D5
13
D6
14
D7
数据总线(最高位)
15
BLA
+VCC
LCD背光电源正极
16
BLK
接地
LCD背光电源负极
表1
2、系统方框图
图3
三、设计过程
〔一〕软件设计
对于单片机的开发应用中,逐渐引入了高级语言,C语言就是其中的一种。
汇编语言的可控性较高级语言来说更具优越性。
程序编写语言比拟常见的有C语言、汇编语言。
汇编语言的机器代码生成效率高,控制性好,但就是移植性不高。
C语言编写的程序比用汇编编写的程序更符合人们的思考习惯。
还有很多处理器都支持C编译器,这样意味着处理器也能很快上手。
且具有良好的模块化、容易阅读、维护等优点,且编写的模块程序易于移植。
基于C语言和汇编语言的优缺点,本系统采用C语言编写方法[17]。
软件编写的主体思路是将系统按功能模块化划分,然后根据模块要实现的功能写各个子程序。
整个软件程序的编写采用查询式方式编写的。
程序编写包括主程序,液晶显示程序,存储程序,AD转换程序和时钟程序。
1、主程序
主程序实现的功能:
与硬件相结合实现便携式酒精浓度检测仪的各个功能。
主要是检测与显示,数据存储。
功能子函数的调用。
见图
图4
首先开启启动按钮,启动单片机和显示器,同时对单片机部进展初始化,紧接着初始化显示屏,初始化完毕后显示开机画面显示主菜单,然后对键盘的读入。
2、A/D转换模块程序流程图
⑴模数转换模块的主要功能就是将经放大器放大的模拟电压信号转化为MCU能够处理的数字信号,并传送给MCU。
A/D芯片的数据CS口,连接51单片机的P3.1口,CLK接P3.2,D1和D0接P3.3口。
工作时序如下所示:
ADC0832有8只引脚,CH0和CH1为模拟输入端,CS为片选引脚,只有CS置低才能对ADC0832进展配置和启动转换。
CLK为ADC0832的时钟输入端。
CS在整个转换过程中都必须为低,当CS为低时,在数据输入端DI〔数据输入端〕加一个高电平,接着在CLK上加一个时钟,DI上的逻辑1就会使ADC0832的DI脱离高阻态,然后通道配置数据伴随着时钟通过DI端移入多路器,当最后一位数据移入多路器时,,DI变为高阻态,在这以前DO〔数据输出端〕都为高阻态。
在经过一个时钟,DO脱离高阻态,从而启动转换。
接着从处理器接收时钟信号,每经过一个时钟,转换后的数据就会从高位到低位依次从DO移出,经过8个时钟后,数据又以从低位到高位的形式从DO移出〔也是每个时钟移一位〕。
当最后一位数据移出时转换完成。
当CS从低变为高时,ADC0832部所有存放器清零。
如想要进展下一次转换,CS必须做一个从高到低的跳变,后跟着地此配置数据重复上面的过程。
⑵ADC0832转换的流程图见如如下图
图5
3、按键程序流程图
⑴按键时显现人机对话的一个控制按钮,通过按键的操作,对系统进展发送操作指令,后经与MCU串行通信,然后在液晶上显示。
⑵按键查询式的流程图见如如下图
图6
按键的四个键分别接P1.0,P1.1,P1.2,P1.3,由于P1口具有上拉电阻,所以不在需要加上拉电阻进展电压的放大。
〔二〕、硬件设计
基于单片机酒精浓度检测仪的硬件设计局部。
首先,我们必须了解它的硬件设计原理。
其次,需要弄清楚它的总体构成与具体的外围电路。
最后,根据其原理框图和具体的外围电路得到完整的硬件总电路图。
1、硬件设计原理
由酒精传感器对待测气体〔液体〕进展检测,转换成输出电压信号,仪单片机为核心的控制、信号采集处理、声光报警电路以与显示、键盘、PC接口电路。
测试仪进展气体检测的根本步骤是单片机采集酒精传感器的响应信号,并且进展转换,储存在数据储存器中,然后单片机通过特定的算法进展气体浓度的识别,同时将分析的值与设定值进展比照,对超出设定值进展报警,并且将结果输出到LED显示屏幕上。
本系统由酒精传感器,数模转换器,单片机,键盘,声音报警以与LCD显示等局部组成,在这次的整体设计中详细涉与下面几个方面,其原理框图如如如下图
图8
2、芯片介绍
1〕、AT89S51
AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片含4K的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统与引脚。
它集Flash程序存储器,既可在线编程也可以用传统方法进展编程与通用8位微处理器于单片芯片中,可灵活应用于各种控制领域。
AT89S51提供以下标准功能:
4KBFlash闪存存储器,128B部RAM,32个I/O口线,看门狗,两个数据指针,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片振荡器与时钟电路。
根据实际需要,本次设计选用的是以8051为核心单元Atmel公司的低耗AT89S51单片机。
AT89S51芯片有40条引脚,采用双列直插式封装,如图9所示。
下面说明各引脚功能。
图9
VCC:
运行和程序校验时接电源正端。
GND:
接地。
XTAL1:
输入到单片机部振荡器的反相放大器。
XTAL2:
反相放大器的输出,输入到部时钟发生器。
P0口:
8位漏极开路的。
使用片外存储器时,作低八位地址和数据分时复用,能驱动8个LSTTL上拉电阻。
P1口:
8位、准双向I/O口。
P2口:
当使用片外存储器〔ROM与RAM〕时,输出高8位地址。
可以驱动4个LSTTL负载。
——————
——
低电平有效,输出,片外存储器读选通。
RST:
复位输入信号,高电平有效。
在振荡器工作时,在RST上作用两个机器周期以上的高电平,将器件复位。
/VCC:
片外程序存储器访问允许信号,低电平有效。
高电平时选择片程序存储器,低电平时程序存储器全部在片外而不管片是否有程序存储器。
ALE/PROG:
地址锁存允许信号,输出。
ALE以1/6的振荡频率固定速率输出,可作为对外输出的时钟或用作外部定时脉冲。
单片机最小系统的设计包括电源,晶振和复位电路三个局部。
这是使单片机正常工作的必要外围电路局部。
针对不同型号的单片机在最小系统设计上会有一些差异。
对于选用的AT89S51单片机,根据美国ATMEL公司提供的技术资料,可以对它的最小系统作恰当的设计,如图10所示。
~5.5V。
因此,单片机的引脚40对应的VCC接到+5V电源的正极,引脚10对应的GND接到+5V电源的接地端,为AT89S51单片机提供正常的工作电压。
对于晶振局部,AT89S51单片机中有一个用于构成部振荡器的高增益反相放大器,引脚19对应的XTAL1和18对应的XTAL2分别是该放大器的输入端和输出端。
这个放大器与作为反响元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。
如图10所示,石英晶体与电容C1和C2接在放大器的反响回路中构成并联谐振电路。
石英晶体的两端分别接到引脚XTAL1和引脚XTAL2,同时石英晶体的两端分别接一个电容C1和C2,电容的另一端接地。
对于外接电容C1和C2的大小虽然没有十分严格的要求,但电容容量的大小还是会对振荡频率的上下、振荡器工作的稳定性、起振的难易程度和温度稳定性带来一定的影响。
根据技术资料的推荐,使用石英晶体推荐电容容量为30pF±
10pF,使用陶瓷谐振器推荐电容容量为40pF±
10pF。
因为电路中接的是石英晶体,所以设计中接的两个电容C1和C2的容量都为33pF。
对于复位电路局部,AT89S51技术资料给出,当振荡器工作时,RST引脚出现两个机器周期以上的高电平将使单片机复位。
复位是单片机的初始化操作,当由于程序运行出错或操作错误使系统处于死锁状态时,为了摆脱困境,可以按复位键以重新启动,所以复位电路的设计很有必要。
复位操作有上电自动复位、按键电平复位和外部脉冲复位三种方式,本设计选用按键电平复位方式。
如图10所示,10μF的电容C3与270Ω的电阻并联后再与一个10KΩ的电阻串联,电容的正极端接到电源的正极,电容的另一端接至引脚RST。
设计中选用的石英晶体大小为,但复位键按下后,电容和电阻选用的参数值能够保证给复位端RST提供大于2个机器周期的高电平复位信号。
图10
2)、ADC0832
ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。
由于它体积小,兼容性强,性价比高而深受单片机爱好者与企业欢迎,其目前已经有很高的普与率。
学习并使用ADC0832可是使我们了解A/D转换器的原理,有助于我们单片机技术水平的提高。
ADC0832具有以下特点:
·
输入输出电平与TTL/CMOS相兼容;
5V电源供电时输入电压在0~5V之间;
工作频率为250KHZ,转换时间为32μS;
一般功耗仅为15mW;
8P、14P—DIP〔双列直插〕、PICC多种封装;
商用级芯片温宽为0°
Cto+70°
C,工业级芯片温宽为−40°
Cto+85°
C;
CS_片选使能,低电平芯片使能。
CH0模拟输入通道0,或作为IN+/-使用。
CH1模拟输入通道1,或作为IN+/-使用。
GND芯片参考0电位〔地〕。
DI数据信号输入,选择通道控制。
DO数据信号输出,转换数据输出。
CLK芯片时钟输入。
Vcc/REF电源输入与参考电压输入〔复用〕。
ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
其部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。
通过DI数据输入端,可以轻易的实现通道功能的选择。
图11
3、硬件设计的外围电路
1〕、晶振电路
单片机工作的过程中各指令的微操作在时间上有严格的次序,这种微操作的时间次序称作时序,单片机的时钟信号用来为单片机芯片部各种微操作提供时间基准,89C51的时钟产生方式有两种,一种是部时钟方式,一种是外部时钟方式。
部时钟方式即在单片机的外部接一个晶振电路与单片机里面的振荡器组合作用产生时钟脉冲信号,外部时钟方式是把外部已有的时钟信号引入到单片机,此方式常用于多片89C51单片机同时工作,以便于各单片机的同步,一般要求外部信号高电平的持续时间大于20ns.且为频率低于12MHz的方波。
对于CHMOS工艺的单片机,外部时钟要由XTAL1端引入,而XTAL2端应悬空。
本系统中为了尽量降低功耗的原如此,采用了部时钟方式。
图12
在89C51单片机的部有一个震荡电路,只要在单片机的XTAL1和XTAL2引脚外接石英晶体〔简称晶振〕就构成了自激振荡器并在单片机部产生时钟脉冲信号,图中电容器C1和C2稳定频率和快速起振,电容值在5—30pF,典型值是22pF,晶振CYS选择的是12MHz。
2〕、复位电路
单片机开始工作的时候,必须处于一种确定的状态,否如此,不知哪是第一条程序和如何开始运行程序。
端口线电平和输入输出状态不确定可能使外围设备误动作,导致严重事故的发生;
部一些控制存放器〔专用存放器〕容不确定可能导致定时器溢出、程序尚未开始就要中断与串口乱传向外设发送数据。
因此,任何单片机在开始工作前,都必须进展一次复位过程,使单片机处于一种确定的状态。
当在89C51单片机的RST引脚引入高电平并保持2个机器周期时,单片机部就执行复位操作〔假设该引脚持续保持高电平,单片机就处于循环复位状态〕。
实际应用中,复位操作有两种根本形式:
一种是上电复位,另一种是上电与按键均有效的复位,上电复位,要求接通电源后,单片机自动实现复位操作。
常用的上电复位,上电瞬间RST引脚获得高电平,随着电容C1的充电,RST引脚的高电平将逐渐下降。
本设计中复位电路采用的是开关复位电路,开关S9未按下是上电复位电路,上电复位电路在上电的瞬间,由于电容上的电压不能突变,电容处于充电〔导通〕状态,故RST脚的电压与VCC一样。
随着电容的充电,RST脚上的电压才慢慢下降。
选择合理的充电常数,就能保证在开关按下时是RST端有两个机器周期以上的高电平从而使STC89C51部复位。
开关按下时是按键手动复位电路,RST端通过电阻与VCC电源接通,通过电阻的分压就可以实现单片机的复位。
图13
RST引脚的高电平只要能保持足够的时间〔2个机器周期〕,单片机就可以进展复位操作。
该电路典型的电阻和电容参数为:
晶振为12MHz时,C1为10uF:
R4为8.2k。
3〕、报警设计
在单片机应用系统中,一般的工作状态可以通过指示灯或数码显示来指示,供操作人员参考,了解系统的工作状况。
但对于某些紧急状态,比如系统检测到的错误状态等,为了使操作人员不至于无视,与时采取措施,往往还需要有某种更能引人注意,提起警觉的报警信号。
这种报警信号通常有三种类型:
一是闪光报警,因为闪动的指示灯更能提