IoT を利用して鰻を大きく育てたい

## はじめに
こちらは [SORACOM Advent Calendar 2024](https://qiita.com/advent-calendar/2024/soracom) 6 日目の記事です。

突然ですが、先日鰻をつかまえました。この天然鰻を IoT の力で早く大きく育てたいと思い、試行錯誤しています。この記事では本日までの試行錯誤の軌跡をご紹介します。なお、この記事を執筆している 2024 年 12 月時点ではまだまだ道半ばですので、それなりに長文の割に有益な情報をお届けできないかもしれません。どうか温かいお気持ちでお読みいただければ幸いです。

## 鰻の捕獲
以前近所の川沿いを散歩をしていたら鰻を釣り上げている現場を目撃したことがあり、いつか自分でも鰻をとって食べてみたいと思っていました。鰻は夜行性のため夕方から夜にかけて釣る魚だそうです。また、雨が降った日には鰻の動きが活発になるので、釣れる可能性が上がるとのことでした。しかし、普段釣りをしない自分にとっては雨の日の夜に釣りに行くのは腰が重く、鰻を釣り上げたいと思いつつできていませんでした。

ふとした時に、鰻用の罠 ([参考](https://www.amazon.co.jp/dp/B096RSRZVH)) を仕掛けることで捕獲できるという情報を YouTube で入手しました。餌となるミミズを中に入れて川の中に数日放置するだけなので、これなら私にもできると思いやってみることにしました。

:::note warn
場所によっては共同漁業権が設定されていたり、使ってもよい漁具・漁法、大きさ制限、禁漁期などが定められている場合があります。鰻の捕獲を検討される場合は、必ず県の水産課などに対象の河川での捕獲が許可されているか、留意する事項がないかどうかをご確認ください。とても丁寧に教えてくれます。
:::

仕掛ける場所を変更しながら継続すること数ヶ月、ついに鰻を捕獲することができました。捕まえた鰻がこちらです。

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/160ac1cd-76c1-f1cd-1486-45e434884776.jpeg">

## 大きく育てたい
さて、無事鰻を捕まえることができたわけですが、どうせならもっと大きく育ててから美味しくいただきたいと思いました。大きく育てるためには鰻に沢山の餌を食べてもらう必要があります。私なりに調べた結果、鰻は水温によって食欲が大きく変動するとのことでした。個体差はあると思いますが、25 度付近が最も餌の食いつきが良く、15 度を下回ると食欲が大きく減退し、10 度を下回るとほぼ餌を食べなくなるようです。

そのため、特に冬場は水槽にヒーターを入れて水温が下がらないように管理することがポイントのようです。幸いにも私は過去に同僚と [水産養殖 IoT システムのプロトタイピング](https://blog.soracom.com/ja-jp/2023/09/08/soracom-discovery-2023-prototyping-aquaculture/) を作成したことがあり、これを使って水温を完璧に管理して美味しい鰻に育てる算段でいました。

しかし・・・

なんと妻から家の中に鰻を入れる許可が降りず、家の外で育てることになりました。屋外コンセントは家の裏側にある (且つ水槽を置くスペースがない) ため、家庭用電源は利用できません。先述したプロトタイプはコンセントから給電することを想定していたため、イチから考え直さなければいけませんでした。

### 水槽とエアレーションと水温計の購入
家の外で飼育するにしても、先ずは水槽とエアレーションが必要です。
もうすぐ冬もやってくるのでできるだけ保温性の高い水槽が良いと思い、発泡スチロールでできている [こちらの水槽](https://www.amazon.co.jp/dp/B00U5TT8PY) を購入しました。メダカ用らしいのですが、幅は 65 cm もあるので十分です。また、エアレーションは [ソーラー電源がついているもの](https://www.amazon.co.jp/dp/B0BW8JC3VP) を購入しました。

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/7e974ec7-5c72-f002-913c-4e2e6e35b9a8.jpeg">

そして水温計です。SIM を挿してセンサーデータを送信できるタイプのデバイスがないか探してみました。SORACOM IoT SIM を使うことができれば、水温を SORACOM Harvest Data に保存して SORACOM Lagoon で時間ごとの推移を可視化できます。しかし残念ながら私が調べた限りではそのような水温計は見つかりませんでした。

そこで現在の気温に加えて、最低水温・最高水温を保持してくれる [こちらの水温計](https://www.amazon.co.jp/dp/B09T3L3J24) を購入しました。この水温計は水に浮かべることができて水温を確認しやすいですし、とても便利です。

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/1a442c22-67fe-1877-397d-4b09f3d8b4bc.jpeg">

### どうにかして時間ごとの水温を記録したい
ただ、できれば最低水温・最高水温だけでなくて、時間ごとの水温を把握したい気持ちがありました。先ほど記載したように、15 度と 10 度を上回るかどうかが鰻が餌を食べるかどうかの大きなポイントになっています。

水温がこんな感じの推移なのか、

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/7fb31a53-6a83-cddd-3ea7-6a3f6b657686.png">

もしくはこんな感じなのかが知りたい。

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/a127e69b-8398-6987-e46a-a2b80e455fe6.png">

つまり、15 度 (最低でも 10 度) を上回っている時間がどれくらいあるのかを知りたいのです。

### ソラカメで水温計を読み取る？
とはいえ、先に述べたように SIM が挿せる水温計は見つかっていません。
次に考えたことは、ソラコムが提供するクラウドカメラサービスの [ソラカメ](https://sora-cam.com/) で水温計を撮影して、画像から OCR で現在の水温を読み取って、SORACOM Harvest Data へ保存する方法です。電源が必要なことは変わりないのですが、ソラカメは屋外でもソーラー電源と LTE ルーターの組み合わせで利用しているケースもあると聞いていますので、頑張ればできるかもしれません。

ただ、水面に浮かんでいる水温計を撮影するには水槽に蓋を設置して、そこにソラカメを固定する必要があります。また、ソーラー電源と LTE ルータを収納する防水の Box などを追加で調達する必要があったり、撮影した画像を OCR で読み取る処理もあり (これは [SORACOM Flux](https://users.soracom.io/ja-jp/docs/flux/) を利用して生成 AI と連携すれば比較的容易に実現できそうですが)、結構大変そうなので違う方法を検討することにしました。

### 水温の記録は諦めて気温を記録する
そして、そもそも水温ではなく気温を記録するのはどうか、という考えに至りました。
そんなに大きな水槽ではないので、水温は基本的には周囲の気温に近づくだろうという仮説のもとこちらの方法をトライしてみることにしました。

気温を記録するのであれば、ソラコムから販売している [ビーコン対応GPSトラッカーGWスターターキット（BLE温湿度センサー3個セット）](https://soracom.jp/store/5533/) を利用すれば簡単に実現できます。このキットに同梱されている MM-BLEBC7 温度・湿度センサー搭載 BLE ビーコン (以降、MM-BLEBC7) は IP66 なので屋外でも利用できそうです。

先ずは、水槽内の気温と水温の関係を確認するため、ビーコン対応GPSトラッカーGW (以下、ビーコン GW) を設定して水槽の中の気温を計測してみました。設定手順は [こちら](https://users.soracom.io/ja-jp/guides/iot-devices/beacon-gps-tracker/send-ble-sensor-data/) のドキュメントに記載されています。

また、以下のように断熱材で水槽を覆いました。断熱材の保温効果の検証のため、水槽外の気温もあわせて計測しました。

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/66993eef-6a48-406e-8d0d-664cbde1ab96.jpeg">

こんな感じで MM-BLEBC7 を水槽の中と外にそれぞれ設置しました。

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/55f7cefc-ebf6-6a76-e991-458b2d8aeeee.jpeg">
<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/997412e7-839f-267a-1e91-3e4c37fe0dad.jpeg">

夜から翌日の昼前まで計測した気温を SORACOM Lagoon で可視化した結果が以下です。

<img width="700" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/602f4087-f182-e11c-89a9-d80c87797646.png">

緑色の線が水槽内の温度、オレンジ色の線が水槽外の温度です。発泡スチロールの水槽と断熱材の効果で気温の変動が抑えられていることが確認できました。

また、この間の水槽内の最低水温・最高水温は以下です。

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/fe5a6f8a-97be-475d-f75a-0f6dec921809.jpeg">

最低水温は 13.0 度でした。水槽内の気温の推移を見ると、最低気温は朝 8 時ころの 12.3 度でした。水槽内の最低水温と最低気温が近い数字になっていることが確認できました。一方で、最高水温は 14.5 度であるのに対して、最高気温は 17.1 度と若干の開きがあります。水温は気温の変化に追従して、少し遅れて変化するのだろうと推測できます。(当たり前と言えば当たり前ですが)

少なくとも水温は気温の変動幅よりも狭い範囲に収まるであろうことは確認できました。水槽内の気温を 15 度以上に保つことができれば良いですが、仮に気温が 15 度未満になってしまう場合でも水温の変化に反映されるまでにはタイムラグがあるので短い時間で温度が上がれば水温は 15 度以上を維持できそうです。

:::note
SORACOM Lagoon にはアラートを通知する機能もあります。例えば、水槽内の気温が 15 度未満の状態が 2 時間以上継続した場合にメールや Slack などで通知することもできます。現時点では監視対象の水槽は 1 つだけなのでアラート通知までは設定しませんでしたが、今後飼育する鰻の数が増えて、水槽の数が増えてきたら設定しても良いかもしれません。そうすることで全ての水槽の気温をチェックする手間が省けます。
:::


### 水槽内の気温をどのように上げるか
次はどのようにして水槽内の気温を 15 度以上にするかを考えなければいけません。

室内の水槽であれば (というか電源が確保できれば) ヒーターで水を温めることができるのですが、今回は電源が確保できていません。バッテリー駆動のヒーターがないか調べて見ましたが、やはり見つかりませんでした。魚の飼育に詳しい同僚に聞きましたが「ヒーターは 150W - 300W かかるのでどんな製品でも電源が必要になってきます。」とのことでした。

これは流石に厳しいかなと思いつつネットの記事を漁っていると、ホッカイロを使ってメダカ水槽を暖めている記事を見つけました。そこで、以下のようにホッカイロを水槽内に設置することで気温を上昇させることができないか試してみました。

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/32468f0f-73f6-e430-5ce8-601f12e0161f.jpeg">

気温の計測結果は以下です。緑色の線が水槽内の気温、オレンジ色の線が水槽外の気温です。

<img width="700" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/a2b212a7-b48d-f0e5-7234-09571feea2dd.png">

水槽内の気温はホッカイロを入れた 16:30 頃を境に上昇し、一晩中 21 〜 22 度付近を維持できました。
また、水温計の測定結果もこのように最低水温が 15.2 度、最高水温は 21.4 度まで上げることができました。このお陰か分かりませんが、鰻の食欲は確かに上がったように思います。今は餌にミミズを与えているのですが、この夜だけで 3 匹ほど水槽からいなくなっていました。(最近は水温が下がってきたこともあって食べても 1 匹 / 日で、全く食べないこともあります。)

<img width="400" alt="IMG.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/556409/5e605056-8d32-df81-080c-19930b3a14b4.jpeg">

ということで、狙い通りの結果が出ました。冬が本格化してからも同様の効果があるのかは引き続き検証が必要そうですし、毎日ホッカイロを交換するのも手間 (だしお金もかかる) なのでより良い方法がないか、継続して調査しようと思います。
ただ、時間ごとの気温の推移をモニターすることで改善を継続できる仕組みができたことは私にとっては大きな進歩でした。

## おわりに
いかがでしたでしょうか。結果的にはビーコン GW と BLE センサーを使って気温を記録しただけになってしまいましたが、そこに行き着くまでの過程も含めて IoT システムの構築の難しさ (特に電源問題) を体験できたことは私にとっては有益でした。

今後も、より手間なく水温を上げる方法を見つけ出すべく試行錯誤を継続します。また、捕獲も継続して沢山の鰻を育てたいので、酸欠防止のために溶存酸素もモニターする必要が出てくると思います。そうなるとやっぱり電源確保が必要だよねという話になるので、屋外コンセントを増設するか、またはもっと発電量の多い太陽光パネルを調達するかが必要になりそうです。

ちなみに、鰻の飼育で私が参考にしているのは [ペンマッキーさんの YouTube チャンネル](https://www.youtube.com/channel/UCnpx1vUrZ0MP2tRBRdPnuTQ) です。鰻の個人養殖におけるレジェンドで、自宅に鰻小屋を建てて数百匹の鰻を飼育されています。この鰻小屋は屋根に太陽光パネルを設置していて、鰻飼育に必要なほとんどの電気を賄っているようです。

残念ながら我が家には小屋をたてるほどのスペースはないので、同じようにはいきませんが、美味しい鰻になるよう IoT の力を駆使して育てていきたいです。


## 2024-12-13 追記
この記事を投稿してから 2 日後、残念ながらこの鰻はお亡くなりになりました・・・
原因は水槽からの脱走です。朝起きて水温をチェックしに行ったら水槽の横で干からびていました。慌てて水槽に戻すも時すでに遅しでした。

鰻は脱走の名人だそうで、同じような話は他の鰻飼育の記事でもいくつか見つかりました。鰻は生命力が強く、発見が早ければ助かることもあるそうなので、次回は IoT で脱走検知の仕組みを実装しようと思います。(先ずは 2 匹目をつかまえるところからですが・・・)

鰻の脱走検知 IoT ができたらまたブログでご紹介しようと思います。