Advertisement
Ostu

Untitled

May 25th, 2021
365
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 1.61 KB | None | 0 0
  1. %% Skrypt do wykreślania widma sygnału z pliku syg.mat
  2. Y= fft(syg);
  3. L=length(syg);
  4. Fs=500;
  5. P2 = abs(Y/L);
  6. P1 = P2(1:L/2+1);
  7. P1(2:end-1) = 2*P1(2:end-1);
  8. f = Fs*(0:(L/2))/L;
  9. figure(1)
  10. plot(f,P1)
  11. xlabel('f (Hz)')
  12. ylabel('|P1(f)|')
  13. xlim([0 250])
  14. ylim([0 0.06])
  15. title("Widmo sygnału z pliku syg")
  16. %% Projekt filtru butterwortha filtrowanie częstotliwości powyżej 100 Hz
  17. Wpb = 100/(0.5*Fs);
  18. Wsb = 130/(0.5*Fs);
  19. Rp = 3;
  20. Rs = 40;
  21. [nb,Wnb] = buttord(Wpb,Wsb,Rp,Rs)
  22. [bb,ab] = butter(nb,Wnb);
  23. Gb=tf(bb,ab,1/Fs)
  24. options = bodeoptions;
  25. options.FreqUnits = 'Hz';
  26. options.FreqScale = 'linear'
  27. figure(2)
  28. hold on
  29. bode(G_b,options, 'b')
  30. xlim([0 500])
  31. %% Filtr Czebyszewa
  32. Wpc = [49.99999 50.00001]/(0.5*Fs);
  33. Wsc = [49.75 50.25]/(0.5*Fs);
  34. [nc,Wnc] = cheb2ord(Wpc,Wsc,Rp,Rs)
  35. [bc,ac] = cheby2(nc,Rs,Wnc,'stop');
  36. Gc=tf(bc,ac,1/Fs)
  37. options = bodeoptions;
  38. options.FreqUnits = 'Hz';
  39. options.FreqScale = 'linear'
  40. figure(3)
  41. hold on
  42. bode(G_c,options, 'b')
  43. xlim([0 500])
  44. %% sygnał wejściowy przed odfiltrowaniem zakłóceń:
  45. figure(4)
  46. t=0:1:numel(syg)-1;
  47. plot(t,syg)
  48. title("Sygnał przed odfiltrowaniem zakłóceń")
  49. %% Filtrowanie sygnału:
  50. filtr1=filter(bb,ab,syg);
  51. filtr2=filter(bc,ac,filtr1);
  52. figure(5)
  53. plot(t,filtr2)
  54. xlim([0 3000])
  55. title("Sygnał po odfiltrowaniu zakłóceń")
  56. %% widmo sygnału po odfiltrowaniu zakłóceń
  57. Y2= fft(filtr2);
  58. L2=length(filtr2);
  59. P22 = abs(Y2/L2);
  60. P12 = P22(1:L/2+1);
  61. P12(2:end-1) = 2*P12(2:end-1);f2 = Fs*(0:(L2/2))/L2;
  62. figure(6)
  63. plot(f2,P12)
  64. xlabel('f (Hz)')
  65. ylabel('|P1(f)|')
  66. xlim([0 250])
  67. ylim([0 0.06])
  68. title("Widmo sygnału po odfiltrowaniu zakłóceń")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement