华北电力大学过程计算机控制课设DDC串级回路PID闭环
(36页)
本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!
19.90 积分
实用文档课程设计报告名称:过程计算机控制题目: DDC串级回路PID闭环控制系统的设计及实时仿真院系:控计班级: 学号: 学生姓名: 同组人: 指导教师:李明扬设计周数:一周一、设计目的1. 学习并了解用高级语言(C语言)实现数字PID控制算法模块程序的方法;2. 比较验证理想微分PID和实际微分PID控制算法阶跃响应,加深对上述两种算法各自特点的认识;3. 学习了解用模拟计算机使用方法;4. 学习掌握A/D、D/A转换接口板的使用方法;5. 了解一种微机中断定时的方法;6. 学习掌握通过A/D、D/A转换用计算机获取被控对象动态特性的方法;7. 通过实时仿真实验掌握DDC单回路控制程序编制及调试方法。二、实验仪器(1)微型计算机一台,系统软件Windows 98或DOS (不能使用无直接I/O能力的NT或XP系统), 内装Turbo C 2.0/3.0集成开发环境软件;(2)模拟计算机一台(XMN-1型);(3)通用数据采集控制板一块(PCL-812PG型)。三、PID的离散化理想微分PID算法的传递函数形式为:采用向后差分法对上式进行离散,得出其差分方程形式为:u[k]=u[k-1]+q0*e[2]+q1*e[1]+q2*e[0];其中各项系数为:q0=kp*(1+T/Ti+Td/T); q1=-kp*(1+2*Td/T); q2=kp*Td/T;实际微分PID算法的传递函数形式为:采用向后差分法对上式进行离散化,写成差分方程的形式为: u[k]=c0*(Δu[k-1])+c1*e[k]+c2*e[k-1]+c3*e[k-2]+u[k-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=1000000*0.0000047=4.7s所以G(s)=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伏左右负的阶跃信号,同时采集输入输出信号,得出仿真对象飞升特性曲线。程序中,通过按键实现模拟对象输入信号的加减。当按下H按键时,且按下U键时,D/A输出一个1伏阶跃-省略部分-ng position*/ line(ox,oy-100*i,ox+500,oy-100*i); outtextxy(ox-16,oy-100*0,"0"); outtextxy(ox-16,oy-100*1,"1"); outtextxy(ox-16,oy-100*2,"2"); outtextxy(ox-16,oy-100*3,"3"); for(i=1;i<=500/50;i++) /*scale*/ { line(ox+50*i,oy,ox+50*i,oy-400); /*1/T=10,that is 10px=1sec*/ line(ox+50*i-25,oy,ox+50*i-25,oy-10); } setlinestyle(0,0,1); /*real line,none,width*/ outtextxy(ox-4+50,oy+2,"5");outtextxy(ox-8+100,oy+2,"10"); outtextxy(ox-8+150,oy+2,"15"); outtextxy(ox-8+200,oy+2,"20"); outtextxy(ox-8+250,oy+2,"25"); outtextxy(ox-8+300,oy+2,"30"); outtextxy(ox-8+350,oy+2,"35"); outtextxy(ox-8+400,oy+2,"40"); outtextxy(ox-8+450,oy+2,"45"); outtextxy(ox-8+500,oy+2,"50"); } /*line-drawing and notes*/ void Drawline(int cj1,float pv1,float sp1,float u1,float e1) /*画线*/ { static int cj_0=0,cj_1=0,pv_0=0.0,pv_1=0.0,sp_0=0.0,sp_1=0.0,u_0=0.0,u_1=0.0,e_0=0.0,e_1=0.0; cj_1=cj1; /*X coordinate*/ pv_1=(int)(pv1*10); sp_1=(int)(sp1*10); u_1=(int)(u1*10); e_1=(int)(e1*10); setcolor(2); /*green*/ line(ox+cj_0,oy-pv_0,ox+cj_1,oy-pv_1); outtextxy(590,30,"pv"); setcolor(8); /*dark gray*/ line(ox+cj_0,oy-sp_0,ox+cj_1,oy-sp_1); outtextxy(590,45,"sp"); setcolor(3); /*cyan*/ line(ox+cj_0,oy-u_0,ox+cj_1,oy-u_1); outtextxy(590,60,"u"); setcolor(4); /*red*/ line(ox+cj_0,oy-e_0,ox+cj_1,oy-e_1); outtextxy(590,75,"error"); cj_0=cj_1; pv_0=pv_1; sp_0=sp_1; u_0=u_1; e_0=e_1; }文案大全 关 键 词: 控制 计算机 ddc 过程 大学 回路 电力 pid 闭环 华北
天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:华北电力大学过程计算机控制课设DDC串级回路PID闭环
链接地址: https://www.wenku365.com/p-47074631.html