昭和初期の柱時計を電子工作で正確な時計へ

ゼンマイの巻き加減で簡単に5分位進んだり遅れる昭和初期製造の柱時計をマイコンを使って実用的な時計へと改造する。セルフまとめ
12
HAC @HAC8823

早速ブレッドボードで作動確認。 待機電流2.5mA程、作動最大250mA位。バッテリー運用では無いので許容範囲内。 各作動確認用のLEDを複数使う為に14Pの16F1823での試作プログラムもだいたい出来た。 明日以降小型ブレッドボードに組み直して柱時計に組み込む。 本番は8PのPIC12F1822を使用予定。 pic.twitter.com/0pAdhUbgBf

2023-06-20 18:57:10
拡大
HAC @HAC8823

小型ブレッドボード化して柱時計に組み込んでのテスト開始! 部品はまだ両面テープで仮止め… まだ正時に合わせる機能が無いので58分42秒頃に電源を入れる必要が有った(^。^;) これが上手く機能すれば常に正時の鐘が誤差10秒以内に鳴るハズだ。 しばらくはマイコンの時差修正が必要だけどね(^^;) pic.twitter.com/1hqT9VqKvM

2023-06-21 17:13:39
拡大
拡大
拡大
HAC @HAC8823

取り付けて早速『ゼンマイ巻けLED』が点灯してあれ?と思ったが実際にゼンマイが限界だった…機能してる(^^;) 一晩明けて10秒位遅れてる… まだ水晶の校正が出来て無い、ブレッドボードが変わって発振周波数が大きく変化。ここまで大きいと現状の修正の仕組みでは対応不能、プログラム修正が必要だ…

2023-06-22 09:50:47
HAC @HAC8823

サーボがスムーズに動かない事が有るバグが有ったがやっと原因判明。 時報のLEDカウントダウンを割り込み関数で処理してる為にサーボ用の割り込みが入らない為だった。 上手い解決策が思い付かないので柱時計の誤差が3秒以内の場合は修正をしない事で対応。 正時の鐘は誤差10秒以内で収まってる(^_^)/

2023-06-22 22:41:58
HAC @HAC8823

誤差修正は1時間毎にする訳だが、ゼンマイを巻いた直後で10秒/H位進み徐々に誤差が無くなって行くが、隣接した1時間の誤差はほぼ同じな訳だから振り子を再スタートさせるのを毎正時では無く誤差の時間、10秒なら10秒遅れて再スタートすれば次の正時は正確だな… それだと1時間おきに誤差が大小するが…

2023-06-23 07:47:43
HAC @HAC8823

なので10秒進んだらたら8秒遅れて再スタートすれば鐘を鳴らせるのを概ね6秒進み位に収束する事が出来る。 どの位の割合が最適なのかはまだ分からないが正時再スタートよりも誤差は減りより正確な時計に出来るだろう(^_^)/

2023-06-23 07:58:28
HAC @HAC8823

10時の鐘は21秒進みだった。 まあ戦前の古い柱時計なんだから針に対して毎度正確なタイミングで鐘が鳴る訳でも無い(^。^;) なので過去8回分の誤差を記憶し平均化して再スタートのタイミングを計算する方式にしよう。プログラムはまだまだ全然小さいのでメモリも余裕。

2023-06-23 10:07:49
HAC @HAC8823

過去12回分の誤差を記憶合計しそれを4bitシフトする事で0.75倍しその秒数だけ再スタートを遅らす事にした。 これで誤差4割減…予定… ゼンマイ巻いた後にリセットが必要かな… まだサーボがスムースに成らないバグが有った。鐘センサーとの兼ね合いで余りテストが出来ない状況でのフラグ処理ミス(^^;)

2023-06-23 13:01:50
HAC @HAC8823

だいぶ作動が安定して来たので動画を撮ってみた。 10秒前に2時の鐘が鳴り、サーボが作動して振り子を停止。 正時に再スタート。 ワザと時計が進むように振り子を調整してある。 ゼンマイが緩んで来ると遅れて来るので正時までに鐘が鳴らないとLEDでゼンマイを巻必要を知らせる。 pic.twitter.com/Wg2NSoJgJz

2023-06-24 14:17:54
HAC @HAC8823

昨日の13時過ぎにスタートしたマイコンの時計が21時間経過で約5秒の遅れ。 誤差を修正する度に1秒の長さを補正する仕組みだが1秒修正のスイッチ毎に0.000001192%しか発振周波数が変化しない計算なので最低でも10日は必要。 なのでパソコンを接続して直接EEPROM上の補正値を変更した方が遥かに早い…

2023-06-25 10:26:53
HAC @HAC8823

アイデアメモ… 電源投入と正時修正SW直後の時間調整では発振周波数の可変調整をしない。 勘違いしてた部分… 割り込み許可を取り消しても割り込みのフラグは立つので、別件で割り込み関数に入ると処理をしてしまう。 フラグと許可の両方が無いと処理しないようにする必要あり。

2023-06-26 09:29:27
HAC @HAC8823

以前柱時計についてググっても社名以外の情報が何も出て来なかったけど全く同じ柱時計が売られてたのが何件かヒットするな。 どうやら昭和初期の製造らしい。 #横浜エムズイ商会 #柱時計 rojiuracafe.thebase.in/items/37040309

