Mоделирование процессов и систем в Matlab (966709), страница 67
Текст из файла (страница 67)
'Установите новое значение ОЮ(0) = ']); еи) 1Г )с 10 )г1 = !при(([зрг!птт('Текущее значение П! - Кд; '.П1). 'Установите новое значение П1 = ']) епс) 1Г К 11 ТК - !прис([зрг!пег('Текущее значение ТК = Кд; '.ТК),... 'Установите новое значение ТК = ']): епо елей Л2.1) " Л1.2): З(3.1) " Л1,3): Л3.2) Л2.3): К Огас ООЕ.щ $ Протравив построения в графическои окне графиков К результатов работи модели Ргот ООЕ.як!1 К Пазарев Ю.Ф. 28-01-200Я К формирование данних и вивод ГРАФИКОВ ст соис; ощх " уоит(;. 1): ощу - упит(:.2): овгз = уоитл:.3): ерзх - упит(:,Я); ерзу - уигв(с.5): ерза — уоис(:,б); 5тгЗ - [зргтптг('.Зх - Кд; '.Л1, 1)), зрг!птт('Зу - Кд: '.Л2,2)).зрг1п(Г('Зз - Кд: ',ЛЗ,З))! 5тги - [зрг1птт('Скх " Кд; ',005КОП)), зргтпсу('ОИУ - Кд: '.005КО(2)).зргтпвт('Ока - Кд; '.005КО(3))] 373 Обьединение 5-моделей с программами Мдткдз 5ггЛ = Ебрр(птт('зху = Вп '.Л1.2)).
вргтптт('Зхг - Вп '.Л1„3)). вргтптг('3уг = ВК '.Л2. 3) ) ) вцЬр1ом2.1.1) П = р)омгт.овх,гт,айву,'+',Ст,орг.'.-'): дг)о вев(Ь.'Ьтпеы(ОСЬ'.2): вемдса6'61пейкОФЬ'.2) вет(оса, ' Еоптдпй)е'1 ' (га1 (с ', ' Еоптб1ге' . 16) 1111е('Проекции угловых скоростей') ве((Оса.'Еопгв1ге',14) у1аЬе1('радианы в секунду' ) 1ерепс( 'арх' . 'оду', ' оке ', 0) х1аЬе)((5СРЛ ' ' 5тгЛ ' " 5тг()1) вцор)от(2.1.2) Ь - р)от(гт.ервх,сг.ерву.' -',Ст..ервг,'--'), рг(о' вег(Ь.'Ь)пеитОСЬ'.2): вег(уса.'Ь(пеи1отп',2) вег(оса.'Еопгдпр1е'.'втта1тс'.'(контакте',16) ттв1е('Проекции угловых ускорений ') вев(Пса.
Еоптв1ге', 14) у)аЬе1('радианы/с"2') х1аЬе)(' Вреив (с) ') вет(дог.'со1ог'.'ыЬ(те') 1едепп('ербх','ерву'.'ерва' А) Теперь введем в блок-схему Ргоы ()()Е два блока 5оЬвув1ею. Осуществим в этих блоках следующие преобразования. 1. Изменим имена блоков (подписи под их изображениями); первый блок назовем МЕЙ(), а второй — БНДНК1 (рнс. 8.16). Бпок.крема Ркок Гика) проверки рвами прока В ООЕ Р а ° о р-. еиклко Рис.В.16. Блок-схема 5-модели Ргоы 0()Е1 2. Дважды щелкнув на каждом из блоков, откроем их блок-схемы и удалим все содержимое — сделаем блоки пустыми. 3. В окне блок-схемы тпелкнем на изображении блоков правой кнопкой мыши; из появившегося контекстного меню выберем команду Маз)( 5ыйвуз1епт (Создать маску подсистемы); в результате откроется окно Мази еН1ог (Редактор маски) (рис.
8.17). 4. В поле () гаы)) од соп) от ад((в (Команда рисования) на вкладке 1соп (Значок) этого окна введем команду ((1 зр с указанием в качестве ее аргумента текста, который зи Урок 8 ° Взаимодействие ИАТЕАВ с Япайпк требуется поместить на изображении блока; для первого блока это будет текст Исходные данные, для второго — Вывести графики.
5. Закроем окно Иазй Ео)сог (Редактор маски) щелчком на кнопке ОК. Рис. ВЛ7. Окно Иазк е0йог Введем в командном окне команды, которые связывают составленные М-программы с Б-моделью: зег рагае('Ргот ООЕ','Ргесоалгсп','Ргот ООЕ Ргее') зег рагамг'Ргот ВОЕ/МЕМО','ОрепГсп','МЕЙО ОБЕ') зег рагам('Рсоа ООЕ/6ЙАЕ)К!','Орепгсп'.'Огас ООЕ') После выполнения этих команд управление всеми действиями по моделированию будет осуществляться из окна самой Б-модели.
Назовем эту модификацию Б-модели Ргоч ООЕ1. Теперь моделирование можно производить в следующем порядке. 1. Вызовем на экран окно блок-схемы Ргот ООЕ1; при этом начальные значения исходных данных уже будут записаны в рабочем пространстве, поскольку перед появлением окна блок-схемы будет запущена на выполнение программа Ргоы 00Е Ргед. 2. Дважды щелкнем в окне блок-схемы на блоке ИЕК0 (Исходные данные), что- бы открыть окно ИЕК0 (рис. 8.18). 3. Установив нужные значения исходных параметров, закончим работу с меню, щелкнув на кнопке Ничего не менять.
4. Запустим Я-модель на моделирование, щелчкнув на кнопке с треугольной стрелкой на панели инструментов окна блок-схемы. 5. По окончании процесса моделирования для вывода графиков в графическое окно дважды щелкнем иа блоке бга()к) (Вывести графики). 375 Объединение 5-моделей с программами ИАТЕАВ Рис.8.18. Пользовательское меню програимы ИЕНО ОБЕ Этот способ связывания Б-модели с существующими М-файлами является, пожалуй, наиболее удобным, так как, во-первых, позволяет вызывать М-файлы лишь в случае необходимости и в произвольном порядке, а во-вторых, управление моделированием и вызовом программ осуществляется только из блок-схемы Б-модели. На рис. 8.19-8.21 представлены результаты моделирования движения тела при разных сочетаниях параметров.
Во всех случаях тело «раскручено» вокруг оси У с угловой скоростью гог =001 рад/с. Графики на первом рисунке соответствуют динамически несимметричному телу (7х = 550, /г = 150), имеющему начальную угловую скорость вращения озх — — 0,001 рад/с вокруг оси Х. о зао гйю гйю йюа зюо зооо зйю йкю сзю иоо .вс-. зн г.~г-. йю, й= сао, .во= о, зо= о, ос*= о, пм - о.аос омз= а.ос; огй= ц «и Гьсюмазс Звпсюмв Зсойсаисы а йю гйю свао зюа зйю зйю зйю оооо азю заза азвсвс Гсг Рис. 8.19. Нугационные колебания несимметричного гироскопа 3?б Урок 6 ° Взаимодействие МАТСАВ с 5Ьш В па Во втором случае тело является динамически несбалансированным относительно принятых осей и вращается в начальный момент времени толька вокруг оси у.
к га Лровкции увловмк йюрооиюО 1" О МЮ ЮОО 1ОЮ ВКЮ ЗВЮ ОООО Зйю ОЮО 40Ю ОЮО .и= 400 гу= оооою 400; Оку= -40; Зк- О;.20=.401 омк= О; омн О 01; омг= О, к ю.к ГРООКЦОМУВЛОВЬМ УОКОРОиив .2 О ЗОО гйи ЮОО ОООО гзза ОООО ЗМЮ МЮО ОМЮ ОЮО а404и ГО) Рис.
6.20. Свободное движение динамически несбалансированного гироскопа Третий вариант соответствует случаю, когда тело динамически несбалансировано и осевые моменты инерции значительно различаются по величине. О.О1 й о.о у айю .аог 0 ИО ВКЮ гйю ЗЮО 2МЮ Зйю ОООО 4000 4йю ОООО М=МО;гу=вва.й=гю; кци.ааг =О,.В =-йг ОМ О;ОМу=авваои=а; «ю лровкции уйгокмк уйюрвиио 4 О йю КЮО ЮОО МЮО гйю ОООО ЗМЮ МКЮ Ойю ИОО ВУ Г41 Рис.
6.21. Свободное движение несимметричного и несбалансированного гироскола Как можно убедиться по результатам «зкспериментов», вращательное движение тела существенно зависит от его инерционных характеристик. з77 Пользовательские библиотеки 5-блоков Пользовательские библиотеки Б-блоков Те, кто занимается моделированием систем, рано или поздно сталкиваются с необходимостью подготовки собственных блоков, имеющих свойства стандартных библиотечных блоков пакета Япш11п)г. Потребность в этом возникает, когда пользователь при выполнении разных задач моделирования в собственной предметной области вынужден неоднократно применять созданные им элементарные блоки, которые являются оригинальными и не входят в состав стандартных библиотек Япш11пх, либо многократно использовать одни и те же блоки в определенных устойчивых их сочетаниях.
В таких случаях„разместив новые блоки в библиотеке, можно значительно сократить время создания новой модели и предотвратить появление ошибок. Преимущество размещения собственных блоков в библиотеке пользователя состоит в том, что их можно применять неоднократно, перетягивая изображение блока из библиотеки в окно блок-схемы модели. Пользоваться такими блоками удобнее всего посредством специальных окон настройки блоков, аналогичных тем, которые рассматривались при описании стандартных блоков Япш11п)г. Создание окон настройки блоков осуществляется посредством формирования маски блока, которая и играет роль окна настройки.
Создание библиотеки Рассмотрим процесс создания библиотеки 5-блоков на конкретных примерах. Формирование новой библиотеки начинается с открытия окна новой блок-схемы модели. В этом окне следует вызвать команду Гйе ь Меи и Вйгагу (Файл ь Новый ь Библиотека). В результате на экране появится пустое окно библиотеки (рис. 8.22) с именем Е1Ьга~у: ипобе61. В этом окне можно создавать Б-блоки, можно также перетягивать в него блоки, которые уже созданы. В общем случае сформировать 5-блок можно на основе стандартных блоков двух видов: блока 5-РипсВоп из раздела 0кег-Оейпео Епископ библиотеки Япш!1п)г и блока 5цЬзузсею из раздела Рог1з 8 5уйеюз той же библиотеки. При создании 5-блока на базе блока 5-Рцпсооп используются файлы 5-функций написанные на языке МАТ1.АВ; такой блок имеет лишь один вход (возможно, векторный) и один выход (векгорный).
5-блок, образованный на основе блока 5иЬзук~ев, представляет собой блок-схему, включающую уже существующие блоки, и может иметь произвольное количество входов и выходов различного вида. Образуем в открытой нами библиотеке 8-блок 5 00 Е на основе созданной прежде одноименной Б-функции. 1. Перетянем в окно создаваемой библиотеки блок 5-Ецпсбоп из раздела Ецпсеоп $ ТаЫе библиотеки Япш11пк.
Окно библиотеки приобретет такой вид, как показано на рис. 8.22. 2. Дважды щелкнув на изображении этого блока, вызовем окно его настройки (рис. 8.23). з)в Урок 8 ° Взаимодействие ИАГЕАВ с 5ггпог!лг Рис. 8.22. Окно создаваемой библиотеки Рис.8.23. Окно настройки блока 5 ООЕ 3. В поле 5-(цпсЕ(оп нагое (Имя Б-функции) открывшегося окна введем имя 5 ООЕ, а в поле 5 йзпсЕ!оп рата глеГегз (Параметры Я-функции) — параметры д . 005Е0, затем щелкнем на кнопке ОК В результате (при условии, что соответствующий файл расположен в папках, доступных для МАТ?.АВ, а список введенных параметров отвечает списку параметров, указанных в 5-функции) окно настройки исчезнет, и изображение блока в окне библиотеки изменится (рис.