EngeePhased.LinearFMWaveform
线性频率调制 (LFM) 信号。
描述
线性波形(LinearFMWaveform)系统对象可创建 LFM 脉冲信号。要生成信号,请执行以下步骤:
-
定义并配置调制波形。
-
调用 step 根据 EngeePhased.LinearFMWaveform 的属性生成信号。step 的行为针对工具栏中的每个对象。
与其使用 step 方法执行系统对象定义的操作,不如像调用函数一样调用带参数的对象。例如,y = step(obj,x) 和 y = obj(x) 执行等价操作。如果 step 方法的唯一参数是 System 对象本身,则应将 y = step(obj) ` 替换为 y = obj() 。
|
语法
系统对象的构造函数可以通过以下方式调用:
-
object = EngeePhased.LinearFMWaveform
创建一个 LFM 信号系统对象。该对象以 LFM 波形生成脉冲。示例
target = EngeePhased.LinearFMWaveform
-
object = EngeePhased.LinearFMWaveform(Name,Value)
创建一个 LFM 信号对象,并将每个指定属性 Name(名称)设置为指定的 价值观(值)。您可以以任意顺序(Name1
,Value1
,…,NameN
,ValueN
)指定其他参数作为名-值对。示例
target = EngeePhased.LinearFMWaveform(OutputFormat=Pulses, CoefficientsOutputPort=true)
属性
采样率 — 采样率
1e6(默认值)
Details
信号的采样频率,指定为正标量。采样频率与脉冲重复频率(PRF)之比必须是正整数,即每个脉冲必须包含整数个采样点。
测量单位为赫兹。
DurationSpecification -
设置脉冲持续时间的方法
脉冲宽度(默认) | `占空比
Details
设置脉冲宽度的方法,指定为`脉冲宽度`或`占空比`。该属性定义设置脉冲宽度的方法。将此属性设置为 "脉冲宽度 "时,可直接使用 PulseWidth 属性设置脉冲宽度。将此属性设置为 "占空比 "时,可根据 PRF 和 DutyCycle 属性的值设置脉冲持续时间。脉冲宽度等于占空比除以_PRF_的倒数。
*脉冲宽度
脉冲宽度
`50e-6(默认值)
Details
以正标量形式指定每个脉冲的持续时间(秒)。该值必须满足 PulseWidth < = 1./PRF
参数的要求。
占空比 -
信号速率的倒数
0.5(默认值)
Details
占空比的倒数值,以从 0
到 1
的标量形式指定。如果 DurationSpecification 属性设置为 "占空比",则此属性适用。脉冲宽度等于 DutyCycle 属性的值除以 PRF 属性的值。
PRF -
脉冲重复率
10e3(默认值)
Details
脉冲重复频率 PRF,指定为标量或字符串矢量。脉冲重复间隔 PRI 是脉冲重复频率 PRF 的倒数。PRF 必须满足这些限制条件:
-
PRF 与 PulseWidth 的乘积必须小于或等于 1。这一条件表示脉冲宽度必须小于一个脉冲重复间隔。对于相位编码波形,脉冲宽度等于芯片宽度与芯片数量的乘积。
-
采样率与 PRF 的任何元素之比必须是整数。这个条件表达了一个脉冲重复间隔的采样个数必须是整数的要求。
您可以单独使用属性设置或结合 step 方法的 prfidx 输入参数使用属性设置来选择 PRF
值。
-
如果 PRFSelectionInputPort 为 "false",则只能使用属性设置 PRF。您可以
-
通过指定 PRF 为正实数标量来实现常数 PRF。
-
将 PRF 指定为具有正实数值的字符串向量,从而实现步进式 PRF。但这次要执行 step 方法,通过传递一个指定 PRF 向量中索引的参数来选择 PRF。
-
-
当 PRFSelectionInputPort 为 "true "时,可以通过将 PRF 指定为具有正实数的字符串向量来实现可选择的 PRF。但此时,在执行 step 方法时,通过传递一个指定 PRF 向量中索引的参数来选择 PRF。
在所有情况下,如果 OutputFormat 属性设置为 "Samples",输出样本的数量都是固定的。如果使用 PRF 变量,且 OutputFormat 属性设置为 "Pulses",则样本数可能会不同。
测量单位为赫兹。
PRFSelectionInputPort -。
PRF 授权选择输入
true
| false (default)
Details
启用指定为 true
或 false
的 PRF 选择输入。将此属性设置为 false
时,step 方法将使用 PRF 属性中设置的值。当此属性设置为 true
时,将向 step 方法传递一个索引参数,以便从 PRF 向量中选择一个值。
SweepBandwidth -
LFM 信号频率偏差
1e5(默认值)
Details
正标量的频率偏差(赫兹)。默认值相当于 100
kHz。
SweepDirection 调制方向
调制方向
上(默认)` | `下
Details
将线性调频扫描的方向指定为 "上 "或 "下 "之一。
SweepInterval -
调制间隔位置
正对称
Details
如果将此属性设置为 "正",振荡图将在从 "0 "到 "B "的区间内扫描,其中 "B "是 SweepBandwidth 属性的值。如果将此属性设置为 "对称",振荡图将在 "B/2 "到 "B/2 "的区间内展开。
*包络
低频调制信号的包络函数
矩形(默认)` |`高斯
Details
将包络函数指定为 "矩形 "或 "高斯 "之一。
频率偏移源 — 频率偏移源 输入端口
Details
指定为 Property
或 Input port
的振荡图的频率偏移源。
-
如果将此属性设置为
Property
,偏移量将由属性 FrequencyOffset 的值决定。 *频率偏移. -
如果将此属性设置为 "输入端口",则 FrequencyOffset 由输入参数 freqoffset 决定。
频率偏移 — 频率偏移
0 Hz(默认)
| `标量
Details
频率偏移,单位 Hz,以标量形式指定。
依赖关系
如果 FrequencyOffsetSource 属性设置为 "输入端口",则会应用该属性。
OutputFormat -
输出格式
脉冲(默认) | `样本
Details
指定输出格式为 "脉冲 "或 "样本"。当 OutputFormat 属性设置为 "Pulses"(脉冲)时,阶跃方法的输出为多个脉冲,由 NumPulses 属性值指定。如果在仿真过程中改变脉冲重复率,每个脉冲的采样数目也会发生变化。
如果 OutputFormat 属性设置为 "Samples"(采样),阶跃方法的输出将以多个采样的形式出现。在这种情况下,输出样本数等于 NumSamples 属性的值,并且是固定的。
NumSamples -
输出信号的采样数
100(默认值)
Details
以正整数指定步进方法输出端的数据样本数。此属性仅在 OutputFormat 属性设置为 Samples
时适用。
NumPulses - 输出脉冲数 100(默认值)
Details
以正整数指定步进方法输出中的样本数。此属性仅在 OutputFormat 属性设置为 Samples
时适用。
PRFO 输出端口 -
打开 PRF 输出
true
| false (default)
Details
将此属性设置为 true
,以使用 step 方法参数输出当前脉冲的 PRF。
依赖关系
此属性只有在 OutputFormat 属性设置为 Pulses
时才能使用。
系数输出端口 -
打开匹配滤波器系数的输出端口
true
| false (default)
Details
启用匹配滤波系数输出端口,指定为 false
或 true
。当此属性设置为 false
时,对象不提供仿真过程中使用的匹配滤波系数输出。当此属性设置为 "true "时,对象将提供仿真过程中使用的匹配滤波系数的输出。
示例
绘制 LFM 波形和频谱* Plot LFM Waveform and Spectrum (绘制 LFM 波形和频谱
创建并绘制升采样 LFM 脉冲波形。采样频率为 500 kHz,频率偏差为 200 kHz,脉冲宽度为 1 毫秒(等于脉冲重复间隔)。
fs = 500e3
sLFM = EngeePhased.LinearFMWaveform(
SampleRate=fs,
SweepBandwidth=200e3,
PulseWidth=1e-3,
PRF=1e3
);
获取并绘制 LFM 波形的实部。
lfmwav = step(sLFM);
nsamp = size(lfmwav,1);
t = [0:(nsamp-1)]/fs;
plot(t*1000,real(lfmwav))
xlabel('Time (millisec)')
ylabel('Amplitude')
grid
构建复信号的傅立叶变换。
using FFTW
nfft = nextpow(2,nsamp)
new_len = nextpow(2,nsamp)
lfmwav = [lfmwav;zeros(new_len - length(lfmwav))]
Z = fft(lfmwav,1)
fr = (0:(nfft/2-1)) /nfft*fs
plot(fr./1000,abs.(Z[1:Int(nfft/2)]),lab="" )
xlabel!("Частота кГц")
ylabel!("Амплитуда")
构建函数的频谱图,窗口大小为 64 个样本,重叠率为 50%。
import DSP:hamming
nfft1 = 64
nov = floor(Int,0.5*nfft1)
imag1 = spectrogram(real.(lfmwav),hamming(nfft1),nov,nfft1;fs=fs,freqloc="yaxis")
xlabel!("Время, с")
plot!(imag1,colorbar_title = "СПМ (дБ/Гц)")
ylabel!("Частота, Гц")
该图显示了信号频率的增加。