Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Начала прогаммирования в среде MatLab / Начала программирования в среде MatLab.pdf
Скачиваний:
254
Добавлен:
02.05.2014
Размер:
5.66 Mб
Скачать

5.5. Графические и интерактивные средства

257

 

 

 

tfe(x, y, 10000,100)

получим график рис. 5.72.

5.5.2. Интерактивная оболочка SPTOOL

Процедура sptool активизирует графическую интерактивную оболочку пакета SIGNAL, включающую:

средство поиска и просмотра сигналов - Signal Brouser:

проектировщик фильтров - Filter Designer;

средство просмотра характеристик фильтров - Filter Viewer;

средство просмотра спектра - Spectrum Viewer.

Оболочка активизируется путем набора в командном окне MatLAB коман-

ды

sptool.

В результате на экране появляется окно, представленное на рис. 5.73.

Рис. 5.73

Как видим, окно SPTool состоит из трех частей-окошек - Signals (Cигналы), Filters (Фильтры) и Spectra (Спектры), под каждым из которых имеются надпи- си-команды, говорящие о том, что можно сделать с объектами, расположенными над ними.

Так, под окошком Signals находится лишь надпись View. Это означает, что объекты (сигналы), имена которых расположены в этом окошке, могут быть только просмотрены. Под окошком Filters находятся четыре надписи, которые означают, что объекты (фильтры), имена которых размещаются внутри него, могут быть:

5.5. Графические и интерактивные средства

258

 

 

 

созданы (надпись New Design - Спроектировать Новый);

отредактированы (надпись Edit Design - Отредактировать Проект);

просмотрены (надпись View);

применены к одному или нескольким объектам, выделенным в окошке

Signals (надпись Apply - Применить).

Аналогично, с объектами окошка Spectra - (спектрами) можно произво-дить такие действия:

создавать (команда Create - Создать);

просматривать ( команда View);

обновить (создать заново под тем же именем) - команда Update.

Внутри окошек обычно размещаются имена (идентификаторы) соответствующих переменных или процедур, входящих в открытый в sptool файл с расширением .SPT (имя этого файла находится в заголовке окна SPTool).

При первом обращении в заголовке окна находится имя untitled.spt, все три окошка - пустые, а из команд, расположенных ниже их, активной является только одна New Design. Таким образом непосредственно после вхождения в оболочку sptool непосредственно исполнимой является только операция разработки нового фильтра. Чтобы активизировать остальные команды, необходимо откуда-то импортировать данные о каком-то (или каких-то) сигналах. Такие данные должны быть сформированы другими средствами, нежели сама оболочка sptool, (например, являться результатом выполнения какой-то программы MatLAB, или результатом моделирования в среде SimuLINK) и записаны как некоторые переменные либо в рабочем пространстве (Workspace), либо на диске в файле с расширением МАТ.

Импорт сигналов

Для того, чтобы обрабатывать какие-либо сигналы с помощью sptool, необходимо, прежде всего, сформировать эти сигналы с помощью некоторой программы MatLAB, а затем импортировать полученные векторы значений этих сигналов в среду sptool.

Допустим, что мы сгенерировали случайные процессы X(t), Y(t) и Y1(t) в соответствии с программой, приведенной в разделе 5.5.1. В результате в рабочем пространстве MatLAB появились векторы x, y и y1, каждый из которых содержит по 10000 элементов. Импортируем их в среду sptool.

Войдя в среду (рис. 5.73), выберем "мышкой" раздел File меню окна sptool. В результате появляется дополнительное подменю (рис. 5.74), одним из разделов которого является Import. "Нажатие" на него "мышкой" приведет к появлению нового окна Import to SPTool, представленного на рис. 5.75.

5.5. Графические и интерактивные средства

259

 

 

 

Рис. 5.74

В разделе Source (Источник) этого окна отмечен точкой внутри кружка раздел From Workspace (Из Рабочего Пространства). Поэтому все имена переменных рабочего пространства представлены во втором окошке Workspace Contents (Содержимое Рабочего Пространства). Выбрав при помощи "мышки"

