自動プール給水・監視システム
故障したプールシステムを、Raspberry Pi、低消費電力Arduino、オープンソースソフトウェアを用いた完全自動・センサードリブンのソリューションに置き換えたDIYエンジニアの軌跡。水位、温度、pH、ORP、フィルター圧力、電力使用量、ポンプ稼働を継続監視し、必要な時のみ給水を行います。
ストーリー
2015年の夏、息子たちと私は自宅プールの連鎖的な問題に取り組みました—不良配水管、漏れるバルブ、劣悪なフィルター、役に立たないプール業者。システム全体の再構築がミッションとなりました:プール清掃、新コンポーネント設置、そして何よりインテリジェントな自動化の実現。
アイデア
核心目標は、古い機械式セットアップをセンサーネットワークと制御ハブに置き換え、プールを自律運転させることでした。塩水変換と基本的な薬剤投与には Autopilot 管理システムを採用し、自動化の大部分はカスタムハードウェアで処理。
開始
フィルター、ポンプ、バルブをアップグレード後、Raspberry Piベースのシステムを導入し、センサーデータ読み取りと給水バルブ駆動を実現。Piはバッテリー駆動マイクロコントローラーと通信し、水位、温度、圧力測定を担当させます。
自動化の始まり
水位検知と給水バルブトリガーの方法が必要でした。最初はMilone液体テープ抵抗センサーを選定しましたが、浸水故障により低コストのフロートスイッチ方式に切り替え。 低消費電力Moteino-R5 がフロート状態を読み取り、RFM69トランシーバー経由でPiにデータ送信。
プール給水
既存の灌漑システムから給水。24V ACスプリンクラーバルブを、240V-24Vトランスと光学的絶縁ソリッドステートリレーで制御。プールが目標水位未満かつスプリンクラーがアイドル時のみ通電。Rachio APIを毎分クエリし、芝生ゾーンが水を使用していないことを確認。
電源管理
ポンプ稼働はBrultech GEM電力モニターで監視。5kW以上消費時は逆圧損失を避けるため給水を一時停止。 MightyHat UPSがPiに2時間のバックアップを提供、手動「給水停止」ボタンでトランスをシャットダウン可能。
監視センサースイート
- 水位(フロートスイッチ)
- プール温度(RTDプローブ)
- フィルター圧力(100 PSIセンサー)
- pHとORP(Atlas Scientificセンサー、フローセル内)
- 電気負荷(GEM、最大5kW)
- スプリンクラー状態(Rachio API)
- 酸タンクレベル(DFRobot液面センサー)
水位センサー - 新方式
フロートスイッチ方式では、耐候性エンクロージャ内に2つの1/4インチフロートスイッチを設置。上下のフロートが開/閉状態を報告、システムが組み合わせを低水位・中間・満水として解釈。センサーノードが毎分0、1、2の値をPiに送信。
温度センサー - 浮遊エンクロージャ
温度プローブを塩素フローター内に配置し、プール表面に浮かべることで信頼性の高い読み取りを確保し、センサーを偶発的損傷から保護。
酸レベル監視
酸タンクにDFRobot液面センサーを設置。タンク残量低下時に通知し、Autopilotが酸を投入する前に手動補充可能。
Webインターフェース
Flaskベースのダッシュボードでリアルタイムゲージ、システムステータスLED、バッテリー健全性、手動給水、ポンププログラム、通知設定のコントロールを表示。Flask-Ask経由でAlexaスキルもホストし、音声でプール状態照会や給水開始/停止が可能。
履歴グラフ化
センサーデータをMySQLデータベースにログ記録し、InfluxDBに転送。Grafanaで温度、pH、ORP、水使用量のトレンドを可視化。ダッシュボードで異常検知とプール水質の最適化を支援。
通知
ログファイル、コンソールデバッグ、Pushbullet、メール、Twilio SMSに対応。Webパネルからイベントごとの通知チャネルをカスタマイズ可能。
Alexa連携
Flask-Askで構築したカスタムAlexaスキルにより、温度、pH、ポンプ状態の音声案内、給水開始/停止コマンドに対応。
結論
コードベースバージョン3.5.0では、ロジックを再利用可能なPython関数にモジュール化し、保守性と信頼性を向上。ホームオーナーがレガシープールシステムを低コスト・オープンソース・高信頼性の自動化スタックに置き換え、リアルタイムインサイトとハンズフリー制御を実現できることを実証しました。
ソース: Pool Fill Control
製造プロセス