单片机作业.docx

上传人:b****7 文档编号:10487011 上传时间:2023-02-13 格式:DOCX 页数:18 大小:176.66KB
下载 相关 举报
单片机作业.docx_第1页
第1页 / 共18页
单片机作业.docx_第2页
第2页 / 共18页
单片机作业.docx_第3页
第3页 / 共18页
单片机作业.docx_第4页
第4页 / 共18页
单片机作业.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

单片机作业.docx

《单片机作业.docx》由会员分享,可在线阅读,更多相关《单片机作业.docx(18页珍藏版)》请在冰豆网上搜索。

单片机作业.docx

单片机作业

一.设计说明

设计要求:

可实现4个回路的温度控制,两个回路的温度传感器为铂电阻,另两个回路的温度传感器为热电偶。

四个回路的基本控制思路是一致的,对于具体的一个回路,它的工作过程如下:

将用户温度设定值(即输入控制量)和温度反馈值同时送入控制电路部分,在控制电路的输出端得到控制数字信号,经D/A转换得模拟控制量作用于控制对象,从而达到温度控制的目的。

在闭环反馈系统中,利用传感器采集被控对象的温度值,并对其进行调理和放大,经A/D转换器和数字滤波器反馈到设定值输入电路。

具体工作过程如下:

 

图系统功能流程图

温度传感器:

铂电阻PT100在0摄氏度的时候阻值为100欧姆,其阻值会随着温度上升成匀速增长;

热电偶是由两种不同金属结合而成,它受热时会产生微小的电压,电压大小取决于组成热电偶的两种金属材料,铁-康铜(J型)、铜-康铜(T型)和铬-铝(K型)热电偶是最常用的三种。

热电偶产生的电压很小,通常只有几毫伏。

K型热电偶温度每变化1℃时电压变化只有大约40μV,因此测量系统要能测出4μV的电压变化测量精度才可以达到℃。

由于两种不同类型的金属结合在一起会产生电位差,所以热电偶与测量系统的连接也会产生电压。

一般把连接点放在隔热块上以减小这一影响,使两个节点处以同一温度下,从而降低误差。

测量热电偶电压要求的增益一般为100到300,而热电偶撷取的噪声也会放大同样的倍数。

通常采用测量放大器来放大信号,因为它可以除去热电偶连线里的共模噪声。

市场上还可以买到热电偶信号调节器,如模拟器件公司的AD594/595,可用来简化硬件接口。

把温度信号转换成热电动势信号,通过电气仪表转换成被测介质的温度。

变送器即为调理放大电路:

调理电路把传感器测得的模拟信号变换为用于数据采集、控制过程、执行计算显示读出或其他目的的数字信号,这是因为传感器输出是相当小的电压、电流或电阻变化,因此,在变换为数字信号之前必须进行调理。

调理就是放大,缓冲或定标模拟信号等,使其适合于模/数转换器(ADC)的输入。

然后,ADC对模拟信号进行数字化,并把数字信号送到比较器与输入量比较进行反馈控制现场温度。

不管是热电偶还是铂电阻传感器,最后采集到的都是模拟量,所以需要对采集进来的模拟信号数字化,即将由传感器得到的信号经A/D转换器转化为数字量的信号。

数字信号里面可能会存在干扰,所以需设置滤波器,对反馈回来的数字信号进行滤波。

单片机输出的控制量是数字量,所以需要设置D/A转化器,从而得到模拟的控制量作用于被执行机构,即温控对象。

对于主系统的设计,包括启动A/D转换器,读如数据采样,数字滤波,越权温度报警和处理,PID计算和输出可控硅的同步触发脉冲等。

此外系统还需要显示实时温度值。

这些都可通过T0中断服务程序来实现,此中断程序即构成了温度控制系统的主程序。

用于引脚上输出的该同步脉冲宽度由T1计数器的溢出中断控制,8031利用等待T1溢出中断空隙时间完成把本次采样数值转换成显示值而放入显示缓冲区和调用温度显示程序,8031从T1中断服务程序返回后便可以恢复现场和返回主程序,以等待下次T0中断。

 

二.硬件原理图与说明

 

此系统是基于8031单片机的,由于8031无片内程序存储器,所以使用时需外加EPROM作为外部程序存储器,扩展时采用具有锁存功能的74LS373为输出口,外接的外部程序存储器多为EPROM的2764系列。

连接图如下:

 

 

系统控制主电路是由8031及其外围芯片,及一些辅助的部分构成的。

其中主要包括8031单片机及其外接的锁存器74LS373和2764EPROM,数模转换DAC0832,模数转换ADC0809,传感器热电偶和铂电阻,调理电路等。

 

图系统设计原理图

 

图A/D转换电路图

 

ADC0809的IN0和变送器输出端相连,故IN0上输入的0V-+5V范围的模拟电压经A/D转换后可由8031通过程序从P0口输入到它的内部RAM单元。

首先输入地址选择信号,在ALE信号作用下,地址信号被锁存,产生译码信号,选中一路模拟量输入。

然后输入启动转换控制信号START启动转换。

转换结束,数据送三态缓冲锁存器,同时发出EOC信号。

在允许输入信号OE的控制下,再将转换结果输入到外部数据总线。

 

8031对温度的控制是通过可控硅调控器实现的。

如图所示,

图可控硅功输出与通断时间关系

双向可控硅管和加热丝串联接在交流220V,50Hz交流试点回路。

在给定的周期T内,8031只要改变可控硅管的接通时间便可改变加热丝功率,以达到调节温度的目的。

图示出了可控硅管在给定周期T内具有不同接通时间的情况。

显然

,可控硅在给定周期T的100%时间内接通的功率最大。

可控硅接通时间可以通过可控硅控制板上控制脉冲控制。

