大林算法控制系统设计Word格式文档下载.docx
- 文档编号:18168808
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:13
- 大小:78.33KB
大林算法控制系统设计Word格式文档下载.docx
《大林算法控制系统设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《大林算法控制系统设计Word格式文档下载.docx(13页珍藏版)》请在冰豆网上搜索。
3.软件设计:
主程序、中断程序、A/D转换程序、滤波程序、大林算法控制程序、D/A输出程序等。
四、课程设计要求
1.模入电路能接受双极性电压输入(-5V~+5V),模出电路能输出双极性电压(-5V~+5V)。
2.模入电路用两个通道分别采集被控对象的输出和给定信号。
3.每个同学选择不同的被控对象:
4.对象的纯延迟环节
用软件通过数组单元移位实现。
5.定时中断间隔选取50ms,采样周期T要求既是采样中断间隔的整数倍,又满足
。
6.闭环系统时间常数
按
的被控对象最大时间常数选择。
有关的设计资料可参考《计算机控制实验指导书》的相关内容。
五、课程设计实验结果
1.控制系统能正确运行。
2.有振铃和消除振铃的系统阶跃输出和控制器。
六、进度安排
序号
内容
天数
1
布置任务,熟悉课题要求
0.5
2
总体方案确定,硬件电路设计
1.5
3
熟悉实验箱及C语言开发环境,研读范例程序,
4
控制算法设计
5
软件编程,调试
6
实验
7
总结,撰写课程设计报告
七、课程设计报告内容:
总结设计过程,写出设计报告,设计报告具体内容要求如下:
1.课程设计的目和设计的任务。
2.课程设计的要求。
3.控制系统总框图及系统工作原理。
4.控制系统的硬件电路连接图(含被控对象),电路的原理。
5.软件设计流程图及其说明。
6.电路设计,软件编程、调试中遇到的问题及分析解决方法。
7.实验结果及其分析。
8.体会。
第二部分
课
程
设
计
报
告
1课程简介……………………………………………………………………………………..7
1.1程设计目的....................................................................................................................7
1.2程设计内容....................................................................................................................7
1.3程设计要求.....................................................................................................................7
2方案设计..............................................................................................................................8
2.1控制系统整体方案............................................................................................................8
2.2控制系统闭环工作原理....................................................................................................8
3大林算法硬件电路设计……………………………………………………………………8
3.1A/D采样电路....................................................................................................................8
3.2D/A输出电路……………………………….....................………......……………...10
3.3给定对象硬件电路设计..................................................................................................11
3.4总硬件图........................................................................................................................11
4控制算法设计............................................................................................................................11
4.1控制算法的原理.................................................................................................................12
4.2计算机实现的计算机推导公式.........................................................................................12
4.3采样周期..............................................................................................................................13
5软件编程设计............................................................................................................................13
5.1主程序与中断流程图..........................................................................................................13
5.2部分控制程序代码..............................................................................................................14
6实验结果与分析........................................................................................................................17
7小结与体会...............................................................................................................................17
参考文献.....................................................................................................................................18
1、课题简介
1.1课题目的
1.2课题内容
主程序、中断程序、A/D转换程序、大林算法控制程序、D/A输出程序等。
1.3课题要求
3.选择被控对象:
2.大林算法控制系统方案设计
2.1控制系统总体介绍
图2.1-1大林算法设计的闭环控制系统方框图
大多数工业对象具有较大的纯滞后时间,可以近似用一阶或二阶惯性环节加纯滞后环节来表示,其传递函数为
一阶对象:
,
二阶对象:
大林算法的设计目标是使整个闭环系统所期望的传递函数Φ(s)相当于一个纯滞后环节和一个惯性环节相串联,即
并希望整个闭环系统的纯滞后时间和被控对象的纯滞后时间相同。
其中为闭环系统的时间常数,纯滞后时间与采样周期T有整数倍关系,(N=1,2﹒﹒﹒﹒)。
2.2控制系统闭环工作原理
在本次大林算法控制系统中,系统先进行A/D采样,将给定值采样值取到单片机内,之后单片机会选择另外一路通道,进行输出值即反馈值的采样。
将输出值采样到单片机内后,在单片机中进行差值E(k)计算,再通过单片机中的算法程序得到输出量U(k),再经过D/A变换器,将输出结果作用于被控对象。
经被控对象的输出值又将作为反馈值被采样到单片机内。
3.大林算法控制系统硬件电路设计
3.1A/D采样电路
该实验的A/D采样硬件电路如图3-1所示
图3-1A/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最高可达1200KHz、8位分辨率、8个单端模拟输入端(IN0~IN7)、TTL电平兼容等,可以很方便地和微处理器接口。
通过三端地址译码A、B、C多路开关可选通8路模拟输入的任何一路进行A/D变换。
其中IN1~IN5的模拟量输入允许范围:
0V~4.98V,对应数字量为00H~FFH,2.5V对应80H;
IN6和IN7两路由于接了上拉电阻,所以模拟量输入允许范围:
-5V~+4.98V,对应数字量00H~FFH,0V对应80H。
在设计过程中使用的TD-ACC+教学系统中的ADC0809芯片,其输出八位数据线以及CLOCK线已连到控制计算机的数据线及系统应用时钟1MCLK(1MHz)上。
其它控制线根据实验要求可另外连接(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的电压了。
3.2D/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-2D/A输出电路
该芯片TLC7528可以双极性输出,但须在单片机中将D/A的输出值加128后再交给TLC7528芯片进行D/A输出。
3.3给定对象硬件电路设计
图3-3给定对象硬件电路图
如图3-3所示,为被控对象的硬件电路的设计图,在本次的课程设计中的被控对象传递函数:
,其中比例部分由两个运算放大器组合实现,即,第一个运算放大器的积分部分为
,实现被控对象的第一部分,第二个运算放大器的积分部分为
,实现被控对象的第二部分。
3.4总硬件图
图3-4总硬件图
4.大林算法控制系统算法设计
4.1控制算法的原理
实验算法中,用脉冲传递函数近似法求得对应的闭环脉冲传递函数:
将代入,并进行Z变换:
式中
经计算
无振铃时,有
于是
对应的递推公式为
则程序中
4.2计算机实现的计算机公式推导
在4、1中得到了D(z)的最终表达式,而在本实验中,被控对象为
从而可以知道被控对象的时间常数为,增益K=8,根据
最大时间常数取值,取
=0.4s。
将各个参数代入计算:
KK0=0.077,KK1=-0.9085,KK3=0.0017864,PP1=-0.3495,PP2=0.95436,PP3=0.039514。
对应的递推公式:
u(k)=-0.3495u(k-1)+0.95436u(k-2)+0.039514u(k-3)+0.077e(k)-0.9085e(k-1)+0.0017864e(k-2)
由于在二阶对象中是引起振铃的极点因子,令z=1,于是可以得到
u(k)=0.0821u(k-1)+0.9179u(k-2)+0.0821e(k)-0.0303e(k-1)+0.0019e(k-2)
在程序中:
KK0=0.0821,KK1=-0.0303,KK2=0.0019,PP0=0.0821,PP1=0.9179,PP2=0。
4.3采样周期的选择
在本实验中,定时中断间隔选取50ms,采样周期T要求既是采样中断间隔的整数倍,又要满足,而由被控对象的表达式可知,所以取N=1,
5.大林算法控制系统软件编程设计
5.1主程序与中断流程图
主程序流程图:
图5.1-1
采样中断服务程序流程图:
图5.1-2
5.2部分控制程序代码
1.主程序部分源码:
voidmain(void)
{
TMOD=0x01;
t0_h=(65536-15536)/256;
//计算定时器0初值
t0_l=(65536-15536)%256;
t0_l=t0_l+20;
//修正因初值重装而引起的定时误差
TH0=t0_h;
TL0=t0_l;
IT1=1;
//边沿触发中断
EX1=1;
//开外部中断1
ET0=1;
//开定时中断0
TR0=1;
//启动定时器
TC=1;
DAC_1=0x80;
//D/A清零
UK=UK_1=UK_2=UK_3=0;
//变量清零
EK=EK_1=EK_2=EK_3=0;
RK=RK_1=RK_2=RK_3=0;
bb=0;
EA=1;
//开总中断
FLG=0;
DOUT0=0;
while
(1);
}
主程序的功能主要是:
对定时器的赋值、开外中断、初始各变量,其中while
(1)是使主程序进入死循环,等待中断到来。
2.采样中断程序的部分源码:
(1)判断同步信号程序:
DIN0=1;
//读取输入前,先输出高电平
if(DIN0)//判同步信号到否
{
EK=EK_1=EK_2=EK_3=0;
RK=RK_1=RK_2=RK_3=0;
DAC_1=0x80;
//D/A输出零
TC=1;
}
(2)双通道采样:
{
TC--;
//判采样周期到否
if(TC==0)
{
if(FLG==0)
{
RK=ADC_7-128;
//采样当前的给定值
DOUT0=1;
FLG=1;
TC=TK;
}
else
{
FLG=0;
UK=ADC_7-128;
//采样当前的输出值,并计算偏差的变化量
DOUT0=0;
EK=RK-UK;
EK_1=RK_1-UK_1;
EK_2=RK_2-UK_2;
EK_3=RK_3-UK_3;
i=KK*0EK*+KK1*EK_1+EK_2*KK2
j=PP1*UK_1+PP2*UK_2+PP3*UK_3;
UK=G*i+j;
if(UK>
0)//判控制量是否溢出,溢出赋极值
if(UK>
127)
aa=127;
else
aa=(char)UK;
}
if(UK<
-128)
aa=-128;
}
DAC_1=bb+128;
//D/A输出控制量
bb=aa;
UK_3=UK_2;
//控制量递推
UK_2=UK_1;
UK_1=UK;
EK_3=EK_2;
//偏差递推
EK_2=EK_1;
EK_1=EK;
TC=TK;
//采样周期变量恢复
双通道采样原理说明:
由于在主程序中,将DOUT2置“0”,已经选择了采样通道IN6,第一次进行A/D转换时,对给定信号进行采样,并将采样值存储在RK中,同时将DOUT2置“1”,这时将A/D通道IN7选中,等待采样周期到时,则采样反馈信号,并将采样值存储在UK1中,在变量定义中,已经将P1.6定义为DOUT2,故改变DOUT2值就改变了P1.6。
中断程序实现的功能:
对给定信号进行采样,并将采样值存储在RK中,同时将DOUT2置“1”,将A/D通道IN7选中,待采样周期到时,则采样反馈信号,并将采样值存储在UK1中,接下来便是计算偏差E(k),计算U(k),将值通过端口DAC_1在下一周期到来时输出;
再次在该中断程序中,增加一个变量bb1,用于存储前一周期的输出值,这样使得输出量能够延迟1秒输出;
最后就是通过递推公式,计算实现输出信号的不断优化。
该程序实现的功能是对定时器的重新装值,同时,当采样周期到时,启动A/D,用于对转换反馈信号进行A/D转换。
6.实验结果
无振铃
7.小结与体会
课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它有利于我们全面牢固地掌握课堂教学内容、培养我们的实践和实际动手能力。
这次的课程设计,让我对《计算机控制技术》这门课和课程设计有了一个全新的认识,也有了很多的体会和心得。
《计算机控制技术》是一门实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。
通过课程设计,我对控制算法设计有了一个更深的认识,也学会了控制算法的实际应用,从整体上了解了计算机控制系统的实际组成,掌握了计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的整定工作打下基础。
通过这次的课程设计,我认识到任何课程的学习都需要理论结合实际,这样才能更好地掌握所学的知识并将它很好地应用于实践中。
同时,在实践过程中,可以通过查找资料、分析资料和请教老师和同学,使一些不清楚的问题得以解决,这样的话,可以起到事半功倍的效果。
当然,最关键的还是靠自己亲自去思考问题、解决问题,掌握独自面对各类的问题的方法。
总之,这次的课程设计给了我很多的体会
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法 控制系统 设计