Arrays - Sonar for practising Engineers

김동욱·2024년 1월 17일
1

반갑다! 아쎄이들! 오늘은 잠수함에 들어가는 Arrays에 대해서 알아볼 것이다.

Need for projector arrays

단일한 Projector를 두지 않고 왜 Projector array를 만들어서 사용해야 할까?
책에 따르면 전송된 음향 펄스의 소스 레벨을 높이기 위해 어레이로 조립된다고 한다. 또한 어레이 지향성이라는 개념을 구현하여 특정 방향으로 사운드를 집중시킨다.

해병 A가 혼자서 특정 방향으로 소리를 지른다고 하자. 나름대로 기합차게 소리지른다고 해도 한계가 있을 것이다. 이정도에 만족하면 우리는 기합찬 해병이 아니다. 우리는 같은 방향으로 단체로 소리를 지른다. 그러면 소리가 해당 방향을 강하게 지향하게 되겠지.

어쩌면 아주 당연한 이야기일 것이다. 그럼 이제 소스 레벨이 어떤 뜻인지도 쉽게 알 수 있겠지. 소스 레벨이란 소리를 내는 기계가 소리를 얼마나 크게 낼 수 있는지에 대한 지표다.

또한 소나의 수직면에서는 소리를 위아래로 모든 방향으로 보낼 필요가 없다. 왜냐하면 바다 속에서는 소리를 보낼 때 위로 보내는 것보다는 앞으로 멀리 보내는 것이 더 중요하기 때문이지. 그래서 소리를 보내는 기계들은 앞서 설명한 방식으로 만들어져서, 소리가 위아래로 너무 넓게 퍼지지 않고 좁은 범위 안에서 잘 집중되게 한다. 이 범위를 '빔폭(beamwidth)'이라고 하는데, 보통 3도에서 30도 사이로 설정된다.

Need for Hydrophone arrays

Hydrophone도 마찬가지다. Hydrophone도 Array형태로 구성되어 원하는 방향에서 오는 소리를 더 잘들어낼 수 있다. Signal-to-noise ratio(신호대잡음비)높이고 신호 소스의 방향을 표시할 수 있다.



본격적인 학습을 하기에 앞서 Beam Patterns에 대한 개념을 아주 명확하게 하고 가야한다! 아래 설명을 읽고도 잘모르겠다면 구글링을 하던 선배 해병들에게 물어봐서 어떻게든 알고 다음 학습을 진행할 수 있도록!


Beam Patterns

Beam Pattern은 배열의 응답을 각도에 따라 나타내며, 배열에서 형성된 빔이 모든 방향에서 오는 신호와 잡음에 대해 어떻게 반응하는지를 설명한다. 다시 말해 현재 소나 배열이 어떤 방향에서 민감하게 반응하는지를 나타내는 그래픽 표현 또는 수치적 표현을 말한다. 또한 수학적으로 음향을 전송하고 받는 것은 동일한 형태의 Beam Pattern을 그려낸다. 앞서 말했듯 Array를 이용하면 Signal-to-noise ratio(신호대잡음비)를 개선할 수 있다고 했는데 이것을 Array gain이라 한다. 이때 우리는 Array가 얼마나 특정 방향에 집중하고 있는지 나타내는 정량적인 지표가 필요한다. 우리는 이것을 Directivity Index(DI)라고 표현한다.

Directivity of a Dipole


Figure 2.1을 볼 수 있도록!
S1과 S2는 동일한 위상과 진폭을 가진 점원이다. θ 방향으로 멀리 떨어진 하이드로폰이 저 둘에서 나오는 소리를 잡아낸다고 하자. 하이드로폰은 동일한 진폭을 가진 음파를 받아낼 것이다. 하지만 하이드로폰에서 이들을 받았을 때 각각의 위상을 S2H 정도에 맞게 차이가 난다.

이때 이 위상 차이를

라고 정의할 수 있다.

그리고 하이드로폰에서 잡히는 음압을 아래와 같이 표현할 수 있다.

S1만 있을 경우 음압은 방향과 상관없이 일정하나 S2도 같이 있을 경우 0과 2P 사이에서 달라진다.