необходимую переменную, необходимо затем "нажать" кнопку со стрелкой, указывающей на окошко с надписью Data. После этого в окошке Data должно появиться имя выбранной переменной.

Рис. 5.75

5.5. Графические и интерактивные средства

260

 

 

 

Рис. 5.76

Затем в окошке Sampling Frequency (Частота Дискретизации) следует записать желаемое значение частоты дискретизации. Фактически этим параметром задается временной промежуток Ts между отдельными значениями выбранного вектора процесса.

В окошке Name (Имя) следует вписать то имя, под которым введенный вектор будет записан в среде sptool.

На рис. 5.76 виден результат выбора переменной y1, которая будет записана в sptool под тем же именем с частотой дискретизации 100 Гц (т.е. с дискретом по времени в 0.01 с)

Рис. 5. 77

5.5. Графические и интерактивные средства

261

 

 

 

После такой подготовительной работы следует нажать мышью на кнопку <OK> внизу окна, и импорт сигнала в среду sptool будет произведен. Окно IMPORT Sptool исчезнет и в окно sptool изменит свой вид (рис. 5.77): в окошке Signals появится запись имени вектора сигнала и активизируется (станет более яркой) подпись View под этим окошком. Кроме того, станет активной и команда Create под окошком Спектры. Это означает, что можно находить спектральные характеристики импортированного сигнала.

Повторяя операцию, можно перенести в sptool и другие сигналы (x и y). Если векторы процессов записаны в МАТ-файл, то для их импорта необхо-

димо, после вызова окна IMPORT Sptool, активизировать в нем "радиокнопку" с надписью From disk, нажав "мышкой" внутри кружка этой радиокнопки. В результате будут активизированы два нижерасположенных раздела - окошко MATfile Name и Browse (рис 5.74) . Записывая в первое имя необходимого МАТфайла с записью процесса или отыскивая МАТ-файл при помощи Browse, вновь вызываем в окошко File Contents его содержимое. Последующие действия аналогичны ранее рассмотренным.

Просмотр сигналов

После импорта вектора сигнала можно воспользоваться средствами его просмотра. Для этого достаточно выделить в окошке Signals нужные сигналы и "нажать мышкой" на надпись View под окошком. В результате должно появиться но-

вое окно Signal Browser.

Рис. 5.78

В нашем случае, выбирая сигнал y1, получим окно, изображенное на рис.

5.5. Графические и интерактивные средства

262

 

 

 

5.78. Как видим, центральную часть окна занимает изображение кривых зависимости выделенных процессов от времени. В заголовке графика указываются имена сигналов, изображенных на графике, размерность соответствующих векторов и частота дискретизации.

Вверхнем правом углу окна расположена область Selection, с помощью средств которой можно изменить цвета кривых, изображаемых в окне графиков.

Справа от графического поля окна (область Rulers) помещены инструменты, обеспечивающие точный отсчет показаний значений аргумента и процесса в двух точках графика.

Эти точки графика определяются пересечением с графиком процесса, имя которого стоит в области Selection, с двумя вертикальными линиями розового цвета, расположенными в поле графиков. Изменение положения этих линий по шкале времени происходит с помощью "мышки". Если курсор "мышки" подвести

кодной из этих вертикальных линий, курсор примет вид кисти руки. Нажав в этот момент на левую клавишу "мышки" и, не отпуская ее, переместив курсор вправо или влево, можно изменить положение соответствующей линии на графике. При этом в области Rulers будут непрерывно указываться координаты 'x' и 'y' точек пересечения обеих вертикальных прямых с графиком процесса, а также разности между ними. При этом координата 'х' соответствует времени, а 'y' - значению процесса.

