機械式デジタル時計
ポイント- 1つの小型サーボですべてを制御
- bluetooth 経由で時刻設定可能
コンセプト
その後たくさん作ることになる3Dプリンタ製時計の、第1号となったのがこの時計である。この手の家電系の制作物としては、最初に作ったのが単3電池の自動充電器だった。これがなかなかうまくでき,それなら時計ぐらい簡単に出来るんじゃないか?と思って作り始めた。しかし実際のところはかなり調整を要したし、部品点数も多くなった。その後の時計に比べるといろいろと設計に洗練されていない部分が残っているが、ちゃんと筐体に入れて置き時計風にまで持ってきたのはこの時計ぐらいである。
設計指針には、サーボモータを1個だけにすることがあった。このサーボは安価な互換品なので複数使っても良いのだが、1個で全部動かしたほうがメカ的には面白い。大きなドラムに数字を並べ、そのドラムを爪で引っ掛けて回す仕組みになっている。問題は4つあるドラムを選択する機構である。それにはドラムとサーボ軸の間にあるカム軸が働いている。このカム(セレクトカムと呼ぶことにする)は90度ずつ回転し、使用したい爪(長いレバー)以外の3本を上に跳ね上げるようになっている。上の写真は最も手前(最上位桁)の爪だけが下がっている状態である。となるとこのカム軸を回す仕掛けが必要になる。これはサーボの回転の、反対側の半分を割り当てた。上の写真でサーボが時計回りに回転すると、長い爪が引かれてドラムが回転する。サーボを逆に反時計回りに回すと、長い爪は押される方向に動くのでドラムは回らない。このとき、同じサーボ軸についた短いレバーがセレクトカムを90度だけ回すようになっている。つまりサーボの時計回りで選ばれた桁を1進め、反時計回りで桁選択の切り替えを行う。
この時計で問題として残っているのは時計の状態の把握である。現状、センサがどこにもないので、電源投入時には4つのドラムの位置や、セレクトカムの位置がわからない。なので電源を入れる前に各ドラムを手で初期位置に戻しておく必要がある。一旦それを行えば、あとは最適な順序で各桁を揃えていくようにプログラムした。さらに micro:bit の bluetooth 通信機能を利用し、PCのブラウザから時刻をセットできるようにした(ネットワーク経由で時刻を自動取得するようにはなっていないので、手動での作業は必要である)。
このときは割と頑張ったつもりだが、今(1年以上後)から見るといろいろと設計に甘さが散見される。もっとここはこうしたほうが強度が出るとか、確実に動くとか。そもそも爪で引っ掛けて回すような機構は安定度に欠ける(ひっかからなかったり、1つ動かすつもりが行き過ぎて2つ動いたり)ということも学んだ。ただし、数字を別にプリントしてはめ込む構造は視認性が高く、手間さえ惜しまなければ良い方法だったと思う。
例によって3DデータとプログラムはThingiverseで公開している。