魚群探知機を自作する方法や必要な部品について

目次

魚群探知機は自作できる?

魚群探知機は、必要な電子部品と超音波振動子を組み合わせることで自作できます。

ただし、市販されている高性能な魚群探知機と同等の性能を最初から実現するのは簡単ではありません。

自作する場合は、まず「魚の形を画面に表示する装置」を目指すのではなく、超音波を水中へ送信し、反射波から水深や反射強度を測定する簡易的な測深機を作るところから始めるのがおすすめです。

その後、反射強度の表示、スクロール表示、魚らしい反射の検出などの機能を段階的に追加すると、魚群探知機らしい装置へ発展させられます。

魚群探知機の基本的な仕組み

魚群探知機は、水中へ超音波を発射し、魚や海底などから返ってきた反射波を受信することで水中の状態を調べる装置です。

超音波を送信して反射波を受信する

魚群探知機には「振動子」または「トランスデューサー」と呼ばれる部品が使用されています。

振動子から水中へ超音波を送信すると、その音波は魚、海底、浮遊物などに当たって反射します。

戻ってきた反射波を再び振動子で受信し、反射波が戻るまでの時間や強さを分析します。

反射時間から距離を計算する

対象物までの距離は、超音波を送信してから反射波が戻ってくるまでの時間から求められます。

基本的な計算式は次のとおりです。

距離 = 水中の音速 × 往復時間 ÷ 2

例えば、水中の音速を約1,500m/sとし、反射波が20ms後に戻ってきた場合は、

1,500 × 0.020 ÷ 2 = 15m

となります。

つまり、振動子から反射物までの距離は約15mです。

魚群探知機を自作するために必要な部品

自作魚探は、送信回路、受信回路、信号処理回路、表示装置などを組み合わせて作ります。

超音波振動子

魚群探知機の中でも特に重要なのが超音波振動子です。

従来型の魚群探知機では、50kHzや200kHzなどの周波数が代表的に使用されてきました。

現在では、一定範囲の周波数を変化させながら送信するCHIRP方式も広く利用されています。

自作する場合は、魚探用として販売されている振動子を使用した方が現実的です。

振動子を選ぶ際は、

・共振周波数
・インピーダンス
・静電容量
・許容入力
・ビーム角
・送受信感度
・周波数帯域

などを確認します。

単に「200kHzの振動子」であれば何でも使えるわけではありません。

送信回路や受信回路は、使用する振動子の仕様に合わせて設計する必要があります。

マイクロコントローラー

魚群探知機全体を制御するためにマイクロコントローラーを使用します。

候補としては、

・Arduino
・ESP32
・STM32
・Raspberry Pi Pico

などがあります。

マイクロコントローラーでは、

・超音波の送信タイミング制御
・反射波の到達時間測定
・ADCデータの処理
・水深計算
・ディスプレイ表示

などを行います。

簡単な水深測定であればArduinoでも対応できますが、高速な波形処理を行いたい場合はESP32やSTM32などの方が適しています。

超音波の送信回路

マイクロコントローラーから出力される信号だけでは、魚探用振動子を十分に駆動できない場合があります。

そのため、振動子を駆動するための送信回路が必要です。

バースト信号を生成する

例えば200kHzの振動子を使用する場合、200kHzの信号を一定周期だけ連続して送信します。

このような短時間の連続信号を「バースト信号」と呼びます。

200kHzでは1周期が5µsです。

仮に10周期送信する場合、送信時間は50µsになります。

ただし、実際に何周期送信するかは振動子の特性や必要な探知距離によって異なります。

数周期から数十周期程度のバーストを使用する設計もありますが、固定的な標準値があるわけではありません。

MOSFETなどで振動子を駆動する

振動子を駆動するためには、

・MOSFET
・MOSFETゲートドライバ
・トランス
・専用パルサーIC

などを利用できます。

初心者の場合は、最初から大きな送信電力を目指すよりも、比較的低い電圧から試作する方が安全です。

高電圧化すると、MOSFETや受信回路の破損、感電、絶縁不良などのリスクが高くなります。

送信回路と受信回路を分離する仕組み

同じ振動子を送信用と受信用の両方に使用する場合、送信信号から受信回路を保護する必要があります。

T/Rスイッチや保護回路を使用する

超音波を送信するときの信号は比較的大きい一方、魚や海底から返ってくる反射波は非常に小さな信号です。

送信信号がそのまま受信アンプへ入ると、アンプが飽和したり破損したりする可能性があります。

そのため、

・T/Rスイッチ
・ダイオードクランプ
・リミッタ回路
・MOSFETスイッチ
・アナログスイッチ

