Basi idrofoniche rettilinee in banda di frequenze (routine di calcolo)

Lo studio della caratteristica di direttività fa parte del progetto del sonar e della valutazione delle portate di scoperta.

Lo studio consente la determinazione dei parametri della direttività delle basi, in particolare il guadagno e la larghezza del lobo principale computati su di una banda di frequenze,

In figura 1 esempio, non in scala, di base idrofonica rettilinea su sottomarino:

figura 1 Basi idrofoniche

L'algoritmo di calcolo R(alfa) in banda di frequenze

modifica

L'algoritmo di calcolo della direttività R  di una base idrofonica rettilinea, dovuto a Stenzel, è riportato nella funzione:


 


Dove:

  numero degli idrofoni

 

 

  lunghezza della base in metri

  velocità del suono in m / s

 

  frequenza inferiore della banda in  

  frequenza superiore della banda in  

 

Modalità di computazione

modifica

Prima dell’avvento dei computer gli sviluppi matematici necessari per il calcolo dell'andamento di   erano eseguiti per valori discreti di   con un notevole dispendio di tempo per modesti campioni della   stessa.

Oggi, grazie ai personal computer, si possono implementare particolari routine di calcolo sviluppate in linguaggio Visual Basic [1] che, oltre ai singoli livelli numerici, consentono la costruzione grafica dell’andamento di   con innumerevoli punti di calcolo.

Il calcolo delle curve di direttività delle basi idrofoniche consente un’analisi accurata del loro comportamento tramite un'interfaccia virtuale tra operatore e software di calcolo.

Con il software si sviluppa l'algoritmo riportato in precedenza che prevede il calcolo in funzione delle variabili:

  frequenza inferiore della banda in  

  frequenza superiore della banda in  

  direzione di puntamento in gradi sessagesimali

 lunghezza della base in metri

  numero degli idrofoni

Per la valutazione rapida della bontà della caratteristica di direttività si fa spesso riferimento al valore dell'ampiezza dell'angolo   che decrementa   da ampiezza   ad ampiezza  .

Più è piccolo   migliore è la caratteristica di direttività.

Le basi idrofoniche rivelano in modo ottimale una sorgente acustica quando questa è posizionata angolarmente sulla direzione dove la curva di direttività presenta il massimo.

La routine di programma consente, con processo iterativo, di ottenere il desiderato valore di   mediante la variazione di una qualsiasi delle variabile citate ferme restando il valore delle altre.

Il software di calcolo

modifica

Implementando nel P.C. il programma in Visual Basic riportato in calce si realizza il pannello virtuale di calcolo costituito da:

  • Quattro textbox
  • Un pulsante d'avvio del calcolo
  • Un reticolo cartesiano per la presentazione delle curve di direttività come mostra la figura 2:
 
figura 2 Vista pannello di controllo

Esempi di dimensionamento

modifica

Una volta installato il software si possono sviluppare alcuni esempi di valutazione che riguardano il calcolo della direttività;

Primo esempio

Dimensionamento [2] della direttività di una base idrofonica lineare e continua [3] della lunghezza di   nella banda di frequenze  

calcolata per:

 

 

 

 

 

Il calcolo rende la risposta grafica della direttività:[4] come riportato in figura 3.

 
figura 3 funzione  


Secondo esempio

 

 

 

 

 

Il calcolo rende la risposta grafica della direttività di figura 4:

 
figura 4 funzione  

Terzo esempio

 

 

 

 

 

Il calcolo rende, in figura 5, la risposta grafica della direttività:

 
figura 5 funzione  

E di fondamentale importanza osservare che, fissate di massima tutte le variabili, è possibile ottenere una curva di direttività desiderata modificando ad arte una delle quattro [5]; operazione fattibile dopo computazioni iterative,

Impostazione software

modifica

In ambiente di sviluppo Visual Basic inserimento degli oggetti nel Form come indicato in figura 6 nel rispetto della numerazione indicata in rosso.[6].

 
figura 6 Parte del pannello di controllo

Azione di copia e incolla [7] del programma:

Listato

Private Sub Form_Paint()
For xi = 0 To 6440 Step 322
For yi = 0 To 4480 Step 28
PSet (550 + xi, 500 + yi)
Next yi
Next xi
For yi = 0 To 4480 Step 224
For xi = 0 To 6440 Step 42
PSet (550 + xi, 500 + yi)
Next xi
Next yi
Line (550 + 3220, 500)-(550 + 3220, 500 + 4480)
Line (550, 4480 + 500)-(6440 + 550, 500 + 4480)
End Sub