강도는 압력의 제곱의 영향을 받는다.

그리고 이 식을 dB 형태로 다시 쓴다면

마지막으로 3dB beamwidth를 구하는 식은 다음과 같다.

Table 2.1을 보면 3dB beamwidth에서 4개의 element(소자) 간격을 보여주고 그림 2.3은 Beam Pattern을 보여준다. 간격이 λ/2일때 90도와 270도일때 값이 없는 것을 알 수 있다. 그리고 간격이 커질 수록 Side lobes가 계속 커지는 것을 볼 수 있다. 이런 상황은 일어나지 말아야 한다. 소리가 오는 방향을 잡아내기가 어렵기 때문이다. 따라서 우리는 Array에서의 각 element간의 거리가 λ/2일 때 가장 바람직한 Beam Pattern을 얻어낼 수 있다.
이때 λ/2에서 조차도 0도와 180도에 동시에 Main lobe가 나타나는 것에 의문을 품는 해병이 있을 것이다. 이렇게 되면 결국엔 정확한 위치를 특정하지 못하는게 아닌가하고 궁금해할 것이다. 답변은 구분 못하는게 맞다. Array의 element는 omnidirectional한 성격을 뛰고 있지? 그래서 element 한개로는 방향을 특정할 수 없어. 그래서 두개 이상의 element를 사용한다. 하지만 이것을 일렬로 수평으로 배치했다면 때문에 앞쪽이나 뒤쪽에 위치하는 것은 알 수 있어도 이것이 위쪽에서 오는 것인지 아랫쪽에서 온 것인지 알 수 있을까? 없겠지. 그래서 아무리 적절한 Beam Pattern이 있어도 0도와 180도에 Main Lobe가 나타나는 것을 막을 수는 없다는 이야기이다.



이제 곧 Broadside와 endfire라는 표현이 자주 나올텐데 이것에 대해 먼저 정의하고 다음으로 넘어가자. Broadside는 신호를 배열의 길이 방향에 수직으로 방사할 때 사용되는 배열이다. 이 방향에서 빔의 주요 방사 방향이 형성된다. 즉 배열이 수평으로 놓여 있을 때 주로 지향성이 수직 방향으로 형성되는 것을 말한다. endfire는 배열의 길이 방향과 같은 방향으로 신호를 방사할 때 사용된다. 즉 배열이 수평으로 놓여 있을 때 주로 지향성이 동일한 방향으로 형성되는 것을 말한다.

The General Line Array

이제 Beam pattern을 그리는 공식을 알려줘야겠지? 아래의 공식은 n개의 하이드로폰을 간격 d로 배치했을 때, Beam pattern 공식이다.

Array의 Main lobe는 연속된 element에서의 위상 또는 시간 지연을 도입하여 조정할 수 있다. 이렇게 하면 어레이의 빔폭과 사이드 로브 구조가 변경된다. 그러면 라인 어레이의 빔 패턴이 다음과 같이 수정된다.

여기서 θs는 조향각도를 나타낸다. (위상과 시간 지연이 바뀌면 array 입장에서는 방향이 바뀐 것으로 볼 수 있겠지?)

위 함수를 사용하여 그림 2.4를 그렸다. 이것에 대해 설명을 하면 조향 각도가 90도인 엔드파이어(endfire) 위치에서는 빔 패턴이 탐조등 모양이며, 좌우 대칭이 없다. 반면에, 90도에 가까운 전환 영역에서는 3 dB 빔폭이 모호해질 수 있다. 빔이 조향될 때 빔폭은 변하지만 배열의 지향성 지수(directivity index)는 대략적으로 일정하다고 설명하고 있다.
조향 각도 60도까지에서 dB beamwidth에서 유용하게 사용되는 근사식을 알려주겠다.

Line Array: Beam Pattern vs. Steer Angle


조향 각도가 클 수록 모호성이 커지는 것을 볼 수 있다.

Broadside Array: Length and Spacing

그림 2.6은 element 간의 거리에 따른 Beam pattern의 변화를 나타낸 것이다.

Beam Pattern for a Continuous Line

길이가 L인 Continuous Line에서의 far field 압력은 다음과 같이 계산된다.