На рис. 5.79 отображены все три процесса. Если нажать "мышкой" кнопку Slope, в поле графика появится еще одна прямая, соединяющая указанные ранее точки пересечения выбранной кривой с вертикальными линиями, а в области Rulers появится новое число 'm', значением которого является тангенс угла наклона этой прямой к оси времени.

Вверхней части окна располагаются средства управления окном и масштабами внутри графического поля.

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

После введения в sptool сигналов можно найти оценки спектральных свойств этих сигналов. Для этого достаточно в окне SPTool в окошке сигналов отметить (выделить) тот сигнал, оценку спектральной плотности которого вы хотите получить, и "нажать мышкой" на команду Create в нижней части окна. При этом на экране появится новое окно - Spectrum Viewer (Обозреватель спектра) -

рис. 5.80.

Новое окно напоминает окно Signal Browser. Верхняя и правая части этих окон практически совпадают. Однако графическое окошко в окне Spectrum Viewer является пустым, а слева от него располагается область, инструменты которой позволяют:

выбрать метод нахождения спектральной характеристики сигнала;

установить количество обрабатываемых точек сигнала;

установить количество точек сглаживающего окна;

5.5. Графические и интерактивные средства

263

 

 

 

Рис. 5.79

Рис. 5.80

выбрать тип окна сглаживания;

установить размер перекрытия окон;

установить метод исключения тренда;

установить метод масштабирования графика.

Метод вычисления спектра выбирается при помощи выпадающего меню в

5.5. Графические и интерактивные средства

264

 

 

 

окошке под названием Method. Выпадающее меню содержит такие альтернативы

(см. рис. 5.81):

Burg;

FFT;

MEM;

MTM;

MUSIC;

Welch;

YuleAR.

Каждому из названий соответствует аналогичный метод (процедура) вычисления спектра сигнала.

Рис. 5.81

Для проведения вычислений после выбора метода следует нажать кнопку Apply внизу левого поля. Например, выделим для обработки процесс Y1, "нажмем" команду Create и выберем метод FFT. После нажатия кнопки Apply в окне Spectrum Viewer появится картина, представленная на рис. 5.82.

5.5. Графические и интерактивные средства

265

 

 

 

Рис. 5.82

Проектирование фильтра

Если в окне SPTool выбрать команду New design, то на экране возникнет окно Filter Designer, показанное на рис. 5.83.

Новое окно позволяет произвести расчет коэффициентов нового фильтра и затем записать эти коэффициенты в объект-фильтр. При этом оно предоставляет возможность устанавливать и изменять следующие параметры будущего фильтра:

прототип рассчитываемого фильтра (окошко Algorithm); при этом предоставляются такие альтернативы:

Equiripple FIR (КИХ-фильтр с равноотстоящими разрывами);

Least Square FIR (КИХ-фильтр по методу наименьших квадратов);

Kaizer Window FIR (КИХ-фильтр с окном Кайзера);

Butterwhorth IIR (БИХ-фильтр Баттерворта);

Chebyschev Type 1 IIR (БИХ-фильтр Чебышева 1-го типа);

Chebyschev Type 2 IIR (БИХ-фильтр Чебышева 2-го типа);

Elliptic IIR (Эллиптический БИХ-фильтр).

тип фильтра (окошко Type); предоставляется возможность выбора следующих типов:

Lowpass - фильтр нижних частот;

Highpass - фильтр верхних частот;

Bandpass - полосовой фильтр;

5.5. Графические и интерактивные средства

266

 

 

 

Bandstop - режекторный фильтр.

параметры полосы пропускания (раздел Passband); здесь можно установить, например, (для фильтра нижних частот) граничную частоту Fp полосы пропускания и максимально допустимое значение Rp подавления амплитуд внутри полосы пропускания (в децибелах);

параметры полосы задерживания (раздел Stopband); здесь можно установить, например (для фильтра нижних частот), граничную частоту Fs полосы задерживания и минимально допустимое значение Rs подавления амплитуд внутри полосы задерживания (в децибелах).