Private Sub text1_KeyPress(KeyAscii As Integer)
If InStr("-+.0123456789" + Chr(&H8), Chr(KeyAscii)) = 0 Then _
KeyAscii = 0
End Sub
Private Sub text2_KeyPress(KeyAscii As Integer)
If InStr("-+.0123456789" + Chr(&H8), Chr(KeyAscii)) = 0 Then _
KeyAscii = 0
End Sub
Private Sub text3_KeyPress(KeyAscii As Integer)
If InStr("-+.0123456789" + Chr(&H8), Chr(KeyAscii)) = 0 Then _
KeyAscii = 0
End Sub
Private Sub text4_KeyPress(KeyAscii As Integer)
If InStr("-+.0123456789" + Chr(&H8), Chr(KeyAscii)) = 0 Then _
KeyAscii = 0
End Sub
Private Sub Command1_Click()
Cls
For xi = 0 To 6440 Step 322
For yi = 0 To 4480 Step 28
PSet (550 + xi, 500 + yi)
Next yi
Next xi
For yi = 0 To 4480 Step 224
For xi = 0 To 6440 Step 42
PSet (550 + xi, 500 + yi)
Next xi
Next yi
Line (550, 500)-(550, 500 + 4480)
Line (550, 4480 + 500)-(6440 + 550, 500 + 4480)
Line (550 + 3220, 500)-(550 + 3220, 500 + 4480)
For alfa = 0 To 180 Step 0.01
f1 = Val(Text1.Text)
If Val(Text1.Text) = 0 Then GoTo salto
f2 = Val(Text2.Text)
If Val(Text2.Text) = 0 Then GoTo salto
L = Val(Text3.Text)
If Val(Text3.Text) = 0 Then GoTo salto
n = Val(Text4.Text)
If Val(Text4.Text) = 0 Then GoTo salto
d1 = L / (n - 1)
p = (f2 - f1) / f1
j3 = 90
x = 3.14 * d1 * (f1 / 1530) * Sin(((alfa - j3) + 0.000001) * (3.14 / 180))
For M = 1 To (n - 1)
b = (Sin(M * p * x)) / (M * p * x)
c = Cos((p + 2) * M * x)
d = (n - M)
e = (b * c * d)
k = k + e
Next M
s = ((2 / (n ^ 2)) * k) + (1 / n)
t = Sqr(s)
k = 0
Circle ((550 + 2 * alfa * 6440 / 360), 500 + (2 * 2240 - 2 * 2240 * t)), _
10, vbRed
Next
salto:
End Sub

Collegamenti esterni

modifica

E' disponibile il file di calcolo in formato eseguibile è scaricabile da:

Direttività base lineare in banda di frequenze

  1. Qualsiasi linguaggio di calcolo può essere impiegato adattando opportunamente il listato del programma.
  2. Tramite la variazione dei parametri si possono individuare le condizioni più idonee in base alle esigenze di progetto.
  3. La continuità può essere assimilata ad un insieme d'idrofoni vicini tra loro.
  4. La massima sensibilità della base idrofonica si ha per  °
  5. Non è significativa la variazione della velocità del suono che può variare in campo molto ristretto.
  6. Il listato del programma non è commentato
  7. Prestare attenzione alle righe di programma che in base alla pagina possono essere scritte in parte a capo

Bibliografia

modifica
  • H&B Stenzel, Leitfaden zur berechnung von schallvorgangenh, Berlino, Julius Springer, 1939.
  • R. J. Urick, Principles of underwater sound, Mc Graw – hill, 3^ ed. 1968
  • J.W. Horton, Foundamentals of Sonar, United States Naval Institute,Annapolis Maryland, 1959
  • F. Balena, Visual Basic-il linguaggio-, Mondadori Informatica, 2008
  • G.Frantz, Programmare con Visual Basic, Apogeo 1996
  • M.Padovani, Visual Basic flash, Apogeo, 1997
  • D. Inmann B. Albrecht Programmare in Quik Basic,McGraw-Hill, Marzo 1991
  • C. Del Turco, La matematica con il personal computer- Metodi matematici e grafici in QBasic, Editrice MODERNA La Spezia, 1998