Мегаобучалка Главная | О нас | Обратная связь


Алгоритмическое и программное обеспечения АСУТП



2020-03-17 265 Обсуждений (0)
Алгоритмическое и программное обеспечения АСУТП 0.00 из 5.00 0 оценок




Алгоритм нахождения экстремума целевой функции методом наискорейшего спуска

Алгоритм включает следующие предписания (рис.15):

вводятся исходные данные, x (i) которые определятся из математической модели [5], количество входных переменных x (i) - k, величина шага-h, заданной точности поиска-ε, значения величины изменения аргумента при нахождения частных производных-dx, cчетчик шагов в начальный момент должен быть равен единице (n=1), так как до начала итерационных процедур требуется один раз рассчитать функцию цели-Fц0=GZnкр, которая определяется из математической модели [1];

производится расчет частных производных, для чего осуществляется организация цикла попеременного расчета частных производных k-мерной функции (i=1,k);

производится поочередное изменение аргумента x (i) на величину - dx;

производится расчет целевой функции при измененном аргументе - Fц1, а счетчик - n увеличивает свое значение на единицу;

рассчитывается и запоминаются величины изменения функции - dF (i), для соответствующей i-ой координаты, осуществляется возврат в исходную точку i-ой координаты: x (i) - dx, после завершения расчета частной производной по-х (1) производятся аналогичные действия по другим;

рассчитываются изменения x (i), противоположно направлению градиента, в соответствии со стратегией (37), где dF (i) /dx - есть частная производная по i-ой координате;

производится расчет функции цели в новой точке, а счетчик шагов увеличивается еще на одну единицу;

производится расчет критерия окончания поиска - Е;

осуществляется сравнение величины критерии Е с заданной точностью ε, если значение Е достигло заданной точности, то выводятся результаты поиска, в противном случае происходит сравнение вновь рассчитанного значения целевой функции F с ее значением на предыдущем шаге - Fц0.

Так как метод ищет минимум, а нам нужно максимальное значение Fц0=GZnкр, шаг считается удачным и продолжается поиск вдоль прежнего направления градиента, производится переприсвоение нового значения функции цели переменной - Fц0, если новое значение целевой функции больше предыдущего. В случае неудачи, производится поиск нового направления градиента.

Программа реализации алгоритма метода наискорейшего спуска:

 

function f=mns (x1,.,xk,k,dx,e,h,n=1)

n=1; x (1) =x1. x (k) =xk;

Fц0= GZnкр; flag1=1;

while flag1==1

for i=1: 2

x (i) =x (i) +dx;

Fц1= GZnкр;

n=n+1; x (i) =x (i) - dx; dF (i) =F1-F0;

end

flag2=1;

while flag2==1

for i=1: 2

x (i) =x (i) - h* (dF (i) /dx);

end

Fц=GZnкр; n=n+1;

E=abs (dF (1) +dF (2));

if E>e

if Fц>Fц0

F=F0; flag2=1;

else

flag2=0; flag1=1;

end

flag1=0;

end end


Otvx1=x (1)

Otvxk=x (k)

OtvF= Fц

end

 

Рис.15. Блок-схема алгоритма поиска методом наискорейшего спуска

 

Алгоритм расчета параметров настройки регулятора

Алгоритм включает следующие предписания (рис.16):

- вводятся значения Коб, τоб, Тоб,m,w=0;

- вычисляются значения вещественного и мнимого составляющего числителя и знаменателя передаточной функций объекта регулирования BR, BQ, AR, AQ;

- вычисляются значения вещественной и мнимой части АФХ объекта Rоб, Qоб;

- вычисляются значения настроечных параметров регулятора Кр, S и выводятся результаты;

- дается приращение значению частоты w=w+0.005;

- вычисления производятся для каждого нового значения частоты пока оно не равно 0,05;

- выводятся результаты вычислений Кр, S, w.

По значениям Кр и S для каждого w [0: 0.05,0.005] строятся линии равные степени затухания m=0, m=0.366 (см раздел по разработке системы стабилизации рисунок 8) и выбирается точка, соответствующая оптимальным значениям и , которая лежит несколько правее максимума линии равного затухания.

Программа реализации данной блок-схемы на Matlab:

 

function S_K (k,t,m,T,w)

n=1;

while w<0.05

Br=k*exp (t*m*w) *cos (t*w);

Bq=-k*exp (t*m*w) *sin (t*w);

Ar=1-T*m*w;

Aq=T*w;

R= (Br*Ar+Bq*Aq) / (Ar^2+Aq^2);

Q= (Bq*Ar-Br*Aq) / (Ar^2+Aq^2);

K=- (m*Q+R) / (R^2+Q^2);

S=-w* (m^2+1) *Q/ (R^2+Q^2);

masK=K;

masS=S;

w=w+0.005;

n=n+1;

K

S

hold on

plot (masK,masS)

w

end

Kp=K

Sp=S

 

end

 

Рис.16. Блок схема алгоритма нахождения значений настроек регулятора

 


Алгоритм расчета переходного процесса

Алгоритм включает следующие предписания (рис.17):

- вводятся значения Кобоб, Тоб, Кр,Sр, Т, хвых, хзад, С=0,n=0;

- вычисляется значение отклонения регулируемой величины Δхвых;

- значение управляющего воздействия μ за время запаздывания τ объекта;

- вычисляются значения управляющего воздействия μ и выходной переменной объекта хвых на каждом моменте времени до времени Т, пока установится процесс, т.е. значение выходной переменной не станет приблизительно равной значению хзад.

По результатам вычислений строится переходная характеристика процесса (см раздел по разработке системы стабилизации рис.9).

Программа реализации данного алгоритма на Matlab:

 

function per_pro (y,yz,T,dt,r)

a= [1: p];

k=2.5; K=0.68; S=0.016; T=60; t=26; C=0; i=1;

while i<=t

n=0; dy=y-yz;

while n<r

C=C+S*dy*dt; n=n+1;

end

m (i) =- (C+K*dy);

y1 (i) =y i=i+1;

end

for i=t+1: p

n=0; dy=y-yz;

while n<r

C=C+S*dy*dt; n=n+1;

end

m (i) =- (C+K*dy); n=0;

while n<r

 

Dy=1/T* (k*m (i-t) - y) *dt;

y=y+Dy; n=n+1;

end

y1 (i) =y i=i+1;

m; y1;

end

plot (a,y1)

end

 


 

Рис.17. Блок-схема алгоритма расчета переходного процесса



2020-03-17 265 Обсуждений (0)
Алгоритмическое и программное обеспечения АСУТП 0.00 из 5.00 0 оценок









Обсуждение в статье: Алгоритмическое и программное обеспечения АСУТП

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация...
Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (265)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)