仪器仪表设计报告.docx

上传人:b****6 文档编号:8120867 上传时间:2023-01-28 格式:DOCX 页数:20 大小:540.88KB
下载 相关 举报
仪器仪表设计报告.docx_第1页
第1页 / 共20页
仪器仪表设计报告.docx_第2页
第2页 / 共20页
仪器仪表设计报告.docx_第3页
第3页 / 共20页
仪器仪表设计报告.docx_第4页
第4页 / 共20页
仪器仪表设计报告.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

仪器仪表设计报告.docx

《仪器仪表设计报告.docx》由会员分享,可在线阅读,更多相关《仪器仪表设计报告.docx(20页珍藏版)》请在冰豆网上搜索。

仪器仪表设计报告.docx

仪器仪表设计报告

基于工业成品的温度检测仪表设计

 

摘要

在现代化的工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。

其中,温度是需要测量和控制的重要参数之一。

例如,在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉,热处理炉,反应炉和锅炉中的温度进行检测和控制。

本次设计是实现一个PT100温度测量系统的设计。

采用MCS-51单片机来对温度进行检测,不仅具有控制方便,组态简单的灵活性大的优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。

因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。

在温度的采集上,我们用到了模拟信号转换器,通常使用一个被称为模拟、数字转换器(A/D)的电子器件,被广泛适用在电子信号处理中。

A/D转换器的速度越快,即对模拟信号的采样时间单位分的越细,图形记录就越真实。

而对于波形振荡周期非常之短的线圈来说,它的电压随时间变化的速度非常之快,因而将振荡波形的模拟信号数字化变换时,要求使用变换速度非常高的A/D转换器,否则就不能正确采集,真实显示这个高速变化的波形。

本次设计以ICL7135系列积分型实现A/D转换的实时温度检测仪表,可以很好的实现这一功能,ICL7135具有±20000个数的分辨率,而且有BCD码和STB选通信号输出,与微机接口十分方便,因此ICL7135作为微机的高精度A/D接口电路非常多。

在工业过程中该测量系统能实现较稳定及时的温度采集,因此得到广泛运用。

另外,在温度测量中,热电偶的应用极为广泛,它具有结构简单,制造方便,测量范围广,精度高,惯性小和输出信号便于远传等许多优点。

由于热电偶是一种有源传感器,测量时不需外加电源,使用十分方便,这次设计采用Pt100温度传感器。

PT100是一种稳定性和线性都比较好的铂丝热电阻传感器,可以工作在-200℃至650℃的范围。

关键词:

PT100温度测量系统AT89S52信号采集ICL7135A/D转换

 

基于工业成品的温度检测仪表设计

一、设计任务

本次仪表课程设计是实现一个PT100温度测量系统的设计。

要求在现有的PCB板上开发出实际温度测量系统。

本次设计主要参考工业现场应用非常广泛的LU-907M智能位置比例调节仪的硬件进行设计,LU-907M智能调节仪主要用于窑炉的温度控制,它可省去伺服放大器直接驱动执行机构,广泛用于陶瓷玻璃等行业。

LU-907M智能调节仪主要利用ICL7135数据转换器和AT89S52单片机实现数据的转换、处理的温度检测及控制。

系统主板由电源转换单元、温度检测变送单元、A/D转换器单元、主控制器单元、人机对话单元和执行机构等几部分组成。

二、设计原理

硬件原则:

1)我们结合典型的A/D转换电路,选择ICI7135芯片做主打芯片,实现转换功能。

2)此设计利用A/D转换芯片配以显示电路用其所需要的外围电路实现温度显示,具有编程灵活,便于显示Pt100的温度。

3)硬件结构设计应与软件设计方案一并考虑。

4)整个系统相关器件力求性能匹配,与环境相适应。

软件原则:

1)我们的程序采用模块化设计,软件结构清晰,简洁。

2)我们将设计的程序存储区尽量合理化规划,便于设计功能的扩展。

3)我们对各个功能程序与运行结果及运行要求都作了简单说明,以便查询。

三、硬件设计(各部分原理图)

3.1数据采集

在Pt100检测信号输入时引进预处理级,减少高频等信号的不利干扰。

3.2信号放大环节

3.3A/D转换

3.4内部稳压电路

 

3.4单片机控制模块

3.6动态显示模块

