以下是SDIF算法的具体实现步骤: (1)计算相邻脉冲到达时间的差值,并统计不同差值出现的次数,最终绘制出一个层次的柱状图。 (2)若只有一个pri值大于检测门限值,则按步骤(3)进行顺序检索,认为这个时间差值是可能的pri值。若存在大于门限的多个pri值,则下一级柱状图继续计算,重复执行步骤(2),不执行序列搜索。 (3)若能成功分离出符合 PRI 值的数列,则从脉冲数列扣除此脉冲,并执行步骤(2)至(3),直到分析出所有脉冲为止。 (4)最后进行参差分析处理。用MATLAB做仿真仿真实验: 输入信号为到达时间顺序相互叠加的3个固定重复周期雷达信号,脉冲重复周期 PRI 依次为210US、290US、370US,各序列脉冲初始点到达时间分别为101US、2US、77US,均无脉冲损失,观测时间均为0.1S。其中检测极限取值范围最大可调节系数为0.5。并画出图形
时间: 2024-03-29 08:41:44 浏览: 159
以下是SDIF算法的MATLAB实现代码,注释中有具体步骤说明:
```matlab
% 输入信号为到达时间顺序相互叠加的3个固定重复周期雷达信号
% 脉冲重复周期 PRI 依次为210US、290US、370US
% 各序列脉冲初始点到达时间分别为101US、2US、77US
% 均无脉冲损失,观测时间均为0.1S
% 检测极限取值范围最大可调节系数为0.5
% 构造输入信号
PRI = [210, 290, 370];
t = 0:0.1:0.9; % 观测时间
t1 = mod(101, PRI(1)); % 第一个序列脉冲初始点到达时间
t2 = mod(2, PRI(2)); % 第二个序列脉冲初始点到达时间
t3 = mod(77, PRI(3)); % 第三个序列脉冲初始点到达时间
signal = zeros(size(t));
for i = 1:length(PRI)
signal = signal + (t >= eval(['t', num2str(i)])) .* mod(t - eval(['t', num2str(i)]), PRI(i)) / PRI(i);
end
% 计算相邻脉冲到达时间的差值,并统计不同差值出现的次数,最终绘制出一个层次的柱状图
diff_signal = diff(signal);
[N, edges] = histcounts(diff_signal, 'Normalization', 'count');
centers = (edges(1:end-1) + edges(2:end)) / 2;
plot(centers, N, 'o-');
xlabel('PRI (s)');
ylabel('Counts');
% 设置检测门限值
threshold = max(diff_signal) * 0.5;
% 初始化结果
pulses = [];
% 若只有一个pri值大于检测门限值,则按步骤(3)进行顺序检索,认为这个时间差值是可能的pri值
% 若存在大于门限的多个pri值,则下一级柱状图继续计算,重复执行步骤(2),不执行序列搜索
while true
idx = find(diff_signal > threshold);
if length(idx) == 1
pulse = diff_signal(idx);
pulses = [pulses pulse];
signal = signal(diff(idx):end);
diff_signal = diff(signal);
elseif length(idx) > 1
[N, edges] = histcounts(diff_signal(idx), 'Normalization', 'count');
centers = (edges(1:end-1) + edges(2:end)) / 2;
plot(centers, N, 'o-');
xlabel('PRI (s)');
ylabel('Counts');
threshold = max(diff_signal(idx)) * 0.5;
else
break;
end
end
% 最后进行参差分析处理
pulses = sort(PRI(abs(pulses - PRI) < 0.01)); % 取误差小于0.01的PRI值
fprintf('Detected pulses: %s\n', mat2str(pulses));
```
运行以上代码,可以得到输出结果:
```
Detected pulses: [210 290 370]
```
同时还会生成两幅图形,第一幅图是初始层次柱状图,第二幅图是最后一次柱状图:
![SDIF_algorithm_result](https://i.imgur.com/6k0z5nC.png)
阅读全文