华北电力大学过程计算机控制课设DDC串级回路PID闭环

上传人:re****.1 文档编号:486501322 上传时间:2024-02-16 格式:DOC 页数:27 大小:697.50KB
返回 下载 相关 举报
华北电力大学过程计算机控制课设DDC串级回路PID闭环_第1页
第1页 / 共27页
华北电力大学过程计算机控制课设DDC串级回路PID闭环_第2页
第2页 / 共27页
华北电力大学过程计算机控制课设DDC串级回路PID闭环_第3页
第3页 / 共27页
华北电力大学过程计算机控制课设DDC串级回路PID闭环_第4页
第4页 / 共27页
华北电力大学过程计算机控制课设DDC串级回路PID闭环_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《华北电力大学过程计算机控制课设DDC串级回路PID闭环》由会员分享,可在线阅读,更多相关《华北电力大学过程计算机控制课设DDC串级回路PID闭环(27页珍藏版)》请在金锄头文库上搜索。

1、 课程设计报告名称:过程计算机控制题目: DDC串级回路PID闭环控制系统的设计及实时仿真院系:控计班级:学号:学生:同组人:指导教师:明扬设计周数:一周一、设计目的1. 学习并了解用高级语言C语言实现数字PID控制算法模块程序的方法;2. 比拟验证理想微分PID和实际微分PID控制算法阶跃响应,加深对上述两种算法各自特点的认识;3. 学习了解用模拟计算机使用方法;4. 学习掌握A/D、D/A转换接口板的使用方法;5. 了解一种微机中断定时的方法;6. 学习掌握通过A/D、D/A转换用计算机获取被控对象动态特性的方法;7 通过实时仿真实验掌握DDC单回路控制程序编制及调试方法。二、实验仪器(1

2、)微型计算机一台,系统软件Windows 98或DOS (不能使用无直接I/O能力的NT或XP系统), 装Turbo C 2.0/3.0集成开发环境软件;(2)模拟计算机一台(XMN-1型);(3)通用数据采集控制板一块PCL-812PG型。三、PID的离散化理想微分PID算法的传递函数形式为:采用向后差分法对上式进展离散,得出其差分方程形式为:uk=uk-1+q0*e2+q1*e1+q2*e0;其中各项系数为:q0=kp*(1+T/Ti+Td/T); q1=-kp*(1+2*Td/T); q2=kp*Td/T;实际微分PID算法的传递函数形式为:采用向后差分法对上式进展离散化,写成差分方程的

3、形式为: uk=c0*(uk-1)+c1*ek+c2*ek-1+c3*ek-2+uk-1;其中各项系数为:c0=Tf/(T+Tf);c1=kp*T/(T+Tf)*(1+T/Ti+Td/T); c2=-kp*T/(T+Tf)*(1+2*Td/T); c3=kp*Td/(T+Tf);四、硬件二阶惯性环节搭建利用模拟计算机中的电容电阻及运算放大器,搭接二阶惯性环节,仿真一个被控对象。其传递函数为,硬件电路如下:图中各元件参数如下:R3=R2=510K;R1=R4=R5=R6=R7=1M ;C1=C2=C=4.7uF;那么可得:K=R5/R1*(R6/R4)=1 T1=T2=R5*C1=R6*C2=1

4、000000*0.0000047=4.7s所以Gs=1/4.7s+1*(4.7s+1)搭建好硬件电路后,将PLCD-780插入IPC机箱插槽,用导线将PLCD-780中的A/D、D/A、电源的接线端子与所搭二阶惯性环节的输出、输入端口及机箱上的电源连接,组成一个完整的PID闭环控制系统,为通信做好准备。五、实验结果1理想和实际PID阶跃响应曲线2被控对象实物搭建二阶惯性环节阶跃响应曲线上图通过D/A输出一个1伏左右的信号输入模拟的被控对象惯性环节,A/D采集对象的输入信号及其响应,再使D/A输出一个幅度为2伏左右的阶跃信号,同时采集输入输出信号。然后,D/A再反向在输出一个幅度为2伏左右负的阶

