prikaz+izpis
parent
4cc5f840f3
commit
61b0361d74
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
print('*** Preprost zvočni spektralni analizator - S53MV 28.09.2020 ***')
|
print('*** Preprost zvočni spektralni analizator - S53MV 28.09.2020 ***')
|
||||||
print('*** popravek odziva za EliteBook 8540w - Andrej 11.2.2012 ***')
|
print('*** popravek odziva za EliteBook 8540w - Andrej 11.2.2012 ***')
|
||||||
print('*** meritev faznega suma - Andrej 15.2.2012 ***')
|
print('*** meritev faznega suma (interpolacija in povprecenje v frekvenci-sai) - Andrej 15.2.2012 ***')
|
||||||
|
|
||||||
fs=192000 #Frekvenca vzročenja zvočnega signala (max 192000Hz)
|
fs=192000 #Frekvenca vzročenja zvočnega signala (max 192000Hz)
|
||||||
pts=2048 #Število točk spektra 0...fs/2 (potenca 2 za učinkovit FFT)
|
pts=2048 #Število točk spektra 0...fs/2 (potenca 2 za učinkovit FFT)
|
||||||
|
@ -17,7 +17,7 @@ sd.default.device = 0
|
||||||
fskala=np.linspace(0,fs/2,2*pts+1)[:-1] #Izračunaj frekvenčno skalo [Hz]
|
fskala=np.linspace(0,fs/2,2*pts+1)[:-1] #Izračunaj frekvenčno skalo [Hz]
|
||||||
|
|
||||||
### podatki za kalibracijo sistema
|
### podatki za kalibracijo sistema
|
||||||
dSB = -42 #dB
|
dSB = -61.95+15.53 #dB
|
||||||
L = 1256 #metrov
|
L = 1256 #metrov
|
||||||
tau = L*1.4676/3e8
|
tau = L*1.4676/3e8
|
||||||
|
|
||||||
|
@ -40,7 +40,7 @@ def spekter(fs,pts,avg,fskala): #Zajem signala z zvočno kartico in povprečenje
|
||||||
s2=s2+np.square(np.abs(np.fft.rfft(o*s.reshape(-1)[k:k+2*pts],n=4*pts)[:-1]))
|
s2=s2+np.square(np.abs(np.fft.rfft(o*s.reshape(-1)[k:k+2*pts],n=4*pts)[:-1]))
|
||||||
k+=pts
|
k+=pts
|
||||||
s=10*np.log10(nz+0.5*s2/pts/pts/avg) #Povprečje [dB]
|
s=10*np.log10(nz+0.5*s2/pts/pts/avg) #Povprečje [dB]
|
||||||
#print(' Max:',"%.1f"%(np.amax(s)),'dB @',"%.1f"%(fskala[np.argmax(s)]),'Hz')
|
print(' Max:',"%.1f"%(np.amax(s[4:-1])),'dB @',"%.1f"%(fskala[np.argmax(s[4:-1])]),'Hz')
|
||||||
return s[4:-1]+popravek
|
return s[4:-1]+popravek
|
||||||
|
|
||||||
### izris z animacijo
|
### izris z animacijo
|
||||||
|
@ -53,7 +53,7 @@ ax.set_ylim(-130,-30)
|
||||||
plt.xscale('log')
|
plt.xscale('log')
|
||||||
ax.grid(True)
|
ax.grid(True)
|
||||||
|
|
||||||
def meritev():
|
def meritev(nic):
|
||||||
s = spekter(fs,pts,avg,fskala)
|
s = spekter(fs,pts,avg,fskala)
|
||||||
Pcal = np.amax(s)
|
Pcal = np.amax(s)
|
||||||
K = Pcal - 3 - dSB
|
K = Pcal - 3 - dSB
|
||||||
|
@ -73,4 +73,4 @@ K = Pcal - 3 - dSB
|
||||||
fsum = s - K - 3 - 6 - 20*np.log10(np.sin(f*np.pi*tau))
|
fsum = s - K - 3 - 6 - 20*np.log10(np.sin(f*np.pi*tau))
|
||||||
data = np.column_stack((f,fsum,s))
|
data = np.column_stack((f,fsum,s))
|
||||||
np.savetxt('rezultat.csv',data,delimiter=',')
|
np.savetxt('rezultat.csv',data,delimiter=',')
|
||||||
print('*** Konec ***') #pritisk tipke na tipkovnici
|
print('*** Konec ***')
|
||||||
|
|
Loading…
Reference in New Issue