위 표현식은 sinc 함수로 배열의 길이가 L는 (n-1)d이다. 간격 d로 n개의 하이드로폰을 합산한 식보다 다루기가 더 편하다.

Beam pattern의 강도는 dB로 나타내면 다음과 같은 식으로 표현할 수 있다.


x값이 π의 음수 혹은 양수의 배수일 때 beam pattern은 null이 된다. 그리고 x값이 0, 1.5π, -1.5π, 2.5π, -2.5π에서 peak를 찍는다.

Side lobe의 level은 다음과 같다. 아래의 m은 side lobe의 숫자이다.

위 식대로 잘 나오려면 각 element 간의 거리가 λ/2이고 Array의 길이가 적어도 3λ이어야 한다.



아래의 표를 이용해서 주엽에 근사한 식을 도출할 수 있다.

이때 element 간의 간격이 λ/2라면 아래 식이 성립된다.

10dB와 20dB의 brandwidth에 대한 간단한 표현이 있다. 이때 눈여겨 볼 것이 20dB의 그것과 3dB의 그것이 거의 2배 차이가 나는 것이다.

Shading

Element의 간격이 λ/2이거나 보다 작은 경우를 제외하고는 상당한 Side lobe의 크기가 클 것이다. 또한 강한 신호들은 Main lobe 뿐만 아니라 인접 빔의 side lobe에서도 통해서도 발견된다. 약간의 Side lobe을 가지고 최대한 좁은 Main lobe를 찾아내는 것이 중요하다.

이때 Side lobe을 약화시키기 위해 사용되는 기법이 바로 Shading이다. 하지만 Main lobe가 넓어지고 DI(Directivity Index)가 작아진다.

Shaded Arrays: Transmit Source Levels

송신배열에서 Shading을 적용하면 총 출력량이 감소된다. 그러면 감소된 SL을 알 수 있는 식이 있겠지. 다음과 같다.

이때 BF3은 3dB 영역에서 broadening factor(빔폭을 넓이는 요소)를 의미한다.

Directivity Index

하이드로폰을 연속적으로 배치하여 배열을 만들어내면 SNR(Sound-and-noise rate)에서 이득이 생긴다. 이것을 AG(Array Gain)이라고 한다.

식을 보면 알 수 있듯 AG를 얻기 위해서는 S/N을 얻어야 한다. 하지만 일관된 S/N을 구하기란 어렵기에 AG를 계산하기가 어렵다.

그래서 배열 이득을 더 쉽게 시각화하기 위해서 DI라는 개념을 사용한다.

DI of a Simple Dipole


S1과 S2는 구의 중심에 위치해있다. 현재 색칠된 영역을 지나가는 Sound flux(Sound power)는 다음과 같은 식으로 구해진다.

전체 Sound flux의 양은 다음과 같다. (I는 평균강도)

그러므로

그리고 Directivity factor, K(DI = 10logK)는 다음과 같다.

또한 아래와 같은 과정을 거쳐서 DI를 나타내는 식을 구할 수 있다.

DI of a Line Array

DI는 다음과 같이 표현할 수 있다.

이때 element 간의 간격이 λ/2이기에 다음과 같이 표현할 수 있다.

이때 주파수가 증가하여 element의 간격이 λ와 가까워질 경우 아래 식을 사용해야 한다.

하지만 위의 식도 설계한 주파수의 1.5λ 이상일 경우 사용할 수 없다.

DI of a Planar Array

Planar Array의 배열은 다수 개의 Line Array를 합쳐서 계산한다.

보통 배열은 차폐되어 있다. 차폐되어 있을 시에는 아래 식을 사용한다.

이 식도 동일하게 설계한 주파수의 1.5λ 이상일 경우 사용할 수 없다.

DI of a Cylindrical Array


보다시피 수직선(스테이브)로 구성된 어레이의 원통형 배열이다.
스테이브 갯수는 빔 간격과 관련이 있으며 모든 빔이 동일하고 360도를 커버할 수 있기에 빔 형성을 단순화할 수 있다. 수평빔폭은 일정하나 수직빔폭은 스테이브 높이의 함수를 따른다.빔을 형성하기 위해 원통 주변의 1/3에 해당하는 스테이브의 위상을 맞춰서 평면 배열 처럼 보이게 한다.
공식은 아래와 같다.