5、跃信号,同时采集输入输出信号,得出仿真对象飞升特性曲线。程序中,通过按键实现模拟对象输入信号的加减。当按下H按键时,且按下U键时,D/A输出一个1伏阶跃信号,再次按下按键时阶跃信号累加。每次按下D键时,D/A输出的阶跃信号递减1。3根据对象单位阶跃响应曲线求增益和惯性时间:利用切线法求对象的增益和用一阶等效的惯性时间:如上图所示做拐点切线,得对象增益和一阶等效惯性时间分别为:4手自动切换:5设定值r、控制量u和被控对象输出的阶跃响应曲线:程序清单/*-头文件定义-*/#include#include#include#include/*-定义绘图坐标-*/#defineox8/*-原点横坐标-*

6、/#defineoy440/*-原点纵坐标-*/#definexx620/*-x轴顶点横坐标-*/#definexy440/*-x轴顶点纵坐标-*/#definelenx580#defineleny400#defineyx8/*-y轴顶点横坐标-*/#defineyy15/*-y轴顶点纵坐标-*/*-定义绘图区域-*/#defineleft20#definetop20#defineright620#definebottom460/*-坐标轴注释-*/#definextext1x450#definextext1y450#defineytext1x10#defineytext1y60#define

7、xtext2x610#definextext2y450#defineytext2x10#defineytext2y20/*-理想PID运算式-*/floatlxpid(floatkp,floattd,floatti,floate3,floatu1)intt=1;floatu;floatq0=kp*(1+t/ti+td/t);floatq1=-kp*(1+2*td/t);floatq2=kp*td/t;u=q0*e0+q1*e1+q2*e2+u1;returnu;/*-实际PID运算式-*/floatsjpid(floatkp,floattf,floattd,floatti,floate3,fl

8、oatdu1,floatu1)intt=1;floatu2;floatc1=tf/(t+tf);floatc2=kp*t*(1+t/ti+td/t)/(t+tf);floatc3=-kp*t*(1+2*td/t)/(t+tf);floatc4=kp*td/(t+tf);u2=c1*du1+c2*e0+c3*e1+c4*e2+u1;returnu2;/*-绘图初始化-*/voidInitial_Sys(void)intGraphDriver;intGraphMode;detectgraph(&GraphDriver,&GraphMode);initgraph(&GraphDriver,&Grap

9、hMode,C:TC201EBGI);cleardevice();/*-绘制坐标系-*/voidDrawAxis(void)inti;setbkcolor(15);setcolor(5);line(ox,oy,xx,xy);/*x_axis*/line(xx-5,xy-5,xx,xy);line(xx,xy,xx-5,xy+5);line(ox,oy,yx,yy);/*y_axis*/line(yx-5,yy+10,yx,yy);line(yx+5,yy+10,yx,yy);for(i=0;i51;i+) /*-x轴刻度-*/line(ox+10*i,oy,ox+10*i,oy-10);lin

10、e(ox+10*i+5,oy,ox+10*i+5,oy-5);for(i=1;i=8;i+) /*-y轴刻度-*/line(ox,oy-50*i,ox+10,oy-50*i);outtextxy(ox+50*0-7,oy+20,0);outtextxy(ox+50*1-7,oy+20,5);outtextxy(ox+50*2-7,oy+20,10);outtextxy(ox+50*3-7,oy+20,15);outtextxy(ox+50*4-7,oy+20,20);outtextxy(ox+50*5-7,oy+20,25);outtextxy(ox+50*6-7,oy+20,30);outt

11、extxy(ox+50*7-7,oy+20,35);outtextxy(ox+50*8-7,oy+20,40);outtextxy(ox+50*9-7,oy+20,45);outtextxy(ox+50*10-7,oy+20,50);outtextxy(ox-10,oy-50*1,1);outtextxy(ox-10,oy-50*2,2);outtextxy(ox-10,oy-50*3,3);outtextxy(ox-10,oy-50*4,4);outtextxy(ox-10,oy-50*5,5);outtextxy(ox-10,oy-50*6,6);outtextxy(ox-10,oy-50*7,7);outtextxy(ox-10,oy-50*8,8); /*坐标轴刻度标识*/settextstyle(SMALL_FONT,HORIZ_DIR,5);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

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