- •Министерство образования и науки Российской Федерации
- •Введение
- •1 Параметры и динамическая модель исследуемого привода. Выбор методов синтеза
- •Выводы по первому разделу
- •2 Синтез регулятора тока методом желаемых лачх
- •2.1 Краткая теория вопроса
- •2.1.1 Динамическая модель контура тока
- •2.1.2 Метод желаемых лачх
- •2.2 Синтез регулятора тока с помощью программыAmLahx
- •2.2.1 Построение лачх объекта управления
- •2.2.2 Построение желаемой лачх
- •2.2.3 Графическое вычитание из лачх разомкнутой системы лачх объекта управления и получение таким образом лачх регулятора.
- •2.2.4 Определение передаточной функции регулятора по его лачх.
- •2.2.5 Реализация регулятора тока на операционных усилителях
- •2.3AmLahx— программа построения асимптотических лачх и синтеза регуляторов методом желаемых лачх
- •2.3.1 Общие сведения о программе
- •2.3.2 Командная строка программы
- •2.3.3 Режимы работы программы и пример расчета
- •Выводы по второму разделу
- •3 Синтез регулятора скорости
- •3.1 Синтез регулятора скорости методом двупараметрического расширенного d-разбиения
- •3.2 Синтез регулятора скорости методом афи-коррекции
- •3.2.1 Критериальная стратегия синтеза
- •3.2.2 Проведение низкочастотной коррекции
- •3.2.3 Проведение среднечастотной коррекции
- •3.3. Сравнение качества регуляторов скорости синтезированных с помощью двух методов
- •Выводы по третьему разделу
- •4 Имитационное моделирование
- •Выводы по четвертому разделу
- •5 Расчет устройства, обеспечивающего инвариантность системы к моменту сопротивления
- •Выводы по пятому разделу
- •Заключение
- •Список использованных источников
- •Приложение а. Текст программы AmLahx 0.1
- •Приложение b. Текст программы синтеза регулятора методом двупараметрического rd-разбиения
Приложение b. Текст программы синтеза регулятора методом двупараметрического rd-разбиения
restart:Digits:=5:kdt:=0.512;CmF:=1.116;CeF:=0.314;
Wrt:=0.1894*(0.05*s+1)*(0.01*s+1)/(0.011378*s^2+0.15083*s+0.488);Wr:=1/(0.2*s);
Wtp:=22/(0.05*s+1);Wya:=0.24/(0.01*s+1);
Wrkt :=Wya*Wrt*Wtp;
Wkt:=simplify(Wrkt/(1+kdt*Wrkt));
Woy1:=Wkt*CmF*Wr;
Woy:=simplify(Woy1/(1+Woy1*CeF/(Wrt*Wtp)));
Moy:=numer(Woy);Noy:=denom(Woy);
kooc:=0.01: # коэффициент ООС
eta:=1.502:m:=0.366:delta:=eta/m: # показатели качества
rds:=s=a+(sqrt(-1))*omega:ak:=a=-(eta*delta/(omega+delta)+m*omega):
df:=-(eta*delta/(omega+delta)+m*omega):
Wp:=k1+k2/s: # ПФ регулятора
glur:=k1*Moy*kooc*s+k2*Moy*kooc+Noy*s: # ХП ЗСУ в общем виде
Nj:=expand(simplify(subs(rds,glur))):
Imnj:=coeff(Nj,I):
Renj:=simplify(Nj-Imnj*I):
Opr:=subs(ak,omega=0,Renj); # уравнение особой прямой
x1:=coeff(Renj,k1):y1:=coeff(Renj,k2):z1:=-simplify(Renj-x1*k1-y1*k2):
x2:=coeff(Imnj,k1):y2:=coeff(Imnj,k2):z2:=-simplify(Imnj-x2*k1-y2*k2):
with(linalg):
d:=det(array(1..2,1..2,[[x1,y1],[x2,y2]])): # главный определитель
dk1:=det(array(1..2,1..2,[[z1,y1],[z2,y2]])): # определитель для k1
dk2:=det(array(1..2,1..2,[[x1,z1],[x2,z2]])): # определитель для k2
dk1w:=expand(subs(ak,dk1)):
dk2w:=expand(subs(ak,dk2)):dw:=simplify(expand(subs(ak,d))):
plot([dk1w/dw,dk2w/dw,omega=-3.1..7]):#,numpoints=1000):
s2:=plot([dk1w/dw,dk2w/dw,omega=-3.1..6.4],numpoints=1000):
k2u:=solve(Opr=0,k2);s3:=plot(k2u,k1=30..80):
display({s3,s2}): # строим годограф
new:=subs(k1=8,k2=20,glur):sdf:=solve(new,s); # находим корни ХП ЗСУ
poin:=[[Re(sdf[i]),Im(sdf[i])] $i=1..5];
Ws:=simplify(Wp*Woy/(1+Wp*Woy*kooc)); # ПФ ЗСУ в общем виде
Wsk:=subs(k1=8,k2=20,Ws);
h:=inttrans[invlaplace](%/s,s,t); # строим реакцию на
plot(h,t=0..5); # ступенчатое воздействие
poin:=[[Re(sdf[n]),Im(sdf[n])] $n=1..5];
as1:=plot([df,omega,omega=0..20]):as2:=plot([-eta,omega,omega=0..20]): as3:=plot([-*omega,omega,omega=0..20]):as4:=plot(poin,style=point):display({as1,as2,as3,as4}):
sdf:=solve(subs(k1=40,k2=120,glur),s); # поиск области качества
kol:=0:
for i from 1 to 5 do
if (Re(sdf[i]) >= subs(omega=abs(Im(sdf[i])),df))
then kol:=kol+1; end if;
end do;
printf("Количество некачественных корней = %d\n",kol);