Pulse Compression Library

Библиотека спецификаций импульсного сжатия

  • Библиотека:
  • Radar Toolbox

  • Pulse Compression Library block

Описание

Блок Pulse Compression Library выполняет обработку области значений с помощью импульсного сжатия. Методы импульсного сжатия включают согласованную фильтрацию и обработку растяжения. Блок позволяет вам создать библиотеку различных спецификаций импульсного сжатия. Это выход - реакция фильтра, состоящая из матрицы или трехмерного массива с строками, представляющими элементы области значений.

Порты

Вход

расширить все

Входной сигнал, определенный как со сложным знаком K L матрицей, со сложным знаком K N матрицей или со сложным знаком K N L массив. K обозначает количество быстрых выборок, L количество импульсов, и N количество каналов. Каналы могут быть элементами массива или балками.

Типы данных: double
Поддержка комплексного числа: Да

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

Типы данных: double

Выход

расширить все

Выходной сигнал, возвращенный как со сложным знаком M L матрицей, со сложным знаком M N матрицей или со сложным знаком M N L массив. M обозначает количество быстрых выборок, L количество импульсов, и N количество каналов. Каналы могут быть элементами массива или балками. Количество размерностей Y соответствует количеству размерностей в X.

Когда выполняется согласованная фильтрация, M равно количеству строк в X. Когда выполняется обработка растяжения, и вы задаете значение для RangeFFTLength Пара "имя-значение" M устанавливается в значение RangeFFTLength. Когда вы не задаете RangeFFTLengthM равно количеству строк в X.

Типы данных: double
Поддержка комплексного числа: Да

Выборки областей значений, возвращенные как действительный вектор- M, где M - количество строк Y. Элементы этого вектора обозначают области значений, соответствующую строкам Y.

Типы данных: double

Параметры

расширить все

Скорость распространения сигнала, заданная как реальная положительная скалярная величина. Значением по умолчанию скорости света является значение, возвращаемое physconst('LightSpeed'). Модули указаны в метрах в секунду.

Пример: 3e8

Типы данных: double

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

{{Waveform 1 Specification},{Waveform 2 Specification},{Waveform 3 Specification}, ...}
Этот блок поддерживает четыре встроенные формы сигналов, а также позволяет вам задавать пользовательские формы сигналов. Каждый встроенный спецификатор формы волны состоит из идентификатора формы сигнала, за которым следуют несколько пары "имя-значение", которые устанавливают свойства формы сигнала.

Встроенные формы волны

Тип формы волныИдентификатор формы волныФорма волны аргументов пары "имя-значение"
Линейный FM'LinearFM'См. Аргументы линейной формы волны FM
Фазовое кодирование'PhaseCoded' См. Аргументы в форме волны с фазовым кодированием
Прямоугольный'Rectangular'См. Прямоугольный сигнал Аргументов
Ступенчатый FM'SteppedFM'См. «Ступенчатая FM-сигнал» Аргументы

Вы можете создать пользовательскую форму волны с пользовательской функцией. Первым входным параметром функции должна быть частота дискретизации. Используйте указатель на функцию вместо идентификатора формы волны в первой камере спецификации формы волны. Остальные камеры содержат все входные аргументы функции, кроме частоты дискретизации. Задайте все входные параметры в том порядке, в котором они передаются в функцию. Функция должна иметь по крайней мере один выходной аргумент, чтобы вернуть выборки каждого импульса в вектор-столбец. Вы можете создавать пользовательские формы сигналов только, когда вы задаете Simulate using Interpreted Execution.

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

