Intercettatore sonar
bozza
La valutazione del rumore nella rivelazione in correlazione è di basilare importanza per le previsioni di portata di scoperta del sonar.
Il rumore d'uscita del ricevitore dipende dal rapporto tra i segnali d'ingresso e i disturbi presenti nell'ambiente marino .
L'uscita di un ricevitore, la funzione di correlazione, può presentarsi in diversi modi in dipendenza del rapporto come indicato, ad esempio, nelle due figure ottenute variando il ritardo rf tra i due segnali idrofonici d'ingresso in modo ciclico:
Nell'immagine di sinistra vediamo una funzione di correlazione ottenuta con un rapporto pari a ; nell'immagine di destra la stessa funzione ottenuta con un rapporto sensibilmente inferiore al precedente: pari a .
Gli algoritmi relativi al comportamento dell'uscita di un ricevitore
Il comportamento del livello d'uscita di un ricevitore in correlazione [1] in dipendenza del rapporto del tra il segnale e il disturbo ; è determinato da due caratteristici algoritmi[2]:
Il primo algoritmo è relativo alla variazione d'ampiezza del livello d'uscita del ricevitore secondo l'espressione:
Dove:
= metà della larghezza di banda del ricevitore che definisce i segnali.
= frequenza media della banda.
= funzione che dipende dal rapporto tra le ampiezze dei segnali e l’ampiezza del disturbo secondo l’espressione:
Il secondo algoritmo è relativo all'ampiezza della varianza d'uscita[3] del ricevitore calcolabile secondo l'espressione:
dove:
- = ampiezza della banda di ricezione
- = costante di tempo d'integrazione del correlatore
L'ampiezza della varianza dipende dal valore della costante di tempo , maggiore il valore di minore ne è l'ampiezza.
Il valore di determina anche la velocità di risposta del correlatore, più è elevato più la velocità si riduce, un giusto compromesso deve essere scelto in base alle necessità operative del sonar
Modalità di computazione dell’andamento del livello d'uscita di un ricevitore in funzione del rapporto
Prima dell’ avvento dei computer gli sviluppi matematici necessari per la previsione delle caratteristiche d’uscita di un correlatore, dipendenti dal rapporto richiedevano lunghi tempi di lavoro con risultati non sempre soddisfacenti.
Oggi, grazie ai personal computer, si possono implementatare particolari routine di calcolo sviluppate in linguaggio Visual Basic che, oltre ai singoli livelli numerici, consentono la costruzione grafica dell’ andamento del livello d’uscita del ricevitore in ogni condizione operativa del sonar.
Il calcolo dell'ampiezza delle funzioni di correlazione e della varianza che le inquina consente un’analisi accurata del comportamento dei ricevitori tramite un'interfaccia virtuale tra operatore e software di calcolo.
Con il software si sviluppano gli algoritmi riportati in precedenza che prevedono il loro calcolo in funzione del rapporto all'ingresso del ricevitore e della costante di tempo d'integrazione
Il software di cacolo
Implementando sul P.C. il programma in Visual Basic, riportato in calce, si realizza il pannello virtuale di controllo del sistema di valutazione costituito da:
- sette Textbox, evidenziati con numeri rossi per la routine di programma, per l'inserzione delle variabili caratteristiche:
Frequenza inf. della banda di ricezione (Hz) Frequenza sup. della banda di ricezione (Hz) Ritardo tra i due segnali da correlare Predisposizione dell’intervallo di tempo d’analisi fs in Rapporto in Costante di tempo d'integrazione in Coefficiente di scala per le ordinate (dec.)
- un command. di avvio del computo
- un reticolo cartesiano per la presentazione delle curve di
correlazione calcolate come mostrato in figura:
Il sistema, una volta copiate le routine di calcolo, può essere implementato con qualsiasi linguaggio di programmazione.
Esempi di valutazione
Una volta installato il software si possono sviluppare alcuni esempi di valutazione che riguardano il calcolo ed il tracciamento di 5 funzioni di correlazioni relative ad un generico ricevitore; quali:
- 1°- Corr. analogica in banda
- 2°- Corr. analogica in banda
- 3°- Corr. digitale in banda
- 4°- Corr. digitale in banda
- 5°- Corr. digitale secondo Hilbert in banda
Per ciascuna funzione sono impostabili a piacere, sia i valori delle frequenze che stabiliscono la banda di ricezione , sia i ritardo tra i due segnali-
Ciascuna delle 5 funzioni e caratterizzata dalle variabili che compaiono nel testo:
1° Esempio
Funzione di correlazione analogica del segnale in uscita da un ricevitore ( segnali filtrati con passa basso ):
valore inferiore della banda del ricevitore valore superiore della banda del ricevitore ritardo tra i due segnali applicati al ricevitore valore del fondo scala di calcolo e grafica.
Il grafico è riportato in figura, il command verde indica il tipo di funzione calcolata ( segnali filtrati con passa banda ):
2° Esempio
Funzione di correlazione analogica del segnale in uscita da un ricevitore ( segnali filtrati con passa banda ): valore inferiore della banda del ricevitore valore superiore della banda del ricevitore ritardo tra i due segnali applicati al ricevitore valore del fondo scala di calcolo e grafica.
Il grafico è riportato in figura, il command verde indica il tipo di funzione calcolata:
3° Esempio
Funzione di correlazione digitale del segnale in uscita da un ricevitore ( segnali filtrati con passa basso ):
valore inferiore della banda del ricevitore valore superiore della banda del ricevitore ritardo tra i due segnali applicati al ricevitore valore del fondo scala di calcolo e grafica.
Il grafico è riportato in figura, il command verde indica il tipo di funzione calcolata:
4° Esempio
Funzione di correlazione digitale del segnale in uscita da un ricevitore ( segnali filtrati con passa banda ):
valore inferiore della banda del ricevitore valore superiore della banda del ricevitore ritardo tra i due segnali applicati al ricevitore valore del fondo scala di calcolo e grafica.
Il grafico è riportato in figura, il command verde indica il tipo di funzione calcolata:
5° Esempio
Funzione di correlazione digitale, con trasformata di Hilbert, del segnale in uscita da un ricevitore (segnali filtrati con passa banda ):
valore inferiore della banda del ricevitore valore superiore della banda del ricevitore ritardo tra i due segnali applicati al ricevitore valore del fondo scala di calcolo e grafica.
Impostazione del software
In ambiente di sviluppo Visual Basic inserimento degli oggetti nel Form come indicato in figura nel rispetto della numerazione indicata in rosso; i 5 command devono essere abililitati in style graphical.[4].
Azione di copia e incolla [5] del programma:
Listato
Dim F1 As Double Dim F2 As Double Dim rf As Double Dim ro As Double
Private Sub Command5_Click() Command1.BackColor = &HE0E0E0 Command2.BackColor = &HE0E0E0 Command3.BackColor = &HE0E0E0 Command4.BackColor = &HE0E0E0 Command5.BackColor = vbGreen Cls For xi = 0 To 4600 * 1.4 Step 230 * 1.4 For yi = 0 To 3200 * 1.4 Step 20 * 1.4 PSet (xi, yi) Next yi Next xi For yi = 0 To 3200 * 1.4 Step 160 * 1.4 For xi = 0 To 4600 * 1.4 Step 30 * 1.4 PSet (xi, yi) Next xi Next yi Line (0, 1600 * 1.4)-(4600 * 1.4 + 160, 1600 * 1.4) Line (0, 0)-(0, 3200 * 1.4) F = Val(Text2.Text) rf = Val(Text3.Text) ro = Val(Text4.Text) For R = 0.0000001 To ro Step (ro / 10000) Y1 = Sin(2 * 3.14 * F * (R - rf) / 1000000) _ / (2 * 3.14 * F * (R - rf) / 1000000) ' c1 = (2 / 3.14) * Atn(Y1 / (Sqr(-Y1 * Y1 + 1) + 0.00000001)) PSet (4600 * 1.4 * R / ro, 1600 * 1.4 - 1600 * 1.4 * c1), colore Next End Sub
Private Sub Form_Paint() For xi = 0 To 4600 * 1.4 Step 230 * 1.4 For yi = 0 To 3200 * 1.4 Step 20 * 1.4 PSet (xi, yi) Next yi Next xi For yi = 0 To 3200 * 1.4 Step 160 * 1.4 For xi = 0 To 4600 * 1.4 Step 30 * 1.4 PSet (xi, yi) Next xi Next yi Line (0, 1600 * 1.4)-(4600 * 1.4 + 160, 1600 * 1.4) Line (0, 0)-(0, 3200 * 1.4) End Sub
Private Sub text1_KeyPress(KeyAscii As Integer) If InStr("-+.0123456789", Chr(KeyAscii)) = 0 _ Then KeyAscii = 0 End Sub
Private Sub text2_KeyPress(KeyAscii As Integer) If InStr("-+.0123456789", Chr(KeyAscii)) = 0 _ Then KeyAscii = 0 End Sub
Private Sub text3_KeyPress(KeyAscii As Integer) If InStr("-+.0123456789", Chr(KeyAscii)) = 0 _ Then KeyAscii = 0 End Sub
Private Sub text4_KeyPress(KeyAscii As Integer) If InStr("-+.0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0 If InStr("0123456789.-" + Chr(&H8), Chr(KeyAscii)) = 0 _ Then KeyAscii = 0 End Sub
Private Sub Command1_Click() Cls Command1.BackColor = vbGreen Command2.BackColor = &HE0E0E0 Command3.BackColor = &HE0E0E0 Command4.BackColor = &HE0E0E0 Command5.BackColor = &HE0E0E0 For xi = 0 To 4600 * 1.4 Step 230 * 1.4 For yi = 0 To 3200 * 1.4 Step 20 * 1.4 PSet (xi, yi) Next yi Next xi For yi = 0 To 3200 * 1.4 Step 160 * 1.4 For xi = 0 To 4600 * 1.4 Step 30 * 1.4 PSet (xi, yi) Next xi Next yi Line (0, 1600 * 1.4)-(4600 * 1.4 + 160, 1600 * 1.4) Line (0, 0)-(0, 3200 * 1.4) F1 = Val(Text1.Text) F2 = Val(Text2.Text) rf = Val(Text3.Text) ro = Val(Text4.Text) For R = 0.0000001 To ro Step (ro / 10000) Y1 = Sin(2 * 3.14 * ((F2 - F1) / 2) * (R - rf) / _ 1000000) / (2 * 3.14 * ((F2 - F1) / 2) * (R - rf) / 1000000) Y2 = Sin(2 * 3.14 * ((F2 + F1) / 2) * (R - rf) / 1000000) Y3 = Y1 * Y2 c1 = (2 / 3.14) * Atn(Y3 / (Sqr(-Y3 * Y3 + 1) + 0.00000001)) PSet (460 * 14 * R / ro, 160 * 14 - 160 * 14 * c1), colore Next R End Sub
Private Sub Command2_Click() Command1.BackColor = &HE0E0E0 Command2.BackColor = vbGreen Command3.BackColor = &HE0E0E0 Command4.BackColor = &HE0E0E0 Command5.BackColor = &HE0E0E0 Cls For xi = 0 To 4600 * 1.4 Step 230 * 1.4 For yi = 0 To 3200 * 1.4 Step 20 * 1.4 PSet (xi, yi) Next yi Next xi For yi = 0 To 3200 * 1.4 Step 160 * 1.4 For xi = 0 To 4600 * 1.4 Step 30 * 1.4 PSet (xi, yi) Next xi Next yi Line (0, 1600 * 1.4)-(4600 * 1.4 + 160, 1600 * 1.4) Line (0, 0)-(0, 3200 * 1.4) F1 = Val(Text1.Text) F2 = Val(Text2.Text) rf = Val(Text3.Text) ro = Val(Text4.Text) For R = 0.0000001 To ro Step (ro / 10000) Y1 = Sin(2 * 3.14 * ((F2 - F1) / 2) * (R - rf) / 1000000) / _ (2 * 3.14 * ((F2 - F1) / 2) * (R - rf) / 1000000) Y2 = Cos(2 * 3.14 * ((F2 + F1) / 2) * (R - rf) / 1000000) Y3 = Y1 * Y2 PSet (4600 * 1.4 * R / ro, 1600 * 1.4 - 1600 * 1.4 * Y3), colore Next R End Sub
Private Sub Command3_Click() Command1.BackColor = &HE0E0E0 Command2.BackColor = &HE0E0E0 Command3.BackColor = vbGreen Command4.BackColor = &HE0E0E0 Command5.BackColor = &HE0E0E0 Cls For xi = 0 To 4600 * 1.4 Step 230 * 1.4 For yi = 0 To 3200 * 1.4 Step 20 * 1.4 PSet (xi, yi) Next yi Next xi For yi = 0 To 3200 * 1.4 Step 160 * 1.4 For xi = 0 To 4600 * 1.4 Step 30 * 1.4 PSet (xi, yi) Next xi Next yi Line (0, 1600 * 1.4)-(4600 * 1.4 + 160, 1600 * 1.4) Line (0, 0)-(0, 3200 * 1.4) F = Val(Text2.Text) rf = Val(Text3.Text) ro = Val(Text4.Text) For R = 0.0000001 To ro Step (ro / 10000) Y1 = Sin(2 * 3.14 * F * (R - rf) / 1000000) / _ (2 * 3.14 * F * (R - rf) / 1000000) ' PSet (4600 * 1.4 * R / ro, 1600 * 1.4 - 1600 * 1.4 * Y1), colore Next R End Sub
Private Sub Command4_Click() Command1.BackColor = &HE0E0E0 Command2.BackColor = &HE0E0E0 Command3.BackColor = &HE0E0E0 Command4.BackColor = vbGreen Command5.BackColor = &HE0E0E0 Cls For xi = 0 To 4600 * 1.4 Step 230 * 1.4 For yi = 0 To 3200 * 1.4 Step 20 * 1.4 PSet (xi, yi) Next yi Next xi For yi = 0 To 3200 * 1.4 Step 160 * 1.4 For xi = 0 To 4600 * 1.4 Step 30 * 1.4 PSet (xi, yi) Next xi Next yi Line (0, 1600 * 1.4)-(4600 * 1.4 + 160, 1600 * 1.4) Line (0, 0)-(0, 3200 * 1.4) F1 = Val(Text1.Text) F2 = Val(Text2.Text) rf = Val(Text3.Text) ro = Val(Text4.Text) For R = 0.0000001 To ro Step (ro / 10000) Y1 = Sin(2 * 3.14 * ((F2 - F1) / 2) * (R - rf) / 1000000) / _ (2 * 3.14 * ((F2 - F1) / 2) * (R - rf) / 1000000) Y2 = Cos(2 * 3.14 * ((F2 + F1) / 2) * (R - rf) / 1000000) Y3 = Y1 * Y2 c1 = (2 / 3.14) * Atn(Y3 / (Sqr(-Y3 * Y3 + 1) + 0.00000001)) PSet (4600 * 1.4 * R / ro, 1600 * 1.4 - 1600 * 1.4 * c1), colore Next R End Sub
Note
- ^ Si tratta di ricevitori in correlazione per segnali a due stati.
- ^ Gli algoritmi sono validi per rapporti molto piccoli
- ^ Il rumore all'uscita di un ricevitore in correlazione è indicato come varianza; la varianza si somma al segnale d'uscita utile e ne pregiudica la individuazione.
- ^ Il listato del programma, data la sua semplicità, non è commentato
- ^ Prestare attenzione alle righe di programma che in base alla pagina possono essere scritte in parte a capo
Bibliografia
- Rif.1.. James j. Faran jr ; Robert Hills jr , Correlators for signal reception, Office of Navaval Research (contract n5 ori-76 project order x technical memorandum no. 27 ) Acousics Rsearch Laboratory Division of Applied Science Harvard University – Cambridge, Massachusetts , 1952
- Rif.2.. James j. Faran jr ; Robert Hills jr , The application of correlation techniques to acoustic receiving systems, Office of Navaval Research (contract n5 ori-76 project order x technical memorandum no. 28 ) - Aousics Rsearch Laboratory Division of Applied Science Harvard University – Cambridge, Massachusetts , 1952
- Rif.3.. Rbert J. Urick, Principles of underwater sound, Mc Graw – hill, 3^ ed. 1968
- Rif.4.. Cesare Del Turco, La correlazione, collana scientifica ed. Moderna La Spezia, 1993