などを使用して送受信を分離します。

どの方式を採用するかは、使用する振動子や送信回路によって異なります。

反射波を増幅する受信回路

魚群探知機の性能を大きく左右するのが受信回路です。

魚などから返ってくる反射信号は非常に小さいため、十分に増幅してから処理する必要があります。

低雑音アンプで増幅する

振動子から取り出した信号は、低雑音アンプなどを使って増幅します。

必要な増幅率は、

・振動子の感度
・探知深度
・送信電力
・周波数
・ADCの入力レンジ
・対象物の反射強度

などによって異なります。

40~80dB程度の大きなゲインが必要になる設計もありますが、これはあくまで一例です。

すべての魚群探知機で同じ増幅率が必要になるわけではありません。

また、大きなゲインを1段のアンプだけで得ようとすると発振などが起こりやすいため、複数段に分けて増幅する設計もあります。

バンドパスフィルタでノイズを減らす

反射信号には、目的とする超音波以外のさまざまなノイズが混入します。

使用する振動子の周波数付近だけを通す

例えば200kHzの振動子を使用する場合、200kHz周辺の信号だけを通過させるバンドパスフィルタを使用します。

これによって、

・エンジンノイズ
・モーターノイズ
・電源ノイズ
・スイッチング電源のノイズ
・周囲の不要な信号

などを低減できます。

ただし、フィルタの帯域幅は振動子の周波数特性によって変える必要があります。

例えば180~220kHzといった帯域を設定することも考えられますが、これはあくまで一例です。

実際には振動子のデータシートを確認しながら設計することが重要です。

反射信号をマイコンで読み取る方法

反射信号をマイクロコントローラーで処理する方法には、大きく分けて2種類あります。

包絡線検波してからADCで読み取る

初心者に向いている方法が包絡線検波です。

受信した高周波信号を、

受信信号
↓
整流
↓
平滑化
↓
ADC

という順番で処理します。

こうすると、200kHzなどの高周波波形そのものではなく、反射信号の強さを示す比較的低速な信号をマイコンへ入力できます。

ArduinoやESP32を使った簡易魚探では、この方式が取り組みやすいでしょう。

高速ADCで受信波形を直接取り込む

より高度な魚探では、反射波の高周波信号をそのままADCで取り込む方法があります。

例えば200kHzの信号を直接デジタル化する場合、1~2MSPS程度以上のADCを使う構成が考えられます。

1MSPSなら200kHzの波形を1周期あたり約5点、2MSPSなら約10点取得できます。

取得した信号に対して、

・デジタルバンドパスフィルタ
・包絡線抽出
・IQ検波
・相関処理
・ノイズ除去

などの処理を行えます。

ただし、実際に必要なサンプリング周波数は信号処理方式によって異なります。

ESP32で魚群探知機を作る場合

ESP32は、自作魚探の制御用マイコンとして利用できます。

包絡線検波との組み合わせが扱いやすい

ESP32にはADCが搭載されているため、包絡線検波した反射信号を読み取る用途では比較的扱いやすいでしょう。

一方、200kHzの微弱な受信波形を内蔵ADCだけで高精度に直接取得する用途では、性能を慎重に評価する必要があります。

より高品質な信号処理を行いたい場合は、

ESP32
+
アナログフロントエンド
+
外付け高速ADC

という構成も検討できます。

Arduinoで魚群探知機を作る場合

Arduinoでも簡易的な魚群探知機を作れます。

水深計や簡易魚探に向いている

Arduino UNOなどを使用する場合は、

・送信タイミングの生成
・反射波の到達時間測定
・包絡線検波後の信号取得
・水深表示

などを担当させると扱いやすくなります。

一方、200kHzの受信信号をそのまま高速にサンプリングして複雑なデジタル信号処理を行う用途には向いていません。

そのため、

振動子
↓
受信アンプ
↓
バンドパスフィルタ
↓
包絡線検波
↓
Arduino

という構成が現実的です。

水中の音速は常に一定ではない

簡易魚探では、水中の音速として約1,500m/sを使用することがあります。

しかし、実際の水中音速は一定ではありません。

水温や塩分などによって変化する

海水中の音速には、

・水温
・塩分
・圧力

などが影響します。

そのため、高精度な測深を行う場合は環境条件を考慮する必要があります。

簡易的な自作魚探であれば約1,500m/sを固定値として使用する方法でも実用できますが、精度を高めたい場合は水温などによる補正を検討するとよいでしょう。

ただし、水温センサーだけで完全な音速補正ができるわけではありません。

精密な測深では塩分や圧力なども考慮します。

魚はなぜ超音波を反射する?

