Оптимизация по быстродействию и по расходу электроэнергии
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
равления является определение количества интервалов управления и их длительности.
Рис. 1.1 - Вид управляющего воздействия, его влияние на изменение координат
Из вспомогательной системы уравнений относительно вектор-функции
можно получить дифференциальное уравнение, согласно которому будет определяться вид и число интервалов управляющего воздействия
Так как это уравнение во многом похоже на дифференциальное уравнение объекта управления (1.7), то для его решения можно использовать корни характеристического уравнения объекта управления. От вида корней будет зависеть общий вид функции ?2(t), а значит и количество интервалов управления.
Характеристическое уравнение для (1.7) и его корни выглядят следующим образом:
Так как в данном случае корни характеристического уравнения являются комплексными числами, то на конечном интервале времени функция ?2(t) будет пересекать ось времени ограниченное количество раз, но установить это количество моментов переключения в общем случае невозможно, так как оно зависит от граничных значений регулирования ?0 и ?k (значений x10 и x20 в фазовых координатах).
Однако известно, что при ограничении значений регулирования и и релейном законе управления количество интервалов закона оптимального управления по быстродействию не превышает двух. На первом интервале , а на втором .
Для первого интервала управления :
(1.21)
(1.22)
Так как , то
Из второго уравнения для получаем , а значит . В результате после подстановки коэффициентов уравнения (1.21) и (1.22) принимают вид:
(1.23)
(1.24)
Для определения переменных состояния на втором интервале управления используется принцип обратного движения, который заключается в рассмотрении движения точки фазовых координат объекта от конца его траектории к началу, что позволяет использовать для вычислений конечные координаты объекта управления как начальные координаты интервала управления. Но после проведения необходимых вычислений нужно изменить знак времени t на противоположный для сохранения правильного направления движения.
В результате для второго интервала управления :
(1.25)
(1.26)
Так как , то
Из второго уравнения для получаем , а значит . В результате после подстановки коэффициентов и изменения знака времени t на противоположный уравнения (1.25) и (1.26) принимают вид:
(1.27)
(1.28)
При изменении величины управляющего воздействия с на координаты x1(t) и x2(t) не получают разрыва, так как не могут измениться мгновенно. Если длительность первого интервала управления обозначить как t1, а длительность второго интервала - t2 и подставить время t1 в уравнения (1.23) и (1.24), а время t2 - в уравнения (1.27) и (1.28), то мы получим возможность приравнять соответствующие уравнения обоих интервалов управления, так как в этом случае оба набора уравнений будут описывать одну и ту же точку фазового пространства - момент переключения, в котором происходит изменение закона управляющего воздействия с на .
Составим систему уравнений для определения интервалов t1 и t2.
Так как эти уравнения являются трансцендентными, то решить их аналитически в общем случае не представляется возможным. Для решения подобных уравнений необходимо использовать численные методы. В пакете MatLab существует целый набор функций, использующих для решения уравнений численные методы. Для решения системы уравнений и определения временных интервалов оптимального управления используем функцию fsolve(). Эта функция позволяет найти решение уравнений и систем уравнений любого вида (как линейных, так и нелинейных). Уравнения обязательно должны быть приведены к виду F(x1…xn) = 0, то есть в правой части уравнений обязательно должен быть нуль. Для получения результатов расчета системы необходимо вызвать функцию следующим образом:
[T]= fsolve( @Nekit_func1,[0,0], foptions ),(1.29)
Где @Nekit_func1 - ссылка на М-функцию, в которой указывается уравнение или
система уравнений, подлежащие решению.
[0,0] - массив начальных приближений, используемый для расчета неизвестных системы; количество значений соответствует количеству неизвестных.
foptions - переменная системы, используемая для внутренних расчетов
[T] - матрица выходных данных, в которую будут помещены результаты расчета; количество элементов соответствует количеству неизвестных системы.
Решаемая система уравнений указана в М-функции Nekit_func1, записанной в одноименном М-файле Nekit_func1.m . Текст функции Nekit_func1:
function F = Nekit_func1(T)=exp(-0.5*T(1)).*(1.8*cos(0.76*T(1))+1.184*sin(0.76*T(1)))-1;=-1.96*exp(-0.5*T(1)).*sin(0.76*T(1));=exp(0.5*T(2)).*(-1.8*cos(0.76*T(2))+1.184*sin(0.76*T(2)))+1;=-1.96*exp(0.5*T(2)).*sin(0.76*T(2));= [ x11-x12;-x22];
Здесь x11 и x21 - функции x1(t) и x2(t) на первом интервале управления
x12 и x22 - функции x1(t) и x2(t) на втором интервале управления
Т(1) и Т(2) - соответственно первый и второй интервалы времени, записываемые в элементы матрицы Т; индексы матрицы указываются в скобках.
В результате выполнения функции fsolve() вида (1.29) получен следующий результат: Т(1) =2.2356 и Т(2) = 0.3608.
Это значит, что длительность первого интервала управления t1 = 2.235, а длительность второго интервала t2 =