四、软件设计

4.1主程序设计流程图

4.2各单元设计流程图

(1)A/D数据采集模块

采用中断方式实现A/D数据采集。

定时器T0采用外部门信号启动,当INT0为高电平且TR0=1时才启动,而当输入信号跳变为低电平时停止定时,故为了保证实时性及准确性,在本设计采用定时器加外部中断的形式实现A/D采集。

(2)数据处理模块

(3)动态显示模块

8031的时钟采用6MHz晶体,在不执行MOVX指令的情况下,ALE是稳定的1MHz频率,经过4分频可得到250kHz的稳定频率,传给ICL7135时钟输入端,使ICL7135的转换速率为每秒6.25次,选取这一转换速率,一方面照顾ICL7135A/D转换的精度,另一方面为了尽量少占用8031的资源。

定时器为16位计数器,最大计数值65535。

在6.25次/秒转换速率条件下,满度电压输入时,busy宽度为30001个时钟脉冲。

再结合图1和图2可知,8031内部定时器的输入频率是500kHz,比ICL7135的时钟频率(250kHz)高1倍,在满度电压输入时,定时器计数值为30001x2=60002。

不超过定时器最大值。

在“busy”高电平期间定时器的数值除以2,再减去10001,余数便是被测电压的数值。

4.3程序实现

ORG0000H

RESET:

LJMPMAIN

ORG0003H外中断0中断入口

LJMPITOP跳至ITOP执行

ORG1000H定时器T0中断入口

MAIN:

MOVTMOD,#09H;TO工作方式设定为方式1

MOVTL0,#0

MOVTH0,#0

SETBTR0启动T0

MOVR2,#60H

MOVR3,#68H

M_LOOP:

LCALLDISP

LJMPM_LOOP

END

ITOP:

CLRC

MOVA,TH0

RRCA

MOVR2,A

MOVA,TL0

RRCA

CLRC

MOVR3,A

CLRC

MOVA,R2

SUBBA,#11H

MOVR2,A

MOVA,R3

SUBBA,#27H

MOVR3,A

MOVTL0,#0

MOVTH0,#0

BINBCD1:

MOVR0,#30H

MOVR4,#16

BINBCD2:

CLRC

MOVA,R3

RLCA

MOVR3,A

MOVA,R2

RLCA

MOVR0,#30H

MOVA,@R0

ADDCA,@R0

DAA

MOV@R0,A

INCR0

MOVA,@R0

DAA

MOV@R0,A

ADDCA,@R0

DAA

MOV@R0,A

DJNZR4,BINBCD2

Handle:

MOVDPTR,#0

D_LOOP:

CLRC

MOVA,R3

SUBBA,#200

MOVBB,A

MOVA,R2

SUBBA,#0

JCDIV_E

INCDPTR

MOVR3,B

MOVR2,A

SJMPD_LOOP

DIV_E:

MOVR2,DPH

MOVR3,DPL

RETI

DISP:

MOVDPTR,#TAB

MOVR0,#30H

MOVR5,#OFH

DIS:

MOVA,R5

MOVP2,A

MOVA,@R0

SWAPA

ANLA,#0FH

MOVCA,@A+DPTR

MOVP0,A

LCALLDL2MS

MOVA,R5

CLRC

SUBBA,#3FH

JBCC,D_DISP

DIS1:

LJMPLD1

D_DISP:

MOVA,R5

ADDA,#10H

MOVR5,A

MOVP2,A

MOVA,@R0

ANLA,#0FH

MOVCA,@A+DPTR

MOVP0,A

LCALLDL2MS

INCR0

MOVA,R5

CLRC

SUBBA,#3FH

JBCC,D_DISP1

DIS2:

LJMPLD1

D_DISP1:

MOVA,R5

ADDA,#10H

MOVR5,A

LJMPDIS

LD1:

RET

ORG0000H;初始化程序

AJMPSTART

ORG0003H

LJMPCINT0

ORG0100H

W1:

MOV@R1,A;将R1—R3设定初值

INCR1

DINZR2,W1

RET

START:

MOVR1,#78H;储存首地址放入R1

MOVR2,#030H;设定初值R2

MOVA,#00H

CALLW1

MOVA,#80

MOVDPTR,#0DFFFH

MOVX@DPTR,A

CLRA

