欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于遗传算法的PID整定原理及matlab仿真程序(共5页).doc

    • 资源ID:13663060       资源大小:22KB        全文页数:5页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于遗传算法的PID整定原理及matlab仿真程序(共5页).doc

    精选优质文档-倾情为你奉上主程序:chap5_2.m %GA(Generic Algorithm) Program to optimize PID Parameters clear all; close all; global rin yout timef Size=30; CodeL=3; MinX(1)=zeros(1); MaxX(1)=20*ones(1); MinX(2)=zeros(1); MaxX(2)=1.0*ones(1); MinX(3)=zeros(1); MaxX(3)=1.0*ones(1); Kpid(:,1)=MinX(1)+(MaxX(1)-MinX(1)*rand(Size,1); Kpid(:,2)=MinX(2)+(MaxX(2)-MinX(2)*rand(Size,1); Kpid(:,3)=MinX(3)+(MaxX(3)-MinX(3)*rand(Size,1); G=100; BsJ=0; %* Start Running * for kg=1:1:G time(kg)=kg; %* Step 1 : Evaluate BestJ * for i=1:1:Size Kpidi=Kpid(i,:); Kpidi,BsJ=chap5_2f(Kpidi,BsJ); BsJi(i)=BsJ; end OderJi,IndexJi=sort(BsJi); BestJ(kg)=OderJi(1); BJ=BestJ(kg); Ji=BsJi+1e-10; %Avoiding deviding zero fi=1./Ji; % Cm=max(Ji); % fi=Cm-Ji; Oderfi,Indexfi=sort(fi); %Arranging fi small to bigger Bestfi=Oderfi(Size); %Let Bestfi=max(fi) BestS=Kpid(Indexfi(Size),:); %Let BestS=E(m), m is the Indexfi belong to max(fi) kg BJ BestS %* Step 2 : Select and Reproduct Operation* fi_sum=sum(fi); fi_Size=(Oderfi/fi_sum)*Size; fi_S=floor(fi_Size); % Selecting Bigger fi value r=Size-sum(fi_S); Rest=fi_Size-fi_S; RestValue,Index=sort(Rest); for i=Size:-1:Size-r+1 fi_S(Index(i)=fi_S(Index(i)+1; % Adding rest to equal Size end k=1; for i=Size:-1:1 % Select the Sizeth and Reproduce firstly for j=1:1:fi_S(i) TempE(k,:)=Kpid(Indexfi(i),:); % Select and Reproduce k=k+1; % k is used to reproduce end end %* Step 3 : Crossover Operation * Pc=0.90; for i=1:2:(Size-1) temp=rand; if Pc>temp %Crossover Condition alfa=rand; TempE(i,:)=alfa*Kpid(i+1,:)+(1-alfa)*Kpid(i,:); TempE(i+1,:)=alfa*Kpid(i,:)+(1-alfa)*Kpid(i+1,:); end end TempE(Size,:)=BestS; Kpid=TempE; %* Step 4: Mutation Operation * Pm=0.10-1:1:Size*(0.01)/Size; %Bigger fi,smaller Pm Pm_rand=rand(Size,CodeL); Mean=(MaxX + MinX)/2; Dif=(MaxX-MinX); for i=1:1:Size for j=1:1:CodeL if Pm(i)>Pm_rand(i,j) %Mutation Condition TempE(i,j)=Mean(j)+Dif(j)*(rand-0.5); end end end %Guarantee TempE(Size,:) belong to the best individual TempE(Size,:)=BestS; Kpid=TempE; end Bestfi BestS Best_J=BestJ(G) figure(1); plot(time,BestJ); xlabel(Times);ylabel(Best J); figure(2); plot(timef,rin,r,timef,yout,b); xlabel(Time(s);ylabel(rin,yout); 子程序:chap5_2f.m function Kpidi,BsJ=pid_gaf(Kpidi,BsJ) global rin yout timef ts=0.001; sys=tf(400,1,50,0); dsys=c2d(sys,ts,z); num,den=tfdata(dsys,v); rin=1.0; u_1=0.0;u_2=0.0; y_1=0.0;y_2=0.0; x=0,0,0; B=0; error_1=0; tu=1; s=0; P=100; for k=1:1:P timef(k)=k*ts; r(k)=rin; u(k)=Kpidi(1)*x(1)+Kpidi(2)*x(2)+Kpidi(3)*x(3); if u(k)>=10 u(k)=10; end if u(k)<=-10 u(k)=-10; end yout(k)=-den(2)*y_1-den(3)*y_2+num(2)*u_1+num(3)*u_2; error(k)=r(k)-yout(k); %- Return of PID parameters - u_2=u_1;u_1=u(k); y_2=y_1;y_1=yout(k); x(1)=error(k); % Calculating P x(2)=(error(k)-error_1)/ts; % Calculating D x(3)=x(3)+error(k)*ts; % Calculating I error_2=error_1; error_1=error(k); if s=0 if yout(k)>0.95&yout(k)<1.05 tu=timef(k); s=1; end end end for i=1:1:P Ji(i)=0.999*abs(error(i)+0.01*u(i)2*0.1; B=B+Ji(i); if i>1 erry(i)=yout(i)-yout(i-1); if erry(i)<0 B=B+100*abs(erry(i); end end end BsJ=B+0.2*tu*10; 专心-专注-专业

    注意事项

    本文(基于遗传算法的PID整定原理及matlab仿真程序(共5页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开