魚群探知機では、魚体や魚の内部構造から返ってくる超音波を利用します。

浮き袋が強い反射源になる場合がある

多くの魚が持っている浮き袋にはガスが入っています。

ガスと水では音響特性が大きく異なるため、浮き袋は比較的強い超音波反射を発生させることがあります。

そのため、魚群探知では浮き袋が重要な反射源になります。

ただし、すべての魚が同じような浮き袋を持っているわけではありません。

魚から返ってくる反射強度には、

・魚の大きさ
・魚種
・姿勢
・浮き袋の形状
・使用周波数

なども影響します。

反射があっても魚とは限らない

魚群探知機が検出する反射波は、魚だけから発生するわけではありません。

水中には、

・気泡
・海藻
・プランクトン
・ロープ
・沈木
・浮遊物

なども存在します。

これらも超音波を反射する可能性があります。

そのため、単純に「海底より上に反射があるから魚」と判断することはできません。

本格的な魚判定では、反射強度や形状、連続性などを組み合わせて判断します。

TVGを使って深い場所の反射を補正する

魚群探知機では、距離が遠くなるほど反射信号が弱くなります。

そこで利用されるのがTVGです。

時間に応じて受信感度を変える

TVGは、反射波が戻ってくるまでの時間に応じて受信ゲインや信号レベルを補正する仕組みです。

送信直後の近距離では比較的小さな補正を行い、時間が経過して遠距離からの反射を受信する段階では、より大きな補正を行います。

これによって、深い場所から返ってくる弱いエコーを見やすくできます。

実際のTVG特性は単純な直線増加ではなく、音波の伝搬損失などを考慮して設計されます。

魚群探知機の画面を作る方法

自作魚探では、最初から市販魚探のような表示を作る必要はありません。

最初はAスコープ表示から始める

Aスコープでは、

横軸:深さ
縦軸:反射強度

などとして表示します。

これにより、どの深さから強い反射が返ってきているか確認できます。

強い海底反射が表示できれば、まずは測深装置として正常に動作していることを確認できます。

データを連続表示すると魚探らしい画面になる

毎回取得した反射強度データを横方向へ少しずつずらして表示すると、市販魚探に近いスクロール画面を作れます。

一般的には、

縦軸:深さ
横軸:時間
色や明るさ:反射強度

として表示します。

船が移動すると、水中の魚や海底地形の反射位置が変化するため、魚探らしい画像になります。

初心者向けの自作魚探構成

初めて自作する場合は、できるだけ構成を単純化することが重要です。

簡易型の構成

例えば、次のような構成が考えられます。

マイクロコントローラー
↓
送信ドライバ
↓
魚探用振動子
↓
受信保護回路
↓
受信アンプ
↓
バンドパスフィルタ
↓
包絡線検波
↓
ADC
↓
ディスプレイ

この構成なら、高速ADCや高度なDSPを使用せずに水深や反射強度を測定できます。

高度な構成

より高性能な魚群探知機を作る場合は、

マイコンまたはDSP
↓
送信パルサー
↓
振動子
↓
T/R回路
↓
低雑音アンプ
↓
アナログフィルタ
↓
高速ADC
↓
デジタル信号処理
↓
ディスプレイ

という構成が考えられます。

デジタル処理では、

・フィルタリング
・包絡線検出
・TVG
・ノイズ除去
・海底検出
・魚候補検出

などを実装できます。

自作魚探を作る手順

魚群探知機を自作するときは、完成形を一度に作るより段階的に開発した方がトラブルを減らせます。

まずは水深計を完成させる

最初の目標は、水深を測定できる装置です。

基本的な手順は次のようになります。

  1. 魚探用振動子を用意する
  2. マイコンから送信バーストを生成する
  3. 送信ドライバで振動子を駆動する
  4. オシロスコープで送信波形を確認する
  5. 水中で反射波を確認する
  6. 受信アンプを追加する
  7. バンドパスフィルタを追加する
  8. 包絡線検波を行う
  9. ADCで反射信号を取得する
  10. 反射時間から距離を計算する
  11. 水深をディスプレイへ表示する

ここまでできれば、簡易的な測深機として利用できます。

その後に魚探機能を追加する

水深測定が安定したら、

・反射強度表示
・Aスコープ表示
・スクロール表示
・TVG
・ノイズ除去
・魚候補判定

などを追加します。

「測深機から魚群探知機へ発展させる」という考え方で進めると、自作しやすくなります。

自作魚探で難しいポイント

魚群探知機では、マイコンのプログラムだけでなくアナログ回路の設計も重要です。

送信後のリンギング

圧電振動子は、送信信号を止めてもすぐに振動が完全停止するとは限りません。

