无波纹控制系统.doc

上传人:工**** 文档编号:559741793 上传时间:2023-02-21 格式:DOC 页数:14 大小:505.01KB
返回 下载 相关 举报
无波纹控制系统.doc_第1页
第1页 / 共14页
无波纹控制系统.doc_第2页
第2页 / 共14页
无波纹控制系统.doc_第3页
第3页 / 共14页
无波纹控制系统.doc_第4页
第4页 / 共14页
无波纹控制系统.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《无波纹控制系统.doc》由会员分享,可在线阅读,更多相关《无波纹控制系统.doc(14页珍藏版)》请在金锄头文库上搜索。

1、天 津 理 工 大 学自动化学院课程设计报告题目: 最小拍无波纹控制系统设计学生姓名 刘楠楠 学号 20110729 届 2011 班级 电气一班 指导教师 专业 电气工程及其自动化 目录1 课题简介2 总体方案及硬件设计2.1-系统描述2.2-硬件设计2.2.1- A/D2.2.2- D/A2.2.3-单片机及定时器设计2.2.4-电源部分设计2.3-总体方案设计原理图3 控制算法设计3.1-控制算法描述 4 软件编程设计4.1-软件编程调试平台4.2-软件流程图4.3-软件程序代码5 小结6 参考文献1课程简介利用STC89C52单片机设计最小拍无波纹控制系统,被控对象的数学模型为 G(s

2、)=5/s(0.8s+1),设计最少拍无波纹控制算法,并编程实现;根据要求,实现在单位速度信号的作用下,达到控制要求。2总体方案及硬件设计2.1-系统描述本系统设计使用STC89C52单片机和ADC、DAC等基本元件构成闭环控制系统,整体结构如图:STC89C52控制对象D/AA/D2.1-硬件设计2.2.1- A/DADC芯片选用常用芯片ADC0809,它是一个8位ADC芯片,可以多路切换的CMOS组件,转换方法采用主次逼近法。性能相对较为可靠,价格低廉,使用简单。其中输入信号端加有LM358构成的放大器,可以增加信号的灵敏度和分辨率。电路结构图如下:2.2.2- D/A选用DAC8032芯

3、片,它是一个8位DAC芯片,本本电路单元采用,单电源供电,它是一款常用的DAC芯片,再输入信号端加上LM358构成的放大电路,不仅提高了系统的可靠程度,而且增加了控制信号的分辨率。2.2.3-单片机及定时器设计STC89C52单片机也是51系列单片机,相对于传统法51单片机,在性能和可靠性上都有较大的提高,电路图设计如下:2.2.4-电源部分设计电源部分选用LM7805和LM7905构成,外加电压范围为812V,能够输出+5和-5V电压,能够满足体统设计的点电平要求,电路图如下:2.3-总体方案设计原理图3 控制算法设计3.1-控制算法描述1、定时器T0的初值计算本设计单片机采用12M晶振,由

4、于51单片机12分频,所以系统周期为1微秒。ADC0809的转换频率最大为500KHZ,而单片机的系统时钟为1M,所以本系统采用ADC0809全速工作,而对单片机IO口进行采样的周期为1S. 定时器定时时间为50MS,利用单片机小精灵软件可以方便的计算出当定时器0工作在方式1时,TH0=3C,TL0=B0。2、对输入信号的滤波 本设计利用中值滤波的方法对P2口采集的ADC输入信号数据进行处理,中值滤波是一种较为简单有效的滤波方法,对椒盐信号干扰有较好的抑制作用,不仅可以有效的减少信号干扰带来的影响,而且相对别的滤波方法,能够降低程序的执行时间。3、最少拍无波系统的差分方程计算首先使用MATLA

5、B对G(S)进行Z变换,则变换过程如下: np = 0 0 5np = 0 0 5dp = 0.8 1 0dp = 0.8000 1.0000 0hs = tf(np,dp) Transfer function : 5-0.8 s2 + shz = c2d(hs ,1)Transfer function : 2.146 z + 1.421- Z2 1.287z + 0.2865:G(z)= 2.146 z + 1.421- Z2 1.287z + 0.2865无波纹最小拍控制器D(z) 根据G(z),对象有一个纯迟后因子v=1,一个零点b1=-0.662,两个极点,单位速度信号,所以q=1,则

