Мария Николова (предстои допълване на темите, превеждане на английския текст и добавяне на литературните източници)


Моделиране на резонанси. Моделиране на движение на точка. Моделиране на принудени трептения на система с една степен на свобода



страница9/10
Дата19.03.2017
Размер0.69 Mb.
#17331
1   2   3   4   5   6   7   8   9   10

Моделиране на резонанси. Моделиране на движение на точка. Моделиране на принудени трептения на система с една степен на свобода


  1. Амплитудно-честотна характеристика на принудени трептения на система с една степен на свобода без съпротивление

syms z

ezplot(1/(abs(1-z^2)),0,6)




Коеф. на динамичност (l) е отношението на амплитудата на принудените трептения към статичната амплитуда (амплитудата на системата, която се получава от статичното действие на силата). z е коефициент на разстройване. При z=1 имаме случая на резонанс- там коеф. на динамичност клони към безкрайност. При z=0 имаме в същност статично действие на силата и Коеф. на динамичност=1. При z=sqrt(2), l=1, a при z>sqrt(2), l<1, т.е. амплитудата на принудените трептения е по-малка от статичната амплитуда на силата – т.е. динамичния ефект е по-слаб от съответния статичен ефект.
2. Моделиране на движение на точка.

Задача.: Да се реши със Simulink уравнението х’(t)=-3х(t), с начално условие х(0)=1. Уравнението описва закон на неравномерно движение на точка .


За да се реши уравнението трябва да интегрираме и да умножим по -3

Схемата на Simulink е показана на фиг. 2:



Фиг.2. Схема на симулация на движение на точка


Началното условие се задава след двукратно натискане върху блока Integrator и задаване на числото 1 в Initial condition - фиг. 3

Фиг. 3
Резултат след стартиране на симулацията, двукратно щракане върху осцилоскопа и команда от десния бутон върху него Autoscale – фиг.4


фиг.4
Вижда се, че при t=0, x(0)=1.


4. Моделиране на принудени трептения на система с една степен на свобода
Задача. Да се симулира с Simulink отговорът на 3*х’’+х’+2*х=0 при начални условия х(0)=0 и х’(0)=0.25 в интервала от време 0£t£20
т.е. моделира се решението x’’(t)=- 1/3*x(t)-2/3*x(t

Задават се начални условия (след двукратно щракане върху блока integrator) за първия интегратор 0.25, а за втория – 0. Задава се в Simulation/Simulation parameter/Stop time 20. Стартира се симулацията. Резултатът е показан на осцилоскопа:


Жълтата графика е за скоростта, а лилавата – за преместването. Това се вижда и от началните стойности.


Задача. Да се симулира решението на:

mx’’(t)+cx’(t)+kx(t)=f(t) x(0)=x0 x’(0)=x’0

т.е. моделира се решението x’’(t)= -c/m*x(t)-k/m*x(t)+ f(t))


Градиент и дивергенция


Градиент във векторния анализ е векторен оператор, действащ върху скаларно поле. Градиентът на скаларно поле е векторно поле, наречено градиентно поле, което показва степента и направлението на промяна на скаларното поле. Градиентът се означава с grad или просто като оператор набла и се дефинира като:

където е скаларна, непрекъсната и диференцируема функция и са единични вектори. Както се вижда резултатът от операцията градиент е вектор или множество от вектори или векторна функция в зависимост от областта в която е дефинирана . Градиентът се прилага само върху скаларни величини и представлява мярка за максималната промяна на величината и има посока на най-стръмното покачване на величината в дадена точка.

Дивергенцията е понятие от векторния анализ и представлява скалар, който характеризира истока или стока на векторното поле. Дивергенцията се записва като div и се прилага само върху векторни функции:

където Fx,Fy,Fz са x,y,z компонентите на векторната функция. Както се вижда резултатът от операция дивергенция е скаларна функция.



SIMULINK


Разделът SIMULINK е написан с участието на студента Панайот Панайотов – специалност КММ, II курс

