TA的每日心情 | 开心 2019-11-29 15:39 |
---|
签到天数: 4 天 [LV.2]偶尔看看I
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一个matlab拟合工具箱的问题请教大神。7 h0 \2 ^! S5 v/ y4 m! |/ w; r
程序如下:
% [) B& W$ w6 u5 _6 I6 e4 p' yclear
' {( ?; c- u+ t) S, ^close all1 q* W7 V: p: `
% 仿真一个LFM脉冲,并做距离处理$ ]6 h, n0 X* D' `$ S- P
C = 3e8;
' A" b0 a8 m7 x0 FTp = 0.32; %脉宽
2 r% k: I6 G8 I9 H) ?: F! aTpp = 0.5; %脉冲重复周期. w0 Y5 ]$ ?* e& D8 W; P
fsx = 6000; %采样率4 G' f/ k. ], R) J$ f
Bw = 2000; %带宽
# f1 t( a( _4 Q8 J! {/ Z7 ~9 G5 k, ]2 }4 u" x- B
Np = Tp * fsx; %脉冲内点数1920
( j7 X" q& P! w1 A; }3 l! k6 MNpp = Tpp * fsx; %脉冲重复周期内点数3000( c* F- G3 B8 g% c8 b
K = Bw / Tp; %调频斜率
, j. A/ T- J; d/ l Ftp = (-Np/2:Np/2-1)' / fsx; %零中频
2 C% m8 ?! a/ v0 T8 {. rtpp = (0:Npp-1)' / fsx; 3 @% m! I" F* M+ h! N
rng_fs = C/2/fsx;, d0 w j) G/ n
% k0 a* a. N- `) ?5 L7 u2 \' w%% 噪声和信号幅度计算
) \ w# \6 e5 rSNR = -10; %信噪比2 @8 L0 D* t* [1 L) y& F
JNR = 10; %干噪比
9 Q5 k! \' Z" s3 _A_noise = 1/sqrt(2); %噪声信号幅度
5 k* S& E4 u& @! C c/ HA_tar = 10^(SNR/20); %目标信号幅度
. m A& b1 V4 b9 V2 l7 q s' lA_jam = 10^(JNR/20); %干扰信号幅度" h6 q x E; s1 q
%% 本振
, w- R' _; O9 s. c* ~sigLFM = exp(1i*pi*K*tp.^2); %LMF信号/ k- A1 s8 A8 s5 g& p
sig_LOS = [sigLFM ; zeros(Npp-Np, 1)];
5 z0 `' t" _' A* O& vfigure
+ Y5 g( a1 U q# T: s3 gplot(real(sig_LOS))
. C) D% `6 b! F% C. h$ laxis([0 2000 -1 1]); |1 `7 P2 O! @; W( Q
title('LFM脉冲实部')
- L! P1 D# v( h, m" L7 K
2 U7 A8 u5 z% G" a2 F- S- ^% figure/ }1 ?) h2 t; v/ v7 M& c0 N9 g) }3 A# z$ ]
% plot(db(fftshift(fft(sig_LOS))))
" Z4 }% s" n, o {, o0 I5 d! K% figure( u1 f* e4 y1 m/ {* f
% plot(abs(sig_LOS))
. H% W% ^; _( N1 k( @$ O% title('LFM脉冲幅度')' N! [# ]% R2 [) I3 w
( j! x# n9 l* Q
%% 目标回波% L! h+ b+ h+ P: ^) g$ r/ w
t_delay = 0.08; %目标回波时延
4 s( g2 G- K- G4 m. S }t_rng = t_delay*C/2; %目标位置1.2e7
9 E+ z, f/ \- u0 `; E- C, oNshift = round(t_delay * fsx); %计算时延对应的点数
' h' c" @# Z& R% _2 c+ T- xsig_tar = circshift(sig_LOS, Nshift); %用循环右移实现目标时延
, B: {& ?& q6 Q- z Zsig_tar_noise = A_tar*sig_tar + A_noise*(randn(Npp, 1) + 1i*randn(Npp, 1));
6 K1 T' D! }+ a0 d% U4 d9 v' s, M- n, ]& }
figure" b$ M: o/ O8 d& ]
plot(real(sig_tar))* ^1 X( U1 Y/ s+ s
title('目标回波实部')
. c* h2 n f& h# ~
9 G& d: {* @6 D% figure
) p: A2 ?* m2 k0 v6 K: C% plot(abs(sig_tar))' |3 n; n# }% ?% O. x+ h/ A; i
% title('目标回波幅度')
. ?# {: V8 A, d9 ~6 e6 R4 H: A% U8 R
%% 距离处理
" v2 Y: |/ e) C0 q; |, pdata_rng = range_process_mf(sig_LOS, sig_tar_noise, 3000);
4 |: \% W# q/ D: p% y! f$ Laxes_rng = rng_fs*(1:3000);
4 a+ B) o5 |* g2 V1 afigure
( J. {$ r4 q9 K$ splot(axes_rng, db(data_rng))" N4 P! ]+ k% ~( o2 B j
xlabel('距离/m')3 W$ Z3 T5 Z) U% G* [, R, ]1 E. z. T
ylabel('幅度/dB')8 K2 M! G" c( V2 S* |7 j, M1 u
title('信号距离压缩结果') X2 m! q9 P1 x, v( x
%% 箔条
7 u7 B( B% k8 B: p' r, M& ~6 ~6 u% vnChaff = 2000; %箔条个数7 {8 Z; M- V) s& P6 c' |
f0 = 45e9; %载频' c( j. v4 w2 g! y0 H$ [/ K
fdrchaff = 50; %箔条云整体Doppler频率
3 x+ e' @5 m- E0 g% C/ gfschaff = 6000; %采样率2 f$ C7 {" Q" I; o: ]4 S
Tchaff = 0.5; %脉宽
# B! P; T' f ]) Q% ^Nchaff = fschaff*Tchaff;
8 ~# T! H7 Y9 \# ~4 Svar = 1.4; %方差
. M+ H9 B. c% j# ic=3e8;: e) L9 I) `( j6 P2 _
lambda = c/f0; %波长
, N8 R6 Q: W8 e# ~stchaff = zeros(1,Nchaff);st00 = zeros(1,Nchaff); d0 X+ r) x' e2 j/ |
st1chaff = [];
0 ~. s1 n% c) E) h; `% X4 Z( f' Xvc = 0+sqrt(var)*randn(1,nChaff); %随机的速度
' z0 y* N5 n7 i, Pt = 0:1/fschaff:Tchaff-(1/fschaff); %时间轴! z# ?! H1 [3 w7 b9 w# f
t = t+1;( `7 k# O a& L% N
for i=1:nChaff8 ~& G4 V& t5 O* S% `7 l5 @
vci=vc(i);
" K- V) z* M* p5 B0 J' b T fdchaff=2*vci/lambda;& J; R7 l x0 ~& H: z! e" b
fdi=fdchaff+fdrchaff;
( [* Y; l3 V% I7 Z st0=cos(2*pi*(f0+fdi)*t);$ L7 g9 N3 S6 s1 s' v
st00=st0+st00;. u6 H3 |( b6 Y3 M& @
st1chaff=exp(1j*2*pi*(f0+fdi)*t)*exp(1j*randn());
. G' e# o4 N! z: B0 } stchaff=stchaff+st1chaff.*sig_LOS.';
. y/ r' T; _' Rend4 g: |+ c) f+ s$ ~3 ?
spchaff=fftshift(fft(stchaff));
. N, H5 b; Y! e6 {2 lfigure
- L6 v, k8 R( x: w( Tplot(abs(stchaff))$ X' S, y$ j2 K/ l' X
title('箔条时域波形')* Z& W- s1 L0 x$ h" r
axis([0 2000 0 140])8 w* \ a/ P8 w3 l9 j* f. W
xlabel('时间/s')0 F5 j# o' z1 _. n8 c5 V5 T9 B
ylabel('幅度')) D0 M0 O9 O* p8 g
figure' B/ f. q: F2 c7 @ A
plot(db(spchaff))
- x" i: s, W% c" X4 L6 R& Y7 R$ ytitle('箔条频谱') N+ O/ ^- W# k% \6 j# p
xlabel('频率/Hz')
: j0 z& K) {( s) b: T+ F5 Aylabel('功率谱密度')
0 k8 Y S8 o3 w$ R" a" M# Lamp_coef = 0.05;
9 A7 M( c) [6 qstchaff = amp_coef*stchaff;- q0 K9 Z! \5 x/ |
data_st = range_process_mf(sig_LOS, stchaff, 3000);
+ K# W- s( U! [2 m4 Z$ Y) Nfigure, f! K1 m& g. M# {# ]( l
plot(axes_rng, db(data_st))
. ] }9 D/ p. Y/ f3 s0 X( Bxlabel('距离/m')/ v2 P8 r; l1 a" p
ylabel('幅度/dB')" j4 P3 @ Q# t: t! F' n) |) F; E
title('箔条距离压缩结果')
1 \% U9 {8 ~: b/ z9 H
5 S3 r- G; r0 C' I6 wdfittool(abs(stchaff)) %幅度拟合$ F( ]5 i6 O! u: ^1 z6 r
+ w" [' z. j9 H! N. O" m7 ]* X0 h* j
幅度拟合的结果如图8 l9 t A4 R1 C& W- c
求问怎么把最左边那个数据去掉然后做瑞利分布拟合?' D5 h2 a& k3 `- z, c' R
请教大神,非常感谢!8 X1 S; W) k% G8 m9 J. W& z
: I' z2 t+ }( A9 u8 C, c* i$ O S |
|