大林算法控制系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大林算法控制系统设计 Company Document number:WUUT-WUUY-WBBGB-BWYTT-1982GT
扬州大学能源与动力工程学院课程设计报告
题目:大林算法控制系统设计
课程:计算机控制技术课程设计
专业:电气工程及其自动化
班级:
姓名:
学号:
第一部分
任
务
书
《计算机控制技术》课程设计任务书
一、课题名称
大林算法控制系统设计
二、课程设计目的
课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义。
《计算机控制技术》是一门理论性、实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。
计算机控制技术的课程设计是一个综合运用知识的过程,它需要控制理论、程序设计、硬件电路设计等方面的知识融合。
通过课程设计,加深对学生控制算法设计的认识,学会控制算法的实际应用,使学生从整体上了解计算机控制系统的实际组成,掌握计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的调试工作打下基础。
三、课程设计内容
设计以89C51单片机和ADC、DAC等电路、由运放电路实现的被控对象构成的计算机单闭环反馈控制系统。
1. 硬件电路设计:89C51最小系统加上模入电路(用ADC0809等)和模出电路(用TLC7528和运放等);由运放实现的被控对象。
2. 控制算法:大林控制算法。
3. 软件设计:主程序、中断程序、A/D转换程序、滤波程序、大林算法控制程序、D/A输出程序等。
四、课程设计要求
1. 模入电路能接受双极性电压输入(-5V~+5V ),模出电路能输出双极性电压(-5V~+5V )。
2. 模入电路用两个通道分别采集被控对象的输出和给定信号。
3. 每个同学选择不同的被控对象:
4. 对象的纯延迟环节s e τ-用软件通过数组单元移位实现。
5. 定时中断间隔选取50ms ,采样周期T 要求既是采样中断间隔的整数倍,又满足(0.21)T τ=-。
6. 闭环系统时间常数T τ按11~23⎛⎫ ⎪⎝⎭
的被控对象最大时间常数选择。
有关的设计资料可参考《计算机控制实验指导书》的相关内容。
五、课程设计实验结果
1. 控制系统能正确运行。
2. 有振铃和消除振铃的系统阶跃输出和控制器。
六、进度安排
七、课程设计报告内容:
总结设计过程,写出设计报告,设计报告具体内容要求如下:
1.课程设计的目和设计的任务。
2.课程设计的要求。
3.控制系统总框图及系统工作原理。
4.控制系统的硬件电路连接图(含被控对象),电路的原理。
5.软件设计流程图及其说明。
6.电路设计,软件编程、调试中遇到的问题及分析解决方法。
7.实验结果及其分析。
8.体会。
第二部分
课
程
设
计
报
告
目录
1 课程简介 (7)
程设计目的 (7)
1. 2程设计内容 (7)
程设计要求 (7)
2 方案设计................................................................................. (8)
控制系统整体方案 (8)
控制系统闭环工作原理 (8)
3 大林算法硬件电路设计 (8)
A/D采样电路 (8)
D/A输出电路....................................... ... ... ... ... ... (10)
给定对象硬件电路设计............................................................... .. (11)
总硬件图................................ ... . (11)
4 控制算法设计 (11)
控制算法的原理 (12)
计算机实现的计算机推导公式 (12)
采样周期 (13)
5 软件编程设计. (13)
主程序与中断流程
图............................................................
(13)
部分控制程序代
码............................................................
(14)
6 实验结果与分析. (17)
7 小结与体会................................................................ (17)
参考文献. (18)
1、课题简介
1.1课题目的
课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义。
《计算机控制技术》是一门理论性、实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。
计算机控制技术的课程设计是一个综合运用知识的过程,它需要控制理论、程序设计、硬件电路设计等方面的知识融合。
通过课程设计,加深对学生控制算法设计的认识,学会控制算法的实际应用,使学生从整体上了解计算机控制系统的实际组成,掌握计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的调试工作打下基础。
1.2课题内容
设计以89C51单片机和ADC、DAC等电路、由运放电路实现的被控对象构成的计算机单闭环反馈控制系统。
1. 硬件电路设计:89C51最小系统加上模入电路(用ADC0809等)
和模出电路(用TLC7528和运放等);由运放实现的被控对象。
2. 控制算法:大林控制算法。
3. 软件设计:主程序、中断程序、A/D转换程序、大林算法控制程
序、D/A输出程序等。
1.3课题要求
1.模入电路能接受双极性电压输入(-5V~+5V),模出电路能输出双极
性电压(-5V~+5V)。
2. 模入电路用两个通道分别采集被控对象的输出和给定信号。
3. 选择被控对象: T ,e )
s .)(s .()s (G s .=++=-τ501501408 4. 对象的纯延迟环节s e τ-用软件通过数组单元移位实现。
5. 定时中断间隔选取50ms ,采样周期T 要求既是采样中断间隔的整数倍,又满足(0.21)T τ=-。
6. 闭环系统时间常数T τ按11
~23⎛⎫ ⎪⎝⎭的被控对象最大时间常数选择。
2.大林算法控制系统方案设计
控制系统总体介绍
图大林算法设计的闭环控制系统方框图
大多数工业对象具有较大的纯滞后时间,可以近似用一阶或二阶惯性环节加纯滞后环节来表示,其传递函数为 一阶对象:NT ,e s T K )s G(s =+=
-ττ11, 二阶对象:NT ,e )
s T )(s T (K )s (G s =++-ττ1121, 大林算法的设计目标是使整个闭环系统所期望的传递函数 Φ(s )相当于一个纯滞后环节和一个惯性环节相串联,即
NT ,e s T )s (s =+=-ττ1
1τΦ, 并希望整个闭环系统的纯滞后时间和被控对象的纯滞后时间相同。
其中为闭环系统的时间常数,纯滞后时间与采样周期T 有整数倍关系,(N=1,2﹒﹒﹒﹒)。
控制系统闭环工作原理
在本次大林算法控制系统中,系统先进行A/D采样,将给定值采样值取到单片机内,之后单片机会选择另外一路通道,进行输出值即反馈值的采样。
将输出值采样到单片机内后,在单片机中进行差值E(K)计算,再通过单片机中的算法程序得到输出量U(K),再经过D/A变换器,将输出结果作用于被控对象。
经被控对象的输出值又将作为反馈值被采样到单片机内。
3.大林算法控制系统硬件电路设计
A/D采样电路
该实验的A/D采样硬件电路如图3-1所示
图3-1 A/D采样硬件电路图
上图所示的是ADC0809与8051连接的硬件电路图,其中在ADC0809中,IN-6、IN-7分别采样给定信号和反馈信号,A\D转换器的引脚A接单片机的P1^6,用于选择采样通道。
控制计算机的定时器作为基准时钟(初始化为50ms),在第一次启动A/D转换时,此时P1^6=0,选择的IN-6,采样的是给定信号,当采样周期到时,此时P1^6=1,同时在定时器中启动
A/D转换,此时采样的是反馈信号,给定信号和反馈信号的采样值分别存储在程序的RK和UK1中。
模数单元采用ADC0809芯片,主要包括多路模拟开关和A/D转换器两部分。
其主要特点为:单电源供电、工作始终CLOCK最高可达1200KH Z、8位分辨率、8个单端模拟输入端(IN0~IN7)、TTL电平兼容等,可以很方便地和微处理器接口。
通过三端地址译码A、B、C多路开关可选通8路模拟输入的任何一路进行A/D变换。
其中IN1~IN5的模拟量输入允许范围:0V~,对应数字量为00H~FFH,对应
80H;IN6和IN7两路由于接了上拉电阻,所以模拟量输入允许范围:-5V~+,对应数字量00H~FFH,0V对应80H。
在设计过程中使用的TD-ACC+教学系统中的
ADC0809芯片,其输出八位数据线以及CLOCK线已连到控制计算机的数据线及系统应用时钟1MCLK(1MH Z)上。
其它控制线根据实验要求可另外连接(A、B、C、STR、/OE、EOC、IN0~IN7),如图3-1(2)所示。
其中IN6和IN7可以测量-5V~+5V的量,主要是因为加了外部电路。
如图所示,在IN6和IN7的实际输入端其输入范围为0~5V,在外围电路中,采用两个相同电阻分压的方式,因为给了一个5V的电压,当输入端为-5V时,0809的实际输入端为两者相加之和的一半,为0V,在0809采样电压的范围以内。
但将该采样值取进单片机内后,其表示范围为-
128~127,对应为0~5V的电压,所以我们需要在程序里将采样值减去128以使采样值与设定值相对应。
因此加了外部电路,0809就可以采集-
5~+5V的电压了。
D/A输出电路
数模转换单元采用TLC7528芯片,它是8位、并行、两路、电压型输出模数转换器。
其主要参数如下:转换时间100NS,满量程误差1/2LBS,参考电压-10V~+10V,供电电压+5V~+15V,输入逻辑电平与TTL兼容。
输入数字范围为00H~FFH,80H对应于0V,输出电压为-5V~+4、96V。
在课程设计过程中采用的TD-ACC+教学系统中的TLC7528,其输入数字量得八位数据线、写线和通道选择控制线已经接至控制计算机的总线上。
片选线预留出待实验中连接到相应的I/O片选上,如图3-2。
图3-2 D/A输出电路
该芯片TLC7528可以双极性输出,但须在单片机中将D/A的输出值加128后再交给TLC7528芯片进行D/A输出。
给定对象硬件电路设计
图3-3 给定对象硬件电路图
如图3-3所示,为被控对象的硬件电路的设计图,在本次的课程
设计中的被控对象传递函数: T ,e )
s .)(s .()s (G s .=++=-τ501501408,其中比例部分由两个运算放大器组合实现,即,第一个运算放大器的积分部分为5010005001.=÷⨯,实现被控对象的第一部分,第二个运算放大器的积分部分为4010002002.=÷⨯,实现被控对象的第二部分。
总硬件图
图3-4 总硬件图
4.大林算法控制系统算法设计
控制算法的原理
实验算法中,用脉冲传递函数近似法求得对应的闭环脉冲传递函数:
T ,e )
s .)(s .()s (G s .=++=-τ501501408, 将代入,并进行Z 变换:[]
2212505012115501405025050118111-------------+---=z )e (z e )z c c ()z e )(z e )(e ()z (D ........ 式中 307050401
01114501.)e .e .(.c ..=-+
=--, 经计算 )
z .z .)(z .()z .)(z .(.)z (D 211118647013530104153136790128650135210-------+--=, 无振铃时,有,
1=z 24081121.z c c =+-)则(, 于是 ,)
z .z .()z .)(z .(.)z (D 2111864701353013679012865010870--------= 对应的递推公式为
则程序中 ,.kk ,.kk ,.kk 10540265440108700=-==
计算机实现的计算机公式推导
在4、1中得到了D(z)的最终表达式,而在本实验中,被控对象为
从而可以知道被控对象的时间常数为,增益K=8,根据T τ按11~23⎛⎫ ⎪⎝⎭
最大时间常数取值,取T τ=。
将各个参数代入计算:
KK0=,KK1=-,KK3=,PP1=-,PP2=,PP3=。
对应的递推公式:
u(k)=-(k-1)+ (k-2)+ (k-3)+(k)-(k-1)+ (k-2)
由于在二阶对象中是引起振铃的极点因子,令z=1,于是可以得到
u(k)=(k-1)+(k-2)+(k)-(k-1)+(k-2)
在程序中:KK0=,KK1=-,KK2=,PP0=,PP1=,PP2=0。
采样周期的选择
在本实验中,定时中断间隔选取50ms ,采样周期T 要求既是采样中断间隔的整数倍,又要满足,而由被控对象的表达式可知,所以取N=1,
s .T ,s 50=0.5==取,ττT 。
5.大林算法控制系统软件编程设计
主程序与中断流程图
主程序流程图:
图
采样中断服务程序流程图:
图
部分控制程序代码
1.主程序部分源码:
void main(void)
{
TMOD = 0x01;
t0_h = (65536-15536)/256; 采样中断程序的部分源码:
(1)判断同步信号程序:
DIN0 = 1; 验结果
无振铃
7. 小结与体会
课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它有利于我们全面牢固地掌握课堂教学内容、培养我们的实践和实际动手能力。
这次的课程设计,让我对《计算机控制技术》这门课和课程设计有了一个全新的认识,也有了很多的体会和心得。
《计算机控制技术》是一门实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。
计算机控制技术的课程设计是一个综合运用知识的过程,它需要控制理论、程序设计、硬件电路设计等方面的知识融合。
通过课程设计,我对控制算法设计有了一个更深的认识,也学会了控制算法的实际应用,从整体上了解了计算机控制系统的实际组成,掌握了计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的整定工作打下基础。
通过这次的课程设计,我认识到任何课程的学习都需要理论结合实际,这样才能更好地掌握所学的知识并将它很好地应用于实践中。
同时,在实践过程中,可以通过查找资料、分析资料和请教老师和同学,使一些不清楚的问题得以解决,这样的话,可以起到事半功倍的效果。
当然,最关键的还是靠自己亲自去思考问题、解决问题,掌握独自面对各类的问题的方法。
总之,这次的课程设计给了我很多的体会和心得。
让我们有机会去锻炼和提升自己,收获很多。
参考文献
[1] 于海生主编,微型计算机控制技术,北京:清华大学出版社,2009
[2] 张艳兵等编着,计算机控制技术,北京:国防工业出版社,2008
[3] 张毅刚主编,单片机原理及应用,北京:高等教育出版社,2004
[4] 陈涛编着,单片机应用及C51程序设计,北京:机械工业出版社,2008
[5] 楼然苗, 李光飞编着, 单片机课程设计指导, 北京: 北京航空航天大学出版社, 2007。