Решение задач оптимального управления с использованием математической системы MATLAB и пакета имитационного моделирования SIMULINK. Сивохин А.В - 142 стр.

UptoLike

142
()
<
++
<
+
=
,,exp1
,0,1exp
21
2
2
22max
1
1
1max
1
tttпри
T
tt
Tttukx
ttпри
T
t
Ttuk
tx
n
(6.27),
()
<
<
=
.,1exp
,0,exp1
21
2
2
max
1
1
max
2
tttпри
T
tt
uk
ttпри
T
t
uk
tx
(6.28),
Для заданных значений параметров и найденных значений
1
t
и
2
t
с помощью
компьютера вычислены значения
(
)
tx
1
и
(
)
tx
2
в некоторых точках.
6.3 Программная реализация аналитических моделей
Расчет переходного процесса для оптимального управления производится с
помощью следующей M-функции:
function [X,DX] = OptUpr(T1,T2,k,Umax,Xn)
%
%-- ФУНКЦИЯ ДЛЯ РАСЧЕТА ПЕРЕХОДНОГО ПРОЦЕССА
%-- ОПТИМАЛЬНОГО УПРАВЛЕНИЯ:
%
%-- 1.Расчет параметров математической модели:
%
t1 = 4.3822 %-- время переключения управления;
t2 = 5.2135 %-- время перехода системы в конечную точку;
%
%-- 2.Задание временных точек:
%
t = [0.0000 0.8764 1.7529 2.6293 3.5058 4.3822 4.5484 4.7147 4.8810…
5.0472 5.2135];
%
%-- 3.Расчет управляемой величины:
%
for i = 1:1:11
if t(i) <= t1
X(i) = k*Umax*t(i)+k*Umax*T1*(exp(-t(i)/T1)-1);
else
X(i) = Xn+k*Umax*(t2-t(i)+T2-T2*exp((t2-t(i))/T2));
end
           ⎧             ⎡            ⎛      ⎛    t ⎞       ⎞⎤
           ⎪ k ⋅ u max ⋅ ⎢ t + T 1 ⋅ ⎜⎜ exp ⎜⎜ −     ⎟⎟ − 1 ⎟ ⎥ ,
                                                            ⎟                   при        0 ≤ t < t1 ,
           ⎪⎪            ⎣⎢           ⎝      ⎝ T1 ⎠         ⎠ ⎦⎥
x 1 (t ) = ⎨                                                                                                 (6.27),
            ⎪                   ⎡                ⎛             ⎛ t2 −   t ⎞ ⎞⎤
            ⎪ x n + k ⋅ u max ⋅ ⎢ t 2 − t + T 2 ⎜⎜ 1 − exp ⎜⎜ T           ⎟⎟ ⎟ ⎥ , при
                                                                             ⎟              t1 < t ≤ t 2 ,
            ⎪⎩                  ⎣⎢               ⎝             ⎝    2      ⎠ ⎠ ⎦⎥
                ⎧                ⎛               ⎛        t ⎞ ⎞⎟
                ⎪ k ⋅ u max ⋅ ⎜⎜ 1 − exp ⎜⎜ −                ⎟ ,          при            0 ≤ t < t1 ,
                ⎪                ⎝               ⎝      T 1 ⎟⎠ ⎟⎠
x 2 (t ) = ⎨                                                                                                 (6.28),
                ⎪                ⎛         ⎛ t2 − t ⎞             ⎞
                                 ⎜                       ⎟⎟ − 1 ⎟ ,
                ⎪ k ⋅ u max ⋅ ⎜ exp ⎜⎜ T                          ⎟       при            t1 < t ≤ t 2 .
                ⎩                ⎝         ⎝       2      ⎠       ⎠

     Для заданных значений параметров и найденных значений t1 и t 2 с помощью
компьютера вычислены значения x1 (t ) и x2 (t ) в некоторых точках.
              6.3 Программная реализация аналитических моделей

     Расчет переходного процесса для оптимального управления производится с
помощью следующей M-функции:

function [X,DX] = OptUpr(T1,T2,k,Umax,Xn)
%
%-- ФУНКЦИЯ ДЛЯ РАСЧЕТА ПЕРЕХОДНОГО ПРОЦЕССА
%--         ОПТИМАЛЬНОГО УПРАВЛЕНИЯ:
%

%-- 1.Расчет параметров математической модели:
%

  t1 = 4.3822                   %-- время переключения управления;
  t2 = 5.2135                   %-- время перехода системы в конечную точку;

%
%-- 2.Задание временных точек:
%

  t = [0.0000 0.8764 1.7529 2.6293 3.5058 4.3822 4.5484 4.7147 4.8810…
       5.0472 5.2135];
%
%-- 3.Расчет управляемой величины:
%

  for i = 1:1:11
    if t(i) <= t1
       X(i) = k*Umax*t(i)+k*Umax*T1*(exp(-t(i)/T1)-1);
     else
       X(i) = Xn+k*Umax*(t2-t(i)+T2-T2*exp((t2-t(i))/T2));
     end
                                                             142