Изображенията на фигурите в по-голямата част от описанието са за версия 6.5. на Matlab, но разликата в интерфейса с новите версии е малка. Предстои обновяване на фигурите и част от текста.
SIMULINK е графична среда за моделиране, симулиране и анализ на динамични системи, които се описват като набор от линейни, нелинейни, диференциални и/или диференчни уравнения. Системите се изграждат чрез графичен потребителски интерфейс. Разширението на създадените файлове (модели) е .mdl.
1. Стартиране на функцията.

Стартирането на SIMULINK става чрез кликване върху съответната икона в toolbar-а на Matlab:



Фиг. 1. Стартиране на Simulink. Първи начин – с иконата в toolbar-а
Или чрез New/Model :

Фиг. 2. Стартиране на Simulink

Втори начин – от Home-таба/

New/Simulink Model

Същото е възможно и чрез въвеждане на текст simulink в Command window:

>>simulink

Отваря се прозорец Simulink Library Browser, в който са поместени блокове с различни функции. Близките по предназначение блокове са групирани в подбиблиотеки. Изграждането на модел става с влачене на блокове от библиотеките до работния прозорец, или чрез кликане с десен клавиш на мишката върху съответния блок и натискане на Add to а new model.



Фиг. 3. Общ изглед на библиотека и блокове в нея

Фиг. 4. Поместване на блок в работния прозорец – използване на команда Add to а new model, не е необходимо влачене за да се постави блока в прозореца

Търсенето на блокове става чрез преглед на библиотеките на Simulink или чрез вписване на съответното име на блока в реда Enter a part of a block name (at least 2 characters) и натискане на клавиша Enter или иконата на бинокъла, при посочването на която се показва текст Search for subsystems and bloks by name (at least 2 characters).



Фиг. 5. Бързо търсене на блок по име



Следващото описание е с фигури в средата на Matlab 6.5.
Връзки между блокове се осъществяват по два начина – като се свързват с линии между входовете с помощта на изчертаване с мишката или чрез :

  1. Маркира се входния блок.

  2. Задържа се клавиша Ctrl.

  3. Натиска се върху изходния блок с левия бутон на мишката.



Фиг. 6. Изграждане на връзка между

блокове – чрез изчертаване на

маршрута вход-изход


2. Стартиране на симулация

2.1. Параметри на симулацията – настройката им може да се осъществи в от менюто Simulation Parameters:unitled. До него стигаме по пътя Simalation/Simulation parameters. От опцията Solver, може да се зададе времето за действие на симулацията(начало, продължителност, край)
Фиг. 7. Отваряне на меню Simulation Фиг. 8. Прозорецът Simulation
за настройки-избира се командата Parameters – от тук се настройват
Simulation parameters. начално и крайно време на
симулацията.

2.2. Стартиране – от бутона Start simulation или от Simulation/Start :

Фиг. 9. Стартиране на симулация Фиг. 10. Стартиране на симулация

Първи начин – с натискане на Втори начин от менюто

бутона Start Simulation от toolbar-a Simulation/Start

2.3.Извеждане на резултат

За да се получи графичен резултат, се кликва два пъти върху крайния блок – Scope. Независимо дали се визуализира графика или не, върху черния екран на Scope се натиска Autoscale, за по добра видимост. Има лупи за мащабиране в лентата с бутони над изображението.

Фиг. 11. Визуализиране на

резултат
Двоен клик върху Scope
Така изглежда визуализацията:

Фиг. 12. Визуализиран резултат

Фиг.13. Autoscale и инструменти -

използват се за по добър изглед на графиката

3. Редактиране на модел

3.1. Селектиране(маркиране) на обекти

За да се редактира модел е небходимо първо да се маркира обект от модела – например блока Pulse Generator, чрез кликване върху него. За маркиране на повече обекти едновременно може да ги маркираме един по един с кликване на мишката и задържан клавиш Shift, или да ги обградим с правоъгълник или да ги обградим с левия бутон на мишката.


Фиг. 15. Маркиране на обект с клик върху него