送信後もしばらく振動が残る現象をリンギングと呼びます。

リンギングが大きいと、送信直後に返ってくる近距離の反射波が振動子自身の残留振動に埋もれてしまいます。

そのため、浅い場所の測定性能に影響することがあります。

ダイナミックレンジ

魚から返る反射信号と海底から返る信号では、強度が大きく異なることがあります。

弱い魚の反射と強い海底反射を同時に扱うためには、十分なダイナミックレンジが必要です。

受信アンプ、ADC、TVGなどを適切に組み合わせる必要があります。

電源ノイズ

魚探の受信信号は非常に小さいため、電源回路から発生するノイズにも注意が必要です。

特に、

・DC-DCコンバーター
・液晶ディスプレイ
・マイコン
・モーター
・エンジン

などのノイズが受信回路へ混入すると、魚探の感度が低下する場合があります。

アナログ回路とデジタル回路の電源やグラウンド設計も重要になります。

振動子そのものを自作するのは難しい

魚群探知機を自作する場合でも、振動子まで一から製作する必要はありません。

市販の魚探用振動子を利用する方が現実的

圧電セラミックを使えば超音波振動子そのものを製作することは可能ですが、

・共振周波数
・音響整合
・バッキング材
・ケース構造
・防水
・指向性
・接着方法

などを調整する必要があります。

そのため、最初の自作では市販の魚探用振動子を使用し、送信回路、受信回路、信号処理回路を自作する方法が現実的です。

振動子の取り付け位置も重要

魚群探知機は、電子回路が正常でも振動子の取り付け方によって性能が大きく変わります。

気泡を避ける

水中の気泡は超音波を強く反射・散乱させます。

そのため、振動子の表面付近に気泡が流れ込むと、正常な測定が難しくなる場合があります。

船体へ取り付ける場合は、

・船体から発生する気泡を避ける
・安定して水中に入る場所へ設置する
・振動子面を適切な方向へ向ける
・航走時の水流を考慮する

ことが重要です。

魚群探知機の自作に必要な工具

魚探を自作するときは、電子工作用の工具だけでなく測定器も重要です。

オシロスコープは特に重要

用意しておきたい工具には、

・はんだごて
・デジタルテスター
・オシロスコープ
・安定化電源
・ブレッドボード
・ユニバーサル基板

などがあります。

特にオシロスコープは重要です。

送信波形、リンギング、受信波形などを確認しながら回路を調整する必要があるためです。

数MHz以上の帯域を持つ一般的なデジタルオシロスコープがあれば、200kHz前後の基本的な波形確認には十分対応できます。

自作にかかる費用は構成によって大きく変わる

魚群探知機の自作費用は、使用する部品によって大きく異なります。

特に、

・振動子
・高速ADC
・アナログフロントエンド
・ディスプレイ
・防水ケース
・基板
・測定器

などによって総費用は大きく変化します。

すでに測定器を所有していれば比較的低コストで試作できますが、オシロスコープなどを新たに購入する場合は、市販の魚群探知機を購入するより高額になる場合もあります。

魚群探知機を自作するときの安全上の注意

魚探では振動子を強く駆動するため、高いパルス電圧を使用する設計もあります。

最初は低電圧で試作する

初心者の場合は、

3.3Vまたは5Vのマイコン
↓
低電圧ドライバ
↓
振動子

という比較的安全な構成から試験を始めるのがおすすめです。

エコーが確認できてから、必要に応じて送信性能を高めます。

また、船上や水辺では、

・防水
・ヒューズ
・逆接続保護
・過電流保護
・防食
・絶縁

なども重要です。

特に海水環境ではコネクターや配線が腐食しやすいため、防水・防食対策を十分に行う必要があります。

自作魚群探知機は水深計から始めるのがおすすめ

魚群探知機を自作する場合、最初から魚の形を表示する高性能魚探を目標にする必要はありません。

まずは、

超音波を送信する
↓
反射波を受信する
↓
往復時間を測る
↓
水深を計算する

という基本機能を完成させます。

その後、

反射強度表示
↓
Aスコープ
↓
スクロール表示
↓
TVG
↓
ノイズ除去
↓
魚候補判定

と機能を追加していくのが現実的です。

魚群探知機は水中の魚をカメラのように直接映している装置ではありません。

超音波の反射時間や反射強度などから水中の状況を推定しています。

そのため、自作するときも、

「超音波送信」
「反射波受信」
「信号処理」
「距離計算」
「画面表示」

という機能に分けて考えると、回路設計やトラブルシューティングを進めやすくなります。

以上、魚群探知機を自作する方法や必要な部品についてでした。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次