最少拍控制系统设计.docx

上传人:b****3 文档编号:885532 上传时间:2022-10-13 格式:DOCX 页数:14 大小:209.12KB
下载 相关 举报
最少拍控制系统设计.docx_第1页
第1页 / 共14页
最少拍控制系统设计.docx_第2页
第2页 / 共14页
最少拍控制系统设计.docx_第3页
第3页 / 共14页
最少拍控制系统设计.docx_第4页
第4页 / 共14页
最少拍控制系统设计.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

最少拍控制系统设计.docx

《最少拍控制系统设计.docx》由会员分享,可在线阅读,更多相关《最少拍控制系统设计.docx(14页珍藏版)》请在冰豆网上搜索。

最少拍控制系统设计.docx

最少拍控制系统设计

能源与动力工程学院

课程设计报告

 

题目:

最少拍控制系统设计

课程:

计算机控制技术课程设计

专业:

班级:

姓名:

学号:

 

《计算机控制技术》课程设计任务书

一、课程设计目的

课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义。

《计算机控制技术》是一门实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。

计算机控制技术的课程设计是一个综合运用知识的过程,它需要控制理论、程序设计、硬件电路设计等方面的知识融合。

通过课程设计,加深对学生控制算法设计的认识,学会控制算法的实际应用,使学生从整体上了解计算机控制系统的实际组成,掌握计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的整定工作打下基础。

二、课程设计内容

设计以89C51单片机、ADC、DAC等电路和运放电路组成的被控对象构成的单闭环反馈控制系统。

1.硬件电路设计:

89C51最小系统加上模入电路ADC0809和模出电路DAC0832;由运放构成的被控对象。

2.控制算法:

最少拍控制、PID。

3.软件设计:

主程序、定时中断程序、A/D转换程序、滤波程序、D/A输出程序、最少拍控制程序等。

三、课程设计要求

1.模入电路能接受双极性电压输入(-5V~+5V),模出电路能输出双极性电压(-5V~+5V)。

2.被控对象每个同学选择不同:

3.设计无纹波最少拍控制器。

被控对象有积分环节的按斜坡输入信号设计控制器,否则按阶跃输入信号设计控制器。

4.定时中断间隔可在10-50ms中选取,采样周期取采样中断间隔的整数倍,可取1000-2000ms,由实验结果确定。

5.滤波方法可选择平均值法,中值法等。

四、课程设计实验结果

1.控制系统能正确运行。

2.按设计信号下的系统输出响应。

3.其他典型输入信号下的系统输出响应。

五、进度安排

序号

内容

天数

1

布置任务,查阅资料

0.5

2

总体方案确定,硬件电路设计

1.5

3

熟悉实验箱及C语言开发环境,研读范例程序,

1

4

控制算法设计

1

5

软件编程,调试

1

6

实验

1

7

总结,撰写课程设计报告

1

六、课程设计报告内容:

总结设计过程,写出设计报告,设计报告具体内容要求如下:

1.课程设计的目和设计的任务。

2.课程设计的要求。

3.控制系统总框图及系统工作原理。

4.控制系统的硬件电路连接图(含被控对象),电路的原理。

5.软件设计流程图及其说明。

6.电路设计,软件编程、调试中遇到的问题及分析解决方法。

7.实验结果及其分析。

8.体会。

七、参考文献

