求matlab周期三角波信号频谱分析的代码,能画出三角波信号、幅度谱和相位谱。 matlab中有些叫我们画幅度谱和相位谱,有些时候叫我们画频...

\u8c01\u80fd\u628a\u6c42\u8fd9\u4e2a\u51fd\u6570\u7684\u7528\u5085\u91cc\u53f6\u53d8\u6362\u5e45\u5ea6\u8c31\u548c\u76f8\u4f4d\u8c31\u7136\u540e\u505a\u7ebf\u5f62\u56fe\u7684matlab\u7a0b\u5e8f\u5199\u51fa\u6765\uff1f

t=-2:0.01:2;
N=length(t);
y1=zeros(size(t));
y2=zeros(size(t));
y3=zeros(size(t));
for i=1:N
if t(i)>=-2&t(i)<-1
y1(i)=t(i)+2;
elseif t(i)>=-1&t(i)<1
y2(i)=1;
elseif t(i)=1
y3(i)=-t(i)+2;
end
end
y=y1+y2+y3;
Au=abs(fft(y));
Pu=angle(fft(y));
w=[0:length(Au)-1].*((2*pi)/length(Au));
subplot(311)
plot(t,y,'r');
subplot(312)
plot(w,Au,'r');
subplot(313)
plot(w,Pu,'r')

\u5b66\u4e00\u4e0b\u6570\u5b57\u4fe1\u53f7\u5904\u7406
matlab\u53ea\u662f\u7528\u6765\u7b97\u6570\u7684\uff0c\u4e5f\u53ef\u4ee5\u5e2e\u5fd9\u753b\u56fe\u3002\u4e0d\u8fc7\u6982\u5ff5\u4e0d\u662f\u4ecematlab\u6765\u7684

\u597d\u50cf\u662f\u9891\u8c31\u6709\u5e45\u5ea6\u548c\u76f8\u4f4d\u4e24\u4e2a\u5206\u91cf\u5427\uff0c\u8fd9\u6837\u7684\u8bdd\uff0c\u9891\u8c31\u5c31\u662f\u590d\u6570

%产生峰值为1的三角波,分析其0~63次谐波的幅值谱和相位谱

clf;

Fs =128;%采样频率

T = 1/Fs;% 采样周期

N = 128;% 采样点数

t = (0:N-1)*T;% 时间,单位:S

x=zeros(N);

for n=0:N-1

b=fix((n)/(N/4));

Y=fft(y,512);

F =10*f*[0:256]/512;

fp=2*sqrt(Y.*conj(Y));%幅度谱

xp=angle(Y); %相位谱

gl=abs(Y).^2; %功率谱

magif=ifft2(abs(f2));%幅度重构

pha=angle(f2);%取相位

phaif=ifft2(exp(j*pha));%相位重构

数据是x(i),共N个点,采样频率是fsample

扩展资料 :

信号源有很多种,包括正弦波信号源,函数发生器、脉冲发生器、扫描发生器、任意波形发生器、合成信号源等。一般来讲任意波形发生器,是一种特殊的信号源,综合具有其它信号源波形生成能力,因而适合各种仿真实验的需要。

传统都认为信号源主要给被测电路提供所需要的已知信号(各种波形),然后用其它仪表测量感兴趣的参数。可见信号源在电子实验和测试处理中,并不测量任何参数而是根据使用者的要求,仿真各种测试信号,提供给被测电路,以达到测试的需要。

参考资料来源:百度百科-三角波信号



%产生峰值为1的三角波,分析其0~63次谐波的幅值谱和相位谱

clf;

Fs =128;                   %采样频率

T = 1/Fs;                  % 采样周期

N = 128;                   % 采样点数

t = (0:N-1)*T;             % 时间,单位:S

x=zeros(N);

for n=0:N-1

    b=fix((n)/(N/4));

    m=n+1;

    A=1/(N/4);

    if b==0 

        x(m)=A*n;

    elseif b==1||b==2

        x(m)=A*(N/2-n);

    elseif b==3

        x(m)=A*(n-N);

    end;

end;

n=0:N-1;

subplot(3,1,1)

plot(t,x);

xlabel('时间/S');

ylabel('振幅');title('时域波形');grid on;

y=fft(x,N);   %对信号进行快速Fourier变换

mag=abs(y)*2/N;   %求取Fourier变换的振幅;*2/N转变为真实幅值

f=n*Fs/N;

subplot(3,1,2)

plot(f(1:N/2),mag(1:N/2)); %绘出Nyquist频率之前随频率变化的振幅

xlabel('频率/Hz');

ylabel('振幅');title('幅值谱');grid on;

p=mod(angle(y)*180/pi,360);

subplot(3,1,3)

plot(f(1:N/2),p(1:N/2)); %绘出Nyquist频率之前随频率变化的相位

