どうも、こんにちは!このサイトに関わらせてもらっている、一人の海洋テクノロジー好きとしてブログを書いています、私たちのサイト「OceanTechnology Business Hub」では、「海洋テクノロジーの未来を共に創る」をテーマに、海洋DXやブルーカーボン、再生可能エネルギーみたいな、ちょっと壮大で未来的な話を発信しています。こういう大きな話って、自分とは少し遠い世界のことだという印象ちゃう人もいるかもしれないんですけど、実はその未来につながる技術って、もう私たちのすぐそばまで来てるのです。
最近、個人的に「これは来たな!」ってワクワクしてるのが、ずばり「水中ドローン」の世界です。先日、サイトのニュースでもプロ向けのすごい最新機種を紹介していましたが、今日はもう一歩踏み込んで、この技術が私たち個人にとってどれだけ面白い「おもちゃ」であり、強力な「ツール」になりつつあるか、そんな話をさせてください。
オープンソースで手に入る本格的水中ドローン
プロが使う数十万、数百万もする機材の話だけじゃないんです。実は今、オープンソースのプロジェクトが非常に盛り上がっていて、個人でも比較的手に入れやすい価格で、しかも高性能な水中ドローン(専門的にはROVと言います)を自作できる時代になってるのです。
BlueROV2 - 個人でも組み立てられる本格ROV
その代表格が、Blue Robotics社の「BlueROV2」ですね。これはキットとして販売されていて、プラモデルを作るみたいに自分で組み立てることで、水深100mまで潜れて、4Kカメラで撮影できる本格的な水中ドローンが手に入ってしまう。心臓部には「ArduSub」というオープンソースのソフトウェアが使われていて、世界中の開発者コミュニティによって日々進化しているのです。
こういうオープンな環境があるから、ただ操縦して楽しむだけじゃなくて、自分でセンサーを追加したり、プログラムを組んで独自の動きをさせたり、なんて拡張も自由自在。まさに「自分だけの海中探査機」を育てていくような感覚。海のことを学びたい学生さんや、新しい表現を模索する映像クリエイター、それに私たちのような純粋なガジェット好きにとって、これほど胸が躍る話はないです。
マイ水中ドローンで何ができる?無限の可能性
じゃあ、そんな"マイ水中ドローン"で何ができるの?って話ですけど、可能性は無限大です。例えば、釣りが好きな人なら、自分の目で海底の地形や魚の群れを確認しながら最高のポイントを探せますし、ダイビングが趣味なら、潜る前に安全確認や見どころのチェックもできる。
環境調査と市民科学への貢献
地域の環境調査にだって活用できます。近所の浜辺のゴミの状況を継続的に記録したり、アマモ場の生育状況を定点観測したり。大掛かりな調査はできなくても、市民科学としてデータを集めて発信すれば、非常に価値のある活動になるはずです。
プログラミングによる自動制御の世界
さらに、プログラミングが得意なら、もっと面白いことができます。例えばPythonを使えば、ドローンを自動で動かすことも可能なんです。下のコードは、ドローンをゆっくり3秒間だけ前進させて停止させる、という簡単な命令のサンプルですけど、これを応用すれば、指定したルートを自動で巡回させたり、画像認識で特定の魚を見つけたら追跡させたり、なんてことも夢じゃないのです。
import time
from pymavlink import mavutil
# BlueROV2に接続
master = mavutil.mavlink_connection('udpin:0.0.0.0:14550')
master.wait_heartbeat()
print("Heartbeat from system (system %u component %u)" % (master.target_system, master.target_component))
def set_target_attitude(roll, pitch, yaw, thrust):
# ドローンの動きを制御するコマンドを送信
master.mav.set_attitude_target_send(
int(time.time()),
master.target_system,
master.target_component,
0b00000111, # roll, pitch, yawを無視してthrustを有効にするマスク
[roll, pitch, yaw, thrust], # roll, pitch, yaw rate, thrust
0, 0, 0
)
# 前方に3秒間、ゆっくり進む
print("Moving forward for 3 seconds...")
set_target_attitude(0, 0, 0, 0.6) # thrustを0.6に設定 (0.5がホバー)
time.sleep(3)
# 停止
print("Stopping.")
set_target_attitude(0, 0, 0, 0.5)
水中ドローンが拓く新しい海との関わり方
結局、何に一番ワクワクしてるかというと、水中ドローンというツールが専門家の手から私たち個人の手に渡ることで、海との関わり方が根本的に変わるんじゃないかという期待感なんです。これまで研究者や一部のプロしか見ることができなかった海の中の世界を、誰もが気軽に覗けるようになる。
その中から生まれる純粋な好奇心や「もっと知りたい」という探求心が、私たちのサイトが目指している「海洋テクノロジーの未来」を創る、一番大きな原動力になるんじゃないかなって。壮大な目標も、きっと始まりは「この手で海の中を覗いてみたい」という、そんなシンプルな気持ちのはず。本気で一台作ってみようかな…なんて、すっかりその気になってしまってます。