2023-06-26 10:03:33

横浜大空襲の時に防空壕に投げ込んで難を逃れたと生前の親父に聞いたのがこの柱時計の唯一知るエピソード。
なのでこれまで『戦前の時計』としかわかってなかった。

HAC @HAC8823

本番用のマイコンPIC12F1822用のプログラムが出来たのでミニブレッドボードを差し替えた。 I/Oは6Pなのに水晶2P、サーボ、センサー、LEDとSW2つづつ… 入力設定を出力に切り替えたりでややこしい(^^;) 作動OK! 次はサーボの待機電流2.5mAを削減出来るか軽くテストして本番用の基板を設計する。

2023-06-26 21:10:49
HAC @HAC8823

サーボに規定外のパルスを入力したら壊れちまったorz 幸い研究・予備用に2個購入してたので実機製作には影響無いが(ノД`) したがって待機電流削減のアイデアはボツ… 本番用の設計も概ね終了したが今日はチェックだけでここまでにしておこう(・ω・)

2023-06-27 16:04:42
HAC @HAC8823

サーボの待機電流を削減する別のアイデアを思い付いた!テストもOK やはり一晩置いて頭を冷やしたのは正確だった(○´∀`○) 早速設計変更&製作開始で既に完成♪ 作動電流1mA以下、サーボも一時間に一秒以下なので平均すれば全体でも1mA 更に壊れたと思ってたサーボ生きてた(^_^)/ これから取り付け… pic.twitter.com/TDojFnRtX0

2023-06-28 16:22:54
拡大
拡大
拡大
HAC @HAC8823

恒例の役目を終えたブレッドボードの解体の儀… さてサーボが故障したと思った原因は…2枚目写真の電源入力部に隠れた…ポリスイッチでした(・∀・) サーボが勢い良く動いてポリスイッチがトリップ…しかしヒューズと違い電流は流れ無い物の電圧は出るのでマイコンは作動…でした(・∀・) pic.twitter.com/har4177Bb2

2023-06-29 14:35:06
拡大
拡大
拡大
HAC @HAC8823

存在を忘れてたポリスイッチは500mA品なので1A位流さないとトリップしないハズなんですが250mA程度のサーボモーターでトリップするとは(>_<) 小型のブレッドボードは複数使ってます。 実際に組み込んでテストする時は出来るだけ小型で… ちっこいのもセンサーやスイッチだけ延長とか意外と便利(^^ ) pic.twitter.com/K4URrQr7EU

2023-06-29 14:43:26
拡大

サーボの250mAは無負荷での値。
2.4mSよりも長いPWM(実際にはフルパルス)を入力したため作動範囲外までサーボが回転しようとしてストッパーに衝突、フルトルクでモーター負荷最大。
ポリスイッチ入ってて助かったw

HAC @HAC8823

I/Oが6Pしか無い小型マイコンでI/Oを節約。スイッチとLED、FETを共通に… 通常は入力設定でプルアップSW待機。 LEDを点灯するには出力設定にしてL出力。 点灯中はSWは使えないが今回は時報は2秒/分以下なので実用上問題無し。 ゼンマイは巻くのを優先。 サーボ作動中はLEDも点灯するが1秒/時以下。 pic.twitter.com/KYLjvnwxkv

2023-06-29 15:12:46
拡大
HAC @HAC8823

SWを押すとそちらのLEDが点灯してしまうが、SWが接点不良無く押されてるのが確認出来てかえって良い。通常は状態変化割り込みを使うが、入出力設定を変更すると誤作動し易いので1秒毎の割り込みのタイミングで処理、反対のLED点灯で入力完了を知らせる。 正時修正が離したタイミングなのはこの都合上…

2023-06-29 15:21:09

正時修正は両方のSWを同時押しするのでLEDでは待機完了を表示出来ない。
なのでサーボを動かし振り子を最大位置で停止、SWを離した瞬間にタイマー類をリセットし振り子を再スタートする事にした。

HAC @HAC8823

入力設定を出力設定に切り替えるとH出力に成ってしまう事がある。 入力状態の時のI/Oの電位の問題かも知れないが直ぐにLにしてもその瞬間SWが押されてるとショートしてしまうので保護用に270Ωを入れた。 270なのは大昔にLEDの制限抵抗用に買ったのがまだ大量に残ってるからw

2023-06-29 15:29:26
HAC @HAC8823

ブレッドボードから基板に変わった事で静電容量が大きく変化… 更にバグが有ったりで水晶の校正がまだ全く出来て無い… 一晩で40秒もズレてた(・∀・) いちいちパソコン繋ぐのも面倒なので時差修正での調整割合を一時的に256倍に変更。 マイコンの時計ズレでゼンマイ巻けLED点灯で巻いたがまだ早過ぎ…

2023-06-30 10:27:48
HAC @HAC8823

うぎゃーまだバグが有ってマイコンの時計がズレてた(>_<) これは16F1823では問題が無いが12F1822では問題が出る内容でテスト済みだと思ってた部分。 出入力切り替えが発端… 原因さえわかれば対策は可能だ (^。^;)

2023-06-30 11:36:38