{{Processing 1 Specification},{Processing 2 Specification},{Processing 3 Specification}, ...}
Каждая спецификация обработки указывает, какой тип обработки применять к форме волны и аргументы, необходимые для обработки.
{processtype,Name,Value,...}
Значение processtype является либо 'MatchedFilter' или 'StretchProcessor'.

  • 'MatchedFilter' - аргументы пары "имя-значение":

    • 'Coefficients', coeff - задает коэффициенты согласованного фильтра, coeff, как вектор-столбец. Когда не указано, коэффициенты вычисляются из WaveformSpecification свойство. Для ступенчатой FM волны, содержащей несколько импульсов, coeff соответствует каждому импульсу до тех пор, пока импульсный индекс, idx изменения.

    • 'SpectrumWindow', sw - задает окно взвешивания спектра, sw, применяется к форме волны. Значения окна являются одним из 'None', 'Hamming', 'Chebyshev', 'Hann', 'Kaiser', и 'Taylor'. Значение по умолчанию 'None'.

    • 'SidelobeAttenuation', slb - задает окно ослабления бокового колеса, slb, окна Чебышёва или Тейлора как положительная скалярная величина. Значение по умолчанию является 30. Этот параметр применяется, когда вы задаете 'SpectrumWindow' на 'Chebyshev' или 'Taylor'.

    • 'Beta', beta - задает параметр, beta, что определяет ослабление бокового колеса окна Кайзера как неотрицательный скаляр. Значение по умолчанию является 0,5. Этот параметр применяется, когда вы задаете 'SpectrumWindow' на 'Kaiser'.

    • 'Nbar', nbar - задает количество почти постоянных боковых элементов уровня, nbar, смежный с основной долей в окне Тейлора в виде положительного целого числа. Значение по умолчанию является 4. Этот параметр применяется, когда вы задаете 'SpectrumWindow' на 'Taylor'.

    • 'SpectrumRange', sr - задает область спектра, sr, на который наносится окно спектра в виде вектора 1 на 2, имеющего форму [StartFrequency EndFrequency]. Значение по умолчанию [0 1.0e5]. Этот параметр применяется, когда вы устанавливаете 'SpectrumWindow' любому значению кроме 'None'. Модули указаны в Гц.

      Оба StartFrequency и EndFrequency измеряются в области основной полосы [- Fs/2 Fs/2]. Fs - частота дискретизации, заданная SampleRate свойство. StartFrequency не может быть больше EndFrequency.

  • 'StretchProcessor' - аргументы пары "имя-значение":

    • 'ReferenceRange', refrng - определяет центр интересующих областей значений, refrng, как положительная скалярная величина. The refrng должен находиться в пределах однозначной области значений одного импульса. Значение по умолчанию является 5000. Модули измерения указаны в метрах.

    • 'RangeSpan', rngspan - определяет диапазон интересующих областей значений. rngspan, как положительная скалярная величина. Диапазон области значений центрируется на область значений значении, заданном в 'ReferenceRange' параметр. Значение по умолчанию является 500. Модули измерения указаны в метрах.

    • 'RangeFFTLength', len - задает длину БПФ в области области значений, len, как положительное целое число. Если не задано, значение по умолчанию совпадает с длиной входных данных.

    • 'RangeWindow', rw задает окно, используемое для обработки области значений, rw, как один из 'None', 'Hamming', 'Chebyshev', 'Hann', 'Kaiser', и 'Taylor'. Значение по умолчанию 'None'.

Типы данных: cell

Выберите этот параметр, чтобы наследовать частоту дискретизации от вышестоящих блоков. В противном случае задайте частоту дискретизации, используя параметр Sample rate (Hz).

Типы данных: Boolean

Задайте скорость дискретизации сигнала как положительная скалярная величина. Модули указаны в Гц.

Зависимости

Чтобы включить этот параметр, снимите флажок Inherit sample rate.

Типы данных: double

Симуляция блоков, заданное как Interpreted Execution или Code Generation. Если вы хотите, чтобы ваш блок использовал MATLAB® интерпретатор, выберите Interpreted Execution. Если вы хотите, чтобы ваш блок выполнялся как скомпилированный код, выберите Code Generation. Скомпилированный код требует времени для компиляции, но обычно запускается быстрее.

Интерпретированное выполнение полезно, когда вы разрабатываете и настраиваете модель. Блок запускает базовую системную object™ в MATLAB. Вы можете быстро изменить и выполнить модель. Когда вы удовлетворены вашими результатами, можно запустить блок с помощью Code Generation. Длинные симуляции выполняются быстрее с сгенерированным кодом, чем при интерпретированном выполнении. Можно запускать повторные выполнения без перекомпиляции, но если вы меняете какие-либо параметры блоков, то блок автоматически перекомпилируется перед выполнением.

Эта таблица показывает, как параметр Simulate using влияет на общее поведение симуляции.

Когда Simulink® модель находится в Accelerator режим блока, заданный с помощью Simulate using, переопределяет режим симуляции.

Режимы ускорения

Симуляция блоковПоведение симуляции
NormalAcceleratorRapid Accelerator
Interpreted ExecutionБлок выполняется с помощью интерпретатора MATLAB.Блок выполняется с помощью интерпретатора MATLAB.Создает независимый исполняемый файл из модели.
Code GenerationБлок скомпилирован.Все блоки в модели скомпилированы.

Для получения дополнительной информации смотрите Выбор режима симуляции (Simulink).

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.
Введенный в R2021a