Фиг.16. Маркиране на обекти със заграждане с мишката


Фиг. 17. Вече маркирани обекти чрез

заграждане или последователно

маркиране с мишката и задържан

клавиш Shift

3.2. Копиране и преместване на блокове в работния прозорец

Преместването на блокове става с маркиране и влачене, при това, ако има изградена връзка с други блокове, тя не се прекъсва, а се позиционира към новото положение на обекта. SIMULINK използва невидима пет-пикселова решетка за улеснено подравняване на обектите в прозореца на модела. Копиране на самостоятелен елемент или няколко наведнъж може да стане с влаченето им с левия бутон на мишката и задържан клавиш Ctrl, или чрез влаченето им със задържан десен бутон на мишката.

Фиг.18. Преместване на елемент чрез влачене – така се движат

блокове в работния прозорец

Фиг. 19. Копиране на няколко елемента наведнъж чрез влачене със задържан десен бутон на мишката – първо са маркирани небходимите елементи, след което са провлачени с натиснат десен бутон на мишката.
Фиг. 20. Вече копираните елементи от фиг.19

След маркирането и провлачването на групата блокове, десният бутон на мишката е отпуснат и копираните блокове се появяват в работния прозорец.

SIMULINK дава име на всеки обект и копиран блок. Ако копираният блок е първи от типа си, името му е същото, дадено в подбиблиотеката. При копиране или добавяне на вече съществуващ обект в работния прозорец, SIMULINK автоматично му задава номер – 1, 2, 3,... след името му.

Фиг. 21. Автоматично озаглавяване на копирани обекти –

след копирането на левият обект,

копираният(вдясно разположен) получава цифта “1”


след името си.
3.3. Определяне параметрите на блоковете

До прозореца с параметрите на даден блок се стига с двоен клик върху него. За пример се разглежда блок тип Transfer Fcn. Редът Numerator определя коефициентите на полином от n-та степен в числителя на ф-ята, а Denominator – в знаменателя.


Фиг. 2
2. Двоен клик върху блок тип Transfer Fcn – по този начин

отваряме менюто за настройки на параметрите му.

Фиг. 23. Меню с параметри на блок тип

Transfer Fcn – в ред Numerator са

въведени коефициенти 3 и 1, а в ред Denuminator-


5 7 26.
Коефициентите задължително са оградени с квадратни скоби [ ].



Фиг. 24. Редактирани параметри на блок Transfer Fcn – след натискане на ОК от менюто за настроване параметрите, променените данни

се визуализират в блока(коефициентите в Numerator заемат

стойности в полином от n степен в числителя, а коефициентите в Denominator заемат съответните стойности на коефициентите на полином в знаменателя)

3.4. Въвеждане на описание на блок, приоритет и етикет.

Описанието е текст който описва целта на блока. Приоритетът показва реда за изпълнение на блока спрямо другите елементи в модела – за невиртуални блокове или виртуални код системи, номера на приоритета описва реда по който блоковете ще се обновяват при симулацията. Тагът е текст, който се появява в блока като етикет, генериран от SIMULINK.

За да се въведе описание на блок, приоритет и етикет намиращо се под него, е необходимо да се натисне десен бутон на мишката върху блока, в падащото меню да се избере Block properties. В опцията General в графа Description се въвежда желаното описание. След това се избира опция Block Annotation, в колона Block property tokens се намира командата % и се вкарва в графа Enter text and tokens for annotation с двоен клик върху нея или натискане на бутона >>. След това се натиска ОК и информацията в работния прозорец се обновява.




Фиг. 24. Отваряне на меню за въвеждане на настройки на блок –

става с натискане на десен бутон на мишката върху блока и избор на Block properties

.
Фиг. 25. Въвеждане на описващ текст – става с въвеждане на текст в графа Description, която се намира в подменю General на прозореца Block properties




Фиг. 26. Активиране на Description – в подменюто Block Annotation, от Block property tokens намираме %, натискаме бутон >>, и след това ОК.

