Перейти к содержанию
    

Система задана в Симулинке блоками с дифурами (не передаточными функциями). Возможно ли в матлабе нарисовать годограф для такой системы? (Насколько я понял, nyquist рисует годограф для системы, заданной передаточной ф-ей, но это не мой случай).

Нужно все это для того, чтобы посмотреть, при каких коэффициентах есть или нет устойчивости (критерий Найквиста).

Если с годографом никак, может есть альтернативный способ решения задачи?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Система линейная.

Блоков дифуров сейчас 6, в дальнейшем м.б. больше. А разве это на что-то влияет? Ведь одно и то же нарисовать можно по-разному. Эту же систему я сначала нарисовал в виде 3-х блоков, потом для удобства каждый разбил на 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос был в том, не проще ли переписать систему в аналитическом виде в матлабе, минуя симулинк.

 

Вам может помочь Tools - Control Design - Linear Analysis. Там выбрать тип графика и сделать линеаризацию. Предварительно на схеме надо через контекстное меню выбрать входную и выходную точки линеаризации.

Но мне кажется, это сомнительный вариант для заданной аналитически системы. Я не очень представляю процесс анализа. Вводить набор параметров, строить годограф, анализировать, вводить новый набор параметров, так?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Боюсь, что не проще. Хотелось бы не "одноразово" проверить, а наладить механизм для тестирования многих подобных систем (а задавать иным способом, кроме ДУ, проблематично).

Более того, в данном случае я не представляю, как это сделать (если я правильно понял, что "в аналитическом виде" - это задать передаточной ф-ей как отношение полиномов)

 

Про Control Design - Linear Analysis пока не очень понял. Посмотрю.

 

Я не очень представляю процесс анализа. Вводить набор параметров, строить годограф, анализировать, вводить новый набор параметров, так?

Видимо, так. Только по одному параметру менять. Конечно, в идеале бы получить ответ в виде области в пространстве параметров. Но я уж об этом и не мечтаю. Хотя бы так...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я имел ввиду в виде линейной системы в матлабе. Не обязательно в виде передаточной функции, вполне сойдет и в виде пространства состояний (state space). Если ваша система линейная, то то, что вы записываете в дифуры, должно элементарно переноситься в матрицы. А затем, когда у вас есть объект системы в матлабе, с ним можно уже много чего делать, в том числе и более эффективно анализировать устойчивость.

 

Но, видимо, у вас не очень много опыта работы с матлабом вообще и с Control Systems Toolbox в частности. Киньте сюда текст двух ваших последовательных блоков дифур, я вам запишу в матричном виде, а дальше по аналгии разберетесь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но, видимо, у вас не очень много опыта работы с матлабом вообще и с Control Systems Toolbox в частности.

Это Вы очень точно подметили! :)

 

Текст двух последовательных блоков дифур:

 

1)

dx/dt=

-(kP+kI*u(1))*x(1)+k_I*(D0-x(1)-x(2))+(k_P+kR)*x(2)

kP*x(1)-(k_P+kR)*x(2)

 

x0=0, 0

 

y=wR*kR*x(2)

 

2)

dx/dt=

u(1)-(kRX+k30)*x(1)+k_30*x(2)+kQ*x(3)

k30*x(1)-(k_30+k50)*x(2)+k_50*x(3)

k50*x(2)-(k_50+kQ)*x(3)

wQ*kQ*x(3)-kQX*x(4)

 

x0=0, 0, 0, 0

 

y=x(4)

 

По-моему, главная сложность в произведении u(1)*x(1) в 1-м блоке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так подождите. Я же первый вопрос задал - линейная ли система? Если я правильно понимаю что у вас написано, а я вижу произведение входного сигнала на состояние, то система нелинейная. Для нее годограф может и не существовать. Да и понятие устойчивости для нелинейных систем существенно сложнее.

 

UPD1:

На всякий случай напишу для второго блока.

Имеем:

dx1/dt = a11*x(1) + a12*x(2) + a13*x(3) + 0*x(4) + u(1)

dx2/dt = a21*x(1) + a22*x(2) + a23*x(3) + 0*x(4)

dx3/dt = 0*x(1) + a32*x(2) + a33*x(3) + 0*x(4)

dx4/dt = 0*x(1) + 0*x(2) + a43*x(3) + a44*x(4)

y=x(4)

 

В матричном виде: dx/dt = Ax+Bu; y=Cx+Du;

a11=-(kRX+k30);
a12=k_30;
a13=kQ;
a21=k30;
a22=-(k_30+k50);
a23=k_50;
a32=k50;
a33=-(k_50+kQ);
a43=wQ*kQ;
a44=-kQX;
A=[a11 a12 a13 0;
   a21 a22 a23 0;
     0 a32 a33 0;
     0   0 a43 a44];
