2020年5月16日土曜日

ESP32で古時計の精度改善


ソースコードは、重力振り子用の構成になっています。
//*** WIFI SETTING の下2行がWiFiのSSIDとパスコードの設定部分です。

EPS32がインストールされているArduino IDEで、ボードとして「WEMOS LOLIN32」を選択してコンパイルします。

起動後、OLEDに表示されるIPアドレスに、ブラウザ(ChromeとFireFox以外は試してないです)からアクセスし、「Config」メニューの「Pendulum XX cycles = YY sec」で時計のギヤ比(YY秒間で振り子がXX回往復)を、「Pend Cycle between Tune: ZZ」で修正間隔(振り子ZZ回往復ごとにコイル電流を更新、1分に1回程度で良いと思います)を設定して「Apply」し、再度「Config」から「Reboot」すれば、とりあえずは動くはずです。


回転振り子については、#define GRAVITYをコメントアウトし、#define TORSIONを生かしてコンパイルします。センサーの設置位置などが微妙で、条件が変わるとソースコード中の定数の調整も必要と思われます。