「金魚水槽」タグアーカイブ

Raspberry Pi で 金魚水槽管理システム を構築

すき 0
0

HomeMadeGarbage Advent Calendar 2020 |4日目
Raspberry Pi Advent Calendar 2020 |4日目

これまでESP32等で構成していた我が家の金魚水槽システムですが、
この度メンテナンスのし易さや拡張性の高さから制御をRaspberry Pi で実施することにいたしました。

☟従来型の構成は以下の通りです。
家のローカルネットワーク内で水槽の監視・管理を実施しておりました

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

 

外出時にも対応したいと考え、外部監視・制御にはセキュリティの観点からATOM CamやAlexaアプリの既存のサービスの使用を採用いたしました。

 

 

システム概要

本システムの機能は以下の通りです。

  • 水槽LED照明のON/OFF
  • 自動エサあげ機構
  • 水槽の水温、pHの監視

いずれも自宅内でWebページからの制御・監視が可能で
さらにAlexaアプリと連動させてスマートスピーカ Amazon Echo dot での音声による制御も可能です。
水温、pHについては以前製作した我が家のコンシェルジュのおしゃべりティラノくんに発話で報告させることができます。

外出先からのエサあげ等の制御にはAlexaアプリを用いてスマホで実施し、
遠隔監視にはネットワークカメラ ATOM Cam を使用いたします。

 

構成

以下が本システムの構成図です。
Raspberry Pi Zero W のGPIO端子に照明用のテープLED、温度センサ、エサあげ用ソレノイドを接続し、
pHセンサをマイコンを介してUSB Host端子に接続しています。

部品

  • Raspberry Pi Zero W

     
  • フルカラーLED Neopixel (WS2812B ) 48セル

     
  • 防水温度センサ DS18B20

     
  • pHセンサ PH-4502C

     
  • Arduino Pro Micro 互換ボード

     
  • ソレノイド

     
  • N-MOSFET IRF520PBF

     
  • ダイオード 1N5819

     
  • MOSFET駆動用レベルシフタ

 

各部品の動作確認

本システムはNode-REDで構築しております。
ここでは各接続部品のNode-REDによる動作確認を行います。

Neopixel制御

NeoPixel用のNode-REDノードは存在し以下を参考に導入致しました。
 https://www.npmjs.com/package/node-red-node-pi-neopixel

NeoPixelの信号線をラズパイの12ピン(GPIO 18)し、
以下のようにrpi-neopixelsノードにカラーコードを送るとLEDが点灯いたします。

自動エサあげ機構

エサあげの機構には タカハ製の5Vプッシュソレノイド SSBC-0830/SSBC-0830-01(7.5Ω) を使用いたしました。

筐体は3Dプリンタで製作いたしました。

 

構成は以下の通り

Node-REDでラズパイのGPIOピンを制御して
ソレノイドに5V印可してエサが押し出される仕組みにしました。

水温計

水温系として1 wire温度センサ DS18B20を使用いたしました。

DS18B20のNode-REDノードも存在し、以下を参考に導入致しました。
 https://www.denshi.club/pc/raspi/iot6.html

DS18B20の出力をラズパイの7ピン(GPIO 4)に接続します。

pH計

pH計にはアナログ出力の PH-4502C を使用しました。

センサの校正方法など詳細は以下を参照ください。

pHセンサを味見 ーエッジAI活用への道 7ー

 

ラズパイにはアナログ値の入力ピンがないためArduino互換マイコンのアナログピンにpHセンサ出力を接続し、シリアルでpH値を出力します。

ラズパイのUSB Hostコネクタにマイコンを接続してシリアルでpH値を受信します。

シリアル通信Node-REDノードは以下を使用しました。
 https://flows.nodered.org/node/node-red-node-serialport

 

マイコンArduinoコード

シリアルで文字”1″が入力されるとpHをシリアル出力します。

 

Node-red自動起動設定

以下のコマンドの実行でラズパイ起動で自動的にNode-REDも起動します。

 

水槽システム Node-REDフロー

水槽LED制御

水槽の照明としてLEDテープを48セル設置し、WebページやAlexaによる音声でON/OFF 制御します。

 

① LED ON functionノード

