dane = read('C:\Users\pwe.3\Desktop\sinus.txt',-1,2); t = dane; t(:,2) = []; // seria danych - czas t y = dane; y(:,1) = []; // seria danych - wartość przebiegu y y2 = y^2; FFTt = 1/t; // SINUS subplot(311) plot2d("gnn",t,y,style=[color("blue")]) // wykres xy-liniowy, krzywa kolor niebieski set(gca(),"grid",[1 1]*color('gray')) // włączenie siatki, kolor szary title("sinus"); xlabel("t, s","fontsize", 4, "color", "black") // podpis osi X ylabel("y","fontsize", 4, "color", "black") // podpis osi y //liczenie L = length(y); avgy = sum(y)/L; yc = y - avgy; Ymod = 2*abs(fft(yc,-1)/L); tpomiaru = t(L) - t(1); tprob = tpomiaru/L; fprob = 1/tprob; df = fprob / (L/2)/2; k = 0:L-1; fk = df * k; fend = 2000; a = floor(fprob/(2*fend)+0.5); ymax = max(Ymod(1:L/2)); block = 0; for i = 1 : length(Ymod) if ymax == Ymod(i) && block == 0 then x = i - 1; block = 1; end end freq0 = df * x; period = 1 / freq0; Lperiod = floor(period/tprob) + 1; minPeriod = min(y(1:Lperiod)); maxPeriod = max(y(1:Lperiod)); ypp = maxPeriod - minPeriod; yavg = sum(y(1:Lperiod))/Lperiod; yrms = sqrt(1/Lperiod * sum(y2(1:Lperiod))); yavgabs = 1/Lperiod * sum(abs(y(1:Lperiod))); kpeak = ymax/yrms; kshape = yrms/yavgabs; /// display disp(fend,"Fend ="); disp(freq0,"freq0 ="); disp(minPeriod,"ymin = "); disp(maxPeriod, "ymax ="); disp(ypp, "ypp ="); disp(yavg, "yavg ="); disp(yrms, "yrms = "); disp(yavgabs, "yavgabs ="); disp(kpeak, "kpeak ="); disp(kshape, "kshape"); //FFT log subplot(312); plot2d("gln",fk(1:L/2),Ymod(1:L/2),style=[color("black")]) // wykres xy-liniowy, krzywa kolor niebieski set(gca(),"grid",[1 1]*color('gray')) // włączenie siatki, kolor szary title("fft log"); xlabel("f, Hz","fontsize", 4, "color", "black") // podpis osi X ylabel("y","fontsize", 4, "color", "black") // podpis osi y // FFT lin subplot(313); plot2d("gnn",fk(1:L/2/a),Ymod(1:L/2/a),style=[color("black")]) // wykres xy-liniowy, krzywa kolor niebieski set(gca(),"grid",[1 1]*color('gray')) // włączenie siatki, kolor szary title("fft lin"); xlabel("f, Hz","fontsize", 4, "color", "black") // podpis osi X ylabel("y","fontsize", 4, "color", "black") // podpis osi y