HN 日本語サマリー

← 一覧へ戻る
科学・技術

Weathergotchi – オープンソースの気候タマゴッチ

Weathergotchi – an open-source climate Tamagotchi (github.com)

98 pointsby luanmuniz22 コメント

要約

このプロジェクトは、オープンソースでバッテリー駆動の温度・湿度データロガーで、常時表示されるe-paperディスプレイを備えています。環境条件を記録し、不揮発性メモリに保存して、履歴グラフと共に現在のデータを表示します。小型Li-Poバッテリーで1週間以上の動作を目指して設計されており、ハードウェア、ファームウェア、ケースデザイン全体がオープンソースで公開されています。

全文翻訳

Weathergotchi - E-Paper気候ロガー このプロジェクトについて これはオープンソースでバッテリー駆動の温度・湿度データロガーで、常時表示されるe-paperディスプレイを備えています。周囲の状況を時間とともに記録し、読み取り値を不揮発性メモリに保存し、現在のデータと履歴グラフを表示します。このデバイスは低消費電力で設計されており、小型のLi-Poバッテリーで1週間以上の動作が可能です。 主な特徴: ESP32-S3 (ディープスリープ & RTCタイマーによるウェイクアップ) 温度・湿度センサー (外部EEPROMによるロギング) 正確なバッテリー監視と充電管理 電源ボタンコントローラー (オン/オフ用) 1.54インチe-paperディスプレイ カスタムPCB & 3Dプリントケース プロジェクト全体がオープンソースであり、ハードウェア回路図、PCBレイアウト、ファームウェア、エンクロージャーCADファイルが含まれます。詳細なビルドビデオはYouTubeで公開されています: E-Paper Climate Logger。 YouTube動画 リポジトリ構造 E-Paper-Climate-Logger/ ├── CAD/ # 3Dケースデザイン (OpenSCADソースとSTLエクスポート) ├── PCB/ # KiCadハードウェアデザイン、回路図、データシート、リファレンス ├── firmware/ # PlatformIOファームウェア (ESP32-S3、Arduinoフレームワーク) ├── LICENSE # ライセンスファイル └── README.md # このファイル CAD フロントとバックのケースハーフ用のパラメトリックOpenSCADモデル、アセンブリファイル、3Dプリント用のエクスポート済みSTLが含まれています。デザインは完全にパラメトリックであり、定数 (constants.scad) を編集することで寸法を調整できます。 PCB カスタムメインボード (templog_mainboard) のすべてのハードウェアデザインファイルが含まれています。このディレクトリには以下が含まれます: KiCadプロジェクトファイル (.kicad_sch, .kicad_pcb, .kicad_pro) 電源管理とディスプレイドライバーの回路図シート コンポーネントフットプリントと3Dモデル すべての主要IC (充電器、燃料ゲージ、RTC、センサーなど) のデータシート SparkFunとWaveshareからのリファレンス回路図 PCBデザインを表示または変更するには、KiCad 9以降をインストールしてtemplog_mainboard.kicad_proを開いてください。 ファームウェア Arduinoフレームワークを使用したESP32-S3用のPlatformIOプロジェクトです。センサー読み取り、時刻同期、EEPROMへのデータロギング、e-paperディスプレイの更新、ボタン処理、電源管理 (ディープスリープ、ウェイクアップソース) を処理します。詳細なビルドとフラッシュ手順については、firmware/README.mdを参照してください。 始め方 ハードウェアの前提条件 組み立て済みのE-Paper Climate Logger PCB (または手はんだ付けされたプロトタイプ - 多くのコンポーネントは小さく、リフローはんだ付けが必要になる場合があります) 1.54インチe-paperディスプレイ (Waveshareピンアウトと互換性があるもの) 3Dプリントケース (CAD/export/内のファイル) Li-Poバッテリー (例: 400 mAh、シングルセル) 充電およびプログラミング用のUSB-Cケーブル ファームウェアのビルド PlatformIO Coreをインストールします (またはVS CodeのPlatformIO拡張機能を使用します)。 ファームウェアディレクトリに移動します。 デバイスをUSB-C経由で接続します。 実行します: pio run --target upload シリアル出力の監視 (オプション): pio device monitor フォルダ構造、ドライバーの詳細、低消費電力動作を含む詳細なファームウェアドキュメントについては、firmware/README.mdを参照してください。 エンクロージャーの組み立て CAD/export/のSTLファイルを高解像度FDMプリンター (0.1 mmレイヤー高さ推奨) を使用して印刷します。ケースはM2ヒートセットインサートとM2ネジを使用します。PCBとバッテリーを挿入し、フロントとバックのハーフをネジで固定します。 ハードウェア概要 すべてのI2Cペリフェラル (SHT45、DS3231、24LC512、BQ27441) は同じバスを共有します。e-paperディスプレイはSPI経由で駆動され、LTC2954ソフトパワースイッチはBQ24075を介してシステム電源オフを制御します。完全な回路図とPCBレイアウトについては、PCB/templog_mainboard/でKiCadプロジェクトを開いてください。 電源管理と低消費電力動作 デバイスは小型バッテリーで1週間以上の動作を目指して設計されています: ディープスリープ中、ESP32-S3は20 µA未満を消費します。DS3231とBQ27441は、無視できる電流でアクティブなままです。DS3231アラームは、設定可能な間隔 (デフォルト: 1分) でESP32をウェイクアップさせます。ESP32はウェイクアップし、読み取り値を記録し (50 mAで約400 ms)、ディスプレイを更新し、スリープに戻ります。LTC2954は真のオン/オフ機能を提供します。 問題点 バッテリー精度の問題: テストでは、報告されるバッテリー残量 (State of Charge) が正確ではありません。これはBQ27441の設定ミスが原因だと考えています。 低バッテリー問題: テストでは、バッテリー残量が少なくなった場合 (3.4V)、電源が入れられなくなる回復不能な状態に陥ることがあります。これはバッテリーを取り外し、外部で充電してから再接続しないと修正できません。これは私が使用しているAliexpress製の安価なバッテリーが原因かもしれないと考えています。 制限事項 取り扱い中の温度精度: ESP32はアクティブ時に熱を発生するため、SHT45の読み取り値に影響を与える可能性があります。ファームウェアは、このエラーを最小限に抑えるために、ウェイクアップ直後にセンサーを読み取ります。長時間のメニューブラウジングやデバイスの保持は、周囲の読み取り値を数分間歪めます。 ディスプレイの低温制限: e-paperモジュールは0°C以上での動作が規定されています。凍結以下では、画面が確実に更新されない場合があります。データロギングはバックグラウンドで継続され、温度が上昇するとディスプレイ機能が再開します。 ワイヤレス接続なし: バッテリー寿命を最大化するため、このバージョンにはBluetoothまたはWi-Fiのデータエクスポート機能は含まれていません。データはデバイス画面でのみ表示できます。 貢献 問題、プルリクエスト、提案を歓迎します。既存のコードスタイルに従い、ハードウェアまたはファームウェアへの変更はすべて文書化してください。 ライセンス ライセンス条件については、ルートディレクトリのLICENSEファイルを参照してください (オープンソース、パーミッシブライセンス)。 謝辞 SparkFun (バッテリーベビーシッターリファレンスデザイン) Waveshare (e-paperディスプレイモジュールおよびドライバー回路図) PlatformIOおよびGxEPD2コミュニティ 質問や議論については、GitHubでイシューを開くか、YouTube動画のコメントをご覧ください。