2022年Matlab程序解现代控制理论与工程中的状态方程.docx
《2022年Matlab程序解现代控制理论与工程中的状态方程.docx》由会员分享,可在线阅读,更多相关《2022年Matlab程序解现代控制理论与工程中的状态方程.docx(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品学习资源用矩阵指数法解状态方程的 MATLAB函数 vslove1:函数 vslove1: 求解线性定常连续系统状态方程的解function Phit,PhitBu=vsolves1A,B,ut%vsolves1 求线性连续系统状态方程X =AX+Bu 的解%Phit,phitBu=vsolves1A,B,ut%A,B 系数矩阵%ut 把握输入,必需为时域信号的符号表达式,符号变量为t%Phit 输出 Phit%PhitBu 输出 phit-tao*B*utao在区间( 0, t)的积分syms t tao% 定义符号变量 t,taoPhit=expmA*t ;% 求矩阵指数 expAt
2、if B=0B=zerossizeA,l,l ;% 重构系数矩阵B endphi=subPhit, t,t-tao;% 求 expAt-taoPhitBu=intphi*B*ut,tao,0,t; %求 expAt-tao*B*utao在 0t 区间的积分用拉氏变换法解状态方程的 MATLAB函数 vslove2:函数 vslove2: 求解线性定常连续系统状态方程的解function sl_A,sl_ABu=vsolves1A,B,us%vsolves2 求线性连续系统状态方程X =AX+Bu 的解%sl_A,sl_ABu=vsolves1A,B,ut%A,B 系数矩阵%us 把握输入,必需
3、为拉氏变换后的符号表达式,符号变量为s%sl_A 输出矩阵 sl-A-1 拉式反变换的结果%sl_ABu 输出 sl-A-1*B*us拉式反变换后的结果syms s%定义符号变量t,tao AA=s*eyesizeA-A;% 求 sI-AinvAA=invAA;% 求( sI-A )矩阵的逆 intAA tAA=ilaplaceintAA;% 求 intAA 的拉氏反变换sI_A=simplify ;% 简化拉式反变换的结果if B=0B=zerossizeA,l,l ;% 重构系数矩阵B endtAB=ilaplaceintAA*B*us;%求 intAA*B*us的拉氏反变换sI_ABu=
4、simplifytAB;%化简拉式反变换的结果求解时变系统状态方程的 MATLAB函数 tslove:函数 tslove: 求解线性时变连续系统状态方程的解function Phi,PhiBu=tsolvesA,B,u,x,a,n%tsolves 求时变系统状态方程%Phi,phiBu=vsolves1A,B,u,x,a,n%A,B 时变系数矩阵欢迎下载精品学习资源%Phi 状态转移矩阵运算结果%PhiBu 受控解重量%u把握输入向量,时域形式%x 符号变量,指明矩阵A 中的时变参数,通常为时间t%a积分下限%n时变状态转移矩阵中运算重积分的最大项数,n=0 时无重积分项% n=1 时包含二重
5、积分项, .Phi=transmtxA,x,a,n ;% 运算状态转移矩阵Phitao=subsPhi,x, tao;% 求 Phitao if B=0Btao=zerossizeA,l,l ;%求 Btao endutao=subsu,x,tao;%求 utaoPhiBu=simpleintPhitao*Btao*utao,tao,a,x ; %运算受控重量求解时变系统转移矩阵的 MATLAB函数 transmtx :函数 transmtx: 求解线性时变系统状态转移矩阵function Phi=transmtxA,x,a,n%transmtx 运算时变系统状态转移矩阵%Phi=transm
6、txA,x,a,n%Phi 状态转移矩阵运算结果%A时变系数矩阵%x 符号变量,指明矩阵A 中的时变参数,通常为时间t%a积分下限%n时变状态转移矩阵中运算重积分的最大项数,n=0 时无重积分项% n=1 时包含二重积分项, .Phi=eyesizeA ;% 初始化 Phi=I for lop=0:nAA=A ;for i=1:lopif AA=0break;endAtemp=subsAA,x, taoi ; AA=simplifyA*intAtemp,tao,a,x; endif AA=0break;endAtemp=subsAA,x, taoi ;AA=simplifyA*intAtemp
7、,tao,a,x;% 运算重积分 Phi=simplifyPhi+AA;% 修正 Phiend求解线性定常离散系统状态方程的MATLAB函数 disolve:欢迎下载精品学习资源函数 disolve: 求解线性定常离散系统状态方程的解function Ak,AkBu=disolveA,B,uz%disolve 求线性离散系统状态方程xk+1=Axk+Buk的解%Ak,AkBu=disolveA,B,uz%A,B 系数矩阵%uz 把握输入,必需为Z 变换后的符号表达式,符号变量为z%Ak 输出矩阵 zI-A-1zZ反变换后的结果%AkBu 输出矩阵 zI-A-1*B*uzZ反变换后的结果syms
8、 z% 定义符号变量z AA=z*eyesizeA-A;% 求 zI-AinvAA=invAA ; % 求( zI-A )矩阵的逆 intAA tAA=iztransintAA*z ; % 求 intAA*z 的 Z 反变换Ak=simpletAA ; % 简化 Z 反变换的结果if B=0B=zerossizeA,l,l ; % 重构系数矩阵 B endtAB=iztransintAA*B*uz ; % 求 intAA*B*uz 的 Z 反变换AkBu=simpletAB ; %化简 Z 反变换的结果求解线性时变离散系统状态方程的MATLAB函数 tdsolve:函数 tdsolve: 求解
9、线性时变离散系统状态方程的解function xk=tsolveAk,Bk,uk,x0,kstart,kend%tdsolve 求线性时变离散系统状态方程xk+1=Akxk+Bkuk的解%xk=tsolveAk,Bk,uk,x0,kstart,kend%Ak,Bk系数矩阵%uk 把握输入,必需为时域符号表达式,符号变量为k%x0初始状态%kstart 初始时刻%kend终止时刻%xk 输出结果,矩阵每一列分别对应xk0+1,xk0+2.syms k% 定义符号变量 k if Bk=0Bk=zerossizeA,l,l ;% 重构系数矩阵B endxk= ;for kk=kstart+1: ke
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 Matlab 程序 现代 控制 理论 工程 中的 状态方程
限制150内