h = height (m)
d = diameter (m)
f0 = design frequency (kHz)

DI Formulae for Simple Arrays

배열 공식은 모두 Element의 갯수로 표현이 된다. 이 모든 공식은 근사치이긴 하지만 실제 소나 설계에 사용되는 것에 적합하기에 사용된다.

Conformal Arrays

곡면 배열은 보통 잠수함의 선체 형상에 따른다. 좌/우현 양쪽 측면에서 함수 주변까지 확장되어서 설치된다. 아주 좋은 성능을 발휘한다. DI와 빔폭은 배열의 곡면이 크지 않은 측면에서 평면 배열의 조립체와 함수쪽에서 부분 원통형으로 근사하여 추정할 수 있다.

Spherical Arrays

구형 배열은 더 큰 수직 범위가 요구되는 경우 또는 선박 움직임을 더 잘 잡아내기 위해 사용된다. 하지만 이것을 구현하기 위해 프로젝터와 하이드로폰을 낭비적으로 사용하게 되고 원통형 배열에 비해 DI가 감소되는다. 따라서 원통형 배열을 수직으로 배치하는 것과 구형 배열을 비교했을 때 어떤 것이 더 나은 것인가에 대한 논란이 있다.

Volumnetric Arrays

Volumetric array는 원통형 배열들 사이에서 적절한 분리와 위상 조정을 통해 차폐된 원통형 배열과 동등한 지향성 패턴을 생성할 수 있다. 여기서 각 Element들은 λ/2로 분리하고 각 원통은 λ/4로 분리한다. 상대적 위상이 90도일 때 수평 지향성은 심장형 모양이다. 이 방식은 헬리콥터의 디핑 소나에서 종종 사용되는 방식이다.

Beamformer

beamformer에는 아날로그, 디지털, 협대역 시스템으로 세가지로 나눠진다. 아날로그는 아주 간단한 배열 시스템을 가지고 있으나 현대에서는 사용되지 않는다. 이것은 주파수와 위상이 선형적인 관계를 가지는 LC(lumped constant) 네트워크를 사용하여 조립되는데, 이 경우 수정이 어렵고 속도 변화에 민감하게 만들기도 어렵다. 디지털은 RAM 또는 shift register를 사용하여 데이터를 저장한다. 이 데이터 각각에 주소를 지정하여 빔을 형성한다. Shading을 하거나 Speed variation을 쉽게 적용할 수 있다. 협대역 시스템은 주파수에 따라 일정하여 광대역 시스템에 적합한 일반적인 시간 지연 대신 한 주파수에서만 정확히 정확한 위상 지연을 사용하여 필요한 빔을 형성할 수 있다.

Domes and Arrays

Arrays를 그냥 바다에 노출시키면 손상을 입을 수 있다. 따라서 음향학적으로 투명한 소재를 사용하여 Arrays를 보호하는데 이것을 Domes라 한다. 아무리 투명한 소재를 사용한다고 해도 완벽하게 투명한 것이 아니기에 일부는 흡수되거나 반사되긴 한다. 또한 baffles라는 개념이 있다. 우리가 가진 Arrays에 우리 잠수함의 추진장치나 프로펠러 케비테이션 소리가 들리면 안되기에 이것을 막는 장치가 있다. 이것이 그림에 나타나는 baffle1이다. baffle2는 B와 같은 형식으로 소리가 반사되어 Array에 들어가면 안되기 때문에 이것을 막아주는 역할을 한다.

이제 끝이다. 지금까지 읽어봤으면 알겠지만 나도 이 파트에 대해서 모든 것을 알지는 못한다. 하지만 이 정도 정리면 Array에 대한 전체적인 overview 그리고 Directivity에 대한 개념은 잡을 수 있을 것이다. 혹여나 잘못된 부분이나 보강이 필요한 부분이 있으면 아래 댓글로 남겨주길 바란다. 이상 끝. 해산.

profile
nestjs 백엔드 개발합니다.

0개의 댓글