(列出你所利用的参考文献。

格式参见下。

[1]于海生主编,微型计算机控制技术,北京:

清华大学出版社,1999

[2]张艳兵等编著,计算机控制技术,北京:

国防工业出版社,2008

[3]张毅刚主编,单片机原理及应用,北京:

高等教育出版社,2004

[4]陈涛编著,单片机应用及C51程序设计,北京:

机械工业出版社,2008

[5]楼然苗,李光飞编著,单片机课程设计指导,北京:

北京航空航天大学出版社,2007

[6]控制、电子技术类杂志、报刊

 

第二部分

 

 

1.课题简介

1.1课程设计内容…………………………………………………………5

1.2课程设计要求…………………………………………………………5

2.方案设计

2.1设计步骤……………………………………………………………………5

2.2控制系统总框图及系统工作原理………………………………………6

3.硬件电路设计

3.1被控对象设计………………………………………………………………8

3.2硬件电路连接图……………………………………………………………9

4.控制算法设计……………………………………………………10

5.软件编程设计

5.1流程图………………………………………………………………………11

5.2程序设计………………………………………………………………………12

6.实验结果与分析…………………………………………………14

7.心得体会…………………………………………………………14

 

1课题简介(宋体4号加粗)

1.1课程设计内容

设计以89C51单片机、ADC、DAC等电路和运放电路组成的被控对象构成的单闭环反馈控制系统。

1.硬件电路设计:

89C51最小系统加上模入电路ADC0809和模出电路TLC7528;由运放构成的被控对象。

2.控制算法:

最少拍控制。

3.软件设计:

主程序、定时中断程序、A/D转换程序、滤波程序、D/A输出程序、最少拍控制程序等。

1.2课程设计要求

1.模入电路能接受双极性电压输入(-5V~+5V),模出电路能输出双极性电压(-5V~+5V)。

2.被控对象

3.设计无纹波最少拍控制器。

被控对象有积分环节的按斜坡输入信号设计控制器,否则按阶跃输入信号设计控制器。

4.定时中断间隔可在10-50ms中选取,采样周期取采样中断间隔的整数倍,可取1000-2000ms,由实验结果确定。

5.滤波方法可选择平均值法,中值法等。

 

2方案设计

2.1设计步骤

先进行硬件设计,根据Gz改造被控对象

进行最少拍控制算法计算

读范例程序,画出流程图,进行修改

调试实验结果

2.2控制系统总框图及系统工作原理

最小拍双通道采样的闭环系统框图如上所示,在该系统中对给定值r(t)进行D/A转换采样,得到离散化的r(z),并且对输出值c(t)也进行D/A转换,得到c(z),然后计算有e(k)=c(k)-r(z)。

D(z)为计算机控制系统的脉冲传递函数,U(z)为输出的控制量,然后经过A/D转换后得到模拟控制量U(t)对包含零阶保持器的被控量进行控值进而达到要求的最小拍控制的目的。

误差E=R-C经运放运算得到,并由模数转换器采集。

最少拍控制算法由软件程序和单片机实现。

输出U经数模转换器和零阶保持器转换成模拟信号送至被控对象。

被控对象由两只运放及阻容元件构成。

3硬件电路设计

3.1被控对象由运放及阻容元件搭建,电路图如下:

3.2硬件电路原理图

4控制算法设计

4.1

被控对象含有一个积分环节,采用单位速度输入信号,q=2

D=0,q=2,v=1,w=1,j=1

m=w+d=1

n=v-j+q=2

4.2

 

5软件编程设计

5.1流程图

5.2程序

#include

#include

#include

/*****************************************

宏定义

*****************************************/

#defineucharunsignedchar

#defineuintunsignedint

#defineADC_7XBYTE[0x0600]//定义模数转换IO地址

#defineDAC_1XBYTE[0x0640]//定义D/A第一路的IO地址

/*****************************************

全局变量定义

*****************************************/

sbitstr=P1^7;//定义A/D启动信号

sbitDIN0=P1^0;//声明同步信号

uintdatatime;//声明变量,用于定时

uchardatat0_h,t0_l;//用于存储定时器0的初值

charTK=5;//声明采样周期变量,//采样周期=TK*10ms

charTC;//TK的变量

floatkp=1.8;//比例系数

uintti=80;//积分系数

chartd=2;//微分系数

charIBAND=120;//积分分离值

charEK;//当前采样的偏差值

charEK_1;//上一次采样的偏差值

charAEK;//偏差的变化量

charUK;//当前时刻的D/A输出

charAEK_1;

charBEK;

charCEK;

 

floatZEK;

/*****************************************

主函数

*****************************************/

voidmain(void)

{

TMOD=0x01;

time=10;//定时10ms

t0_h=(65536-1000*time)/256;//计算定时器0初值

t0_l=(65536-1000*time)%256;

t0_l=t0_l+70;//修正因初值重装而引起的定时误差

TH0=t0_h;

TL0=t0_l;

IT1=1;//边沿触发中断

EX1=1;//开外部中断1

ET0=1;//开定时中断0

TR0=1;//启动定时器

TC=1;

DAC_1=0x80;//D/A清零

EK=EK_1=0;//变量清零

AEK=BEK=AEK_1=CEK=UK=0;

ZEK=0;

str=1;

EA=1;//开总中断

while

(1);

}

/**********************************************

函数名:

INT1

功能:

1号外部中断服务程序

参数:

无*

返回值:

无*

***********************************************/

voidint1()interrupt2using2

{

floatP,D,I,TEMP,TEMP1;

DIN0=1;//读取输入前,先输出高电平

if(DIN0)//判同步信号到否

{

EK=EK_1=0;//变量清零

UK=AEK=BEK=CEK=AEK_1=0;

ZEK=0;

DAC_1=0x80;//D/A输出零

TC=1;

}

else

{

TC--;//判采样周期到否

if(TC==0)

{

EK=ADC_7-128;//采样当前的偏差值,并计算偏差的变化量

AEK=EK-EK_1;

BEK=(EK+EK_1)/2;

CEK=AEK-AEK_

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

当前位置:首页 > 解决方案 > 学习计划

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

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