MOVR2,#0F0H;对R2重新赋值

CALLDISP

MAIN:

MOVPSW,#00H;清空PSW

SETBEA;允许中断

SETBEX0

SETBIT0

MOVA,#00H;采样

MOVDPTR,#9FF8H

MOVX@DPTR,A

L2:

JNBF0,L2

ACALLTUNBCD

LCALLDISINT0

DJMPMAIN

TUNBCD:

MOVA,@R0将R0里面的值赋给A

MOVB,#51

DIVABA除B

MOV7AH,A商放入7AH

MOVA,B余数存入A

CLRF0F0清零

SUBBA,#1AH

MOVF0,C进位存入F0

MOVA,#10

MULAB(A)*(B)

MOVB,#51H

DIVAB

JBF0,LOOP2

ADDA,#5

LOOP2:

MOV79H,A

MOVA,B

CLRF0

SUBBA,#1AH

MOVF0,C

MOVA,#10

MULAB

MOVB,#51H

DIVAB

JBF0,LOOP3

ADDA,#5

LOOP3:

MOV78H,A

RET

DISP:

MOVDPTR,#TABLE表地址存入DPTR

MOVCA,@A+DPTR取表值

MOVDPTR,#0DFFCH显示

MOVX@DPTR,A

MOVA,R2

INCDPTR选择显示口

MOVX@DPTR,A显示

CALLDELAY延时

RET

DISP1:

MOVDPTR,#TABL表1首地址存入DPTR(带小数点)

MOVCA,@A+DPTR取表值

MOVDPTR,#0DFFCH显示

MOVX@DPTR,A

MOVA,R2

INCDPTR

MOVX@DPTR,A

CALLDELAY延时

RET

DISINT0:

MOVR2,#0FEH选择数码管输出

CLRA

CALLDISP

MOVA,7AH

MOVR2,#0FDH

CALLDISP1

MOVA,79H

MOVR2,#0FBH

CALLDISP

MOVA,78H

MOVR2,#0F7H

CALLDISP

RET

DELAY:

MOVR5,#10延时子程序

DELAY2:

MOVR7,#100

DELAY1:

DJNZR7,DELAY1

DINZR6,DELAY2

RET

CINT0:

MOVXA,@SPTR

MOV@R0,A

SETBF0

RET

TABLE:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

TABLE1:

DB040H,79H,024H,030H,19H,12H,02H,78H,00H,10H,

END

5、设计心得

课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。

在这次课程设计过程中,我们加深了对理论知识的理解。

虽然每个成员是分工作业,在设计的整个过程中组员相互讨论,共同进步,这增强了我们大家的团结合作能力。

这已经不是我们第一次做课程设计,但每一次实践都能让我们学到很多,自己的能力也得到了很大提高。

随着科技的进步,对温度的检测也将越来越智能化,以后也将出现更多用单片机来实现特定功能的产品。

由于时间的关系,以及自己的理论知识的不扎实,在整个设计的过程中显得有些不知所措,心有余而力不足,回顾起此次课程设计,有很多感慨,特别是联想到以后的工作,理论知识需要与实际环境以及具体的应用情况相结合。

大学时间是在学习基础理论知识,并未真正的去应用和实践,动手能力还很缺乏。

但是经过这次课程设计,我接触到了很多平时没有接触到的知识,元器件以及相关的东西,发现了自己很多不足之处。

我体会到了所学理论知识的重要性,知识掌握得越多,设计的就更全面,更顺利更好。

在设计的过程中遇到的问题,虽然已经不是第一次做课程设计了,但还是难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻。

最后,想说的是,通过这次课程设计,让我彻底知道理论与实践相结合的重要性,只有多动手,才能进一步将理论知识巩固,自己才能真正学到东西,才能理解知识,为以后自己真正的实践起到一点辅助性的作用。

通过这次课程设计,学到了不少东西,在比以前的课程设计中有了更深的了解,元器件以及一些相关资料的查询,对元器件实物的选择见识也更多了,有去尝试就会有收获,在理论的认知上再加上实际的动手能力,学到的会更多。

感谢老师的指导,使我顺利完成了这次课程设计。

六、参考文献

1.《单片机原理及应用》张毅刚彭善元编著高等教育出版社

2.《51系列单片机设计实例》楼然苗李光飞编著北京航空航天大学出版社

 

