Сергиенко А.Б. Цифровая обработка сигналов (2002) (1095939), страница 33
Текст из файла (страница 33)
Воспроизводимые данные у должны быть вещественными и лежать в диапазо- не -1...1. Значения, выходящие из этого диапазона, «обрезаются» и делаются равными й1. Выходных параметров у функции нет. После вызова она передает вектор у зву- ковой карте для воспроизведения и сразу же, не дожидаясь окончания звука, возвращает управление командной строке МАТЬАВ. Глава 3. Дискретные сигналы Если следующая команда зсвпп будет использована до окончания предыдущего звука, будет выдано сообщение об ошибке «(]паЪ|е то ореп зоцпс[ т[еч(се» (Невозможно открыть звуковое устройство). Функция аоипбвс Функция зоаппзс (зоцпс[ зса]ед) отличается от функции зоцпо лишь тем, что производит предварительное масштабирование отсчетов сигнала. Для управления масштабированием добавляется четвертый входной параметр з 1тв: зоцпсзс(У, Е5, Ь115, 5 11в) Здесь входные параметры у, Ез, Ьттз имеют то же назначение, что и для функции зовпп.
Параметр з 11в должен быть двухэлементным вектором [з 1си з Идя], он задает диапазон значений, который будет линейно преобразован к интервалу — 1...1. Преобразование, таким образом, производится по формуле 2у (з~ »»»вк) У = з как зь При з 1тв - [.1 1] функция зовпт(зс эквивалентна функции зсцпф Параметры з )тв, Ьт1з и Ез при вызове можно опускать, при этом используются их значения по умолчанию: Ез = 0192, Ь(т Ьз = 16 и з 11в = [в1 п(у) вах(у) ]. Значение по умолчанию для з 1тв обеспечивает точное приведение полного диапазона значений сигнала к интервалу -1...1. Функция в((астр!ау Наконец, третья функция, предназначенная для воспроизведения звука, имеет имя иачр1ау иачр1ау(у. Ез.
'воое') Входные параметры у и Ез имеют тот же смысл, что и у предыдущих функций, а параметр 'воде' управляет режимом воспроизведения. Этот параметр может принимать два значения: (3 'зупс' — синхронный режим, означающий, что функция вернет управление интерпретатору МАТ[.АВ только после окончания звука; П 'азупс' — асинхронный режим, при котором функция передает данные для воспроизведения звуковым драйверам Ж(пт[отчз и сразу же возвращает управление системе МАТ[.АВ, не дожидаясь окончания звука. Параметры 'вопе' и Ез при вызове можно опускать, при этом используются их значения по умолчанию: Ез - 11025 и 'вопе' - 'азупс'.
Синхронный режим позволяет организовать в МАТ[.АВ-программе выдачу нескольких звуков подряд, не заботясь о расчете и соблюдении временных интервалов между соответствующими командами. В асинхронном же режиме можно одновременно с воспроизведением звука продолжать выполнение программы. К сожалению, при этом нет возможности программным путем проверить, закончилось ли воспроизведение звука. 185 Получение данных из внешних источников ЗАМЕЧАНИЕ Такая программная проверка будет возможна, если для воспроизведения звука воспользоваться средствами пакета РаСа Асде1з1цоп (краткая информация о его возможностях приводится далее). Запись звука Функция иаугесогб позволяет записать звук в переменную МАТ).АВ с помои1ью звуковой карты компьютера: у - иаугесогС1п, Гз, сП.
'стуре') Здесь и — число записываемых отсчетов, Гз — частота дискретизации в герцах, ся — число каналов записи, 'стуре' — тип записываемых данных. Возвращаемый результат у — матрица, каждый столбец которой соответствует одному каналу записи. При стереозаписи первый столбец — левый канал, второй — правый. Для параметра 'стуре' возможны следующие значения: О 'босЫе' — 16-битовая запись, данные масштабируются к диапазону — 1...1 и представляются в 8-байтовом формате с плавающей запятой; 12 'з1пд!е' — 16-битовая запись, данные масштабируются к диапазону -1...1 и представляются в 4-байтовом формате с плавающей запятой; О '1пт16' — 16-битовая запись, данные представляются в двухбайтовом цело- численном формате (диапазон -32 768...32 767); 12 'с1пт8' — 8-битовая запись, данные представляются в однобайтовом беззнаковом целочисленном формате (диапазон 0...255, нулевому напряжению на входе соответствует значение,128); Входные параметры 'стуре', сп и Гз можно опускать, при атом будут использоваться их значения по умолчанию: Гз = 11025, сп - 1, 'стуре' - 'боиЫе'.
Готовые записи сигналов В разделе Аиою базовой библиотеки МАТ).АВ и в пакете расширения 81япа1 Ргосеаз1пй имеется несколько готовых записей сигналов, сохраненных в виде МАТ-файлов. Эти сигналы используются в качестве исходных данных в примерах, приводимых в документации, и демонстрационных программах. Возможно, вам они пригодятся для тестирования собственных программ и алгоритмов. Сведения об имеющихся сигналах приведены в табл. 3.1. Таблица 3.1. Записи сигналов, имеющиеся в МАТЮКАВ родолжение 1ав Глава 3. Дискретные сигналы Таблица 3.1 (продолжение) Характер звука Имз файла Пакет Име пере- Частота дискрети- зации, Гц Размер меииои 8192 У 42 028 (5,1 с) Удар гонга МАТ1.АВ оопп.
гпа! Хор 8192 У 73 113 (8,9 с) МАТ1.АВ МАТ1.АВ 'пеппе!.гпа! !апов!ег.гпа! Смех 8192 У 52 634 (6,4 с) Тон с меняющейся частотой, затем звук удара 8192 10001 (1,2 с) МАТ1.АВ зр!а1.гпа! Гудок поезда 8192 У 12 880 (1,5 с) МАТ1.АВ 1гаккгпа! гпйплпа1 Произнесенное слово «МАТ(.АВ» 7418 4001 (0,54 с) з11 Ь Данный сигнал имеет очень забавную спектрогрзмму 8192 19661 (2,4 с) нсоз!9лпа! ЯР нс0519 Разработать драйверы для других устройств можно с помощью Рага Асошя(1оп Тоо)Ьох Ас)ар(от К11; дополнительную информацию можно получить на сайте фирмы ТЬе Ма(ЬЮог1сз, 1пс.
по адресу пир://ааа.!пай!аогкв.согп/ргооосгз/оац/. Пакет Рата Асг(шаг(оп (разумеется, в сочетании с перечисленным оборудованием) предоставляет следующие возможности: (3 аналоговый ввод и вывод информации в реальном масштабе времени, включая воэможность одновременного выполнения аналого-цифрового и цифроаналогового преобразований; (3 цифровой ввод и вывод информации в реальном масштабе времени; (3 запись вводимых данных на диск либо их загрузка непосредственно в переменную МАТ1.АВ! (3 буферизациго данных для осуществления ввода в фоновом режиме; (3 триггеры, управляемые программно или аппаратно генерируемыми событиями (это дает возможность осуществлять синхронизацию — например, запус- Пакет расширения 0а1а Асцц1а16от1 Пакет расширения РаСа Асг(шяс(оп позволяет непосредственно из МАТ(.АВ ра- ботать с оборудованием аналогового и цифрового ввода/вывода данных.
В ком- плект поставки входят драйверы для следующих устройств: (3 звуковых карт, поддерживаемых операционной системой Ж(пг(оаз; 0 плат фирмы Хаг(опа1 1пзгпгшеп(з серий Е и 1200; (3 плат фирмы СошрпгегВоагс(з; (3 'тгХ1-модулей Е1432А/ЗЗА/34А фирмы Ая(1епс ТесЬпо!оя(ез, 1В7 Получение данных из внешних источников кать процесс аналогового ввода при достижении входным сигналом некоторого уровня). Подробно рассматривать пакет Паса Асчц1з1г1оп в рамках данной книги не представляется возможным, поэтому покажем лишь пример его использования в двух демонстрационных программах, поставляемых в составе пакета.
Первая программа реализует осциллограф, позволяя просматривать графики сигналов, получаемых от имеющихся в системе устройств ввода данных. Данная программа может быть вызвана из командной строки (ее имя — Сайзсоре ) либо из окна демонстрационных программ МАТЮКАВ (команда меню Не!р» Оегпов, раздел Тоо!Ьохев/Оа1а Асцц!вйюп, программа Ехагпр!е ОвсШовсоре). Вид окна осциллографа приведен на рис. 3.34.
Подходящего источника сигнала под рукой не оказалось, поэтому наблюдаются шумы и наводки, поступаюп1ие на линейный вход левого канала звуковой карты компьютера. Из графика видно, что основной период паводок равен 20 мс — это означает, что их главным источником является питающая сеть, напряжение которой имеет частоту 50 Гц. Уровень паводок составляет примерно 11 мВ, поэтому для того, чтобы их увидеть на графике, понадобилось перевести переключатель вертикального масштаба в положение Ац1ове1 (при этом у выводимой слева оцифровки вертикальной оси оказались вза кадром» знак «минус», ноль и десятичная точка). Рно, 3.34. Ооциллограф — демонстрационный пример пакета Оа1а Асйц~вюоп Второй пример — генератор сигналов различной формы. Имя программы для вызова из командной строки — овдтсп9еп.
При использовании окна демонстрационных программ МАТЮКАВ после вызова команды меню Не!р» 1зегпов необхЬ- 188 Глава 3. дискретные сигналы димо выбрать раздел Тоо1оохеа/0а1а Асцо1зй1оп и программу Ехагпр1е Рцпсйоп Оепегасог). Вид окна генератора приведен на рис. 3.35. В списке, расположенном в левой части окна над полем графика, выбирается тип генерируемого сигнала: П 81пе — гармонический сиги;у; О 81пс — периодическая з|пс-функция (функция Дирихле); П Зг1иаге — последовательность прямоугольных импульсов; О Тг1апо1е — последовательность симметричных треугольных импульсов; С3 БаилооФ вЂ” последовательность пилообразных импульсов; О р1апиопт — случайный сигнал; 1.] СП1гр — колебания с плавно меняющейся частотой. Рис. 3.33.
Функциональный генератор — демонстрационный пример пакета Оа1а Аспц1зн1ол Набор параметров, настраиваемых в нижней части окна, зависит от выбранного типа сигнала. ГЛАВА 4 Дискретные системы Теоретические сведения, приводимые в данной главе, в литературе довольно часто фигурируют под заголовками «Дискретные фильтры», «Принципы цифровой фильтрации» и т. п. (см., например, 11, 2, 11).
В принципе «дискретная система> и «дискретный фильтр» — это одно и то же, однако понятие «фильтр», сознательно или подсознательно, довольно тесно связывается с системами, которые одни частоты пропускают, а другие задерживают (см. рис. 2.5 в главе 2, где были показаны идеализированные АЧХ фильтров такого рода). Такой подход может создать ложное, ограниченное представление о назначении и возможностях дискретных линейных систем, которые способны выполнять и иные задачи, нежели выделение иэ сигнала определенной полосы частот. По этой причине в названии данной главы использован термин «дискретные системы». Однако в тексте главы слова «фильтр» и «система» будут использоваться как синонимы.