锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

电力系统自动装置课程设计——发电机励磁系统的数学模型及PID控制仿真

时间:2023-08-29 20:37:02 yb传感器trc传感器

开门见山:下载课设源文件
我应该免费下载所有资源。如果收费,责任全部在某个地方sdn网站,请及时联系我修改,如果不能修改,我会私信连接,P2P精神永不灭
资源下载给出了代码、数学模型和电气模型。代码用于动态分析。必须先操作数学模型,使结果进入workspace只有使用代码来分析动态性能。电气模型仅进行性质分析,不进行定量分析,个人能力有限,因为盲目追随自己的问题不负责。由于版权问题,参考文献不会上传,建议参考我的文章。
一点用的:

国家标准《大中型同步发电机励磁系统基本技术条件》(GB对同步发电机动态响应的技术指标如下:  (1)当电压给定阶跃响应为空载额定电压时,同步发电机±10%时,发电机电压超调不得超过阶跃响应的50%,摆动次数不得超过3次,调整时间不得超过10%s。  (2)同步发电机突然零升压时,自动电压调节器应保证端电压超调不超过额定值的15%,调节时间不超过10%s,电压摆动次数不超过3次。 本课程采用简化计算,在误差允许范围内遵循上述要求。 

(4)励磁调节器各单元的传递函数
(1)电压测量完成了励磁同步发电机输出电压向数字控制器输入信号的转换,其中整流滤波电路略有延迟,可用一阶惯性环节进行近似描述:
G_R (s)=K_R/(1 T_R s)
K_R输入输出比为电压传感器;T_R为滤波电路的时间常数,取0.02~0.06。
(2)功率放大单元发电机空载运行时额定电压小,放大环节压降小,可忽略不计。该单元可视为一级惯性环节:
G_A (s)=K_A/(1 T_A s)
K_A为了放大电压比,T_A放大时间常数约为0。
(五)PID传输函数的控制器

G_K (s)=(〖K_i K〗_p s K_d s^2)/s
比例环节(P):即时成比例地反应控制系统的偏差信号e(t),一旦产生偏差,控制器将立即产生控制作用,以减少误差。当偏差时e=0时,控制功能也为0。因此,比例控制是基于偏差,即差异调节。
增加比例系数 一般来说,它会加速系统的响应,有利于在有静差的情况下降低静差;然而,过大的比例系数会使系统超调,产生振荡,破坏稳定性。
积分环节(I):记忆误差主要用于消除静差,提高系统的无差异。积分的强度取决于积分时间的常数Ti,Ti积分越大,效果越弱,反之亦然。
降低积分系数 有利于减少超调,减少振荡,使系统更加稳定,但消除系统静差会减慢。
微分环节(D):它可以反映偏差信号的变化趋势(变化速率),并在偏差信号值过大之前在系统中引入有效的早期修正信号,以加快系统的运行速度,减少调整时间。
增加微分系数 有利于加速系统响应,降低超调量,增强稳定性,但系统抑制扰动的能力减弱,对扰动有敏感响应。
PID 参数的预置是相辅相成的,运行现场应根据实际情况进行以下详细调整:被控物理量在目标值附近振荡。首先,增加积分时间I,如果仍有振荡,可以适当比例增益P。变化后被控物理量难以恢复,首先增加比例增益P,如果恢复仍然缓慢,可以适当减少积分时间I,微分时间也可以增加D。
(6)同步发电机励磁控制系统传输函数

前向传递函数G(s)=(K_A K_G)/((1 T_A s)(K_E T_E s)(1 〖T^‘〗_d0 s))
反馈传输函数H(s)=K_R/((1 T_R s))
空载时同步发电机的励磁控制系统传输函数为:
(U_G (s))/(U_REF (s) )=G(s)/(1 G(s)H(s) )=(K_A K_G (1 T_R s))/((1 T_A s)(K_E T_E s)(1 〖T^’〗_d0 s)(1 T_R s) K_A K_G K_R )
根据课本上给出的案例T_A=0s,〖T^'〗_d0=8.38s,T_E=0.69s,T_R=0.04s,K_E=1,K_G=1(本案由《电力系统自动装置原理》(第五版)张冠城主编P108)获取系统的开环传输函数为:
G(S)H(S)=(4.32K_A K_G)/((s 0.12)(s 1.45)(s 25))=4.32K/(s3 26.57s2 39.424s 4.35)

废话不多说,直接上图

此为第一次设计,后来老师提出,不应该是有无PID调节,应该是不同调节对比考察PID各环节作用
教师指导前代码:

%求取workspace中图像的性能指标   ya=out.simout1;   yb=out.simout2;   t = out.tout;      yamax = max(ya);%响应最大值   ybmax = max(yb);   len=length(t);%数组长度   yaend = ya(len);%稳态值   ybend = yb(len);   %求超调量   posa = (yamax-yaend)/yaend;   posb = (ybmax-ybend)/ybend;   %求上升时间   n = 1;   while ya(n) < yaend       n=n 1;   end   tra=n;   n = 1;   while yb(n) < ybend       n=n 1;   end   trb=n;   %峰值时间   n = 1;   while ya(n) < yamax       n=n 1;   end   tpa=n;   n = 1;   while yb(n) < ybmax       n=n 1;   end   tpb=n;   %调整时间   n=len;   while (ya(n)>0.98*yaend) && (ya(n)<1.02*yaend)       n = n-1;   end   tsa = n;   n=len;   while (yb(n)>0.98*ybend) && (yb(n)<1.02*ybend)       n = n-1;   end   tsb = n;      yan(1:2001) = yaend;   ybn(1:2001) = ybend;      plot(t,ya,'r',t,yb,'b',t,yan,'r--',t,ybn,'b--');   grid on   str = {'无pid控制器的响应曲线pid控制器响应曲线};   legend(str,'fontsize',15);   title('有无pid对比控制器的响应曲线;   xlabel('t/s','fontsize',18);   ylabel('u/pu','fontsize',18);   

模拟结果如下:

建立的电气模型不易释放,文末附件会给出;
在老师的建议下,模型改为:

%求取workspace中图像的性能指标 ya=out.simout1; yb=out.simout2; yc=out.simout3; t = out.tout;  yamax = max(ya);%响应最大值 ybmax = max(yb); ycmax = max(yc); len=length(t);%数组长度 yaend = ya(len);%稳态值 ybend = yb(len); ycend = yc(len); %求超调量 posa = (yamax-yaend)/yaend; posb = (ybmax-ybend)/ybend; posc = (ycmax-ycend)/ycend; fprintf(只有P的超调量:%.2f%%;只有PI超调量为:%.2f%%;有PID超调量为:%.2f%%\n', 100*posa,100*posb,100*posc); %求上升时间 n = 1; while ya(n) < yaend     n=n 1; end tra=n; n = 1; while yb(n) < ybend     n=n 1; end trb=n; n = 1; while yc(n) < ycend     n=n 1; end trc=n; fprintf(只有P的上升时间是:%.2fs;只有PI上升时间为:%.2fs;有PID上升时间为:%.2fs\n', 0.01*tra,0.01*trb,0.01*trc); %峰值时间 n = 1; while ya(n) < yamax     n=n 1; end tpa=n; n = 1; while yb(n) < ybmax     n=n 1; end tpb=n; n = 1; while yc(n) < ycmax     n=n 1; end tpc=n; fprintf(只有P的峰值时间是:%.2fs;只有PI峰值时间为:%.2fs;有PID峰值时间为:%.2fs\n', 0.01*tpa,0.01*tpb,0.01*tpc); %调整时间 n=len; while (ya(n)>0.98*yaend) && (ya(n)<1.02*yaend)     n = n-1; end tsa = n; n=len; while (yb(n)>0.98*ybend) && (yb(n)<1.02*ybend)     n = n-1; end tsb = n; n=len; while (yc(n)>0.98*ycend) && (yc(n)<1.02*ycend)     n = n-1; end tsc = n; fprintf(只有P的调整时间是:%.2fs;只有PI调整时间为%%.2fs;有PID调整时间为%%.2fs\n', 0.01*tsa,0.01*tsb,0.01*tsc);  yan(1:2001) = yaend; ybn(1:2001) = ybend; ycn(1:2001) = ycend; plot(t,ya,'r',t,yb,'b,t,yc,'k',t,yan,'r--',t,ybn,'b--',t,ycn,'k--');
grid on
str = {'仅有p控制器的响应曲线','只有pi控制器的响应曲线','有pid控制器的响应曲线'};
legend(str,'fontsize',15);
title('pid控制器的响应曲线对比');
xlabel('t/s','fontsize',18);
ylabel('u/pu','fontsize',18);


在此放出课设过程中产生的文件和报告,参考的文章因为版权问题不便放出,给出截图吧:

课程报告中很多啰啰嗦嗦的话都是到处“参考”的,不过估计来看我这篇文章的绝大多数也不会在乎这种东西,也请各位看官嘴下留情,能够帮到各位便是再好不过了。大三下,各种事情都很忙,已经积压了好久的课程设计才发布到博客,在乌烟瘴气的中文互联网环境中,希望在未来能够多多少少帮助到和我一样迷惑过的莘莘学子吧。
文件下载:课设源文件下载
给出了代码,数学模型,电气模型。代码是用作动态分析的,必须先运行数学模型,让结果进入workspace才能使用代码分析动态性能。电气模型仅作性质分析,请勿对此进行量化分析,个人能力有限,因为盲从本人产生的问题概不负责。参考文献因为版权问题不会上传,具体还是建议参考上方截图。

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章