Количество устанавливаемых параметров и их смысл автоматически изменяются при переходе к другому типу фильтра.

Например, устанавливая алгоритм фильтра Баттерворта нижних частот с граничными частотами полос пропускания в 0.5 Гц и задерживания в 0.7 Гц (cм. рис. 5.84) и нажимая кнопку Apply, получим параметры такого фильтра и запишем их в объект 'filt4' .

Рис. 5.83

Просмотр свойств фильтра

После создания фильтра можно просмотреть графики различных характеристик спроектированного и записанного фильтра. Для этого достаточно выделить имя фильтра, свойства которого нужно посмотреть, в окошке Filters окна SPTool, а затем нажать кнопку View под этим окошком.

5.5. Графические и интерактивные средства

267

 

 

 

Рис. 5.84

Рис. 5.85

Например, для только что созданного фильтра 'filt4' мы получим в результате на экране новое окно Filter Viewer с картиной, показанной на рис. 5.85.

Как видим, в окне выведены графики АЧХ и ФЧХ фильтра.

5.5. Графические и интерактивные средства

268

 

 

 

В число средств просмотра фильтров входят (см. левую сторону окна Filter Viewer):

возможность вывода на экран одновременно любого сочетания из таких графиков: АЧХ, ФЧХ, частотной зависимости группового времени замедления, графического представления расположения нулей и полюсов дискретной передаточной функции в Z-плоскости, графика временного отклика фильтра на импульсное единичное воздействие и графика отклика на ступенчатое единичное воздействие; для этого надо "отметить галочкой" с помощью "мышки" нужные виды графиков в области Plots (графики) окна;

возможность изменить вид шкалы как по оси частот, так и по оси амплитуд, установить диапазон представления графиков по частоте и изменить

единицы представления фазового сдвига (области

Plots

и

FrequencyAxis).

 

 

Пример вывода всех доступных графиков одновременно показан на рис. 5.

86.

Рис. 5.86

Применение разработанного фильтра для фильтрации

Использование в среде sptool разработанного фильтра чрезвычайно просто. Для этого нужно в окне SPTool в окошке Signals выделить имя сигнала, который

5.5. Графические и интерактивные средства

269

 

 

 

нужно преобразовать с помощью фильтра, в окошке Filters - имя фильтра, с помощью которого надо преобразовать этот сигнал и нажать команду Apply. в результате в первом окошке (Signals) появится имя нового сигнала, начинающееся с сочетания sig с последующим порядковым номером.

Полученный сигнал можно просмотреть, как это было описано ранее, используя команду View.

Например, применяя только что разработанный фильтр 'filt4' к процессу Y1(t), получим процесс, изображенный на рис. 5.87.

Спектральные характеристики полученного процесса можно изучить, применяя раздел Spectra, как это было описано.

Рис. 5.87

Вторичное использование результатов SPTOOL

При завершении сеанса работы с sptool система запрашивает, нужно ли записать полученные результаты на диск. В случае положительного ответа она сохраняет все данные в файле с расширением SPT. Кроме того, в разделе File меню окна SPTool предусмотрены команды записи в файл (см. рис. 5.74) Save Session и Save Session As.

При повторном запуске sptool можно воспользоваться результатами такого сохранения результатов, используя команду Open Session и выбирая один из записанных SPT-файлов.

6.1. Ввод и преобразования модели

270

 

 

 

6. Исследование линейных стационарных систем (пакет CONTROL Toolbox)

Первое представление о пакете CONTROL можно получить, изучая раздел 4.2.2. этого пособия. Ниже приведен сжатый перечень основных процедур пакета CONTROL, сгруппированных по общности функционального назначения.

 

Создание LTI-моделей.

ss

- Создает модель пространства состояния.

zpk

- Создает модель нули/полюсы/к-ты передачи

tf

- Создает модель передаточной функции.

dss

- Специфицирует описатель модели пространства состояния

filt

- Специфицирует цифровой фильтр.

set