七、附录

芯片引脚功能:

At89s52:

 P0口:

P0口是一个8位漏极开路的双向I/O口。

作为输出口,每位能驱动8个TTL逻

  辑电平。

对P0端口写“1”时,引脚用作高阻抗输入。

  当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。

在这种模式下,

  P0不具有内部上拉电阻。

  在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。

程序校验

  时,需要外部上拉电阻。

  P1口:

P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个

  TTL逻辑电平。

对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入

  口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

  此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2

  的触发输入(P1.1/T2EX),具体如下表所示。

  在flash编程和校验时,P1口接收低8位地址字节。

  引脚号第二功能

  P1.0T2(定时器/计数器T2的外部计数输入),时钟输出

  P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)

  P1.5MOSI(在系统编程用)

  P1.6MISO(在系统编程用)

  P1.7SCK(在系统编程用)

  P2口:

P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个

  TTL逻辑电平。

对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入

  口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

  在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)

  时,P2口送出高八位地址。

在这种应用中,P2口使用很强的内部上拉发送1。

在使用

  8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。

  在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

  P3口:

P3口是一个具有内部上拉电阻的8位双向I/O口,p3输出缓冲器能驱动4个

  TTL逻辑电平。

对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入

  口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

  P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。

  在flash编程和校验时,P3口也接收一些控制信号。

  端口引脚第二功能

  P3.0RXD(串行输入口)

  P3.1TXD(串行输出口)

  P3.2INTO(外中断0)

  P3.3INT1(外中断1)

  P3.4TO(定时/计数器0)

  P3.5T1(定时/计数器1)

  P3.6WR(外部数据存储器写选通)

  P3.7RD(外部数据存储器读选通)

  此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。

  RST——复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

  ALE/PROG——当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。

要注意的是:

每当访问外部数据存储器时将跳过一个ALE脉冲。

  对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。

  如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。

该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。

此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

  PSEN——程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

  EA/VPP——外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。

需注意的是:

如果加密位LB1被编程,复位时内部会锁存EA端状态。

  如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。

  FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

ICL7135引脚功能如下:

ICL7135引脚功能如下:

{1}脚(V-)-5V电源端

{2}脚(VREF)基准电压输入端

{3}脚(AGND)模拟地

{4}脚(INT)积分器输入端,接积分电容

{5}脚(AZ)积分器和比较器反相输入端,接自零电容

{6}脚(BUF)缓冲器输出端,接积分电阻

{7}脚(CREF+)基准电容正端

{8}脚(CREF-)基准电容负端

{9}脚(IN-)被测信号负输入端

{10}脚(IN+)被测信号正输入端

{11}脚(V+)+5V电源端

{12}、{17}~{20}脚(D1~D5)位扫描输出端

{13}~{16}脚(B1~B4)BCD码输出端

{21}脚(BUSY)忙状态输出端。

积分器在积分过程中(对信号积分和反向积分)BUSY输出高电平,积分器反向积分过零后输出低电平。

{22}脚(CLK)时钟信号输入端。

工作于双极性情况下,最高时钟濒率为125kHz,这时转化速度为3次/秒左右,如果输入信号为单极性的,则时钟频率可最高到1MHZ,这时转换速度为25次/秒。

{23}脚(POL)负极性信号输出端。

当输入信号为正时,POL极性输出为高电平;输入信号为负时,POL极性输出为低电平。

{24}脚(DGND)数字地端

{25}脚(R/H)运行/读数控制端。

该端接高电平时,ICL7135自动连续转换,每隔40002个时钟完成一次A/D转换;该端为低电平时.A/D转换结束后保持转换结果,输入一个正脉冲后(大于300ns),重新启动ICL7135开始另一次转换。

{26}脚(STR)数据选通输出端。

该脉冲宽度为时钟脉冲宽度的1/2。

一次A/D转换结束后,该端输出5个负脉冲,分别选通高位到低位的BCD码数据输出,可利用该信号把数据打入到并行接口中供CPU读取,这一点在和单片机接口时非常重要。

{27}脚(OR)超量程状态输出端。

当输入信号读数超过转换器计数范围时,该引脚输出高电平。

{28}脚(UR)欠量程状态输出端。

当输入信号读数小于9%或更小时,该端输出高电平。

 

八、实物图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1