B=[1; 0; 0; 0];
C=[0 0 0 1];
D=0;

model=ss(A,B,C,D);

 

Все, теперь в переменной model - ваша система. Ее можно преобразовать к передаточной функции tf(model), можно проверить устойчивость isstable(model), можно построить частотные характеристики bode(model).

 

UPD2:

Последовательное соединение получается произведением элементов, параллельно - суммированием. При однонаправленном (нет обратных связей) соединении линейных систем общая система устойчива если устойчива каждая подсистема, т.е. если можно изолировать наборы параметров в отдельных подсистемах, то проще проверять отдельно устойчивость этих подсистем. Например, в рассмотренной выше подсистеме состояние x(4) можно выделить в отдельную подсистему, где на входе x(3) на выходе y=x(4). Условие устойчивости этой отдельной подсистемы kQX>0. Так как kQX больше нигде не встречается, то для этого параметра это единственное условие. И далее такими же рассуждениями по всем линейным блокам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо! Много ценного!

 

Я же первый вопрос задал - линейная ли система? … произведение входного сигнала на состояние, то система нелинейная.

Да, действительно. Я просто специально задавал вопрос математику (профессору), линейна ли такая система ДУ и поверил ему, что линейна.

 

Для нее годограф может и не существовать.

Насколько я понимаю, существование годографа <=> существование передаточной функции (меняем s на iw и получаем из одного другое). То биш, для нелинейных не существует ПФ? Казалось бы, ее можно получить, по крайней мере, эмпирически как отношение преобразования Лапласа выхода к преобразованию Лапласа входа.

 

Да и понятие устойчивости для нелинейных систем существенно сложнее.

Все же как с ней быть? С линейными кусками понятно.

А у меня, как выяснилось, нелинейная штуковина, да еще и с обратной связью. Посоветуйте хотя бы, какой tool покурить

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С нелинейными системами есть нюанс - при подаче на вход синусоидального сигнала совершенно не обязательно вы на выходе увидите синусоидальный сигнал. Далее, даже если вы и увидите что-то похожее, то отношение преобразований (Фурье) выходного и входного сигнлов на заданной частоте зависит не только от параметров системы, но и от самого входного сигнала. Соответственно, говорить о частотных характеристиках системы самой по себе особого смысла нет, можно говорить о них только для какой-то определенной группы входных сигналов.

 

Вам надо определиться, что за входные сигналы могут быть у этой системы, какой формы, каких амплитуд. И тогда анализировать поведение вашей нелинейной системы. Возможно, линеаризовать вокргу какой-то рабочей точки. Но это все такие материи, где желательно разбираться в вопросе. Кстати, частотные методы анализа устойчивости в явном виде на нелинейные системы не переносятся. И вообще с анализом нелинейных систем все несколько сложнее.

 

Посмотрите, что я писал раньше - про Tools -> Control Design -> Linear Analysis. Симулинк умеет сам лианризовывать модели. Но, предполагаю, он так же попросит от вас задать тип входного сигнала или еще как-то описать рабочую точку.

 

А какая была вообще исходная задача? Может, ее можно решить проще?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вам надо определиться, что за входные сигналы могут быть у этой системы, какой формы, каких амплитуд. И тогда анализировать поведение вашей нелинейной системы.

C точки зрения устойчивости с этим определяться не надо. Мне надо выяснить, при каких параметрах система после прекращения конечного воздействия вернется в стабильное состояние, а при каких – нет.

 

Посмотрите, что я писал раньше - про Tools -> Control Design -> Linear Analysis. Симулинк умеет сам лианризовывать модели.

Спасибо, с этим поразбираюсь. Правда не уверен, что здесь линеаризация пройдет. А разве в матлабе нет какого-нибудь нелинейного тула? Кажется, где-то когда-то натыкался. Сейчас не нахожу. Видимо, приснилось ;)

 

А какая была вообще исходная задача? Может, ее можно решить проще?

Задача биологическая. Проще – не значит лучше. Я видел, как подобные задачи решают – методом притягивания за уши с помощью функции Хилла (биологи ее очень любят). В других моделях тоже вижу недостатки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, действительно. Я так увлекся вопросом о частотных характеристиках, что забыл об исходной задаче. :)

 

Если вас интересует только поведение систем в отсутствие входного сигнала, то положите u=0 и получите в первом блоке линейную систему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не-не-не! В этом U вся соль! U это только вход одного из блоков (коих много), а не всей системы. Возможно, из модели что-то и можно выкинуть, но только не U

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тогда вы имеете нелинейную систему, поведение которой надо анализировать.

Cобсно, в этом и вопрс ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...