Практическое занятие № 2 Изучение основных команд программного пакета Control System Цель работы Изучение основных команд и примеров использования пакета Control System в расчетах систем управления Теоретические сведения В пакете представлены следующие форматы моделей: передаточной функции ПФ (англ. Trasfer Function, TF); нулей-полюсов-коэффициента усиления НПК (англ. Zero-Pole-Gain, ZPK); пространства состояний ПС (англ. State Space, SS); данных частотного отклика (англ. Frequency Response Data, FRD), где каждой частоте ωi входного синусоидального воздействия u = sin ωi t соответствует отклик системы y = G(ωi) sin (ωi t + φi ) на это воздействие. Команды создания LTI моделей Передаточные функции. В MATLAB имеются две формы представления передаточных функций. Первая – это полиномиальная форма: m( s) 10( s 2 4s 3) W (s) 3 . d ( s) s 6 s 2 8s (19.1) Например, для передаточной функции (19.1) имеем m = [1 4 3]; d = [1 6 8 0]; Здесь учитывается, что если какая-то степень пропущена, соответствующий коэффициент полинома равен нулю. Тогда для задания передаточной функции при k =10 можно воспользоваться командой W = k*tf(m, d), после выполнения которой выводится сообщение Transfer function 10 S^2 + 40 s + 30 ----------------s^3 + 6 s^2 + 8 s Альтернативная форма представления передаточной функции (19.1) основана на полиномах в факторной форме: W (s) 10( s 1)( s 3) 10( s z1)( s z2 ) , s( s 2)( s 4) ( s p1)( s p2 )( s p3 ) (19.2) где корни полинома числителя ( z1 1, z2 3 ) называются нулями, а корни полинома знаменателя ( p1 0 , p2 2 , p3 4 ) полюсами передаточной функции (19.1) или (19.2). Для задания передаточной функции в виде (19.2) нужно задать векторы нулей и полюсов: z = [–1 –3]; p = [0 –2 –4]; Третий параметр, коэффициент усиления (проводимости (gain)) k завершает определение передаточной функции в форме полюса-нули-проводимость ZPK (polezero-gain). В данном случае k = 10. Тогда для задания передаточной функции в факторной полиномиальной форме, используется команда: W = zpk(z, p, k) при выполнении которой для принятых значений векторов z, p и коэффициента k выводится сообщение Zero/pole/gain: 10 (s+1) (s+3) -------------s (s+2) (s+4) Векторы коэффициентов числителя и знаменателя передаточной функции (19.1) и (19.2) можно найти с помощью команд: [num, den] = tfdata(W,'v') [z, p, k] = zpkdata(W,'v') при выполнении которых выводятся вектора num, den и z, p. Модели в пространстве состояния. В пространстве состояния непрерывная линейная система описывается системой дифференциальных уравнений первого порядка, называемых уравнениями состояния: dx Ax Bu , dt y Cx Du, (19.3) где x n - вектор состояния системы; u m - вектор входа; y l -вектор выхода, A n n, B n m, C l n, D l m – постоянные матрицы. В MATLAB для описания непрерывных систем в пространстве состояния применяются LTI-модели подкласса ss (State space), которые основаны на линейных дифференциальных уравнениях. Для задания модели нужно задать матрицы A, B, C, D. Если матрица D отсутствует, то можно использовать присваивание D 0 . Тогда модель задается командой S=ss(A, B, C, D) Преобразование моделей Преобразование моделей осуществляется теми же командами - tf, zpk и ss. Если LTI модель обозначена как sys, то синтаксис команд таков: sys = tf(sys) % Преобразование в TF модель; sys = zpk(sys) % Преобразование в ZPK модель; sys = ss(sys) % Преобразование в SS модель. Преобразование непрерывных и дискретных моделей Функция c2d производит дискретизацию непрерывной модели, а функция d2c, наоборот, преобразует дискретную модель в непрерывную. Эти команды поддерживают несколько видов квантования/восстановления: восстановление нулевого порядка (ZOH - Zero-Order Hold), восстановление первого порядка (FOH First-Order Hold), аппроксимацию Тастина без и с предварительной модификацией частот, с согласованием полюсов и нулей. Синтаксис этих команд (с ZOH по умолчанию) таков: sysd = c2d(sysc,Ts) % Ts - период квантования или выборки в секундах sysc = d2c(sysd). Для задания дополнительно: других методов преобразования следует sysd = c2d(sysc,Ts,'foh') % использует FOH метод sysc = d2c(sysd,'tustin') % использует аппроксимацию Тастина их указать Функции отображения модели: bode, bodeplot, ffplot – функции отображения логарифмических частотных характеристик. plot – отображение входных - выходных данных для данных объекта. present – функция отображения вида модели тета-формата с оценкой среднеквадратического отклонения, функции потерь и оценки точности модели.. pzmap – отображает нули и полюсы модели (с областями неопределенности). nyquist – отображает диаграмму Найквиста (годограф АФХ) передаточной функции. view – отображение LTI-модели (при использовании пакета Control System Toolbox). Задание Изучить основные функции Matlab для задания передаточных функций, zpk, пространства состояний, функции преобразования моделей, преобразования дискретных моделей, функции отображения моделей. Запись моделей в пространстве состояний (19.3) - важно: определение размерностей матриц A, B, C, D. Следующее задание будет по моделям пространства состояний.