Brian_-_Matlab_R2007_s_nulya_33 (771739), страница 31
Текст из файла (страница 31)
Такая функция получается следующим образом: и(() = 5+ а(( — 100)+ Ь((-100)'+ с((-100)'. Этим обеспечивается равенство м(100) 5, и график и имеет неравную симметрию вокруг точки (100, 5). Фактически, так как только нечетные степени от к 100 появляются в формуле для м(к) — 5, то, следовательно, м(100 + с) 5 = -(м(100 — с) -5), и, при условии с О, мы видим, что 2м(100) = 10 или м(100) = 5. Введя К = 100 в это уравнение, получаем м(200) — 5 = -м(0) + 5, а отсюда получаем м(200) = 10, если м(0) = О. Таким образом, мы вычисляем коэффициенты а, Ь и о, чтобы получилось равенство м(0) = и'(0) м' '(0) = О.
Ниже представлено решение, полученное при использовании программы МАТ( АВ: » вужв к а Ь с » м = 5 + а*(К-100) + Ь*(с-100)"3 + сэ(К-100)"5) » мО ю еиЬе(м, К, 0); » м1 = валье(с]1ЕЕ(ъг, К), К, 0)Г » м2 ю виЬв(й1ЕЕ(м, К, 2), К, 0)) » [вв, ЬЬ, со] = еоЗлге(мО, м1, м2)) » м = виЬе(м, [е, Ь, с], [аа, ЬЬ, сс]) Глава 8. Программа ЗяпиИп(с -35/8+3/32*С-1/160000*(С-100)"3+3/1б000000000*(С-100)"5 График этой функции показан на Рис. 8.11. и(0 го гоо ! Рис. 8.11. График функиии гвИ1 В этой функции формула для и" (к ) будет такой: » Жкк(и, к, 2) -3/80000*С+3/800+3/800000000*(С-100)"3 Рис.
8. 12. Модель по изучению движения крана в г(гограмне $1ти((лК Модель по изучению этой системы представлена на Рис. 8.12. Давайте рассмотрим, как эта модель работает и как ее собирать (монтировать). Начнем с того, что перепишем уравнение 8.3 в приведенной ниже форме: 168 МАТ!.АВ Таким образом, мы представляем 9" в виде суммы двух элементов, каждый со знаком минус впереди, которые собираются вместе в блоке Айо (Добавление).
(Кстати, нет никакой разницы между блоками Айй (Добавление) и Зцгп (Сложение), за исключением формы представляющих их значков.) Сигнал (соединительная линия), представляющий 9", входит в блок!в!вйгасог1 (Интегратор !) в левой верхней части модели, а сигнал, выходящий из второго блока 1п!вдга!ог (Интегратор), представляет 9. Блок С!осй (Время) выводит значение с, которое идет в блок Рцпсбоп (Функция) (из библиотеки 0ввг-Оейпес) Рцпсйопв (Функции, заданные пользователем)), используемый для вычисления и" (с).
Блоки Ргог)ис! (Произведение) и Тг!допогпе1г!с Рцпсбоп (Тригонометрическая функция), оба из библиотеки Мвгй Орегвйопв (Математические операции), дополнительных пояснений не требуют. Присутствуют еще два блока Ов1п (Увеличение), тоже из библиотеки Магй Орвгвйопэ (Математические операции), используемые для умножения взп9 и сов9 на константы 9/Ь и 1/Ь соответственно. Для удобства мы переименовали эти два блока, чтобы показать, который из них каким является. Чтобы переименовать блок, щелкните мышью на названии под блоком, и название будет заключено в серое поле. Затем вы можете стереть старое название и вставить новое. Как и в примере в предыдущем разделе, блоки Ов1п (Увеличение) необходимо настраивать для соответствующих констант с помощью диалога В!оса Рвгатв!егэ (Параметры блока).
Этот диалог можно похожим образом использовать для блока Тг1допоте!г)с Рцпс!1оп1 (Тригонометрическая функция 1), чтобы переключить функцию синуса (установлена по умолчанию) на функцию косинуса, которая нам нужна. Так как кран начинает движение из состояния покоя (с начальными условиями 9(0) = 9' = О, нам не требуется изменять установленное по умолчанию начальное условие, равное О, в каждом блоке!и!едгв)ог (Интегратор). Необходимо настроить блок Рцпсйоп (Функция) путем вставки формулы для и" (и). (Здесь программа 81пщ11п)! категорически требует, чтобы независимая переменная называлась и, а не с.) Наконец, необходимо щелкнуть мышью на меню 31щм1айоп (Симуляция), чтобы изменить максимальное значение к, по умолчанию равное 5, на значение 200, необходимое для этой задачи.
Результат запуска симуляции (после того как вы щелкнете мышью на значке с изображением бинокля, чтобы изменить масштаб изображения) отображается в окне Зсоре (Экран), как показано на рисунке ниже (Рис. 8.13). Если вы посмотрите на легенду (сопроводительную информацию) на изображении, вы увидите, что максимальное значение 9 будет порядка 2х10-4 радиан, что очень мало, даже при умножении на длину троса !. = бм. Из этого мы делаем вывод, что колебания контейнера не составят серьезной проблемы в данном случае.
(80 МДт1ДВ 3/40*С+3/8000*С"3-9/800*С"2 Первое, что нам необходимо сделать, это внести изменения в параметры блока, озаглавленного й(п) на Рис. В.12 Это можно сделать с помощью команд дев ракам и вес дьагаж из командной строки или из М-файла (а не с помощью диалога В(оеК Рвгвпзе(егв (Параметры блока)). Это особенно удобно, если вам требуется запускать симуляцию много раз с различными значениями параметров. Иногда помогает использование команд дев («Вес сгптепс зуз(еш» — найти текущую систему) и йаю$ вувееж для поиска названий важных блоков.
Ниже представлен пример, основанный на предположении, что мы уже открыли модель, отображенную на Рис. В. 12. » дев сгапе » й1по вуввеж(дев, »куре', 'Ь1ос)с') апв 'сгапе/1/ /1' 'сгапе/АсЫ' 'сгапе/01ос)с' 'сгапе/1пеедгагог' 'сгапе/1пгедгагог 1' 'сгапе/ргос)псе' 'сгапе/Ясоре' 'сгапе/Тгйдопотесгйс Гппссйоп' 'сгапе/тг1допотесгйс гцпсс1оп 1' 'сгапе/д/ /1' 'сгапе/и" Это дает нам названия всех блоков; в данном случае нам необходимо изменить параметры блока с названием 'сгапе/и" '. (Если бы нам понадобилось изменить длину троса, нам также пришлось бы изменить параметры блоков ' сгапе/1/ /1 ' и 'сгапе/д/ /1'.) Чтобы увидеть текущее значение 'Вхрг' этого блока, который кодирует функцию и" ( к ), введите следующее: лава 8.
Программа ЗппиИп)г » Пег рага5в( 'сгаае/и" ', 'Ежрк') -3/80000*о+3/800+3/800000000*(п-100)"3 Гаким образом, мы можем повторно запустить это выражение следующим способом: » век рага5в( 'скаже/ог" ', 'Ежрг',... '3/40*и+3/8000*и*3-9/800*и"2 ') Чтобы перезапустить модель, вместо команды меню З)пщ(абоп в 81а51 (Симуляция е Запуск) мы можем испольэовать команду выв в командной строке или в М-файле. ()ростейшая форма этой команды просто запускает модель с существующими паэаметрами. Но эту команду можно также использовать для задания временного ентервала и вывести результаты в рабочую область.
Например, в нашей ситуации чы могли бы ввести следующее: » (г, гЬега) = важ( 'скаже', (О, 20) ) 4 затем можно было бы ввести код » р1ов(в, ГЬева) этобы начертить результаты, представленные на Рис. 8.14. Здесь кривая, котоуая заканчивается в верхней части, представляет 8(в), а другая кривая пред:тавляет 8 ' (В ) . О.О2 О 015 О.О1 0 005 -0 005 -ОЛ1 -0015 -о. -0.025 о 5 1О 15 20 Рис.
8. 14. Чертеж нриеыл8(Г) и 8'(() для истфаеленной модели 1фана Илн, чтобы продублировать возможное изображение в окне Зсоре (Экран), мы можем заменить команду р1ог на вывр1ов (Рис. 8. 15): » вывр1ог(с, ВЬева(1,1)) -1605 ГЛАВА 9. Й Графический интерфейс пользователя С помошью программы МАТ1 АВ вы можете создать свой собственный графический интерфейс пользователя — 601 (от англ. Стар)пса1 13зег 1пгегГасе — Графический интерфейс пользователя), состоящий из окна изображения, содержащего меню, кнопки, текст, графику и другие элементы, с которыми пользователь может работать в интерактивном режиме, используя мышь и клавиатуру.
Создание 601 (Графический интерфейс пользователя) включает в себя два основных этапа: во-первых, организацию расположения элементов, во-вторых, запись функций обратного вызова, которые выполняют необходимые операции, когда пользователь выбирает различные параметры. Планировка СЫ и инструмент СЫОЕ Определение местоположения и свойств различных объектов 601 (Графический интерфейс пользователя) можно осуществлять с помощью команд ихпапвко1, взвенел и и1оопкежкиюпи в М-файле.
Программа МАТСАВ предоставляет также интерактивный инструмент под названием 6016Е (Сгарбйса1 13зег 1пгегГасе Рече!оршепс Епч(гопшепс — Среда разработки графического интерфейса пользователя), который значительно упрощает задачу построения 601 (Графический интерфейс пользователя). В этой главе мы рассмотрим, как начать процесс создания 601 (Графический интерфейс пользователя) с помощью инструмента 6010Е (Среда разработки графического интерфейса пользователя) той версии, которая включена в программу МАТ(.АВ 7.
Эта версия располагает расширенными возможностями по сравнению с более ранними версиями. Версия 6016Е (Среда разработки графического интерфейса пользователя) в программе МАТ1.АВ 6 примерно такая же, но некоторые элементы и параметры меню отличаются или отсутствуют. 1/ Некоторым недостатком инструмента 60!0Е (Среда разработки графического интерфейса пользователя) является то, что он создает графический интерфейс с помощью новых команд, появившихся только в версии МАТ1 АВ 7, и сохраняет план 601 (Графический интерфейс пользователя) в двоичном файле с расширением .йд. Если вы хотите создать простой и надежный интерфейс, который сможут использовать различные пользователи в различных версиях про.
граммы МАТ(.АВ, вам лучше будет не записывать 601 (Графический интерфейс пользователя) с нуля в качестве М.файла. Чтобы открыть инструмент 6010Е (Среда разработки графического интерфейса пользователя), выберите команду Р11е + Ива э 601 (Файл + Создать+ С(Л) в меню Рабочего стола или введите команду дпАбе в окне Сопипяпд Ийпдозг (Командное окно). На экране будет отображен диалог 6016Е Ям1сН 81аг1 (Выстрый старт СПЛ)Е), показанный на Рис. 9.1.
164 Обратите внимашп, что в верхней части есть две вктадки. Левая вкладка, под названием Сгеа1е В(екг 00( (Создать новый инт«рфейс), открывается по умол ганикк Вгя можете начать, выбрав какой-либо из различных типов 00( ()рафический ин. терфейс пользователя) слева. При этом откроется модуль ( ауои1 ЕФ1ог (Редактор планировки), в котором вы будете создавать внепгний вид вашего интерфейса. Для соответствия с описигныкги здесь примерами мы предположим, ио вы яыбпзсв Глава 9.