『昼夜逆転』工作室
[トップページへ戻る]

環境情報表示時計

タイトル画像

2025年2月

I2C-VFDモジュール+環境センサー」の最後に紹介した基板を使い、環境情報表示時計を作成しました。 製作期間の大半をソフトウェア開発に費やしました。使いながら様子を見て機能を増やしていったのですが、 その過程でC++らしさを意識し(Arduino環境での、あるいは組み込みでの)、クラス設計を楽しみました。

本体の紹介

マイコンはESP32-C3。VFDの制御、センサー読み取り、Webクライアント(NTPサーバーへアクセス)、簡易Webサーバー(AP)の処理を担っています。 VFDドライバーはHV5812(回路図ではDIP品のUCN5812)。VFDのグリッド電圧はMAX662Aで生成した12V、フィラメント電圧は3.3V。 回路図ではPWMでフィラメント電圧を生成するようになっていますが、そうする必要はなく単に3.3Vで動作するので、完成後にジャンパーを飛ばしています。

本体の様子 本体の様子 基板の様子 基板の様子 本体の様子
図面 図面

プログラム

ダウンロード
VfdEnvClockDd.zip
開発環境
Windows10, VisualStudioCode, PlatformIO

PlatformIOでボードに「ESP32-C3-DevKitC-02」を指定した適当なプロジェクトを作り、上記zip内のフォルダとplatformio.iniを上書きコピーしてください。 また、別途「chart.umd.js」を用意し、ESP32のSPIFFSへ書き込む必要があります。
※リンク先からGitHubへ移動し、chart.js-4.x.x.tgzをダウンロードし、解凍。/package/distフォルダ内にあり。

機能説明

本体の様子
本体の様子 本体の様子
本体の様子 本体の様子
設定画面の様子
※照度の単位[Lux]で小文字の'x'は表現できなかったので[Lu_]としている。[%]の表現は気に入っている。

スマホの操作画面

設定画面の様子 設定画面の様子 設定画面の様子
設定画面の様子 設定画面の様子 設定画面の様子

部品について

まずVFDありき。共立エレショップで販売されている9桁蛍光表示管「FIP9B8」が主役です。
基板に実装した「HV5812」のパッケージはSOICですが、マルツではDIP品「HV5812P」も扱っているようです。
照度センサーは「TSL2561」でも動作実績があります。ただしプログラムの変更が必要です(github)。

環境情報表示時計 主要部品一覧  (回路図はここをクリック
部品名部品番号値/型番個数参考価格/備考
マイコン U2 ESP32-C3-WROOM-02-N4 1 340円(秋月
VFDドライバー U3 HV5812WG 1 740円(マルツ
VFD(蛍光表示管) U4 FIP9B8 1 387円(共立エレショップ
昇圧DC-DCコンバータ U5 MAX662A 1 320円(秋月
環境センサー -- BME280 1 I2C動作の4ピンモジュール
照度センサー -- BH1750 1 I2C動作の4ピンモジュール

◆ ◆ ◆

日常使いすることを考えて機能を増やしていった結果、満足する作品ができました。 製作にあたってはハードウェア面よりソフトウェア面で楽しめました。