Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- wf=wrecfile('test.dta'); % otwarcie pliku
- segment = wrec_dsgm(wf, numer_segmentu); %struktura zawierajaca naglowek->ciekawe informacje o segmencie
- zbieranie = []; %inicjacja tablicy gdzie bede zbieral probki do liczenia mocy
- numer_segmentu = 1;
- moc_srednia = 0;
- dlugosc_wektora_mocy = 0; % to nie jest dlugosc co ile mocy zostalo uwzglednionych
- dlugosc_bloku = 160; % bo 160/(8*5*4) = 1
- for(probka_startowa = 0:dlugosc_bloku:segment.nsmp-dlugosc_bloku-1)
- blok_probek = wrec_rdsig(wf,numer_segmentu,probka_startowa,dlugosc_bloku,{'#ICP'});
- %plot(blok_probek);
- wyjscie_decymacja1 = decimate(blok_probek,8); %komenda decimate od razu filtruje filtrem czebyszewa wiec nie musze wczesniej filtrowac
- %plot(wyjscie_1decymacja);
- %nie musze sprawdzac czy mam wystarczajaco duzo probek bo tak ustawilem dlugosc bloku by miec za kazdym razem wystarczajaco duzo probek
- wyjscie_decymacja2 = decimate(blok_probek,5); % filtr jest wbudowany w komende
- %znowu nie musze sprawdzac czy uzbieralo mi sie wystarczajaco duzo probek bo tak ustawilem dlugosc bloku by za kazdym razem miec 4 probki
- wyjscie_decymacja3 = decimate(blok_probek,4);
- zbieranie = [zbieranie; wyjscie_decymacja3];
- while(length(zbieranie) >= 60) %while na wypadek gdyby zebralo sie wiecej niz 90 probek choc wiem, ze w moim przypadku nie jest to mozliwe
- transformata = abs(fft(zbieranie(1:60)));
- moc = transformata(2).^2+transformata(3).^2+transformata(4).^2; %policzylem, ze w tych probkach znajduje sie moc ktora nas interesuje
- moc_srednia = moc_srednia + moc;
- dlugosc_wektora_mocy = dlugosc_wektora_mocy + 1;
- zbieranie = zbieranie(31:length(zbieranie)); %wyrzucam polowe probek ktore wykorzystalem
- endwhile
- end
- moc_srednia = moc_srednia / dlugosc_wektora_mocy;
- %tylko nie wiem co mam zrobic z ta moca?? zsumowac i policzyc srednia - tak zrobie
- %nie wiem czy dobrze licze moc gdy fft jest wartoscia zespolona? chyba wystarczy abs policzyc by wykluczyc fazowa charakterystyke
- %w jakich jednostack ta moc wychodzi? w jakich jednostkach jest sygnal?
- wrec_close(wf);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement