|
|||
Категории: АстрономияБиология География Другие языки Интернет Информатика История Культура Литература Логика Математика Медицина Механика Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Транспорт Физика Философия Финансы Химия Экология Экономика Электроника |
Вычисление полюсов и нулей передаточной функцииОсновы MATLAB MATLAB в режиме прямых вычислений В системе MATLAB любые вычисления можно выполнять в командном режиме, то есть без создания программы. Работа с системой в командном режиме осуществляется в виде диалога и происходит по правилу «задал вопрос – получил ответ». Пользователь набирает вычисляемое выражение и нажимает клавишу ENTER.
>> a=2+3 a = • для указания ввода исходных данных используется символ >>; • для блокировки вывода результата вычислений некоторой команды после него надо поставить ; (точка с запятой). Пример: >> b=2+3; >> b b = • если не указана конкретная переменная для значения результата вычисления, то система MATLAB сама назначает такую переменную под именем ans; • знаком присваивания является обычный знак =; • знаки простейших операций: + - * / ^ (-возведение в степень); • встроенные функции (например, sin) записываются строчными буквами, и их аргументы указываются в круглых скобках; Пример: >> sin(pi/2) ans = • результат вычислений выводится в строках вывода (без знака >>); • диалог происходит в стиле «задал вопрос – получил ответ». Некоторые операции строчного редактирования и управления окном - используются для подстановки после >> ранее введенных строк, например для дублирования их или исправления; clc – очистка окна; Esc – очистка строки ввода. Полиномы и операции с ними
Пример. >>p=[1 3 0 4] – так определяем полином p(s)=s3 + 3s2 + 4
Пример. >>r=roots(p) r = -3.3553 0.1777 + 1.0773i 0.1777 + 1.0773i
Пример. >>p=[1 3 0 4]; q=[1 4]; >>n=conv(p,q) n = 3 14 9 4 Скрипты Режим прямых вычислений используется, когда сеанс работы в MATLAB является коротким и не содержит повторяющихся вычислений. В противном случае используется возможность выполнения системой MATLAB длинной последовательности команд, записанных в виде файла. Такие файлы называются М-файлами,т. к. их имена имеют вид Filenаmе.m. Одним из видов М-файла является скрипт. Создание скрипта:меню File ->New ->M-file. В появившемся окне набираем последовательность обыкновенных инструкций и функций, используемых на уровне командной строки. Сохраняем файл под некоторым именем *.m
Пример Summa.m 1 A=1+2; 2 b=3+4; 3 sum=A+b Чтобы вызвать скрипт, т.е. выполнить последовательность его инструкций следует в режиме прямых вычислений ввести в командной строке имя соответствующего файла и нажать ENTER: >> summa sum = Моделирование систем передаточными функциями Передаточная функция Передаточная функция линейной системы – отношение преобразования Лапласа выходной переменной к преобразованию Лапласа входной переменной при условии, что все начальные условия равны нулю: Чтобы определить в MATAB передаточную функцию, следует: a) Задать в виде векторов-строк полиномы, стоящие в числителе и знаменателе передаточной функции; b) Использовать функцию tf() двух аргументов Пример. Определим в MATAB передаточную функцию системы “масса-пружина”, которая имеет вид: Положим, масса груза M составляет 2 кг., коэффициент трения b=0.5, коэффициент упругости пружины k=1 Введем в Command Window >> num=[1]; >> den=[2 0.5 1]; >> sys=tf(num,den); (Теперь с помощью функции tf сформирована передаточная функция, закрепленная за именем sys) Вычисление полюсов и нулей передаточной функции Полюса передаточной функции – корни характеристического уравнения . Для вычисления в MATAB полюсов передаточной функции используется функция pole() Пример. Определим полюса введенной передаточной функции Введем в Command Window: >> p=pole(sys) Нули передаточной функции – корни уравнения . Для вычисления в MATAB нулей передаточной функции используется функция zero() Пример. Определим нули введенной передаточной функции Введем в Command Window: >> z=zero(sys) |