- Установка/модификация атрибутов LTI-модели

ltiprops

- Детальная справка об атрибутах LTI-моделей

 

Извлечение данных

ssdata

- Извлечение матриц пространства состояния

zpkdata

- Извлечение данных о нулях/полюсах/КП

tfdata

- Извлечение числителя(-лей) и знаменателя(-лей) ПФ

dssdata

- Получение информации о версии описателя SSDATA.

get

- Получение информации о значениях свойств LTI-модели.

Получение информации об отдельных характеристиках модели

class

- о типе модели ('ss', 'zpk' или 'tf').

size

- о размерах матриц входа и выхода.

isempty

- Проверка, является ли LTI-модель пустой.

isct

- Проверка, является ли модель непрерывной.

isdt

- Проверка, является ли модель дискретной.

isproper

- Проверка, является ли модель правильной.

issiso

- Проверка, имеет ли модель один вход и один выход

isa

- Проверка, является ли LTI-модель моделью заданного типа

 

Преобразование системы

ss

- Преобразование в пространство состояния

zpk

- Преобразование в нули/полюсы/КП

tf

- Преобразование в передаточные функции

c2d

- Преобразование из непрерывного времени в дискретное

d2c

- Преобразование из дискретного времени в непрерывное

d2d - Переопределение дискретной системы или добавление задержек входных воздействий

"Арифметические" операции

+и - - Добавление и отнимание LTI-систем (параллельное соединение) * - Умножение LTI-систем (последовательное соединение).

\ - Левое деление-- sys1\sys2 равносильно inv(sys1)*sys2. / - Правое деление -- sys1/sys2 равнозначно sys1*inv(sys2).

6.1. Ввод и преобразования модели

271

 

 

 

'- Перетранспонирование.

.'

- Транспонирование карты входа/выхода.

[..]

- Горизонтальное/вертикальное объединение LTI-систем

inv

- Обращение LTI-системы

 

Модели динамики

pole, eig

- Полюсы системы

tzero

- Нули системы

pzmap

- Карта нулей-полюсов.

dcgain

- К-нт передачи при нулевой (низкой ) частоте.

norm

- Нормы LTI -систем.

covar

- Ковариация отклика на белый шум

damp - Частота собственных колебаний и демпфирование по полюсам системы.

esort

- Сортировка полюсов непрерывной системы по их действительным час-

тям

 

dsort

- Сортировка полюсов дискретной системы по их модулям

pade

- Аппроксимация Паде задержек по времени

 

Модели пространства состояния

rss,drss

- Генерирование случайных моделей пространства состо-яния.

ss2ss

- Преобразование переменных состояния

canon

- Каноническая форма пространства состояния

ctrb, obsv - Матрицы управляемости и наблюдаемости

gram

- Определители Грамма управляемости и наблюдаемости

ssbal

- Диагональная балансировка матриц пространства состояния

balreal

- Балансировка входа-выхода на основе определителя Грамма

modred

- Редукция состояния модели

minreal

- Минимальная реализация и сокращение нулей и полюсов

augstate

- Увеличение выхода за счет присоединения состояний.

 

Отклик во времени

step

- Отклик на единичный скачок

impulse - Отклик на единичный импульс

initial

- Отклик на заданные начальные условия состояния

lsim

- Отклик на произвольные входы

ltiview

- Анализ откликов с помощью графического интерфейса.

gensig

- Генерирует периодические сигналы для LSIM.

stepfun

- Генерирует единичный скачок

 

Частотный отклик

bode

- Диаграмма Боде частотного отклика (АЧХ и ФЧХ)

sigma

- Частотный график сингулярных значений.

nyquist

- Диаграмма Найквиста

nichols

- Диаграмма Николса

ltiview

- Анализ откликов с помощью графического интерфейса

evalfr

- Расчет частотного отклика на заданной частоте

freqresp

- Частотный отклик над сеткой частот

margin

- Запасы по фазе и амплитуде

Объединение систем