6、闭环脉冲传递函数为由得系数,则系统脉冲传函为 误差脉冲传函为 由得设计的控制器为将得系统的差分方程为:u(k) = 0.357u(k-1)+0.593u(k-2)+0.294e(k)-0.236e(k-1)+0.645e(k-2)4 软件编程设计4.1-软件编程调试平台 本程序的开发环境为Keil uvisin4,是一款较为常用的开发环境,支持硬件仿真。4.2-软件流程图采样周期变量加1定时器初值重装装CLK=CLK中断返回A/D时钟程序采样中断服务程序开始主程序初始化等待中断NY中断返回定时器初值重装D/A输出u(k)采样变量赋新值采样周期变量初始化A/D采样计算u(k)采样周期是否到4.3

7、-软件程序代码#includeunsigned char count =0; /定时器计数量unsigned char count1 =0; /中值滤波计数量unsigned char ad_data ; /装入AD值char e; /当前采样的实际值flout out_data; /当前经过运算后的实际值char u; /定义DA输出量char u0=0,u1=0,e0=0,e1=0; /采样值char mid_data5=0; /中值滤波的保存值char i,j; /冒泡排序的参数void timeInit(); /定时器初始化函数void main(void) /主函数 timeInit

8、(); while(1);void timeInit() TMOD |= 0X01; /选择定时器0,工作方式1 TH0 = 3C; /设置定时器0初值 TL0 = B0; EA = 1; /打开全局中断 ET0 = 1; /打开定时器中断 TR0 = 1; /定时器中断打开 void Time0_isr(void) interrupt 1 using 1 TH0 = 3C; /重新装入初值 TL0 = B0; if(count=20) /定时器定满一秒 count=0;ad_data=P2;e = ad_data- 128; / 因为是双极性输入的这样得到的实际值有正负电压/最少拍无波纹差分

9、方程算法If(out_data0) /用于限定当前值在-127+127之间 if(out_data =127) u=127; else u=(char)out_data;else if(out_data=4) count1=0; for(i=0;i5;i+) for(j=0;jmid_dataj+1) temp=mid_dataj; mid_dataj = mid_dataj+1; mid_dataj+1 = temp; P2=mid_data2; /滤波后输出值 5 小结通过本系统的设计,我较为详细清晰地了解了最少波无波纹控制算法。它对输入信号的快速响应让我感觉很是神奇,但是,在完成课程设计

10、的过程中也遇到了大量的困难,特别是复杂的差分方程的运算,由于对MATLB不是很熟悉,所以很多参数要自己动手去算,但是,大量的数学运算让我感觉很是困难,不过经过一番努力,最后还是被完美的解决了。在此过程中,让我清醒的认识到数学的重要性。本设计系统,硬件部分相对来说比较简单,用的基本上是常用的芯片,再结合数据手册,能够很好的完成,信号也基本让人满意。通过对资料的查询,让我更进一步提高了自己的知识获取能力。6 参考文献1赖寿宏 主编 微型计算机控制技术 华中科技大学出版社 1994 2李毅刚 主编 单片机原理及应用 高等教育出版社 2003 3李铁桥 主编 计算机控制理论与应用 20054谢龙汉 主

11、编 Autium Designer 原理图与PCB设计及仿真 电子工业出版社 20125Pro Log . Technical Manual and Data Book6J. A .Moore ,S .M Herb .Understanding Distributed Process Systems. Instrument Society of America, 20057J . V .Levy. A multiple computer system for reliable transaction processing ,ACM SIG SMALL Newsletter, 4,NO .5, 20068LATTIC Semiconductor Crop .,GAL Data Book ,20099周培德 主编 计算几何 清华大学出版社 200410Anany 主编 算法设计与分析基础 清华大学出版社 2002

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号