xlabel('频率/Hz');

ylabel('振幅');title('相位谱');grid on;



  • 姹俶atlab鍛ㄦ湡涓夎娉俊鍙烽璋卞垎鏋愮殑浠g爜,鑳界敾鍑轰笁瑙掓尝淇″彿銆佸箙搴﹁氨鍜岀浉浣...
    绛旓細浜х敓宄板间负1鐨涓夎娉锛屽垎鏋愬叾0~63娆¤皭娉㈢殑骞呭艰氨鍜岀浉浣嶈氨 clf;Fs =128锛%閲囨牱棰戠巼 T = 1/Fs锛% 閲囨牱鍛ㄦ湡 N = 128锛% 閲囨牱鐐规暟 t = (0:N-1)*T锛% 鏃堕棿锛屽崟浣嶏細S x=zeros(N);for n=0:N-1 b=fix((n)/(N/4));Y=fft(y,512);F =10*f*[0:256]/512;fp=2*sqrt(Y.*c...
  • Matlab 鐢ㄦ暟鍊兼柟娉曡繎浼艰绠涓夎娉俊鍙鐨勯璋,浠g爜鏈夐棶棰,姹傚ぇ绁炴寚鏁
    绛旓細function y=sf1(t,w);y=(t>=1&t<=1).*(1-abs(t)).*exp(j*w*t);杩欎袱鍙ヨ鍋氭垚 鍑芥暟锛屾斁m鏂囦欢閲 鏀癸細y=(t>=-1&t<=1)鍏朵粬鏀惧懡浠ょ獥涓 w=linspace(-6*pi,6*pi,512);N=length(w);F=zeros(1,N);for k=1:N F(k)=quad('sf1',-1,1,[],[],w(k));end figure(1...
  • matlab璁$畻涓夎娉棰戣氨
    绛旓細y=zeros(1,401);for i=1:401 y(i)=(1-abs(t(i)))*(abs(t(i))<1);end fy=abs(fft(y,256));w=100*(0:128)/256;subplot(211)plot(t,y)subplot(212)plot(w,fy(1:129))
  • matlab涓simulink濡備綍鍒嗘瀽娉㈠舰鐨勯鐜囩壒鎬у垎鏋,鍖呮嫭骞呴鐗规у拰鐩搁鐗规...
    绛旓細涓銆佽繖涓獥鍙e幓娉㈠痉,鐒跺悗浣犲彲浠ョ偣鍑诲乏杈圭殑绾挎у寲妯″瀷,鐒跺悗浣犲彲浠ュ弻鍑诲浘琛,鎮ㄥ彲浠ユ洿鏀瑰浘鍙互鐪嬪埌,澶ц儐鐨勫浘鎸箙棰戠巼鏇茬嚎銆備簩銆佸湪matlab涓锛宻imulink鐢ㄤ簬鏋勫缓妯″潡鏉ュ垎鏋愬吀鍨淇″彿鐨勯璋(骞呭害璋)鐗瑰緛锛屽姝e鸡娉佹柟娉涓夎娉銆侀敮榻挎尝銆佺櫧鍣0鍜屽彔鍔犳尝褰備笁銆佷娇鐢⊿imulink鏋勫缓浠ヤ笅绯荤粺銆備负鏂逛究璧疯锛屾瘡涓吀鍨嬫尝鐨勪富...
  • 鍚櫔姝e鸡娉㈠拰涓夎娉俊鍙鐨勭煭鏃跺倕閲屽彾鍙樻崲,鐢matlab濡備綍瀹炵幇鍟奯鐧惧害鐭 ...
    绛旓細瀵规寮︿俊鍙锋湁锛2*pi*fc = 0.3, 姝e鸡淇″彿鐨勯鐜噁c=0.3/(2*pi), 鍙互鐢2*fc浠ヤ笂閲囨牱鐜囧鍏惰繘琛岄噰鏍凤紝鐒跺悗杩涜鍌呴噷鍙跺彉鎹㈠嵆鍙 涓夎淇″彿鐨勯鐜囧ぇ鑷翠负1/1000锛屾瘮姝e鸡淇″彿甯﹀鏇村皬锛屾墍浠ュ彲浠ョ敤姝e鸡淇″彿鐨勯噰鏍风巼杩涜閲囨牱锛岃繖鏍峰緱鍒扮殑淇″彿鐨勫倕閲屽彾鍙樻崲涓嶄細鍦ㄩ鍩熷彂鐢熸贩鍙 浠庤繖閲岀殑鏉′欢鏉ョ湅锛宖c=0.3/...
  • matlab濡備綍鐢鍛ㄦ湡鎬涓夎娉
    绛旓細1銆佷笅鍥炬墍绀轰负MATLAB鐨宸ヤ綔鐣岄潰銆2銆侀渶瑕佸畾涔墄鍙橀噺锛堝湪宸ヤ綔鍛戒护绐楀彛杈撳叆涓嬭堪鍛戒护锛墄=0:0.01:4*pi銆3銆佸畾涔墆涓巟涔嬮棿鐨勫嚱鏁板叧绯伙紝杈撳叆锛>>y=cos(x)銆4銆佸彲浠ヨ瀵熷埌MATLAB鐨剋orkspace绐楀彛鍑虹幇濡備笅鍥炬墍绀虹殑涓や釜鍙橀噺锛屽彉閲忎腑鍒嗗埆瀛樺偍杩檟鍜寉鐨勬暟鍊间俊鎭5銆佽緭鍏ワ細>>plot(x,y,'r-');鍗冲彲鍑虹幇濡備笅...
  • matlab鍦淇″彿绯荤粺鐨勫父鐢ㄥ嚱鏁
    绛旓細MATLAB 淇″彿澶勭悊甯哥敤鍑芥暟 銆愪竴銆戙 娉㈠舰浜х敓 鍑芥暟鍚 鍔熻兘 sawtooth 浜х敓閿娇娉㈡垨涓夎娉 Sinc 浜х敓sinc鎴栧嚱鏁皊in(pi*t)/(pi*t) Square 浜х敓鏂规尝 Diric 浜х敓Dirichlet鎴鍛ㄦ湡sinc鍑芥暟銆愪簩銆戙 婊ゆ尝鍣ㄥ垎鏋愬拰瀹炵幇 鍑芥暟鍚 鍔熻兘 Abs 姹傜粷瀵瑰硷紙骞呭硷級 Freqs 妯℃嫙婊ゆ尝鍣ㄩ鐜囧搷搴 Angle 姹...
  • 绱фユ眰鍔,濡備綍鐢matlab鐢讳竴涓涓夎娉鐨鍛ㄦ湡娉㈠舰,姹備唬鐮,涓嶄細鐢ㄨ繖杞欢...
    绛旓細clear;clc;A=2.5;T=7;n=3;t_max=1.4;A_max=3.5;f_tri=1/T;t=-T*n:0.01:T*n;y=A*sawtooth(2*pi*f_tri*(t+(T/2-t_max)),0.5)+A_max-A;plot(t,y)grid on
  • 濡備綍鐢MATLAB缁樺埗淇″彿娉㈠舰鍥?
    绛旓細鐢熸垚鎴栧鍏ユ暟鎹細棣栧厛锛屼綘闇瑕佹湁淇″彿鐨勬暟鎹傝繖浜涙暟鎹彲浠ユ槸瀹炴椂閲囬泦鐨勶紝涔熷彲浠ユ槸浠庢枃浠朵腑瀵煎叆鐨勩傚鏋滀綘鏈変俊鍙锋暟鎹枃浠讹紝鍙互浣跨敤MATLAB鐨瀵煎叆鍚戝鎴栦娇鐢ㄥ嚱鏁板readtable銆乺eadcsv銆乺ead鍌呴噷鍙跺彉鎹㈢瓑鏉ュ姞杞芥暟鎹傞澶勭悊鏁版嵁锛氭牴鎹渶瑕侊紝浣犲彲鑳介渶瑕佸鏁版嵁杩涜棰勫鐞嗭紝渚嬪婊ゆ尝銆佸幓鍣佸綊涓鍖栫瓑銆傚垱寤烘尝褰㈠浘锛...
  • 鐢MATLAB鐨GUI瀹炵幇淇″彿鍙戠敓鍣ㄧ殑涓夎娉鍜岄敮榻挎尝鍦ㄩ珮棰戞槸骞呭害琛板噺_鐧惧害鐭 ...
    绛旓細y=A*sawtooth(2*pi*f*t,0.5); %浜х敓鍛ㄦ湡涓1/f鐨涓夎娉锛屽箙鍊煎湪[-A,A]鑼冨洿鍐 plot(t,y);axis([0,.2,-A,A]); %浣犺繖鍎跨殑妯潗鏍囨樉绀鸿寖鍥村簲璇ヨ璇ワ紝瑕佷笌浣犱骇鐢熷懆鏈燂紙1/f 锛夊搴旇捣鏉ワ紝鍚﹀垯鍥惧舰鏁堟灉杈句笉鍒颁綘鐨勮姹傘倄label('t(s)');ylabel('A_t( V )')elseif strcmp((...
  • 扩展阅读:matlab生成周期矩形信号 ... matlab周期三角波函数 ... matlab生成周期三角波 ... matlab周期锯齿波信号 ... matlab绘制三角波图像 ... matlab周期方波信号 ... matlab实验1-8全部答案 ... matlab三角形符号 ... matlab sawtooth ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网