Фиг. 27. Визуализиране на въведеното описание – под името на блока се появява текст.




Приоритет и етикет се въвеждат от същото меню Block Properties по аналогичен на Description начин, като първо от страницата General в редовете Priority и Тag се въведат съответните данни. След това в страницата Block Annotation се селектират командите %


и % и се натиска бутон >>.


Фиг.28. Въвеждане на приоритет и етикет

Фиг.29. Активиране на приоритет и етикет




Фиг.30. Изглед на блок с активирани и въведени приоритет и етикет


    1. Изтриване на блокове – става с натискане на десен бутон на мишката върху обект, и след това избиране на команда Clear (в по-новите версии на продукта командата е Delete). Изтриване става и с маркиране на блок и натискане на клавиши Backspace или Delete от клавиатурата


Фиг.31. Изтриване на блок с използване на падащо меню


– десен бутон върху елемента/ Clear

3.6. Възстановяване на изтрит блок – избира се Edit/Undo Delete или клавишната комбинация Ctrl+Y

Фиг.32. Възстановяване на изтрит блок – чрез Undo Delete

3.7. Промяна ориентировката на блок – по подразбиране сигналният поток през даден блок тече отляво надясно. Входовете на блока са отляво, а изходите отдясно. Тази ориентировка може да се смени чрез щракане на десен бутон върху блока и избор на: Format/Flip block – за да се завърти блока на 180º, или Format/Rotate block – да се завърти на 90º.



Фиг.33. Промяна ориентировката на блока с командите Flip block и Rotate block



Фиг.34. Блок, завъртян Фиг.35. Блок, завъртян с команда Rotate block

с команда Flip block

3.8. Промяна размера на блок – елементът се маркира, хваща се някой от маркерите му и се разтегля до желан размер.



Фиг.36. Маркиране и хващане Фиг.37. Разтегляне на маркер

3.9 Редактиране на име на блок

Името на блок се изписва под него, ако входът и изходът са с хоризонтално направление и отляво на блока ако са с вертикално.




Фиг.38. Позиция на името

на блок с хоризонтално с

направление на вход-изход

Фиг.39. Позиция на името на блок

с вертикално направление на

вход-изход

Промяна на разположението на името на блок се постига чрез маркирането на името и преместване в противоположната страна на блока, или с натискане на десен бутон на блока и избиране на командата Format/Flipname.

Скриване на името на блока се постига с маркиране на блока, натискане на десен бутон на мишката и избиране на Format/Hide name. Показване на вече скрито име става с маркиране на блока, десен бутон на мишката върху него и избиране на Format/Show name.

Фиг.40. Промяна положението на името – премества се на срещуположната страна


Фиг.41. Скриване на името на блок

Фиг.42. Показване на скрито име на блок



Фиг.43. Редактиране

на името

Редактиране на името на блок става с кликване върху него и извършване на текстова редакция.
3.10 Визуална редакция на елементи

Може да се добави сянка зад блока за по-добър общ изглед – става с кликване с десен бутон на мишката върху желания блок, избиране на Format/Show drop shadow.




Фиг.44. Добавяне на сянка зад блок

Фиг.45.

Блок със сянка

Скриване на сянка става с натискане на десен бутон на мишката върху блока, избиране на Format/Hide drop shadow

Фиг.46. Скриване на сянка зад блок

Може да се редактира цветовото оформление на елементите в работния прозорец, както и самият работен прозорец. Цвета на контурите на блок може да се смени с натискане на десен бутон върху него и избиране на цвят от падащото меню Foreground, или чрез маркиране на елемент и следване на Format/Foreground/(......). Цветът на самия блок се избира по алтернативен начин – чрез маркиране на елемент и следване на Format/Background/(…..), или чрез натискане на десен бутон върху блок и избор на цвят от менюто Background. Фонът на работния прозорец може да се променя с натискане на десен бутон върху празно пространство в него и избор на цвят от Screen color, или по пътя Format/Screen color/(…….).

Фиг.47. Избор на цвят за контур

на блок с десен бутон на мишката –

