Система автоматизированного проектирования дискретных систем управления
Нормированные характеристики систем управления, алгоритм автоматизированного синтеза. Мероприятия по обеспечению оптимальных условий труда. Расчет и сопоставление эксплуатационных расходов. Расчётная схема системы с цифровым устройством управления.
Рубрика | Производство и технологии |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 22.09.2018 |
Размер файла | 5,9 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
4.Открываем скрипт программы и указываем путь к файлу“ДСУ”
5.Выбираем файл “ДСУ”программы проектирования
6.После выбора файла на экране монитора появится скрипт программы.Скрипт необходимо запустить.
7.Ввод данных для расчета цифрового устройства управления.
Этот пункт алгоритма выполняется в следующей последовательности:
§ Вводится степень знаменателя- n
§ Вводятся коэффициенты полинома знаменателя
c 1-го по (n+1)-й(А1,А2,…Аn)
§ Вводится степень числителя- m
§ Вводятся коэффициенты полинома числителя c 1-го по (m+1)-й(В1,В2,…Вm)
§ Вводится желаемое время регулирования- tp
§ Вводитсяжелаемый период квантования -Т
§ Вводитсязаданный порядок астатизма к задающему воздействию -vg
8.После ввода всех необходимых данных нажимаем клавишу Enter. Происходит автоматический расчёт перехода от НОУ к дискретной модели и определяется степень знаменателя желаемой передаточной функции непрерывной системы. По окончании расчета на экране монитора появляются предлагаемые программной коэффициенты знаменателя подходящих нормированных передаточных функций. Оператор выбирает наилучшие, по его мнению, коэффициенты, путем нажимания кнопки, соответствующей номеру выбранной строки с коэффициентами знаменателя.
9.После выбора необходимых коэффициентов происходит автоматический расчет желаемой передаточной функции дискретной системы, а затем решение системы алгебраических уравнений, которые определяют численные коэффициенты 3-х уравнений ЦУУ.
10.Три типа рассчитанных в зависимости от вида измеряемых переменных уравнений ЦУУвыводится на экран монитора, как показано влевой части следующего рисунка:
11.Далее программа автоматически выводит приведенную ниже переходную функцию синтезированной ДСУ.
Блок-схема программы проектирования ДСУ
Листинг программы
% Ввод непрерывной части и требуемых показателей качества
disp('-----Ввод передаточной функции непрерывной части системы------');
View('Wn.txt')
n=input('Введите степень знаменателя n ');
if n>8
error('Программа написана для n<=8');
end;
An=zeros(1, n+1);
disp('Введите коэффициенты полинома знаменателя');
for i=1:(n+1)
str=['A(' int2str(i) ')='];
An(i)=input(str);
end
m=input('Введитестепеньчислителяm ');
Bn=zeros(1, m+1);
ifm>=n
error('Степень числителя должна быть меньше степени знаменателя');
end;
disp('Введите коэффициенты полинома числителя');
for i=1:(m+1)
str=['B(' int2str(i) ')='];
Bn(i)=input(str);
end;
disp('------Ввод требуемых параметров системы управления------');
T=input('Период квантования, Т = ');
%sigma=input('Перерегулирование, sigma = ');
nyu0=input('Требуемый порядок астатизма (1 или 2), nyu0 = ');
tp=input('Время регулирования, tp = ');
% Переход от НОУ к дискретной модели
Wn=tf(Bn,An)
Wd=c2d(Wn,T,'zoh')
[B,A]=tfdata(Wd,'v');
n=length(A)-1;
ms=0;
for i=1:n
if B(i)==0
ms=ms+1;
else
break
end
end
m=n-ms;
B=B(ms+1:n+1);
betam=B(1);
B0=B/betam;
b=roots(B);
fori=1:m
ifabs(b(i))>=1
error('Непрерывная часть не является минимальнофазовой')
end
end
a=roots(A);
e=0.0001;
Awave=A;
pol1=[1 -1];
Avsp=[1];
nyu1=0;
for i=1:n
if abs(a(i)-1)<=e
[Awave,ost]=deconv(Awave,pol1);
Avsp=conv(Avsp,pol1); %(z-1)^nyu1
nyu1=nyu1+1;
end
end
% Синтез желаемой передаточной функции
disp(' -------Выбор коэффициентов нормированной передаточной функции-------');
if nyu0==1
if n==1
View('Delta11.txt')
disp('Для продолжения нажмите любую клавишу');
pause
delta=[1 1];
tpm=3;
end
if n==2
View('Delta12.txt')
vibor=menu(' Выборкоэффициентов Wж(p)','1','2','3','4' );
switch vibor
case 1
delta=[1 2 1];
tpm=4.75;
case 2
delta=[1 1.38 1];
tpm=2.86;
case 3
delta=[1 1.41 1];
tpm=2.92;
case 4
delta=[1 1.82 1];
tpm=4.82;
otherwise
error('Ошибкаввода')
end
end
if n==3
View('Delta13.txt')
vibor=menu(' Выборкоэффициентов Wж(p)','1','2','3','4' );
switch vibor
case 1
delta=[1 3 3 1];
tpm=6.31;
case 2
delta=[1 2.05 2.39 1];
tpm=4.34;
case 3
delta=[1 2 2 1];
tpm=5.89;
case 4
delta=[1 1.9 2.2 1];
tpm=4.04;
otherwise
error('Ошибкаввода')
end
end
if n==4
View('Delta14.txt')
vibor=menu(' Выборкоэффициентов Wж(p)','1','2','3','4' );
switch vibor
case 1
delta=[1 4 6 4 1];
tpm=7.7;
case 2
delta=[1 2.6 3.8 2.8 1];
tpm=4.6;
case 3
delta=[1 2.613 3.414 2.613 1];
tpm=6.86;
case 4
delta=[1 2.2 3.5 2.8 1];
tpm=4.81;
otherwise
error('Ошибкаввода')
end
end
if n==5
View('Delta15.txt')
vibor=menu(' Выборкоэффициентов Wж(p)','1','2','3','4' );
switch vibor
case 1
delta=[1 5 10 10 5 1];
tpm=9.2;
case 2
delta=[1 2.6 5.3 5.46 3.64 1];
tpm=5.7;
case 3
delta=[1 3.236 5.236 5.236 3.236 1];
tpm=7.70;
case 4
delta=[1 2.7 4.9 5.4 3.4 1];
tpm=5.43;
otherwise
error('Ошибкаввода')
end
end
if n==6
View('Delta16.txt')
vibor=menu(' Выборкоэффициентов Wж(p)','1','2','3' );
switch vibor
case 1
delta=[1 6 15 20 15 6 1];
tpm=10.5;
case 2
delta=[1 3.73 8.0 10.3 8.56 4.18 1];
tpm=6.22;
case 3
delta=[1 3.15 6.5 8.7 7.55 4.05 1];
tpm=6.04;
otherwise
error('Ошибкаввода')
end
end
if n==7
View('Delta17.txt')
vibor=menu(' Выборкоэффициентов Wж(p)','1','2' );
switch vibor
case 1
delta=[1 7 21 35 35 21 7 1];
tpm=11.9;
case 2
delta=[1 2.75 8.11 11.7 14.27 10.3 4.86 1];
tpm=7.04;
otherwise
error('Ошибкаввода')
end
end
if n==8
View('Delta18.txt')
vibor=menu(' Выборкоэффициентов Wж(p)','1','2' );
switch vibor
case 1
delta=[1 8 28 56 70 56 28 8 1];
tpm=13.1;
case 2
delta=[1 4.67 12.87 22.78 28.46 24.84 14.86 5.5 1];
tpm=7.7;
otherwise
error('Ошибкаввода')
end
end
end
if nyu0==2
if n==2
View('Delta22.txt')
disp('Для продолжения нажмите любую клавишу');
pause
delta=[1 2.5 1];
tpm=3.6;
end
if n==3
View('Delta23.txt')
disp('Для продолжения нажмите любую клавишу');
pause
delta=[1 5.1 6.35 1];
tpm=7.0;
end
if n==4
View('Delta24.txt')
disp('Для продолжения нажмите любую клавишу');
pause
delta=[1 7.2 16.3 11.8 1];
tpm=12;
end
if n==5
View('Delta25.txt')
disp('Для продолжения нажмите любую клавишу');
pause
delta=[1 9 29 38 18 1];
tpm=18;
end
if n==6
View('Delta26.txt')
disp('Для продолжения нажмите любую клавишу');
pause
delta=[1 11 45.8 92.3 82.3 27.7 1];
tpm=25;
end
if n==7
View('Delta27.txt')
disp('Для продолжения нажмите любую клавишу');
pause
delta=[1 12.7 40.2 106.7 165 118.5 33.6 1];
tpm=29;
end
if n==8
View('Delta28.txt')
disp('Для продолжения нажмите любую клавишу');
pause
delta=[1 12 48.5 129.6 225 238.6 151 34.7 1];
tpm=37;
end
end
% Дискретная желаемая модель системы
w0=tpm/(tp-T);
for i=1:n+1
Nzn(i)=delta(i)*w0^(i-1);
end
if nyu0==1
Nch=Nzn(n+1);
end
if nyu0==2
Nch=[Nzn(n) Nzn(n+1)];
end
Wnorm=tf(Nch,Nzn)
Wish=c2d(Wnorm,T,'zoh')
[H0,H]=tfdata(Wish,'v');
eta=length(H)-1;
es=0;
for i=1:eta
if H0(i)==0
es=es+1;
else
break
end
end
eta0=eta-es;
H0=H0(es+1:eta+1);
H0
H
nyu=max(nyu0-nyu1,0);
k=eta0-m+1;
myu=n+nyu-eta0;
rwave=n-m;
lwave=n+nyu-1;
r=n+nyu;
d=eta+myu+k-1;
pol2=[1 0];
D=H;
for i=1:(myu+k-1)
D=conv(D,pol2);
end
D
d=length(D)-1;
Avsp=A;
Aline=A;
for i=1:nyu
Aline=conv(Avsp,pol1);
Avsp=Aline;
end
Aline
nline=length(Aline)-1;
% Решениесистемыалгебраическихуравнений
matr1=betam*eye(lwave+1);
matr2=zeros(rwave+1,lwave+1);
matr3=[matr1; matr2];
for i=1:rwave+1
for j=1:nline+1
matr4(j+i-1,i)=Aline(nline+2-j);
end
end
MATRICA=[matr3 matr4]
for i=1:d+1
D0(i)=D(d+2-i);
end
D=D0';
lr=MATRICA\D;
% Составление уравнения ЦУУ с численными коэффициентами
Lwave=lr(1:lwave+1);
for i=1:lwave+1
L0(i)=Lwave(lwave+2-i);
end
Lwave=L0;
L=conv(Lwave,pol2);
l=length(L)-1;
Rwave=lr(lwave+2:lwave+rwave+2);
for i=1:rwave+1
R0(i)=Rwave(rwave+2-i);
end
Rwave=R0;
R=conv(B0,Rwave);
for i=1:nyu
R=conv(R,pol1);
end
Q=H0/betam;
for i=1:myu
Q=conv(Q,pol2);
end
q=length(Q)-1;
Qmod=deconv(Q,pol2);
Lmod=deconv(L,pol2);
disp('-----УравнениеЦУУсчисленнымикоэффициентамиимеетвид------');
% Уравнение ЦУУ при измерении g и y
zer1=zeros(1,r-q);
zer2=zeros(1,r-l);
Q1=[zer1, Q];
L1=[zer2, L];
str=[];
for i=1:length(R)
str1=[];
if R(i)>0
if i==1
str1=[num2str(R(i))];
else
str1=['+',num2str(R(i)) '*z^(' int2str(1-i),')'];
end
end
if R(i)<0
str1=[num2str(R(i)) '*z^(' int2str(1-i),')'];
end;
str=[str, str1];
end
Rstr=str;
str=[];
for i=1:(length(Q1)-1)
str1=[];
if Q1(i)>0
if i==1
str1=[num2str(Q1(i)) '*z^(' int2str(-i),')'];
else
str1=['+',num2str(Q1(i)) '*z^(' int2str(-i),')'];
end
end
if Q1(i)<0
str1=[num2str(Q1(i)) '*z^(' int2str(-i),')'];
end;
str=[str, str1];
end
Qstr=str;
str=[];
for i=1:(length(L1)-1)
str1=[];
if L1(i)>0
if i==1
str1=[num2str(L1(i)) '*z^(',int2str(-i),')'];
else
str1=['+',num2str(L1(i)),'*z^(' ,int2str(-i),')'];
end
end
if L1(i)<0
str1=[num2str(L1(i)) '*z^(',int2str(-i),')'];
end;
str=[str, str1];
end
Lstr=str;
disp('1. Если измеряются g и y, то уравнение ЦУУ выглядит следующим образом:');
S1=['(',Rstr,')*u(z) = (',Qstr,')*g(z) - (',Lstr,')*y(z)']
% Уравнение ЦУУ при измерении eps и y
str=[];
for i=1:(length(L1)-1)
str1=[];
if L1(i)>0
if i==1
str1=[num2str(L1(i)-Q1(i)) '*z^(',int2str(-i),')'];
else
str1=['+',num2str(L1(i)-Q1(i)),'*z^(' ,int2str(-i),')'];
end
end
if L1(i)<0
str1=[num2str(L1(i)-Q1(i)) '*z^(',int2str(-i),')'];
end;
str=[str, str1];
end
LQstr=str;
disp('2. Если измеряются eps и y:');
S2=['(',Rstr,')*u(z) = (',Qstr,')*eps(z) - (',LQstr,')*y(z)']
% Уравнение ЦУУ при измерении eps и g
disp('3. Если измеряются eps и g:');
S3=['(',Rstr,')*u(z) = (',Lstr,')*eps(z) - (',LQstr,')*g(z)']
% Построение графика переходного процесса
C0=conv(B,Q);
C0=deconv(C0,B0);
C1=conv(conv(pol2,R),A);
C2=conv(B,L);
zer=zeros(1,abs(length(C1)-length(C2)));
if length(C1)<length(C2)
C1=[zer,C1];
end
if length(C2)<length(C1)
C2=[zer,C2];
end
C=C1+C2;
C=deconv(C,B0);
gamma=length(C)-1;
Croot=roots(C);
Cvsp=C;
f=0;
for i=1:gamma
[Cvsp,ostC]=deconv(Cvsp, pol2);
if ostC==0
f=f+1;
else
break
end
end
gamma0=length(C0)-1;
C0root=roots(C0);
C0vsp=C0;
f0=0;
for i=1:gamma0
[C0vsp,ostC0]=deconv(C0vsp, pol2);
if ostC0==0
f0=f0+1;
else
break
end
end
C=C(1:gamma+1-min(f,f0));
gamma=length(C)-1;
C0=C0(1:gamma0+1-min(f,f0));
gamma0=length(C0)-1;
graf=tf(C0,C,T);
step(graf,'b',3*tp), grid on
title('График переходного процесса')
Стандартные нормированные передаточные функции
Поря-док аста- тизма, |
Сте- пень знаме- нателя, |
Коэффициенты |
Пере- регу- лиро- вание, |
Время регу- лиро- вания, |
||||||
1 |
2 |
1 |
2 |
1 |
нет |
4,75 |
||||
3 |
1 |
3 |
3 |
1 |
нет |
6,31 |
||||
4 |
1 |
4 |
6 |
4 |
1 |
нет |
7.7 |
|||
5 |
1 |
5 |
10 |
10 |
5 |
1 |
нет |
9,2 |
||
1 |
1 |
1 |
1 |
нет |
3 |
|||||
2 |
1 |
1,38 |
1 |
5 |
2,86 |
|||||
3 |
1 |
2,39 |
2,05 |
1 |
нет |
4,34 |
||||
4 |
1 |
2,8 |
3,8 |
2,6 |
1 |
5 |
4,6 |
|||
5 |
1 |
3,64 |
5,46 |
5,3 |
2,6 |
1 |
нет |
5,7 |
||
1 |
1 |
1 |
1 |
нет |
3 |
|||||
2 |
1 |
1,41 |
1 |
4 |
2,92 |
|||||
3 |
1 |
2 |
2 |
1 |
8 |
5,89 |
||||
4 |
1 |
2,613 |
3,414 |
2,613 |
1 |
11 |
6,86 |
|||
5 |
1 |
3,236 |
5,236 |
5,236 |
3,236 |
1 |
13 |
7,70 |
||
2 |
1 |
1 |
1 |
нет |
3 |
|||||
2 |
1 |
2,5 |
1 |
10 |
3,6 |
|||||
3 |
1 |
6,35 |
5,1 |
1 |
10 |
7,0 |
||||
4 |
1 |
11,8 |
16,3 |
7,2 |
1 |
10 |
12 |
|||
5 |
1 |
18 |
38 |
29 |
9 |
1 |
10 |
18 |
||
3 |
3 |
1 |
6,7 |
6,7 |
1 |
10 |
1,52 |
|||
4 |
1 |
7,9 |
15 |
7,9 |
1 |
20 |
4,4 |
|||
5 |
1 |
18 |
69 |
69 |
18 |
1 |
20 |
8,6 |
Размещено на Allbest.ru
Подобные документы
Основные определения процесса проектирования, его системы, стадии и этапы. Системы автоматизации подготовки производства, управления производством, технической подготовки производства, оценка их практической эффективности. Структура и разновидности САПР.
курсовая работа [109,4 K], добавлен 21.12.2010Основные цели автоматизированного проектирования. Программное и техническое обеспечение для инженера конструктора швейных изделий на предприятии средней мощности, выпускающего женские костюмы. Автоматизация процессов учета, планирования и управления.
контрольная работа [15,8 K], добавлен 02.10.2013Исследование условий работы ленточного конвейера и требований, предъявляемых к проектируемому приводу. Обзор и анализ систем электропривода и структур систем управления им. Выбор двигателя и тиристорного преобразователя. Расчёт мощности, натяжения ленты.
контрольная работа [901,2 K], добавлен 24.03.2013Классификация моделей по типу отражаемых свойств средств управления. Этапы математического моделирования. Уровни и формы математического описания для системы управления летательного аппарата. Линейная модель многомерных систем в пространстве состояний.
презентация [600,0 K], добавлен 27.10.2013Описание технологического процесса обезжелезивания и деманганации воды. Цели создания и внедрения системы автоматизированного управления насосными агрегатами, ее структурные уровни. Расчет и выбор элементов силовой части и системы защиты электропривода.
дипломная работа [3,0 M], добавлен 30.01.2013Особенности применения САПР "Comtence" и "Еleandr"с целью построения базовых основ деталей швейных изделий с использованием методик конструирования. Сравнение программных компонентов изучаемых промышленных систем автоматизированного проектирования.
контрольная работа [1,3 M], добавлен 08.12.2011Пропорциональный гидравлический распределитель. Расчет характеристик движения для привода с гидравлическим цилиндром. Проектирование электрогидравлической схемы. Разработка системы управления стендом, его структура и назначение, управляющая программа.
курсовая работа [1,9 M], добавлен 20.05.2014Краткое описание и характеристики современных гибких производственных систем. Определение характеристик автоматизированного склада систем механообработки корпусных деталей. Расчет потребного числа позиций загрузки, разгрузки и контрольных позиций.
контрольная работа [2,1 M], добавлен 14.05.2011Анализ автогенных процессов в цветной металлургии. Характеристика технологического процесса как объекта управления. Разработки системы оптимального управления технологическим процессом плавки в печи Ванюкова в условиях медеплавильного завода "Балхашмыс".
дипломная работа [762,5 K], добавлен 25.02.2014Обзор дозирующих устройств. Информационная структура объекта управления. Программа управления дозатора технологических растворов. Назначение, состав и технические характеристики контроллера универсального "Каскад". Программное обеспечение установки.
дипломная работа [4,8 M], добавлен 26.08.2010