matlab有关二级倒立摆PID控制-shuang_pd.mdl
直线二级倒立摆是一个单输入三输出的系统.为了使倒立摆稳定竖立,必须对小车的位置、摆杆1的偏角、摆杆2的偏角这3个输出同时进行闭环控制.若采用PID控制器,则因为一个PID控制器只能控制一个被调量,所以在此提出三回
路PID控制方案,在上图中:Pos表示小车的位移;Anglel表示摆杆l的偏角;Angle2表示摆杆2的偏角.根据文献理论“积分控制不适用于倒立摆控制”,所以这里采用PD控制策略。即采用PD—PD—PD三回路控制方案.
6个PD参数与6个状态变量一一对应.将图所示的PD—PD—PD控制结构与状态反馈控制系统的结构相比较,发现它们的结构是一样的.因此,可利用状态反馈控制系统的极点配置方法来确定PID控制器的6个参数值.
当取点为P=[-2 5i -2-5i -5 4i -5-4i -8 6i -8-6i],利用MATLAB中的极点配置函数place,可求出个K值,程序如下:
A=[ 0
0
0
1
0
0;
0
0
0
0
1
0;
0
0
0
0
0
1;
0
0
0
0
0
0;
0
86.69
-21.62 0
0
0
0
-40.31 39.45
0
0
0];
B=[ 0
0
0
1
6.64
-0.088]';
P=[-2 5*i,-2-5*i,-5 4*i,-5-4*i,-8 6*i,-8-6*i];
K=place
结果:K =
46.6564
75.1740 -162.8217
25.2800
0.3594
-26.5211
6个PD参数与6个状态变量一一对应.将图所示的PD—PD—PD控制结构与状态反馈控制系统的结构相比较,发现它们的结构是一样的.因此,可利用状态反馈控制系统的极点配置方法来确定PID控制器的6个参数值.
当取点为P=[-2 5i -2-5i -5 4i -5-4i -8 6i -8-6i],利用MATLAB中的极点配置函数place,可求出个K值,程序如下:
A=[ 0
0
0
1
0
0;
0
0
0
0
1
0;
0
0
0
0
0
1;
0
0
0
0
0
0;
0
86.69
-21.62 0
0
0
0
-40.31 39.45
0
0
0];
B=[ 0
0
0
1
6.64
-0.088]';
P=[-2 5*i,-2-5*i,-5 4*i,-5-4*i,-8 6*i,-8-6*i];
K=place
结果:K =
46.6564
75.1740 -162.8217
25.2800
0.3594
-26.5211
2021-03-09 14:17:05
31KB
matlab
1