该触发脉冲由8031用软件在引脚上产生,受过零同步脉冲后经光偶管和驱动器输送到可控硅的控制极上。

在工业上,偏差控制又称为PID控制,这是工业控制中常用的控制形式,一般能收到令人满意的效果。

控制论告诉我们,PID控制的理想方程是:

()

式中e—测量值与给定值之间的偏差;

TD—微分时间:

T-积分时间;

()

KP—调节器的放大系数.

将上式离散化得到数字PID位置式算法

式中在位置式算法的基础之上得到数字PID

增量式算法:

三.软件流程图与说明

1.主程序

图主程序流程图

 

主程序:

ORG0100H

DISM0DATA78H

DISM1DATA79H

DISM2DATA7AH

DISM3DATA7BH

DISM4DATA7CH

DISM5DATA7DH

MOVSP,#50H;50H送SP

CLR5EH;清本次越限标志

CLR5FH;清上次越限标志

CLRA;清累加器A

MOV2FH,A

MOV30H,A

MOV3BH,A

MOV3CH,A清暂存单元

MOV3DH,A

MOV3EH,A

MOV44H,A

MOVDISM0,A

MOVDISM1,A

MOVDISM2,A

MOVDISM3,A清显示缓冲区

MOVDISM4,A

MOVDISM5,A

MOVTMOD,#56H

MOVTL0,#06H

MOVTH0,#06H

CLRPT0

SETBTR0

SETBET0

SETBEA

LOOPACALLDISPLY;调用显示程序

ACALLSCAN;调用扫描程序

AJMPLOOP;等待中断

2.中断服务程序

中断服务程序流程图如下所示:

 

T0中断服务程序是温度控制系统的主程序,用于启动A/D转换器,读如数据采样,数字滤波,越权温度报警和处理,PID计算和输出可控硅的同步触发脉冲等。

引脚上输出的该同步脉冲宽度由T1计数器的溢出中断控制,8031利用等待T1溢出中断空隙时间完成把本次采样数值转换成显示值而放入显示缓冲区和调用温度显示程序,8031从T1中断服务程序返回后便可以恢复现场和返回主程序,以等待下次T0中断。

T0中断服务程序:

ORG000BH

AJMPCT0

CT0:

PUSHACC;

PUSHDPL;保护现场

PUSHDPH;

SETBD5H;置标志

ACALLSAMP

ACALLFILTER

CJNEA,42H,TPL

WL:

MOVC,5EH

MOV5FH,C

CLR5EH

ACALLUPL

POPDPH

POPDPL

POPACC

RETI;中断返回

TPL:

JNCTPL1

CLR5FH;清上次越限标志

CJNEA,43H,MTPL

HAT:

SETB;若温度不越限,则绿灯亮

ACALLPID

MOVA,2FH

CPLA;

INCA;对PID值求补,作为TL1值

NM:

SETB

MOVTL1,A

MOVTH1,#0FFH

SETBPT1

SETBTR1;启动T1

SETBET1;允许T1中断

ACALLTRAST

LOOP:

ACALLDISPLY;显示温度

JBD5H,LOOP;等待T1中断

POPDPH

POPDPL

POPACC

RETI

MTPL:

JNCHAT

SETB;否则,下限声光报警

MOVA,45H

CPLA

INCA

AJMPNM

TPL1:

SETB5EH

JNB5FH,WL

INC44H;越限计数器加1

MOVA,44H

CLRC

SUBBA,#N;越限N次吗?

JNZWL

SETB

CLR5EH

CLR5FH

POPDPH

POPDPL

POPACC

RETI

3.采样子程序

采样子程序SAMP:

流程图如下图所示,

图采样子程序流程图

采样子程序:

SAMP:

MOVR0,#2CH;采样值始址送R0

MOVR2,#03H

MOVDPTR,#03F8H

SAM1:

MOVX@DPTR,A;启动ADC0809工作

MOVR3,#20H

DLY:

DJNZR3,DLY;延时

HERE:

JB,HERE

MOVXA,@DPTR

MOV@R0,A;存放采样值

INCR0

DJNCR2,SAM1

RET

4.数字滤波程序

数字滤波流程图:

 

 

FILTER:

MOVA,2CH

CJNEA,2DH,CAMP1

AJMPCMP2

CMP1:

JNCCMP2

XCHA,2DH

XCHA,2CH

CMP2MOVA,2DH

CJNEA,2EH,CMP3

MOV2AH,A

RET

CMP3:

JCCMP4

MOV2QH,A

RET

CMP4:

MOVA,2EH

CJNEA,2CH,CMP5

MOV2AH,A

RET

CMP5:

JCCMP6

XCHA,2CH

CMP6:

MOV2AH,A

RET

D转换程序

ORG8000H

MOVDPTR,#7FD0H;

LOOP:

MOVA,#00H;

MOVX@DPTR,A;

JB,$;

JNB,$;

MOVXA,@DPTR;

SJMPLOOP;

END

四.实验总结

由于所学知识有限,暂时还不能设计出十分符合要求的系统,本设计系统主要参考“电子系统设计与实践”中多点可控温度系统的实验要求与设计结果。

本设计使用无ROM的8031作为主控芯片进行控制,通过本次温度控制系统的设计,让我对控制系统和控制理论有了更深的理解。

在设计中要保持自己思路清晰,做到头脑中要有系统设计流程图,并在此基础上对各个部分重点突破。

如本系统中的系统温度控制口、传感器采样、数模或模数转换电路和滤波电路分别设计,再组合形成一个整体系统,即多任务处理系统。

再者本次试验让我们对所学只是学以致用,将知识点相互联系起来,加深了理解和今后实践中运用理论知识的能力。

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

当前位置:首页 > 成人教育 > 专升本

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

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