Сергиенко А.Б. Цифровая обработка сигналов (2002) (1095939), страница 29
Текст из файла (страница 29)
'о') » Ьо10 огг Лз графика спектра (см. рис, 3.20 снизу) видно, что заданные при вызове функ(ии дацврц1 з параметры спектра выдержаны точно. Законен, у функции дацзрц1 з есть еще один вариант использования — она позвояет рассчитать время, за которое огибающая гауссового импульса упадет до за(анного уровня относительно максимума. При этом вместо вектора значений |ремени в качестве первого входного параметра используется строка 'сцСогт" ц сс = дацзрц1з('сцьоТГ, Тс, Ьы, Ьыг, Сре) 3ходные параметры тс, Ьы и Ьшг имеют тот же смысл, что и раньше, а Жре — уро|ень огибающей (в децибелах относительно максимума), момент достижения ко'орого нужно определить. 3озвращаемый результат Жс — момент достижения огибающей уровня Жре (то сть полуширина импульса, измеренная по уровню Жре). 3 качестве примера рассчитаем время, за которое огибающая сформированного в ~редыдущем примере импульса уменьшается на 6 дБ (примерно в два раза): » дацврц1з('сцгоЕГ, Ес, Ьы, Ьыг, -6) апз- 0.0020 1олученный результат соответствует графику сигнала, приведенному выше на ~ис.
3.20. енерация последовательности импульсов Рункция рц1 зггап служит для генерации конечной последовательности импульов (рц1ве сга>п) одинаковой формы с произвольно задаваемыми задержками Глава 3. Дискретные сигналы и уровнями. Сами импульсы могут задаваться одним из двух способов: именем функции, генерирующей импульс, либо уже рассчитанным вектором отсчетов. Если импульсы задаются именем генерирующей функции, функция рц1 вагап вызывается следующим образом: у - рц!зтгап(с, о, 'тцпс'. р1, р2, ...) Здесь в — вектор значений времени, 8 — вектор задержек, ' йпс' — имя функции, генерирующей одиночный импульс, В качестве этой функции могут использоваться, например, гессрц1в, сгтрц]з, дацврц1з, а также любые другие функции , [в том числе и «самодельныем), принимающие в качестве первого входного параметра вектор моментов времени и возвращающие вектор рассчитанных отсчетов сигнала.
Оставшиеся параметры р1, р2, ... — дополнительные, они передаются функции тцпс при ее вызове. Таким образом, функция рц1 вагап в данном варианте использования генерирует выходной сигнал следующим образом: у (цпс(т-й1), р1. р2,,) + ... тцпс(С-й2). р1, р2..„) + ... Гцпс(С-ЙЗ).
р1, р2....) + ... Если т) — двухстолбцовая матрица, то первый столбец трактуется как задержки импульсов, а второй — как их уровни. При этом выходной сигнал формируется так: у О(1,1] * тцпс(т-(](1,2). р1. р2....) + .. 8(2, 1) * тцпс(т-т)(2,2), р1, р2, ...) Ц(3,1) * Гцпс(С-ЖЗ,2), р1. р2...,) +,. В качестве примера сформируем последовательность из пяти симметричных треугольных импульсов, интервалы между которыми линейно увеличиваются, а амплитуды экспоненциально уменьшаются.
Частоту дискретизации выберем равной 1 кГц. Длительность импульса — 20 мс. Результат показан на рис, 3.21: » 5з - 1еЗ; $ частота дискретизации » С - 0:1/5з:0.5: $ дискретное времЯ » Сац - 20е-3; в длительность импульса » о' - [20 80 160 260 3803' * 1е-3; Д задержки импульсов » 0(:,2] - 0.8,"(О гд)': в' амплитудь< импульсов » у - рц1втгап(1, ц.
'тг]рц1з'. тац): » р1о1(1, у) Если для генерации одиночного импульса нет готовой функции, можно рассчитать вектор отсчетов импульса, а затем использовать второй вариант вызова функции рц15тгап: У - рц1зьгап(1. ц, р, тв, 'веслао'] Смысл входных параметров В и 8 тот же, что и раньше. Вектор р должен содержать отсчеты одиночного импульса, а параметр тз указывает частоту дискретиза- Ж6З дискретные сигналы в ВдАТЬАВ ции, использованную при расчете этого вектора. Считается, что первый отсчет из вектора р соответствует нулевому моменту времени.
0.9 0.8 0.7 0.6 0.5 0.4 0.3 0,2 0.1 0 0.1 0.2 0.3 0.4 0.5 Рис. 3.21. Последовательность треугольных импульсов, сформированная с помощью функции рцМгап Поскольку частота Гз может не совпадать с шагом значений вектора Ж (в принципе они даже не обязаны представлять собой равномерную последовательность) и задержки из вектора б тоже не обязательно кратны этому шагу, для пересчета задержанных импульсов к сетке моментов времени с в общем случае необходимо использование интерполяции. Метод интерполяции может быть явно задан с помощью строкового параметра 'жетлоб'.
Возможны все методы, поддерживаемые функцией 1псегр1: 'пеагевт', '11пеаг', 'зр11ле', 'рсл1р', 'сц01с' и 'ч5сц01с'. Параметры тв и 'весйоб' при вызове могут опускаться, в этом случае используются их значения по умолчанию: Гв 1 и 'вес)юб' '11пеаг'. В качестве примера сформируем последовательность из шести импульсов, имеющих форму одного периода функции в)п~. Пусть длительность импульса равна 60 мс, а частота его дискретизации — 400 Гц.
Расстояние между центрами импульсов будет одинаковым и равным 64 мс, а частота дискретизации выходного сигнала — 1 кГц. Импульсы будут экспоненциально затухать с ростом номера. Результат показан на рис. 3.22. » Ж генерируеи вектор отсчетов одиночного импульса » ГвО - 400; Ж частота дискретизации импульса » сац = бОе-3; Ж длительность иипульса » СО - 0: 1/гвОгдац; Ж дискретное времЯ для импульса » вО - в1п(р1*СО/Сац)."2: Ж вектор отсчетов импульса » Ж генерируем последовательность иипульсов » Яв - 1е3: Ж частота дискретизации последовательности » 1 0:1/Яв:0.5; Ж дискретное времЯ для последовательности » б = ( 1:б)' * 64е-3; Ж задержки импульсов 164 Глава 3. Дискретные сигналы » О(:,2) О.б."(О:5)': 2 амплитуды импульсов » Ж последовательность иипульсов » у = ри)зсгап(т, О, зО, ЕзО): » р)ос(1.
У) 0.9 0.9 0.7 О.б О.б 0.4 0.3 0.2 0.1 0 0.1 0.2 0.3 0.4 О.б Рис. 3.22. Последовательность импульсов, сформированная функцией рц)втгап из вектора отсчетов одиночного импульса Функции генерации периодических сигналов Эти функции, входящие в пакет В)япа! Ргосезз)пя, позволяют формировать отсчеты периодических сигналов различной формы: ь) зссаге — последовательность прямоугольных импульсов; ь) знксоос)) — последовательность треугольных импульсов; (з 01 г1 с — функция Дирихле (периодическая Гйп-ффунКция. Последняя рассматриваемая в данном разделе функция сгйгр генерирует не периодический сигнал, а колебания с меняющейся частотой. Далее эти функции рассматриваются более подробно.
Последовательность прямоугольных импульсов Для формирования последовательности прямоугольных импульсов служит функция зоиаге. В простейшем случае эта функция принимает один входной параметр — вектор значений времени с: у - здсаге(т) Генерируемая при этом последовательность импульсов имеет период 2я и скважность 2 (то есть длительность импульса равна половине периода). Последовательность является двуполярной — сигнал принимает значения -! и !. Сформировать последовательность с периодом Т можно следующим образом: у - зсоаге(2*р1*т/Т) ЖЕБ Яискретные сигналы в МАТ(АВ С помощью второго входного параметра г(цсу можно регулировать скважность получаемой последовательности. Однако этот параметр задает не саму скважность, а обратную ей величину — коэффициент заполнения (в процентах), то есть отношение длительности импульса к периоду: у - вцнаге(С ((ОСу) По умолчанию значение параметра г(нСу равно 50, то есть генерируется меандр.
ВНИМАНИЕ Обратите внимание на то, что значение параметра босу задается именно в процентах, а не в дробных единицах, В качестве примера сформируем последовательность однополярных прямоугольных импульсов с амплитудой 3 В, частотой следования 50 Гц и длительностью 5 мс. Будем использовать частоту дискретизации 1 кГц и временной интервал -10 ... 50 мс (рис. 3.23): » гв = 1е3; Ж частота дискретизации » С - - 10е-3; 1/55:50е-3; Ж дискретное врекЯ »Д-3: Ж акплкгуда » 10 - 50; Ж частота следованиЯ импульсов » Сац = 5е-3; Ж длительность ккпульсов » 5 - (влнаге(2*р1*С*10, 10*Сан*100) + 1) * Л/2: » р)ОС(С. 5) » у)(н((0 5)) 4.5 1.5 0.5 0 -0.01 0 0,01 0.02 О.ОЗ 0.04 0.05 Рис.
3.23. Последовательность прямоугольных импульсов, полученная с помощью функции вццаге ЗАМЕЧАНИЕ На рис. 3.23 видно, что импульсы имеют неодинаковую ширину, Поскольку длительность импульса в данном случае равна ровно вяти интервалам дискретизации (5 мс х 1 кГц - 5), из-за погрешностей представления значений времени в компьютере каждый импульс может быть представлен либо пятью, либо шестью ненулевыми отсчетами. 1ВЕ Глава 3. Дискретные сигналы Последовательность треугольных импульсов Для формирования последовательности треугольных импульсов служит функция заысооФ. В простейшем случае эта функция принимает один входной параметр — вектор значений времени 1г у = зантоотйт) Генерируемая при этом последовательность импульсов имеет период 2к. Па протяжении периода сигнал линейно нарастает от -1 до 1.