5.5.2. Интерактивная оболочка spTool
Процедура SPTool активизирует графическую интерактивную оболочку пакета Signal, включающую:
средство поиска и просмотра сигналов – Signal Brouser;
проектировщик фильтров – Filter Designer;
средство просмотра характеристик фильтров – Filter Viewer;
средство просмотра спектра – Spectrum Viewer.
Оболочка активизируется путем ввода в командном окне MatLAB команды sptool.
В результате на экране появляется окно, представленное на рис. 5.73.
Как видим, окно SPTool состоит из трех областей – Signals (Сигналы), Filters (Фильтры) и Spectra (Спектры), под каждой из которых имеются кнопки, указывающие на то, что можно сделать с объектами, расположенными в этих областях. Так, под областью Signals находится лишь кнопка View. Это означает, что объекты (сигналы), имена которых расположены в этой области, могут быть только рассмотрены. Под областью Filters находятся четыре кнопки, которые указывают на то, что объекты (фильтры), имена которых размещаются внутри него, могут быть:
созданы (кнопка New Design);
отредактированы (кнопка Edit Design);
просмотрены (кнопка View);
применены к одному или нескольким объектам, выделенным в области Signals (Apply).
Аналогично, с объектами области Spectra (спектрами) можно производить такие действия:
создавать (кнопка Create);
просматривать (кнопка View);
обновлять, т.е. создавать заново под тем же именем (кнопка Update).
Внутри областей обычно размещаются имена (идентификаторы) соответствующих переменных или процедур, входящих в открытый в SPTool файл с расширение .spt (имя этого файла указывается в заголовке окна SPTool).
При первом обращении в заголовке окна находится имя untitled.spt, все три области – пустые, а из кнопок, расположенных ниже, активной является только одна - New Design. Таким образом, после вхождения в оболочку SPTool доступной является только операция создания нового фильтра. Чтобы активизировать остальные кнопки, необходимо откуда-то импортировать данные о каком-то (или каких-то) сигнале (сигналах). Такие данные должны быть сформированы другими средствами, нежели сама оболочка SPTool, (например, они могут являться результатом выполнении некоторой программы MatLAB или результатом моделирования в среде SimuLink) и записаны как некоторые переменные либо в рабочем пространстве (Workspace), либо на диске в файле с расширением .mat.
Импорт сигналов
Чтобы обрабатывать какие-либо сигналы с помощью SPTool, прежде всего необходимо сформировать эти сигналы с помощью некоторой программы MatLAB, а затем импортировать полученные векторы значений этих сигналов в среду SPTool.
Допустим, что сгенерировали случайные процессы X(t), Y(t) и Y1(t) в соответствии с программой, приведенной в разд. 5.5.1. В результате в рабочем пространстве MatLAB появились векторы x, y и y1, каждый из которых содержит по 10000 элементов. Импортируем их в среду SPTool.
Войдя в среду SPTool (рис. 5.63), выберем из меню File (Файл) команду Import (Импорт). После этого откроется окно Import to SPTool, представленное на рис. 5.75.
В области Source (Источник) этого окна выбран переключатель From Workspace (Из рабочего пространства). Поэтому все имена переменных рабочего пространства представлены во второй области – Workspace Contents (Содержимое рабочего пространства). Выбрав при помощи мыши необходимую переменную, следует нажать кнопку со стрелкой, указывающей на поле ввода Date. После этого в поле ввода Date должно появиться Иям выбранной переменной.
Затем в поле Sampling Frequency (Частота дискретизации) нужно ввести желаемое значение частоты дискретизации. Фактически этим параметром задается временной промежуток Ts между отдельными значениями выбранного вектора процесса.
В поле ввода Name (Имя) необходимо указать имя, под которым введенный вектор будет записан в среде SPTool.
После этого следует нажать кнопку OK, и импорт сигнала в среду SPTool будет произведен. Окно Import to SPTool исчезнет, а окно SPTool изменит свой вид (рис. 5.77): в области Signals появится запись имени вектора сигнала, а кнопка View под этой областью станет доступной. Кроме того, станет доступной кнопка Create под областью Spectra. Это означает, что можно находить спектральные характеристики импортированного сигнала.
Повторяя эти действия, можно перенести в SPTool и другие сигналы (X и Y).
Если векторы процессов записаны в МАТ-файл, то для их импорта нужно после вызова окна Import to SPTool выбрать в нем переключатель From disk. В результате станут доступными поле ввода MAT-file Name и кнопка Browse (рис. 5.75). Введя имя необходимого МАТ-файла или отыскав МАТ-файл при помощи кнопки Browse, вновь вызываем в окно SPTool его содержимое. Последующие действия аналогичны ранее рассмотренным.
Просмотр сигналов
После импорта вектора сигнала можно воспользоваться средствами его просмотра. Для этого достаточно выделить в области Signals нужные сигналы и нажать на кнопку View под областью. В результате должно появиться окно Signal Browser.
В нашем случае, выбрав сигнал y1, получим окно, изображенное на рис. 5.78.
Как видим, центральную часть окна занимает изображение кривых зависимости выделенных процессов от времени. В заголовке графика указаны имена сигналов, изображенных на графике, размерность соответствующих векторов и частота дискретизации.
В верхнем правом углу окна расположена область Selection, с помощью которой можно изменить цвета кривых, отображаемых в окне графиков.
Справа от графического поля окна (в области Rules) размещаются инструменты, обеспечивающие точный отсчет показаний значений аргумента и процесса в двух точках графика.
Эти точки графика определяются пересечением графика процесса, имя которого стоит в списке Selection, с двумя вертикальными линиями розового цвета, расположенными в поле графиков. Изменение положения этих линий по шкале времени выполняется с помощью мыши. Подведите курсор к одной из вертикальных линий, и он примет вид руки. Нажмите левую кнопку мыши и, не отпуская ее, переместите курсор вправо или влево. При этом в области Rules будут отображаться координаты X и Y точек пересечения обеих вертикальных прямых с графиком процесса, а также разности между ними. Координата X соответствует времени, а Y – значению процесса.
На рис. 5.79 отображены все три процесса. Если нажать кнопку Slope, в поле графика появится еще одна прямая, соединяющая указанные ранее точки пересечения выбранной кривой с вертикальными линиями, а в области Rules отобразится новое число m, которое представляет собой тангенс угла наклона этой прямой к оси времени.
В верхней части окна располагаются средства управления окном и масштабами внутри графического поля.
Создание спектров сигналов
После ввода сигналов в SPTool можно найти оценки спектральных свойств этих сигналов. Для этого достаточно в области сигналов окна SPTool отметить сигнал, оценку спектральной плотности которого вы хотите получить, и нажать на кнопку Create в нижней части окна. После этого на экране появится окно Spectrum Viewer (рис. 5.80).
Окно напоминает окно Signal Browser. Верхняя и правая части этих окон практически одинаковы. Однако графическая область окна Spectrum Viewer является пустой, а слева от нее располагается область, элементы которой позволяют:
выбрать метод нахождения спектральной характеристики сигнала;
установить количество обрабатываемых точек сигнала;
установить количество точек сглаживающего окна;
выбрать тип окна сглаживания;
установить метод исключения тренда;
установить метод масштабирования графика.
Метод вычисления спектра выбирается при помощи списка Method, который содержит следующие элементы: Burg, FFT, MEM, MTM, MUSIC, Welch, YuleAR. Каждому из них соответствует метод (процедура) вычисления спектра сигнала.
Для проведения вычислений после выбора метода следует нажать кнопку Apply ниже левого поля. Например, выделим для обработки процесс Y1, нажмем кнопку Create и выберем метод FFT. После нажатия кнопки Apply окно Spectrum Viewer примет вид, представленный на рис. 5.82.
Если в окне SPTool нажать кнопку New Design, то на экране появится окно Filter Designer, показанное на рис. 5.83.
Это окно позволяет произвести расчет коэффициентов нового фильтра и затем записать эти коэффициенты в объект-фильтр. При этом оно представляет возможность устанавливать следующие параметры будущего фильтра:
прототип рассчитываемого фильтра (список Algorithm); при этом предоставляются такие варианты:
- Eguiripple FIR (КИХ-фильтры с равноотстоящими разрывами);
- Least Square FIR (КИХ-фильтры по методу наименьших квадратов);
- Kaizer Window FIR (КИХ-фильтр с окном Кайзера);
- Butterwhorth IIR (КИХ-фильтр Баттерворта);
- Chebyshev Type 1 IIR (БИХ-фильтр Чебышева 1-го типа);
- Chebyshev Type 2 IIR (БИХ-фильтр Чебышева 2-го типа);
- Elliptic IIR (Эллиптический БИХ-фильтр).
тип фильтра (список Type); представляется возможность выбора следующих типов:
- Lowpass – фильтр нижних частот;
- Highpass – фильтр верхних частот;
- Bandpass – полосовой фильтр;
- Bandstop – режекторный фильтр.
параметры полосы пропускания (область Passband); здесь можно установить, например, (для фильтра нижних частот) граничную частоту Fp полосы пропускания и максимально допустимое значение Rp подавления амплитуд внутри полосы пропускания (в децибелах);
параметры полосы задерживания (область Stopband); здесь можно установить, например, (для фильтра нижних частот) граничную частоту Fs полосы задерживания и минимально допустимое значение Rs подавления амплитуд внутри полосы задерживания (в децибелах).
Количество устанавливаемых параметров и из смысл автоматически изменяются при переходе к другому типу фильтра.
Например, установив алгоритм фильтра Баттерворта нижних часто с граничными частотами полос пропускания в 0.5 Гц и нажав кнопку Apply, получим параметры такого фильтра и запишем их в объект filt4.
Просмотр свойств фильтра
После создания фильтра можно просмотреть графики различных характеристик спроектированного и записанного фильтра. Для этого достаточно выделит имя фильтра, свойства которого нужно посмотреть, в области Filter окна SPTool, а затем нажать кнопку View под этой областью.
Например, для только что созданного фильтра filt4 мы получим окно Filter Viewr, показанное на рис. 5.85.
Как видим, в окне выведены графики АЧХ и ФЧХ фильтра.
В число средств просмотра фильтров входят (см. левую область окна Filter Viewr):
возможность вывода на экран одновременно любого сочетания таких графиков: АЧХ, ФЧХ, частотной зависимости группового времени замедления, графического представления расположения нулей и полюсов дискретной передаточной функции в Z-плоскости, графика временного отклика фильтра на импульсное единичное воздействие и графика отклика на ступенчатое единичное воздействие; для этого надо отметить галочкой с помощью мыши нужные виды графиков в области Plots (Графики) окна;
возможность изменить вид шкалы как по оси частот, так и по оси амплитуд, установить диапазон представления графиков по частоте и изменить единицы представления фазового сдвига (области Plots и Frequency Axis).
Пример вывода всех доступных графиков одновременно показан на рис. 5.86.
Применение разработанных фильтров для фильтрации
Использоватьm в среде SPTool разработанный фильтр чрезвычайно просто. Для этого в области Signals окна SPTool нужно выделить имя сигнала, который нужно преобразовать с помощью фильтра, в области Filters – имя фильтра, с помощью которого надо преобразовать этот сигнал, и нажать кнопку Apply. В результате в первой области (Signals) появится имя нового сигнала, начинающееся с сочетания sig с последующим порядковым номером.
Полученный сигнал можно просмотреть, как это было описано ранее, используя команду View.
Например, применяя только что разработанный фильтр filt4 к процессу Y1(t), получим процесс, изображенный на рис. 5.87.
Спектральные характеристики полученного процесса можно изучить, применяя область Spectra, как это было описано.
Вторичное использование результатов SPTool
При завершении сеанса работы с SPTool система запрашивает, нужно ли записать полученные результаты на диск. В случае положительного ответа она сохраняет все данные в файле с расширением .spt. Кроме того, в меню File окна SPTool предусмотрены команды записи а файл (рис. 5.74) – Save Session и Save Sassion As.
При повторном запуске SPTool можно воспользоваться результатами такого сохранения, используя команду Open Session и выбирая один из записанных SPT-файлов.
- Цифровая обработка сигналов (пакет Signal Processing Toolbox)
- 5.1. Формирование типовых процессов
- 5.1.1. Формирование отдельных импульсных процессов
- 5.1.2. Формирование колебаний
- 5.2.2. Формирование случайных процессов
- 5.3. Спектральный и статистический анализ
- 5.3.1. Основы спектрального (частотного) и статистического
- 5.3.2. Примеры спектрального анализа
- 5.3.3. Статистический анализ
- 5.4. Проектирование фильтров
- 5.4.1. Формы представления фильтров и их преобразования
- 5.4.2. Разработка аналоговых фильтров
- 5.4.3. Проектирование цифровых бих-фильтров
- 5.4.4. Проектирование ких-фильтров
- 5.5 Графические и интерактивные средства
- 5.5.1. Графические средства пакета Signal
- 5.5.2. Интерактивная оболочка spTool