教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 互联网资料 >

51系列单片机闭环温度控制 实验报告

来源:网络收集 时间:2026-09-10
导读: 重庆邮电大学实验报告 成 绩: 重庆邮电大学 自动化学院综合实验报告 题 目:51系列单片机闭环温度控制 学生姓名:蒋运和 班 级:0841004 学 号:2010213316 同组人员:李海涛 陈超 完成时间:2013年12月 重庆邮电大学实验报告 一、实验名称: 51系列单片机

重庆邮电大学实验报告

成 绩:

重庆邮电大学

自动化学院综合实验报告

题 目:51系列单片机闭环温度控制 学生姓名:蒋运和 班 级:0841004 学 号:2010213316 同组人员:李海涛 陈超 完成时间:2013年12月

重庆邮电大学实验报告

一、实验名称:

51系列单片机闭环温度控制实验

——基于Protuse仿真实验平台实现

基本情况: 1. 学生姓名: 2. 学 号:

3. 班 级: 4. 同组其他成员:

二、实验内容(实验原理介绍) 1、系统基本原理

计算机控制技术实训,即温度闭环控制,根据实际要求,即加温速度、超调量、调节时间级误差参数,选择PID控制参数级算法,实现对温度的自动控制。

闭环温度控制系统原理如图:

2、PID算法的数字实现

本次试验通过8031通过OVEN 是模拟加热的装置,加一定的电压便开始不停的升温,直到电压要消失则开始降温。仿真时,U形加热器为红色时表示正在加热,发红时将直流电压放过来接,就会制冷,变绿。T端输出的是电压,温度越高,电压就越高。

重庆邮电大学实验报告

8031对温度的控制是通过可控硅调控实现的。可控硅通过时间可以通过可控硅控制板上控制脉冲控制。该触发脉冲想8031用软件在P1.3引脚上产生,受过零同步脉冲后经光偶管和驱动器输送到可控硅的控制级上。偏差控制原理是要求对所需温度求出偏差值,然后对偏差值处理而获得控制信号去调节加热装置的温度。

PID控制方程式:

式中e是指测量值与给定值之间的偏差 TD 微分时间 T 积分时间

KP 调节器的放大系数

将上式离散化得到数字PID位置式算法,式中在位置算法的基础之上得到数字PID 增量式算法:

3、硬件电路设计

在温度控制中,经常采用是硬件电路主要有两大部分组成:模拟部分和数字部分,对这两部分调节仪表进行调节,但都存在着许多缺点,用单片机进行温度控制使构成的系统灵活,可靠性高,并可用软件对传感器信号进行抗干拢滤波和非线性补偿处理,可大大提高控制质量和自动化水平;总的来说本系统由四大模块组成,它们是输入模块、单片机系统模块、计算机显示与控制模块和输出控制模块。输入模块主要完成对温度信号的采集和转换工作,由温度传感器及其与单片机的接口部分组成。 利用模拟加热的

重庆邮电大学实验报告

装置来控制温度。

程序结构图如下:

3、电路原理图

重庆邮电大学实验报告

重庆邮电大学实验报告

三、实验结果分析(含程序、数据记录及分析和实验总结等,可附页):

1、51系列单片机直流电机闭环调速实验程序

/*-------------------------------------------------------------------------- REG52.H

Header file for generic 80C52 and 80C32 microcontroller.

Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc. All rights reserved.

--------------------------------------------------------------------------*/

#ifndef __REG52_H__ #define __REG52_H__

/* BYTE Registers */ sfr P0 = 0x80; sfr P1 = 0x90; sfr P2 = 0xA0; sfr P3 = 0xB0; sfr PSW = 0xD0; sfr ACC = 0xE0; sfr B = 0xF0; sfr SP = 0x81; sfr DPL = 0x82; sfr DPH = 0x83; sfr PCON = 0x87; sfr TCON = 0x88; sfr TMOD = 0x89; sfr TL0 = 0x8A; sfr TL1 = 0x8B; sfr TH0 = 0x8C; sfr TH1 = 0x8D; sfr IE = 0xA8; sfr IP = 0xB8; sfr SCON = 0x98; sfr SBUF = 0x99;

