计算机控制课程设计学院自动化科学与工程学生姓名学生学号班级提交日期2013年9月5日指导老师目录一)课程设计任务题目及要求…………………………………………………二)课程设计任务对象与论证…………………………………………………三)控制器的计算、选择以及系统仿真………………………………………四)硬件电路的设计…………………………………………………………五)系统框图…………………………………………………………………六)程序流程图………………………………………………………………七)参考文献……………………………………………………………八)心得体会………………………………………………………………一、课程设计任务题目及要求总体:设计一个具有大纯时延时间的一阶惯性环节的计算机控制系统,字数不少于3000字。具体内容:1)自己给出系统的闭环传递函数的表达式2)自己设定系统性能指标3)书面设计一个计算机控制系统的硬件布线连接图4)硬件布线连接图转化为系统结构图5)选择一种控制算法6)软件工程知识编写程序流程图7)在MATLAB下进行编程和仿真,给出单位阶跃函数的输出结果表8)进行系统的可靠性和抗干扰性的分析要求:1、针对一个具有纯滞后的一阶惯性环节()1sKeGsTs的温度控制系统和给定的系统性能指标:工程要求相角裕度为30°~60°,幅值裕度6dB要求测量范围-50℃~200℃,测量精度0.5%,分辨率0.2℃2、书面设计一个计算机控制系统的硬件布线连接图,并转化为系统结构图;3、选择一种控制算法并借助软件工程知识编写程序流程图;4、用MATLAB和SIMULINK进行仿真分析和验证;二、课程设计任务对象与设计的分析论证1.控制对象的分析与说明本设计的控制对象是一个含有具有大时滞的一阶惯性环节()1sKeGsTs的系统,而在通常的温度控制系统中,控制对象往往就可以视作含有一个大纯时延时间的一阶惯性环节的系统,故本次计算机控制系统设计则可以以一个温度控制系统为例设计:加热炉温度控制系统。目的是保持被加热液体的温度与设定值尽量一致,当系统出现干扰时能够较快地恢复到设定值。让纯时延为T/2,被控对象传递函数为:10124.0120)(0062.0sesGs需要对这一传递函数进行分析,添加适当的控制器,以满足设计要求,取得预期效果。2.系统设计的一般步骤和要点①建模:描述控制量和输出量之间的数学关系;②确定控制任务:动态和静态指标;③选择算法;①系统结构包括系统总线的选择;②内存空间分配:系统软件、应用程序、待扩充;③I/O分配:模拟/开关量I/O、待扩充;④模拟量I/O通道的配置;⑤中断、查询处理方式的确定;即组构计控系统原理描述图,包括信号流程图(接合控制对象的工艺流程);给定量方式线路方案采样信号口地址分配内存参数区滤波环节控制量输出信号标准化算法步骤技术指标负载考虑如MOS、TTL器件逻辑电平、I/O电流、输入/输出能力,以及缓冲器的选择NY机箱设计、布线走向电路板设计端接板配置YNNY控制对象的功能和工作过程的分析调试硬件投入运行系统总体方案设计系统控制工艺流程图画应用程序流程图开关量、模拟量I/O通道设计编制源程序、调试和仿真元器件芯片选择和测试写EPPROM布线和安装系统试运行硬件有错?达到预期目的?完成控制目的?三、控制器的计算,选择,和系统的仿真1、当传递函数为10124.0120)(0062.0sesGs时,用MATLAB绘出其波特图:程序为:num=[120];den=[0.01241];g=tf(num,den,'iodelay',0.0062);margin(g);gridon;波特图为:由上图可知,幅值裕度为-0.276dB6dB,相角裕度为-107deg,不满足题目要求。故需对对象进行合理控制使其工作符合要求,需要进行设计。2.算法选择最小拍无纹波:即最少调整时间系统,在给定某种典型输入(如单位阶跃输入、单位速度输入或单位加速度输入)条件下,通过设计一个控制规律使得闭环系统输出具有最快的响应速度,且输出的采样点之间没有纹波。在满足系统的快速性、准确性、稳定性和可实现性条件下,设计出来的数字调节器可以实现无静差的稳定状态。但是最少拍系统存在着局限性:○1对输入信号类型的适应性差;○2对系统参数的变化敏感;○3控制作用易超出允许的控制范围。Dalin算法:在控制系统设计中,纯滞后往往是影响系统动态特性的不利因素,如在热工和化工的许多工业生产过程中,其被控对象模型的不确定性、参数随时间的漂移性和含有较大的纯滞后,如果要求控制系统在最少拍内达到稳态,则不但不能达到预期的效果,反而会引起系统产生大的超调或振荡。而事实上,对这类系统的控制要求,快速性是次要的,而主要要求系统没有超调或很少的超调。达林算法就是一种专门针对工业生产过程中含有纯滞后控制对象的直接数字设计算法。对温度控制系统的要求,主要是保证炉温按规定的温度工艺曲线变化,超调小或者无超调,稳定性好,不振荡,对系统的快速性要求不高。而Dalin算法的设计目标是对带时延的一阶或二阶惯性环节工业对象,设计一个数字调节器,使得整个闭环系统的传递函数为具有纯时延特性的一阶惯性环节,目的是使输出无超调或者超调很小。结合本次课程设计的控制对象数学模型,若其为不带延时的一阶惯性环节,则选用(1)方案,用最少拍无波纹来设计控制器;若其为带时延的一阶惯性环节,而设计目标就是无超调或者超调很小,故选用(2)方案,用Dalin算法来实现对系统的控制。3.控制器设计当传递函数为10124.0120)(0062.0sesGs时,由于控制对象的纯时延特性常导致控制系统的稳定性降低,过渡过程特性变坏。有资料指出,当对象的纯延迟时间与对象惯性时间常数mT之比大于等于0.5时,采用常规PID算法难以获得良好的系统性能,因此考虑采用达林算法。带纯时延特性的一阶惯性环节如下:10124.0120)(0062.0sesGs其中,=0.0062,1=0.0124,K=120。由达林算法,取得系统期望闭环传递函数为:10124.0)(0062.0sesHs式中,=0.0124,大于1,则RA≤0,无振铃现象。由于=L×T,取L=2,可得T=/2=0.0031s=/Te=0.7788,1=1/Te=0.7788由以上数据可得系统期望闭环脉冲传递函数为:H(z)=[()()]hZGsHs=11(1)1Lzzz=137788.012212.0zz被控对象的广义脉冲传递函数为:G(z)=0[()()]hZGsGs=K(1)Lz11111z=13137788.01554.267788.012212.0120zzzz数字控制器的控制规律为:D(z)=()()[1()]HzGzHz=(1)1(1)(1)()[1(1)]LLzGzzz=3112212.07788.0100649.000833.0zzz系统开环脉冲传递函数为:()kGz=D(z)G(z)=313133112212.07788.012212.07788.011610.262212.07788.0100659.000846.0zzzzzzzz加上比例的控制器:D(z)=3113112212.07788.0101318.001692.022212.07788.0100659.000846.0zzzzzzG(k)=3133132212.07788.014424.022212.07788.012212.0zzzzzz由以上结果,通过MATLAB仿真结果如下:输入程序:Ts=0.0031dnum=[0,0,0,0.2212]dden=[1,-0.7788,0,-0.2212]Zk=tf(dnum,dden,Ts)margin(Zk)输出结果:Ts=0.0031dnum=0000.2212dden=1.0000-0.77880-0.2212Transferfunction:0.2212-------------------------z^3-0.7788z^2-0.2212Samplingtime:0.0031-20-1001020System:ZkFrequency(rad/sec):241Magnitude(dB):-12.2Magnitude(dB)101102103104-540-360-1800System:ZkFrequency(rad/sec):51Phase(deg):-109Phase(deg)BodeDiagramGm=12.2dB(at242rad/sec),Pm=71.9deg(at49.9rad/sec)Frequency(rad/sec)由上图可知,在未加入适当的比例增益,系统的幅值裕度为12.2dB,相角裕度为71deg,可见该系统并不符合设计要求,故需要加入适当的比例增益,降低系统的相角裕度。加入一个适当的比例增益0K=2之后,MATLAB仿真程序以及结果如下:输入程序:Ts=0.0031dnum=[0,0,0,0.4424]dden=[1,-0.8032,0,-0.1968]Zk=tf(dnum,dden,Ts)margin(Zk)输出结果:Ts=0.0031dnum=0000.3982dden=1.0000-0.80320-0.1968Transferfunction:0.3982-------------------------z^3-0.8032z^2-0.1968Samplingtime:0.0031-20-100102030System:ZkFrequency(rad/sec):242Magnitude(dB):-6.9Magnitude(dB)101102103104-540-360-1800System:ZkFrequency(rad/sec):96.6Phase(deg):-126Phase(deg)BodeDiagramGm=6.82dB(at238rad/sec),Pm=55deg(at94.6rad/sec)Frequency(rad/sec)由上图可知,系统的幅值裕度为6.9dB,相角裕度为54deg。可见,加入了一个2的比例增益之后,系统的性能能够符合设计要求。采用MATLAB的SIMULINK软件进行仿真,系统框图如下:Zero-OrderHoldTransportDelay118.26870.0124s+1TransferFcnStep2Step1StepScope3Scope2Scope1Scope1.8Gain0.00846-0.00659z-11-0.7788z+-0.2212z-1-3DiscreteFilter通过SIMULINK仿真的结果如下:由上图可知,在t=1s时对系统施加一个单位阶跃给定输入信号,在规定的采样周期时间之后一定的微小延迟系统达到了稳定。系统无超调,调节过程也较快,调节性能保持较佳状态。系统在一个采样周期之后一定的误差范围内稳定,并准确跟随输入信号,调节性能良好,整个系统性能足以满足设计要求。四、硬件电路设计1.硬件设计思路与方案实现达林算法的控制,无疑是采取计算机控制系统对温度控制系统进行控制。在此,计算机可采用单片机8051。要对温度进行控制,首先要采用温度传感器对温度进行检测。由于传感器的输出信号较为微弱,故必须经放大后才能输入A/D转换单元。通过A/D转换,将放大后的模拟信号转化为数字信号后输入8051单片机,在单片机内部进行比较处理和达林算法运算后把结果送D/A转换单元。经D/A转换后,经过驱动使温度调节器进行相应的动作,从而达到及时控制温度的目的。在A/D转换器或D/A转换器与8051的连接时,有一个问题是芯片的物理地址。这就需要采用地址锁存器74373及译码器74138。通过译码进行片选,便可知各芯片的物理地