в случая червен


Фиг.48. Оцветен

контур на блок


Фиг.50. Избор на цвят за контур на блок с

използване на менюто Format/Foreground/(….)

Фиг.51. Избор на цвят на блок с използване на мишката – в примера зелен


Фиг.52. Оцветен блок – така изглежда блокът от фиг.51 след промяна на цвета


Фиг.53. Смяна на цвета на фона на работния прозорец – в случея в син



Фиг.54. Работен прозо-

рец със сменен в си-

ньо фон

3.11 Създаване на сегмент на линия

Сегментът представлява част от линия която може да се определи най-вече визуално като самостоятелна част от нея. Разделянето на линията на сегменти позволява произволното им преместване в равнината. За целта се натиска клавиш Shift, избира се произволна точка от линията с мишката и се премества, разделяйки линията на два сегмента от двете си страни.



Фиг.55. Разделяне на линия на сегмент – задържан е клавиш Shift, маркираната точка от линията с мишката е преместена




Фиг.56. Разделена линия на сегменти

3.12 Вмъкване на блок в линия

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


Фиг.58. Блок за вмъкване в линия – има изградена връзка между горните блокове.

Фиг.59. Вмъкване на блок в линия – със задържан ляв бутон на мишката върху избрания блок, той е позициониран върху линията



Фиг.60. Вмъкнат в линия блок


3.13 Поставяне на етикети на линии или сегменти – става с двоен клик върху линия или сегмент и въвеждане на текст в появилия се правоъгълник. Етикетът може да се премества чрез маркиране и задържане на ляв бутон на мишката и преместване.

Фиг.71. Създаден етикет




Фиг.72. Преместване на етикет – в случая над линията

Фиг.73. Преместен над линията етикет



  1. Извеждане на резултати.

Обикновено графичните резултати се извеждат чрез блока Scope.

При изграден модел, може да получат в Workspace числените стойности на графиката по двете оси, взети през определен интервал от време. Това става чрез свързването на изходния блок Out1. Стартира се симулацията. Като резултат в Workspace автоматично се записват применливите tout и yout – фиг.76. При написване в Command window на

>>tout

и

>>yout



се извеждат съответно стойностите по хоризонталната и по вертикалната оси. Получената графика може да се визуализира и като фигура с изписване на

>>plot(tout,yout)

в Command window.


Фиг.74. Входът на изходния блок

Out1 се свързва с линията преди Scope



Фиг.75. Свързаният блок Оut1.

Фиг.76. Изведени числени данни за графиката по хоризонталната ос – след въвеждане на tout в Command window

Фиг.77. Визуализиране на фигура с графиката, получена в SIMULINK – въведенa е команда plot(tout,yout) в Command window и в резултат е получена фигурата FigureNo.1
Визуализиране на графиката във фигура чрез функцията plot може да се постигне като се замени крайният блок Scope с блок To Workspace, намиращ се в библиотеката Sinks. Вътре в блока е изписано името на променливата в която се съхраняват резултатите Simout. То може да се смени като се кликне два пъти върху него и се редактира текстa simout. За да се прегледа стойността на променливата в Workspace, е необходимо да се кликне два пъти с левия бутон на мишката върху блока To Workspace, след което от падащия списък Save Format да се избере формат за съхранение Array. В Command Window се въвежда текст >>plot(името на променливата в блок To Workspace).

Фиг.78. Модел, с краен блок То Workspace



Фиг.79. След двоен клик върху То Workspace е отворен прозорец Block Parameters, в който в реда Variable name е въведено името на променливата - в случея promenliva. Форматът за съхранение е променен в падащото меню Save format на формат Array

Фиг.80. Визуализиране на графика във фигура – въведена е командата за изчертаване с името на променливата в случея

>>plot(promenliva)

след което е изчертана графиката, създадена от модела във вид на фигура с име Figure No.1





Сподели с приятели:
1   2   3   4   5   6   7   8   9   10




©obuch.info 2024
отнасят до администрацията

    Начална страница