/* 8052 Extensions */ sfr T2CON = 0xC8; sfr RCAP2L = 0xCA; sfr RCAP2H = 0xCB; sfr TL2 = 0xCC;

重庆邮电大学实验报告

sfr TH2 = 0xCD;

/* BIT Registers */ /* PSW */

sbit CY = PSW^7; sbit AC = PSW^6; sbit F0 = PSW^5; sbit RS1 = PSW^4; sbit RS0 = PSW^3; sbit OV = PSW^2;

sbit P = PSW^0; //8052 only

/* TCON */

sbit TF1 = TCON^7; sbit TR1 = TCON^6; sbit TF0 = TCON^5; sbit TR0 = TCON^4; sbit IE1 = TCON^3; sbit IT1 = TCON^2; sbit IE0 = TCON^1; sbit IT0 = TCON^0;

/* IE */

sbit EA = IE^7;

sbit ET2 = IE^5; //8052 only sbit ES = IE^4; sbit ET1 = IE^3; sbit EX1 = IE^2; sbit ET0 = IE^1; sbit EX0 = IE^0;

/* IP */

sbit PT2 = IP^5; sbit PS = IP^4; sbit PT1 = IP^3; sbit PX1 = IP^2; sbit PT0 = IP^1; sbit PX0 = IP^0;

/* P3 */

sbit RD = P3^7; sbit WR = P3^6;

重庆邮电大学实验报告

sbit T1 = P3^5; sbit T0 = P3^4; sbit INT1 = P3^3; sbit INT0 = P3^2; sbit TXD = P3^1; sbit RXD = P3^0;

/* SCON */

sbit SM0 = SCON^7; sbit SM1 = SCON^6; sbit SM2 = SCON^5; sbit REN = SCON^4; sbit TB8 = SCON^3; sbit RB8 = SCON^2; sbit TI = SCON^1; sbit RI = SCON^0;

/* P1 */

sbit T2EX = P1^1; // 8052 only sbit T2 = P1^0; // 8052 only /* T2CON */

sbit TF2 = T2CON^7; sbit EXF2 = T2CON^6; sbit RCLK = T2CON^5; sbit TCLK = T2CON^4; sbit EXEN2 = T2CON^3; sbit TR2 = T2CON^2; sbit C_T2 = T2CON^1; sbit CP_RL2 = T2CON^0;

#endif

#ifndef WENDU_H_ #define WENDU_H_

#define u8 unsigned char #define u16 unsigned int

#define PULSE 200

重庆邮电大学实验报告

//////LCD/////// sbit RS = P2^5; sbit RW = P2^6; sbit EN = P2^7;

sbit LED = P3^0; sbit ENA = P3^7; sbit IN2 = P3^6; sbit IN1 = P3^5;

void delay_ms(u16 z);

void LCD_WriteData(u8 Dat); void LCD_WriteCOM(u8 com);

void Show_Num(u8 x,u8 y,u8 n,u16 num); void Show_fNum(u8 x,u8 y,u16 num); void LCD_Init(void); void key_scan(void);

//void key_scan(void);

extern u16 read_tlc2543(u8 port);

#endif

#ifndef TLC2543_H_ #define TLC2543_H_

//////TLC2543//// sbit SDO = P2^0; sbit SDI = P2^1; sbit CS = P2^2; sbit CLK = P2^3; sbit EOC = P2^4;

//u16 read_tlc2543(u8 port); #define u8 unsigned char #define u16 unsigned int

u16 read_tlc2543(u8 port); u8 AD_deal(void);

#endif

#include<reg52.h> #include"tlc2543.h"

//n为数字长度num小于等于65535

重庆邮电大学实验报告

//#include"wendu.h"

void delay_us(u16 z) {

u16 i;

for(i=z;i>0;i--);; }

u16 read_tlc2543(u8 port) {

static u8 PORT = 0; u8 Temp,i,k=0; u16 AD_value=0; Temp = port; …… 此处隐藏:5379字,全部文档内容请下载后查看。喜欢就下载吧 ……

51系列单片机闭环温度控制 实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/1933784.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)