次段に全白のLEDカラーコード(#FFFFFF)を送信します。

 

② LED OFF functionノード

次段にLED消灯カラーコード(#000000)を送信します。

 

③rpi-neopixelsノード

前段からの色信号(ON:#FFFFFF / OFF:#000000)を受けてLEDを制御します。
輝度は30%としています。

エサあげソレノイド制御

WebページやAlexaによる音声でラズパイのGPIO23をON/OFFしソレノイドを 制御します。

 

① ソレノイド ON functionノード

次段に数値1を送ります。

 

② LED OFF functionノード

ON function後200msecの遅延後に次段に数値0を送ります。

 

③ rpi-gpio outノード

前段からの信号を受けてソレノイドを制御します。200msecの間だけ数値1がきてGPIO23がONになりソレノイドに電流が供給されエサが押し出されます。

ラズパイのGPIO制御ノードでGPIO23を制御します。

 

水温・pH測定

Alexaによる音声で起動しおしゃべりティラノくんに発話で水温とpHを報告させます。

 

① rpi-ds18b20ノード

rpi-ds18b20ノード で水温を取得します。

 

② functionノード

前段からの水温を小数点第1位で丸めて変数waterに格納し、
次段に”1″の文字を送信。

 

serial requestノード

前段の文字”1″を受けてpHセンサ値を次段に返します。

 

④ functionノード

前段からのpH値を変数phに格納

 

⑤ templateノード

水温とpHの測定値を受けて、発話内容を生成します。

 

⑥ google-ttsノード

Google Text to Speech APIを呼び出すgoogle-ttsノードを使用しました。
 https://flows.nodered.org/node/node-red-contrib-google-tts

前段からの発話内容を入力して発話のmp3 URLを返します。
言語は日本語(ja-JP)を指定しています。

 

⑦ udp outノード

前段で生成されたmp3 URLをUDPで おしゃべりティラノくんに送信して発話させます。

Webページ生成

“ラズパイのNode-REDのURL/aquarium”にアクセスでWebページを生成します。

ブラウザ表示前に水温とpHを計ってtemplateノードに渡しています。
templateノードにWeb表示用コードを記述しています。

以下がWebページ画面です。

“ごはんをあげる”ボタンで/feedにGETリクエストを投げてソレノイド制御します。
LEDのON/OFFスイッチで/on または /offのGETリクエストを投げてLEDを制御します。

水温とpHの数値を表示します。

Alexa連動

Node-RED Alexa Home Skill Bridge というNode-REDノードを用いてAlexaと連動させ、システムの音声による制御を可能にしました。

Node-RED Alexa Home Skill Bridgeの設定等の詳細は以下を参照ください。
Node-RED Alexa Home Skill Bridge へのユーザ登録や、
スマホのAlexaアプリでNode-REDスキルを有効にしてAlexaサービスとNode-RED Alexa Home Skill Bridgeを紐づける必要があります。

ラズパイで気圧測定

 

デバイス登録

水質の発話報告を起動する”Aquarium”とエサやりソレノイドを起動する”Feed”と
LEDを起動する”水槽”を登録しました。

“水槽”はON/OFF動作させるのでActionにONとOFFを選択しました。

 

Node-RED

Node-REDに登録したデバイスのノードを配置します。

 

定型アクションを編集

以上で登録したデバイスをスマートスピーカAmazon Echoから起動させることが可能になりました。

デバイス”水槽”はLEDのON/OFFを制御するので「水槽つけて」、「水槽消して」で問題ないですが、
“Aquarium”と”Feed”はON/OFFの発話だと不自然なので
Alexaスマホアプリで定型アクションを登録しました。

「アレクサ、ご飯あげて」でデバイス”Feed”を起動してソレノイドを制御します。

 

「アレクサ、水質教えて」でデバイス”Aquarium”を起動してティラノくんに水温とpHを報告してもらいます。

 

動作

水槽設置前の動作テスト

 

ユニットはタッパに入れて水槽裏に設置いたしました。

Webページによる動作

音声による動作

遠隔動作

旅行先でもご飯の供給ができました!

 

追記

みんなラズパイコンテスト

本システムで今年もみんなのラズパイコンテストに応募いたしました。
受賞はできましたが3年連続となるスタートダッシュ賞をいただくことができました♪

フィルターが一晩停止、ヤマトヌマエビが全滅してしまいました

0
0

金魚水槽にヤマトヌマエビ&石巻貝 水質検査も実施

その後、ヤマトヌマエビも石巻貝も順調に元気だったのですが

週末のある朝・・

ぐーすか寝てた午前中、お父ちゃん(←早起き)が「フィルター止まってるよ」と・・

慌てて水槽の無事を確認すると・・

金魚、石巻貝は別状無く元気でしたが・・

ヤマトヌマエビ、全滅でした。

 

ひっくり返って死んでいるのと一部食べられているエビもおり・・
うぅ・・
3匹位はそのままの形だったので取り出し・・

せっかく水槽にも慣れてきたところだったし
ヤマトヌマエビも長生きすることを楽しみにしていたので
まさかの事態でした・・・

 

フィルターが止まってしまった原因は、
水槽のフィルターのコンセントが抜けていたことです。

うちは古い建物(マンション)な事もあり
家の中のコンセントが少ないのですが
色々電子機器があるので
コンセントは二股三股の過密状態・・

子供たちのゲーム機(Switch)のコンセントとつながっている箇所があり
そこの抜き差しがきっかけで外れてしまったようでした・・・

 

ショックですが、
・ヤマトヌマエビが、一晩フィルター停止しただけでも死んでしまうほど酸素を必要としていると認識していなかった、
・更に「フィルターで水面がブクブクする位で酸素ってそんな溶け込むものなのかね?」位に思っていた、
これらが大間違いだったこと。

フィルター停止に備えた準備が無く、
これでは、停電などでも遅かれ早かれこうなってしまっていたのだと思います・・。

 

エビ達の様子と、今の水槽の様子。

【2020.06 一晩フィルターが停止し、ヤマトヌマエビが全滅してしまいました。】

 

水槽は寂しくなってしまいましたが・・
しばらくはこのまま過ごそうと思います。

マツモ買わなきゃ・・

 

余談:お腹を壊した金魚

ちょっと前の話に戻るのですが・・・
金魚がお腹を壊しておとなしかった時の動画も。

 

【2020.05.27 食べ過ぎた金魚たち…底の方に沈んで動かず寝てばかり…】

 

あと、ヤマトヌマエビが居なくなってから、
金魚の様子が「凄く元気」になりました。

狭い水槽の中でエビとの共存は
金魚にも多少緊張があったのでしょうか。

 

お腹を壊した後は金魚の様子がおとなしくなり、
「金魚も大人になったんだね」などとお父ちゃんと話していたのですが
エビたちが居なくなってから餌の欲しがり方がパワーアップして、
餌くれダンスどころか「餌くれジャンプ」をしています・・

これも今度動画に収めたいですが・・
1〜2cmは跳ねているような・・

飛び出し事故だけは避けなければいけないと思っている次第です。

 

ラズパイでタイムラプス ー 石巻貝の軌跡 ー

0
0

我が家の水槽ににて、金魚ちゃんとヤマトヌマエビと共存してらっしゃる石巻貝の
位置が水槽を見るたびに変わるのでタイムラプスで撮影してみました。

金魚水槽にヤマトヌマエビ&石巻貝 水質検査も実施

 

 

システム概要

タイムラプス撮影するシステムは非常に単純でラズパイ3にUSBカメラを繋いだだけです。

 

USBカメラ

カメラには以下を使用しました。

防犯カメラ用の屋外カメラですのでなかなか便利なカメラです。
CdSセルが内蔵されており暗闇時には自動でナイトモードとなり赤外線LEDを点灯し白黒で撮影します。

 

ラズパイ設定

ビューワ guvcview

カメラを接続して配置や画角の設定の調整のためのビューワにはguvcviewをインストールして使用いたしました。

webカメラ撮影(guvcview)

 

静止画撮影 fswebcam

静止画撮影にはfswebcamをインストールして使用いたしました。
コマンドで画角やファイル名などを指定して撮影します。
 

参考

システム構築 Node-RED

タイムラプスのシステム構築にはNode-REDを用いました。
詳細は次節で記載いたします。


 

Node-RED

1分おきにfswebcamで静止画撮影を実施します。

①撮影トリガ インジェクトノード

カメラ撮影のためのトリガです。1分おきに定期的に動くようにしています。また撮影したjpegファイル名を1づつ増やすためにPayloadに”1″を指定しています。

②jpegファイル名生成 ファンクションノード

グローバル変数sumに前段ペイロードの”1″を足して4桁の連番jpegファイル名を生成しています。

fswebcamカメラ撮影ノード

execノードでfswebcamコマンドを実行して静止画撮影します。
前段の連番ファイル名を受けて1280×720サイズで撮影して保存します。

④ファイル名 連番リセット

前段のインジェクトノードをクリックするとこのファンクションが起動して、グローバル変数sumをリセットします。

 

タイムラプス

一晩撮影して静止画を繋いで(Photoshop使用)、タイムラプス動画を作りました。

1800倍速

300倍速

 

石巻貝が縦横無尽にうごき回っていますwww
なにしてるんだろう? 🙄 www なんかうける

おわりに

ゆくゆくは太陽光発電で長期の撮影も実施したいと思っています。
今回は1分おきの撮影でしたが、スパンが長くなると省電力のためにカメラの電源を落としたりラズパイをスリープしたくなりますよね。

ラズパイのUSB給電は以下のコマンドで実行できます。
USB給電OFF: sudo sh -c “echo -n “1-1″ > /sys/bus/usb/drivers/usb/unbind”
USB給電ON : sudo sh -c “echo -n “1-1″ > /sys/bus/usb/drivers/usb/bind”

ラズパイのスリープについてもおいおい勉強したいと考えております。

チョベリグ金魚水槽システム

0
0

これまで地道に金魚水槽をカスタマイズしていき、管理システムはすっかり生活に溶け込んでおります。

今回は金魚水槽システムについてまとめます。

 

 

チョベリグ金魚水槽システム概要

本システムでできることは以下の通りです。

  • 水槽LEDの遠隔制御、水温、pHの測定
  • ESP32-CAMによる映像配信

金魚水槽監視システム製作開始 ーエッジAI活用への道 14ー

 

  • 水質データログ記録

pHセンサを味見 ーエッジAI活用への道 7ー

 

  • 遠隔エサやりユニット搭載

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

システム構成

 

システムブラウザ画面

ESP32をサーバとしてアクセスすると管理画面が表示されます。

ブラウザでできること

  • “ご飯をあげる”ボタンでエサ供給
  • スライダでLED調光
  • 水温、pH測定値表示
  • ESP32-CAM画像ストリーミング表示
  • ESP32-CAM調整画面表示

エサやりユニット更新

システムブラウザ画面の”ご飯をあげる”ボタンを押すとソレノイドが動いてエサを押し出して水槽に供給します。

エサやりユニットのエサ補充部は漏斗を利用しておりましたが、クビレの部分でエサが詰まるので修正しました。

 
Fusion360で設計して、3Dプリンタで出力しました。
エサ補充部を一体化させました。

 

制御部筐体

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

 

水槽に外掛けフィルターを導入したので、これまでの制御部むき出し状態じゃ水しぶきなどで壊れそうだったので素敵なケースに収納いたしました。

ダイソーの高級タッパを使用させていただきました。

 

 

GEX らくらくパワーフィルターM に変えて2日で水が綺麗になった

0
0

金魚水槽 のフィルターをブクブク(GEX ロカボーイS)から外掛けフィルター(GEX らくらくパワーフィルターM )にグレードアップしました。

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

水の変化

変えて2日後には水がかなり綺麗になりました。

変える前

フィルター以外に行っている事

バクテリア剤

ちなみに水槽にはバクテリア剤も入れています。
これはフィルター変更前から定期的に入れています。

コケ掃除しました

ダイソーで見つけた「落ち落ちV メラミン茶しぶ落とし」がめちゃ便利そう!と思いこれで水槽掃除をしてみました。

40cm水槽(GEX 金魚元気 水きれいセットL )に深さもピッタリ!

 

苔はすぐ落ちますが、石巻貝の卵はびくともしませんね!

ただ、調べてみると、メラミンスポンジはカスが出るから水槽掃除には良くないという話をちらほらみかけました。

なのでこれからはこの棒に普通のスポンジをつけて掃除してみようと思います。

石・底砂など

石巻貝がめちゃ卵を産む。
我が家に来たその日から産卵、その後も連日産卵を続け…

調べてみたら石巻貝は硬度が高いと卵を生みやすいという情報を見つけました。
硬度を測ってみるとたしかにうちの水は硬度が高い。
(検査キットで見ると8dとか16dの色?)
底砂に砂利を入れていると硬度は高くなるそうです。

ソイル

ホームセンター物色中に見つけたメダカソイルを入れてみました。

既に底砂の砂利はある為全部だと入れすぎになってしまいそうなので、1/3位混ぜてみました。これくらいじゃあまり効果なさそうだけど^^;

ダイソーのパワーゼオライト

ダイソーの水槽コーナーを物色しているとゼオライト発見。ゼオライトも硬度を下げるらしいです。

 

フィルター交換翌日はまだ水が濁っていたのでこちらを追加してみましたが、その翌日には水が綺麗になったので、これの効果もあるのかな!?と思っています。

水は綺麗でも水質は良くない模様

そして先日買ったばかりで全部水没させてしまったテトラの「水質検査キット6 in 1 試験紙」を再び購入しました!

早速水質を検査してみますと

亜硝酸塩※1も出ていて良くないですね・・・。

見た目の水は綺麗でも水質的には悪い状態です。

見た目ではわからないんだなぁ…。
水質の検査は大事、この検査キット必需品です。

※1 亜硝酸塩:上から二番目。高いとピンク色になる

本日の検査

水換え後やっと亜硝酸塩がほぼ無くなったようです…。

しかし硝酸塩が高いですね…。ちょっと餌の量を減らした方が良いかも…。

硬度が下がっている!

ソイル、ゼオライトの効果が出ているようです。

石巻貝が来た頃の水質は… 

GH ※2の色がかなり赤っぽいので少なくとも8°d以上だったと思います。

今はだいぶ茶色っぽくなっているので、4°d位に下がったようです!

ソイルとゼオライトの効果すごい。

おかげで石巻貝の産卵がストップしました。

(ほんとに硬度で産卵ペースが変わるんですね・・)

さすがに毎日産卵し続けられては水槽が大変な事になりそうだったので安心しました。

※2:総硬度:上から三番目。低いと深緑、高いとオレンジっぽくなる。

余談:石巻貝の卵は放置したら消える

石巻貝が産卵し続けるので放置したらどうなるのか調べてもいまいち見つからなかったのですが、
お父ちゃんが「溜まったら掃除してあげる」と言ったものの、まだ一度も卵掃除せず放置したままでしたが・・・

綺麗に消えました。

ちょっと場所は違うのですがこんな感じで付いていたのですが。

跡が残るとも書いてあったのですが私はよくわからないです。
(水槽をピカピカにしている人にとっては気になるのかもしれません)

なので あまり気にしないのであれば 石巻貝の卵は放置しておいて大丈夫 そうです。

ただ、消えるペース<産卵ペース になってしまうと.. ..
なのであまりに産卵が多い場合は硬度を下げる対策が有効なようです。

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

0
0

ジェックス 金魚元気 水きれいセット L を使用してからおよそ8ヶ月…

(金魚小さい…!稚魚やん…!)

フィルター交換の際に水質が悪化してしまう事が気になっているので、近所のホームセンターに物色しに行き、こちらを購入して来ました。

GEX 簡単ラクラクパワーフィルター M

フィルターはブクブクから外掛けフィルターの GEX 簡単ラクラクパワーフィルター M グレードアップする事にしました!

思えばフィルターの事も何も知らない頃から始まり…  なんの疑いも無くブクブクフィルターを使用し続けていました。小型水槽だとブクブクフィルターしか選択肢が無いのかと思っていたら、外掛けフィルター、底面フィルターというものも取り付けられるのですね!(しかも安い)
底面フィルターも気になりましたが、今回は既に底砂が敷いてあるのでまずは外掛けフィルターで様子を見てみようと思いました。

開封後… 

説明書を見ながら水洗いをして組み立ていきました。

ろ材も入れられるようになっています。
GEXのバイオリングが売っていなかったので、スドー 濾過バクテリア繁殖用濾材 リングタイプ 0.3L を購入しました。

水洗いして…(結構沢山、白く濁った水が流れます…!)

全部入らなかったので、ネットを切り半分位取り出し、輪ゴムで口を止めてラクラクパワーフィルターの背面に入れました。

上から見た図…

余った濾材に、プカプカ浮いているカボンバを刺して沈めてみました。
残りは保管しています。

リング濾材に何本か水草を植えて鉢植えみたいになっているのを見た事がありますが(かわいい)、これは小さいので1本にちょうど良いサイズですね…w

(水草…マツモを入れると1ヶ月もしないで食べられてしまうのでホームセンターで購入したカボンバを入れてみましたが全然食わないです^^;)

そしてスイッチオン!!

最初はブーンガタガタと大きな音がして何か間違ったかとちょっと焦りましたが、水を汲み上げている時の音ですぐに収まりました。

水が流れている様子

音が気になるというレビューもありましたがうちでは全然大丈夫です。チョロチョロした水流音は癒やされます。水流やルーパーの角度が調整できるので気になる時はそれで小さくも出来そうです。

ヤマトヌマエビ、ストレーナースポンジの場所が気に入ったのか、この場所でちらほら見かけるようになりました(^^)

(水槽汚れててスミマセン…)

ヤマトヌマエビの脱皮

そういえば今朝ヤマトヌマエビの隠れ家をどけて掃除したら抜け殻を見つけました…!最初、隠れ家の中を見ると白っぽい殻が見えて、まさか死んでしまったのかと思い心配になりましたが抜け殻でした。

ヤマトヌマエビは結構脱皮するんですねぇ・・!

ヤマトヌマエビは脱皮をする?寿命や産卵は?繁殖は可能? – pepy

引用させて頂きます =======

脱皮は成長段階である幼生期には「2日おき」、おとなになると「3~4週間おき」の間隔で行います。

=================

脱皮までして元気そうで嬉しいです。

殻は昼頃にはもう無くなっていたのですが…金魚が食べたのでしょうか。

 

金魚水槽にヤマトヌマエビ&石巻貝 水質検査も実施

0
0

Amazonで購入

「熱帯魚通販のネオス」さんで購入しました!

北海道まで大丈夫かと少し心配でしたがこのように届きました。

取り扱い注意、熱帯魚のマークがあるんですね!

開けるとこのように新聞紙にくるまれて、

袋に入っていました!

石巻貝の方は一見わかりませんがヤマトヌマエビの方は動いているので元気そうです。

とりあえず袋の口を開いて浮かべて

石巻貝の方は15分位してから入れました。

弱っているとひっくり返って起きれない場合があるそうなので、壁にくっつく貝は壁につけて、つかない貝は平な所に置いたりしました。

ヤマトヌマエビの方は袋に穴を開けて水が自然に混ざるようにしました。

その後、30分後位にエビも袋から出して水槽に入れました。

ヤマトヌマエビは隠れてほとんど出てこない

最初はそのあたりをあちこち動いていましたが、すぐに隠れて見えなくなってしまい、翌日からはもう物陰に隠れて全然出て来ないので、姿が見れません^^;

自分より大きい魚とかがいると隠れてしまうようなので、とりあえず石にアワビ貝を立て掛けてエビの隠れ家を作りました。

石巻貝の産卵について

石巻貝も水槽を綺麗にしてくれていますが、全然知らなかったのですが、産卵します。

入れてその日のうちに産卵、翌日からも増え続けるので・・正直ショックです。
コケ取りの為に石巻貝を入れようと思う方は注意した方が良いと思います…。
苔より卵取りのほうが大変になりそうです…。

苦手な方は見ないで済むようリンクにしますが卵の写真はこんな感じです。

写真1 写真2

どうも、全く産卵しないという人もいるようで、硬度が高いと産卵しやすいという情報も見かけました。

水質検査

先日購入した水質検査キット!!

こちらで検査してみました。

半分に切れば50回分使えるとのレビューを拝見し早速切って使ってみました。

① カルキ抜き後の水道水
② 水替え前
③ 水替え後

幸い亜硝酸は少なかったですが、硝酸塩が高い!
どうやら硬度も高いっぽいです。

上から
NO3-(硝酸塩)、NO2-(亜硝酸塩)、GH(総硬度)、KH(炭酸塩硬度)、pH(pH)、Cl2(塩素)

ケースに見方が書いてあります。

中に入っている説明書には説明と水質の事も書いてあります。

硝酸を下げようと水替えをして、更にブクブクフィルターも交換してしまったら案の定白にごり発生しました・・ 亜硝酸塩が・・・

水槽に入れていたセドナ石とアワビ貝殻と水晶等の石を取り出し水替えをした割に硬度も下がってないですね。
砂利が硬度を上げているのかもしれません。

硬度を下げるにはソイルが良いそうなので追加を検討しています。

しかし産卵ペースは落ち着いた気がします。

 

この水質検査キット便利!!!と感動していたら、今日検査中に全部水没させました  il||li _| ̄|○ il||li

買って間もないのに… 現在 Amazonで品切れ中・・ショック

現在の様子

ヤマトヌマエビの隠れ家を入れました。

丸くてかわいいですし中も広々して良いかな、と思い、「ジェックス 癒し水景 素焼きの隠れ家 ドーム中」を購入しました。(Amazon が売り切れ中なのでヨドバシカメラ通販で購入しました。)

最初はアワビ貝の下の狭〜い空間に隠れていて…先程書きましたが硬度を下げる為石や貝を取り出したところヤマトヌマエビ達はブクブクフィルターの裏や下の方へ・・^^; フィルターを浮かしながらドームの下に隙間を作り、なんとか2匹をドームの中で誘導完了…

翌日には中のエビが増えていたので、いつの間にか皆移動したのかな…?

昼間、たまに懐中電灯で覗くと中で「ツマツマ」(エビのことを調べているとこの表現をよく見かける)しているのが見えます。

でも光を当てるとなんとなく嫌そうなので辞めた方が良いですね・・・?

 

水槽の様子・・・ 水があまり綺麗ではありません。

金魚エサやりユニットの製作 ーエッジAI活用への道 17ー

0
0

これまで我が家の金魚水槽は以下の機能を有して運用しておりました。

 

ここではさらにWebブラウザからエサをあげれるようにいたしましたので報告いたします。

現状はローカルネットワーク内での監視及びエサやりですが
将来的には外から遠隔で制御できるようにしたいと考えております。
外出中も金魚の様子を見たり、エサをあげれるようにしたいのです。

 

 

ソレノイド

エサやりの機構にはソレノイドを使用しようと考え、まずは購入してみました。

 

しかし、こちらプルソレノイドなる引く動作専用のものらしく鉄心が固定されていないものでした。。。

 

仕方ないので自分でバネをつけて押す動作を実現しましたw

 

エサやりユニット

ソレノイドでの押し動作が実現できましたのでエサやりユニットを構築します。

筐体は3Dプリンタで製作しました。相変わらず幾度も試作プリントを繰り返し。。。

 

ロートにエサを補給してソレノイドで押し出す機構にしました。
水槽のフチに固定します。

 

ソレノイドの先端には3Dプリントした押し出しキャップをはめています

 

構成

ESP32をサーバにしてエサやりボタンやLED調光スライダ及びESP32-CAMからの動画をブラウザ表示します。

ESP32のGPIO26でNMOSゲート駆動しソレノイドを動かしますが、出力ロジックレベルが3.3Vなのでレベルシフタ挿入し5Vにしています。

 

部品

  • ESP-32S

  • ESP32-CAM

  • 防水温度センサ DS18B20

     
  • pHセンサ PH-4502C

     
  • フルカラーLED Neopixel (WS2812B ) 48セル

  • ソレノイド

     
  • N-MOSFET IRF520PBF

     
  • ダイオード 1N5819

     
  • レベルシフタ

動作

“ご飯をあげる”ボタンでソレノイドが起動しエサを押し出します。

 

ローカルネットワーク内のスマホやPCで監視・制御可能です。

 

外から見れるようにすれば、今は自粛で厳しいけど外出中や旅行時も安心ですね♪

追記

ソレノイド交換 (20/4/24)

安いプルソレノイドに無理やりバネを使ったものではパワーがなく何度も”ご飯をあげる”ボタンを押さなくてはならないのでガチモンのソレノイドを購入してみました。

 

ソレノイド

タカハ製の5Vプッシュソレノイド SSBC-0830/SSBC-0830-01(7.5Ω) を購入しました。

 

エサやりユニット

同様にケースを3Dプリンタで出力しました。

 

非常にパワフルで素晴らしい餌やり動作が実現できました!

 

動作

金魚ちゃんたちはすっかり餌やり装置に慣れているので、新ユニットにも全く警戒せずたくさんのエサ量に大満足の様子です♪

 

筐体更新 (20/6/4)

筐体を3Dプリンタで作り直しました。
漏斗を廃止してエサ補給部と一体型にしました。

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

金魚水槽運用状況のご報告 ーエッジAI活用への道 16ー

0
0

最近の金魚水槽システムの運用状況を報告させてください。

 

 

運用状況概要

以下が金魚水槽システムの普段の使用状況です。

  • ESP32-CAMによる映像配信
  • 水槽LEDの遠隔制御
  • 水温、pHの測定&ログ記録

上記をローカルネットワーク内で無線制御で金魚水槽の管理を行っております。

管理画面のカスタマイズ

お母ちゃんが水槽管理画面とESP32-CAMの調整画面をマージしてくれました。

 

ストリーミング画像サイズなどを調整できるので非常に便利になりました!

水温、pHの記録

Maixduinoを使用していた頃と同様にESP32で測定した水槽の水温とpHをUDP送信してデータベースに保存しております。

Node-REDでデータベース(MySQL)へ保存 ーエッジAI活用への道 9ー

 

これで水の取り換え時期の判断も容易になりました♪

ESP32 Arduinoコード

デュアルコアでシステム画面表示の裏で水温とpHをはかってUDP送信を実行しております。

 

参考

 

おわりに

次は自動エサやり機を追加したい。

次の記事

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

UnitV で金魚ステータス判別テスト ーエッジAI活用への道 15ー

0
0

金魚水槽監視システムがだいぶ形になってきまして、いよいよ本題のエッジAIの活用です。

ここではUnitVで金魚を認識してその座標から金魚のステータスを判別できるかの検証です。
金魚は寝るとプカ~っと水中で浮いているので、就寝中は座標が変化しないはずです。

それでは実験スターティン
 

 

構成

UnitVとM5StickCを4ピンケーブルで接続して、UnitVで金魚を認識して 座標をUARTでM5StickCに送ります。

M5StickCは受け取った金魚座標をWiFiでUDPブロードキャストします。

 

オリジナル金魚モデルで画像認識

金魚の認識モデルは以前に作ったお手製のものを使用します。

オリジナル金魚認識モデルの生成 ーエッジAI活用への道 3ー

ファームウェアは M5StickV_Firmware_1022_beta.kfpkg を使用し、 Kflash_GUIで書き込みました。

金魚モデル(kmodelファイル)はアドレス0x600000に書き込みました。

UnitVコード(MaixPy IDE)

コードはYolo-digit-detector/micropython_code/racoon_detector.py を参考にして作成し、MaixPy IDEで書き込みました。

金魚を認識して その中心座標(x, y)をUART送信します。
画角は224×224。

 

M5StickCコード(Arduino IDE)

UnitVからの金魚座標をM5StickCで受けてUDPで送信しました。

 

実験の様子

UnitVで水槽を監視して金魚ちゃんの位置を認識します。

 
水槽の横にUnitVを配置してデータをとってみました。

座標プロット

M5StickCからUDP送信される座標(x:横、y:縦)をPCで受けてプロットいたしました。

以下、縦軸が$\sqrt{x^2+y^2}$ 横軸が時刻のグラフです。

  • 2/11 14:50~2/12 7:40

     
  • 2/12 22:48~2/13 9:36

グラフより1時~5時の間で明らかに移動量が減っており就寝していることが見て取れます。

意外とガッツリ休んでるんですねww
なんだか可愛い 😀 

おわりに

AIカメラで金魚を認識し、その座標から移動量の推移を監視して金魚の就寝が判別できそうだという結論に至りました。

次はこの移動量から就寝を検知して自動動画撮影を目指したいと思います。

ではまた!
 

参考

次の記事

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

金魚水槽監視システム製作開始 ーエッジAI活用への道 14ー

0
0

さてこれまではAIカメラ UnitVを吟味してまいりましたが、
いよいよ金魚水槽監視システムの製作に取り掛かりたい思います。
 

現行のシステム

これまで はMaixduinoを用いて金魚水槽のLED照明の制御、水温/pHの測定を実施しておりました。


 

LCDに水温/pHを表示し、UDP送信してログ管理したりしておりましたが、
UDP受信やカメラ撮影映像のストリーミングができないままでおりました。

またセンサの接続にマイコンを挿入したり冗長な構成でもございました。

 

新規システム

新たなシステムでは以下のような構成としました。

  • UnitVで金魚を認識
  • ESP32:LED、温度/pHセンサ制御。UnitVからのシリアル受信。
        Webサーバとしてブラウザ表示。
  • ESP32-CAM:動画ストリーミング

UnitVで金魚認識と動画撮影を実施しようと思いましたが、速度でないので断念しました。

部品

  • AIカメラ UnitV
  • ESP-32S

  • ESP32-CAM

  • 防水温度センサ DS18B20
  • pHセンサ PH-4502C
  • フルカラーLED Neopixel (WS2812B ) 48セル

ESP32-CAM

以下を観て速攻Amazonで購入しました。安すぎる!

Arduino IDEでの設定は以下の通りです。書き込みにはUSBシリアルコンバータが必要です。

技適未取得機器を用いた実験等の特例の届出

私が購入(2020/1/18)したESP32-CAMには技適マークはついておりませんでした。

ですので、2019年11月20日よりスタートし、技適マークがなくても申請すれば180日間使用できると話題の
“技適未取得機器を用いた実験等の特例の届出”を提出してみました。

以下のサイトより届出書を作成し、最寄りの総合通信局へ郵送しました。
金曜日に郵送して、翌週の月曜日にメールにて承認されました。簡単ですね。
 https://www.tele.soumu.go.jp/j/sys/others/exp-sp/index.htm
 

あとはサンプルコードを書き込んで、ESP32-CAMのIPにアクセスするだけです。
画像サイズやホワイトバランスなど詳細設定がブラウザから実施できます。すごい!

 

現状の動作

まだUnitVによる金魚認識は導入しておりませんが、現状のシステム動作をご覧ください。

ブラウザ画面

ESP32-CAMのストリーミング画像を表示し、
水槽のLEDの輝度調整や水温/pHを表示します。

 

 

当然スマホからも閲覧・操作可能です。

今後課題

  • 水温/pHの値のブラウザ定期更新表示
  • UnitVによる金魚の位置座標の取得及びステータスジャッジ(就寝中とか)
  • ESP32-CAMの調整画面のマージ
  • データログ取得・管理

参考

LED スライダ制御

ESP32アナログ入力

ESP32 IP固定

Fritzingパーツ

次の記事

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

UnitV と M5StickC で動画ストリーミングを堪能 ーエッジAI活用への道 13ー

0
0

前回はUnitVで撮影した画像をシリアルでM5StickC に転送してLCD表示いたしました。
今回はM5StickCをWebサーバにしてUnitV撮影映像をストリーミングいたしました。

 

構成

例のごとくUnitVとM5StickCをUnitVに付属された4ピンコネクタケーブルでつなぐだけです。

UnitVで撮影した映像をjpeg圧縮してM5StickCにUART転送して、
M5StickCでWiFi配信いたします。

 

参考

今回はnnnさん(@nnn112358)のツイートや記事をおおいに参考にさせていただきました。
有用な情報を公開していただき本当に感謝しかありません。

UnitVコード(MaixPy IDE)

UnitVで撮影jpeg画像(320×240)を10バイトの開始データと共にUART送信します。

JPEGの圧縮率は50%にしました。
転送ボーレートは1152000にしました。

M5StickCコード(Arduino IDE)

 ESP32のWebサーバのサンプルコードHelloServer.ino とnnnさんのサーバコードを参考にコーディングしました。

起動後、以下にアクセスで静止画と動画をweb表示します。
 http://[M5StickCのIP]/pic:静止画表示
 http://[M5StickCのIP]/stream:動画表示 

 

動作

念願のUnitVによる撮影映像をストリーミング配信することができました!

おわりに

さて、だいぶ回り道しましたがUnitVとの距離はかなり縮まったと思います。
次回からはやっとハイテク金魚水槽システムの実現に向けて検討を開始したいと思います。

それではまた

次の記事

金魚水槽監視システム製作開始 ーエッジAI活用への道 14ー

UnitV で画像シリアル転送の味見 ーエッジAI活用への道 12ー

0
0

前回よりUnitV を使用したハイテク金魚水槽システムの実現に方向転換しているこの道。
今回はUnitV で撮影した画像をシリアルでM5StickC に転送して表示してみます。

 

構成

UnitVとM5StickCをUnitVに付属された4ピンコネクタケーブルでつなぐだけです。

 

動作

早速動作をご覧ください。

撮影画像(64×160)をUARTでM5StickCに送って表示しています。FPS 3ってところでしょうか。。

あとなんか色がおかしいです。おそらく転送や受信でおかしいことをしているのでしょう。。。俺のことだし

ではコード(間違い探し)をご覧ください。

UnitVコード(MaixPy IDE)

UnitVで撮影画像(64×160)をUART送信します。demo_uart.py とdemo_camera.pyを参考にコーディングしました。

転送ボーレートは921600にしました。

参考

M5StickCコード(Arduino IDE)

 64ピクセル × 160ピクセル × 2バイトの撮影画像を受信してLCDに表示します。

参考

 

おわりに

送受信コードのどこかに問題があるために色がおかしいですが、撮影画像のビットマップUART転送は現実的ではないことを実感として得ることができました。

次回は圧縮してWiFi転送なぞを試してみたいです。

ではまた

追記

色修正 (2020/1/17)

M5StickCのLCD表示の際に色がおかしかった原因がわかりました。

M5StickCコードの23行目で2バイトの色データ生成しているのですが、
ビットシフトの時に16ビットにキャストし忘れてました。。

 

無事に色が正常に表示されるようになりました。

色修正2 (2020/1/18)

ご指摘がありました。ありがとうございます!

その通りでした。単純に()するだけで改善しました。

 

ビットシフトより足し算の方が演算の優先順位が高い!

勉強になりました。

ボーレート変更 (2020/1/18)

転送ボーレートを921600 → 1152000 (1M)にしてみました。

少し早くなったかな。

あとUnitVの撮影画像をサイズ変更して出力すると左上に偏ります。。 sensor.set_framesize や sensor.set_windowing が中央でクロップしてくれないんです。。

なんだかなぁ 🙄 
 

参考

copy() (2020/1/18)

これでカメラ中央の絵を取り扱えるようになったが、VGA取り込んでいるので当然遅い。。。

次の記事

UnitV と M5StickC で動画ストリーミングを堪能 ーエッジAI活用への道 13ー

UnitV をゲットしました! ーエッジAI活用への道 11ー

0
0

素晴らしい金魚水槽システムを目指して歩んできたこの道。
これまではSipeed Maixduino での構築を目指しておりました。

MaixduinoはK210に加えてESP32が搭載されており無敵のマイコンだと思うのですが、Pythonでのマイコン操作になれていないためどうしてもUDPでのデータ受信や映像のストリーミングができず頓挫しておりました。

そんなおりに大変良い製品の発売がM5Stack社より発表されました。

 
K210とカメラのみというシンプルなユニットのUnitVです。
画像認識はこいつに任せて、あとの機能は外部に搭載してハイテク金魚水槽システムの実現を目指すことにします。

 

UnitVの購入

初めてAliExpressでお買いモノしました。

12/6に購入して1/14に到着しました。いやー待った。お待たせし過ぎたかもしれません。
 

 

初期設定

以下を参考に各種設定しました。
 UnitV Quick Start

ファームウェアは M5StickV_Firmware_1022_beta.kfpkgKflash_GUIで書き込みました。

プログラミングは MaixPy IDE で実施するのですがバージョンはv0.2.4じゃないとうまくいかないようです。

オリジナル金魚モデルで画像認識

早速、依然作ったオリジナル金魚モデルで画像認識を試してみました。
結論から申しますと全く問題なくUnitVでも動作いたしました。

オリジナル金魚認識モデルの生成 ーエッジAI活用への道 3ー

 

Maixduinoの時と同様に、作った金魚認識モデル(kmodelファイル)を書き込みます。

 

コードはYolo-digit-detector/micropython_code/racoon_detector.py を使用します。MaixPy IDEで書き込みました。

また画面方向調整のためコードに以下の挿入・変更施しました。

動作

Maixduinoと同じように動きました。
LCDはないのでMaixPy IDEの画面で動作確認しました。

 

UnitVにはNeopixelが搭載されておりますので夜間撮影時の照明となるか試してみました。

 

照明として使えそうですが、ちょっと金魚がビックリしてますねw
 

シリアル通信

今後UnitVを外部端末と接続して色々するための準備として、まずはUARTでのデータ送信を試してみました。

UnitVに付属されてきた4ピンケーブルでM5StickCに接続して通信してみました。

動作

UnitVのボタンA, Bを押すとLEDの色が変わり、UARTでデータをM5StickCに送信します。
データを受けたM5StickCはデータに応じて画面が変わります。

UnitVコード(MaixPy IDE)

UnitVでUART送信します。demo_uart.py を参考にコーディングしました。
ボタンA, Bを押すとLEDの色を変えて それぞれ文字A, Bを送信します。

M5StickCコード(Arduino IDE)

UnitVからの文字を受けてLCDの背景色を変えて、文字を表示します。

 

参考

おわりに

エッジAI活用への道はこのたび方向転換しUnitVの導入の検討を開始しました。

さてうまくいくのでしょうか?道は続きます。

ではまた

次の記事

UnitV で画像シリアル転送の味見 ーエッジAI活用への道 12ー

2019年、金魚との出会い、成長、IoT。

0
0

2019年7月家族の一員になった金魚達の成長と我が家の歩みを振り返ってみたいと思います。

7/11 .. 金魚すくい5日後の様子

ダイソーの虫かごで飼い始めました。

日々、金魚飼育について沢山調べていました。

約一ヶ月後の様子

水がだいぶ済んで綺麗になりました。
元気にそこらじゅうを泳いでいます。

こうして見ると、1ヶ月でだいぶ大きくなったんだなぁ!

緑の糞

最初は「えぇっ、緑色!?」って驚いたものですが水草を食べる金魚にとっては普通の事なんですねぇ。

どうも見てないスキに水草を食べまくっているようで。今もそこら中に緑のうんちを落としています。

ドジョウとの出会い

長男くんがすくった2匹のドジョウが仲間入りしました。

これから始まるドジョウとの生活を楽しみにしていました。

水槽をグレードアップ

ドジョウが加わり狭くなったのでとうとう水槽をグレードアップしました。

今思えばこれが間違いだった、というか新しい生体を加える手順については最初から何もかもが間違っていたのですが..

ドジョウが死んでしまいました

水槽を変えてから数日のうちに.. ドジョウが来てから一週間位のうちに、二匹とも死んでしまいました。とても悲しかったです。

ドジョウは丈夫で飼いやすいだろうと思っていたのと、金魚の成長が順調過ぎたので余裕だと油断し過ぎていました。ドジョウは金魚以上に繊細で難しい生き物のようです。色々調べて反省しました。

白点病の治療

ドジョウの死亡後、金魚たちの白点病が発覚し、アクアショップの店長さんにも相談してグリーンFリキッドで薬浴しました。

水温計を作ってもらう

お父ちゃんが水温計を作ってくれました。

安心して水換えが出来るようになりました。
温度はプラス3度くらいの範囲で合わせるようにしています。

白点病、完治

初めての病気でとても心配でしたが無事治って安心しました。

LEDライトの設置!

お父ちゃんにLEDテープでライトを作って頂きました!ライトをつけるとまるで水族館みたい!

たくさん食べても無くならないよう、水草がもりもり伸びてほしいです。

金魚認識システムの制作

寝ている金魚をじっくり見たいのだと言っていたら、お父ちゃんが金魚認識システムを制作してくれることに!

マツモが減っている

ライトを設置した頃と比べるとスカスカになっています。

食いまくってますね..

金魚水槽管理システム構築中、PH計測

お父ちゃんが金魚水槽のPHを測れるようにしてくれました!

動画内で長男くんがうん○ぶりん〜と歌ってますがすみません・・

HomeMadeGarbageと金魚の日々は.. 

なんか色々すごい事になっていきそう。

2020年も金魚たちとの生活を楽しんで生きたいと思います!\(^o^)/

Maixduino で温度、pHデータをUDP送信 ーエッジAI活用への道 10ー

0
1

素晴らしき金魚水槽システムの実現を目指し、 Sipeed Maixduino で金魚水槽の 温度pH値 を取得してUDP送信し、それをブラウザ表示データベース保存までを実施しております。また水草育成促進のためにLED照射も実施しています。

データのUDP送信のご報告が抜けておりましたので、ここでさせていただきます。

 

構成

Arduinoマイコンにセンサを接続してUARTでデータをMaixduinoに送信して搭載されたESP32のWiFiでUDP送信しています。

部品

  • Sipeed Maixduino

     
  • Adafruit Metro Mini 328 – 5V 16MHz

     

  • 防水温度センサ DS18B20

     
  • pHセンサ PH-4502C

     
  • フルカラーLED Neopixel (WS2812B ) 48セル

Adafruit コード

Arduino IDEでコーディングできるマイコンのAdafruit Metro Mini 328を使用して温度とpH値、pHセンサの電圧を取得して1分おきにMaixduinoへUART送信します。

Adafruit Metro Mini 328はArduino IDEにおいてAruino UNOとして振る舞いボードライブラリのインストールなどは必要ありません。

Maixduinoコード

MicroPythonでコーディングし、MaixPy IDEで書き込みました。
MaixduinoによるUDP送信は以下のサンプルコードを参考にしております。
 https://github.com/sipeed/MaixPy_scripts/blob/master/network/demo_esp32_socket%20_udp_cli.py

Adafruit Metro Mini 328からのセンサデータをUARTで受信し、値をディスプレイ表示し、WiFiでUDP送信します。

LEDテープは急に点灯すると金魚ちゃんがビックリするとお母ちゃんに言われたので、電源投入後データ受信(1分)ごとに少しづつ輝度を上げて最終輝度に達するようにしています。

あくまで金魚ファーストです。

 

動作

水温とpHが送信されPC上でUDP送信を確認できました。
以下の動画では1秒ごとに送信してNode-REDで受信して確認しています。

おわりに

どんどん金魚水槽が理想のシステムに近づいてまいりました!引き続き頑張りましょう 🙂 

それでは次の道でお会いいましょう。

次の記事

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

Node-RED で UDP受信 & ブラウザ表示 ーエッジAI活用への道 8ー

0
0

金魚水槽管理システム作成への道。
現在、お父ちゃんに温度とpHをUDPで飛ばして貰っているので、
それをグラフにするという役割を担いました。

pHセンサを味見 ーエッジAI活用への道 7ー

Node-RED

今回とうとう Node-REDデビューしてみました。

初めは PHP でやろうとしましたが 2~3日試行錯誤しても上手く出来なかったので、Node-RED でやってみたらあっという間に出来て驚き&感動です。

環境

家で稼働している Raspberry Pi 2 サーバ上で動かします。

Node-RED バージョンアップ

Raspberry Pi 2 に入っている Node-RED はバージョンがかなり古いものだったので、バージョンアップしました。

Raspberry PiにおけるNode-REDの活用について – Qiita

インストール完了後、Node-RED が v1.0.3 になりました。
バージョンアップ前に作成したフローも無事残っていました。

※ ホームディレクトリが必要

少し特殊ケースかもしれませんが、最初 bash <(curl ~~  コマンドの後、「/home/アカウント のディレクトリが無い」といったエラーが出てしまいました。

どうも私は自分のアカウント作成時にホームディレクトリを生成するオプションを指定しなかったようです。
こちらを参考にホームディレクトリを作成しました。

Linux – linuxのホームディレクトリが見当たらない|teratail

ディレクトリ作成

所有者変更

ファイルコピー

作成したディレクトリに /etc/skel 配下の3ファイルをコピー

.bash_logout
.bashrc
.profile

UDP受信〜ブラウザ表示のノード

1. UDP受信

「ポート」はUDPが送信されている「1234」を指定し、「出力」は「文字列」を設定

2. debug 

debug ノードを繋げて確認したらちゃんと受け取っている事がわかりました。

受信がノード一発、一瞬で出来て感動!

3. グローバル変数にセット

ページに受け渡すため一旦グローバル変数に格納すると良いとお父ちゃんに教えてもらった

4. http in

表示するためのページを設定
Node-REDのURL/kingyo で見れるように

5. グローバル変数取得

3. でセットしたグローバル変数をここで取得。
温度とpHがカンマ区切りで入ってきているので、カンマで分割し、msgオブジェクトにキーを設定して格納。
このあたりはJavaScriptで書けてやりやすい!

6. 表示用テンプレート

/kingyo に表示する内容を記述
5. で設定したmsg オブジェクト から取得

http response

ここはノードを繋げて中身は特に弄っていません

ブラウザ確認

Node-REDのIP/kingyoにアクセスすると、温度とpHが表示されました

http://192.168.0.XXX:1880/kingyo

これで金魚水槽の温度とpHをブラウザからリアルタイムで確認出来るようになりました。
グラフ化に向けて次は一定期間の値を保持する所までやりたいと思います。

 

UDPって?って所からわからなかったのですが家にあったこちらの本がわかりやすくて良かったです。

挿絵のイラストがかわいく、長女ちゃんが覗き込んで来て「かわいい!ママが読み終わったら私にも読ませて!」と言ってきました🐰

次の記事

金魚水槽のフィルターをブクブクから外掛けフィルターへグレードアップ

お祭り金魚、まずはダイソーの虫かごで。金魚飼育①

0
0

7月6日(土曜)、札幌の商店街でお祭りがあり、
子どもたちが人生初の金魚すくいをしました。

普段あまり大きなお祭りに行かないので金魚すくい自体あんまり見かけないし、
飼うの大変だし〜と敬遠していたんだけど・・w

モナカで金魚すくい。

長女ちゃんは1匹釣れて、
長男くんは釣れなかったので1匹もらいました。

容器がないのでどうしようかと。
お父ちゃんがとりあえずダイソーの虫かごが良いんじゃないかと言うことで
餌も一緒に緊急調達。

帰宅して虫かごに水と金魚を入れました。
子どもたちは喜んで餌をやり・・

餌をあげたり眺めたりしているとすっかり愛着湧いて、、
魚なんて懐かないし〜と思ってたけど大間違い、
金魚って凄くかわいい!

大事に育てて長生きさせたいなと思ったので
いろいろ調べて勉強しました。

水の汚れとバクテリアについて

  • 金魚はよく排泄をする
  • 時間がたち排泄物から発生するアンモニアが猛毒になる
    (金魚にとって猛毒で放置すると中毒死する)

バクテリアが居ればそれを分解してくれる!
バクテリアがいない環境では頻繁な水換えが必要。
(何も入れない水槽では、1日も持たず水がにごっていた)

バクテリアによる濾過

  • 排泄物や餌の食べ残しからアンモニアが発生する
  • バクテリアがアンモニアを分解して亜硫酸になる
  • バクテリアが亜硫酸を分解して毒素の低い硝酸塩になる
  • バクテリアだけでは硝酸塩は消えないので定期的に水換えの必要がある

(このあたり凄い面白くて奥が深いのでもう少し勉強していきたい!)

水換えについて

硝酸塩は分解されないので水換えは必要。
水が安定すれば週いち位で良いらしい、

量と頻度

最初の1ヶ月位はバクテリアも成長していないので、
こまめな水換えが必要。

温度や水量によっても頻度は異なる。
水が少ないほど水換えの頻度は上げた方が良い。

一度に行う水換えは1/3程度にする。

カルキ抜き

ダイソーにもカルキ抜きが売っている。

置き水よりカルキ抜きとお湯を使って温度を合わせた水の方が良いと熱帯魚(金魚)屋さんの店主さんから教えてもらった。

バクテリアを定着させる

バクテリアは空気中のどこにでもいて勝手に増えるものではあるが、
水槽内に定着する場所が必要。

フィルター

通称ぶくぶく。

フィルターはバクテリアの住処になる。
また、水を循環させることもバクテリアを増やす為に重要なので、
そのためにもぶくぶくさせた方が良いということ。

(空気を送る&スポンジで物理的に汚れ処理、
 するものだと思っていたがバクテリアの住処になっている!)

砂利

砂利もバクテリアの住処になる。
せっかく入れるならバクテリアの住処になりやすい
多孔質素材の方がバクテリアが増えやすい。

粒子が細かすぎたり尖っているものは避ける。

水草について

  • 水草は硝酸を分解する
  • 金魚は水草をつついたり食べたりおやつになる

購入したもの

水槽

ダイソーの虫かご、300円のもの。

あとで調べたら、水槽とフィルターセットで2,000円もせず売っている事がわかりました。

近くのホームセンターではSサイズから売っていました。

ダイソーの金魚の餌

和金 体長3~4cmだと、そのままでは大きいようで吐き出してしまう。
砕いて半分以下にして入れると吐き出さずに食べれました。

フィルター

ジェックス おさかな飼育コンパクト

Sサイズ↓と 迷ったけど、水槽が小さいのでコンパクトを購入。

エアポンプ(電源みたいなやつ・・電源かと思ってたらポンプだった)は
「イーエアー1000SB」でどちらも同じものが付いているので、
あとからフィルターだけ「ロカボーイS」にしても良いかと思って。

底砂

ジェックス ベストサンド 0.6L(水洗い不要)

水が綺麗になって苔が生えない、水洗い不要ということろが良いなと思って購入。

水洗い不要とのことなので、そのまま水槽に投入。
水槽が小さいので最初は半分くらいを入れました。

平らな板を使ってそーっと入れましたが、ろうとを使うともっと良いらしい。
入れた後はしばらく濁っていたけどだんだん落ち着いてきて、
翌日には気にならないレベルに。

カルキ抜き

ダイソーにも売っていたけどこちらの方が安い!
ホームセンターで80円位だった気がします。

掃除用ポンプ

ダイソーのクリーナーポンプを購入。

掃除について

フィルターなどは水道水で洗うとバクテリアが死滅するのでNG。
水換えの際に取り出した水槽の水でじゃぶじゃぶ濯ぐ。

バクテリア

水槽が小さく水が汚れやすいという点が心配なので、
バクテリア剤を購入しました。

バクテリアの定着を促進できるといいな!

水草

カボンバ 確か250円位。

白石駅近くの「アクアショップ・ウィズ」さんに行って購入。

アクアウィズのオススメ!熱帯魚!!

最初はマツモが欲しくて行ったんだけど売り切れていてカボンバを購入。

てっきり金魚がバクバク食べるものと思っていたら、全然、食べない!
入れた直後はちょっとつついてそれからは警戒して近寄らず…
翌日あたりからたまにちょんちょんつついているけど、
体長3~4cmの和金にとってはまだ水草は大きいのか、
食いちぎれそうな気配は全く無い。

通販ならチャームさんが質がよくて良いみたい。
最初これ買おうと思ってたんだけど、北海道だと送料が高くて断念。

水草については虫のことが心配だったのですが、
調べてみると金魚はスネール(水槽にくっついてるカタツムリのようなやつを総じてスネールと呼ぶらしい)とか食べちゃうみたいですねw
なので虫のことはあまり心配ないのかな、と思った・・

時系列日記

7月6日(土)

金魚が我が家に。
ダイソーの虫かごに水道水を入れて金魚を入れた。
子どもたちが喜んで餌をあげる。

7月7日(日) 

翌日には水が白く濁っている😨
お父ちゃんがおたまで金魚をすくい、
ベランダで1日置いた水で全取り替え。

餌をあげても口から出してしまうようなので、
砕いてあげるとスムーズに食べられた。

7月8日(月) 

また水が濁っている😱

近所のホームセンターに走り、
砂利(ベストサンド)とフィルター(ロカボーイコンパクト)を買い、
1/3水換えをして、投入。

入れた直後1~2時間は驚いて落ち着きがなかった。
フィルターから一番通り場所でバタバタしている。(離れたい感じ)
夜には慣れたようでフィルターの近くで眠っていた。

また、底砂を警戒してか、底をつつく行為が見られなくなった。

7月9日(火) 

水の濁りがだいぶましになった。
何も入れないと翌朝には白く濁っていたのが、全然濁ってない。

今日は水を少し継ぎ足すだけにした。

底砂に慣れたのか、底をつつく行為も復活。

7月10日(水) 

ダイソーで購入した掃除用ポンプで水を1/3程度入れ替え。
結構汚れがとれる!てか汚れてるな!

底砂(ベストサンド)を少し足した。
これで現状、0.5~6L分入っている。

水草(カボンバ)を購入。
水道水でじゃぶじゃぶ洗って入れた。

水草。
てっきり、バクバク食べるものだと思っていたら、全く食べない!
入れた直後はちょっとつつきその後は警戒して近寄らない。

7月11日(木)

うっすらとした水の濁りが気になる。
水槽が小さいしまだバクテリアも繁殖していないと思うので、
バクテリア剤を購入。

水も、置き水よりカルキ抜きを使った方が良いと聞いたので、
カルキ抜きした室温水で1/4 くらい 取替し、
サイクルとベストバイオを1~2ml位入れた。

元気に泳いでいる。

狭い家ながらも、、、
これでまずは金魚の生活環境が整ったかなと思うので
しばらく様子をみていこうと思います!