![[APPEARANCE]](i/appearance.jpg)
ドットマトリクス表示の時計です。
駅なんかでよく見るアレです。
7セグメントLEDと違って文字も見やすくなかなかカッコイイ
(と思うのは私だけ?) のですがなかなか手に入りにくいものです。
ドットマトリクスLEDは駆動も難しいのですが、
秋月電子が取り扱いやすいキットを販売しているので、
これを使って時計をつくってみました。
|
PICを用い、秋月電子のドットマトリクスLEDモジュールを2つ駆動します。
つまり横64ドット×縦16ドットの表示になります。
クロックには12.8MHzの高精度オシレータを用います。
どうせLEDで電力を食われるので、特に低消費電力とかは考えません。
なにしろ64ドット×16ドットもあるので、ファームウエアをいじれば
いろいろと遊べそうです。が、とりあえずインテリア性を考えて、
横12ドット×縦16ドットの文字を4文字、24時間表示の時計にします。
時と分の間のコロン (:) は点滅させません。
今回のコンセプトは、「見栄えのよい時計をつくる」 こと。
きれいな外観を実現するために、ケースまで自作することにします。
特に時刻表示面側からはネジがひとつも見えないこと、これが最低条件です。
|
![[SCHEMATIC]](i/schematic.gif)
PICとオシレータと表示器だけのごく簡単な回路です。
時刻調整等を行うようにプッシュスイッチを4つ設けています。
使用したLEDモジュールは横32ドットを16ドットずつわけてコントロールする
ようになっていますが、これではいろいろと面倒です。そこで
まずモジュールごとに、コネクタCN2Aの3番ピンとCN1Aの4番ピンを接続し、
32ドットを連続したビットとしてコントロールできるように、
さらに左側モジュールのコネクタCN2Aの4番ピンと
右側モジュールのコネクタCN1Aの3番ピンを接続し、
64ドットを連続したビットとしてコントロールできるようにしました。
もう少し違う言葉で言うと、マイコンからのデータは、まず左側モジュールの
左側のLEDを通り、次に同モジュールの右側のLEDを通り、さらに右側モジュールの
左側のLEDを通り… といった感じで右端まで到達します。
|
まず動作の具合を見るために、以前製作した小型版
を改造して64ドットにしてみました。
とりあえず動作はきちんとしているようです。(ただし、この時点では上の項で解説した回路とは違います。)
ちなみに、この仮組み君の背面はこんな感じ:
時計の回路を組む基板 (以下「時計基板」) にはユニバーサル基板を使うつもりだったのですが、
(配線が汚いのは置いておいて、)
これだと時計基板がLED制御基板の上部に少しはみ出してしまいます。
LED制御基板はLEDと直結している以上どうしようもないとして、
見栄えを重視するなら表示面側から時計基板が見えないのが理想的です。
そうなれば、ここは基板からつくっていきましょう。
|
![[BAKED]](i/pcb_baked.jpg) 焼きたてほやほや。
ジャストサイズにカットしなければならないので、
カットしやすい紙フェノール基板を使い基板を作成しました。
2つのLEDモジュールに対応する基板を1枚の感光基板に焼き付けて
エッチングしたところが上の写真。
カットして、感光剤を剥いで、穴を開けて、フラックスを塗って、基板完成。
部品を実装するとこんなふうになりました:
手前が今回製作した時計基板。奥がLEDモジュールの裏側です。
さらに奥の黒い物体はケースです。ケース製作については次項で解説します。
時計基板は部品点数が少ないのですっきりしています。
電源の入力はコネクタで行うことにしました。デザインと取り回しを考えたとき
ベストな電源ケーブルの扱いが思い浮かばなかったので、ひとまずいつでも
交換できるように、という設計です。
LEDモジュールの四隅の穴に20mmのスペーサを取り付けてあります。
これ経由でケースの裏側に固定します。
ちなみに、LEDモジュール2つを連結している小さな板は、
そのへんに転がっていたユニバーサル基板の切れ端です (笑)。
時計基板をLEDモジュールに接続するとこうなります。
スイッチがはんだ面に取り付けてあるのにご注意。
言うまでもなく、ケース裏側から操作できるようにするためです。
LEDモジュールと時計基板はピンコネクタのみで固定しています。
1枚あたり合計40ピンもあるので、固定力は充分です。
ひっくりかえすと上の写真のようになります。見事に時計基板がLEDディスプレイの裏に隠れました。
|
ファームウエアは小型版のを流用しました。
PICのTimer0モジュールにてメインクロックをカウントし、
そのオーバーフロー割込みの回数をさらにカウントすることで時を刻みます。
具体的には、 12.8MHz ÷ 4 → 3.2MHz ÷ 4 → 800kHz ÷ 256 → 3125Hz
というふうに分周され、Timer0割込みが1秒間に3125回発生するので、
これを数えます。
割込み以外の部分ではLEDを制御し、ボタンが押されていれば時刻調整をします。
数字フォントもファームウエアに内蔵しています。
● ファームウエアソースはこちら→
ドットマトリクスクロック (64×16ドット) ファームウエア(MPASM用)
相変わらず、LEDが明るすぎるのでインターレース表示を行って明るさを抑えています (笑)。本来はLEDモジュール上の抵抗器で電流を調整するのが正しいやり方です。
|
見た目の美しさを重視すると、既成のケースではなかなか満足できるものがありません。
今回はケースも一からつくります。
真っ黒なボディに赤い文字が浮かぶデザインにしたいと思ったので、
アクリル板でケースを組むことにしました。
アクリル板の加工は難しくありませんが、
今回は寸法をぴったり出したかったので、「アクリ屋」という樹脂業者さんにオーダーしました。
左4枚はブラックの板、いちばん右はグレースモークの板です。
切断面は処理なしにしてもらいました。単純にコストの問題です (汗)。
オーダー費用は、アクリル板が計1871円、接着剤が580円、送料840円で合計3291円でした。
組み立て中。セロテープで仮止めしてあります。
背面のブラックの板にはこの時点で既に穴が開けてあります。
LEDモジュールの四隅を固定する穴と、スイッチ4つを操作するための穴です。
開いている面が底面になります。
ここの部分は、設置する場所にあわせて電源ケーブル穴の位置等を変更できるように、
あとから底面板を自作するためにあえて板を注文しなかったのですが、
今から考えるとここも天面板と同寸法の板を注文しておけばよかったなぁ… (汗)。
別の角度から。片面だけ半透明になってる方が前面です。
切りっぱなしになっている板の断面がわかります。
こういう縁取りだと見れば、特に違和感もない気もします。
この状態で接着剤を流し込みました。
接着剤が乾燥するまでの間に試しにディスプレイを組み込んでみました。
思った通りのデザインに仕上がりそうです。
仮止めのセロテープをはがし、ケース完成。
|
ケースができたらあとは組み上げるのみです。
ケースにディスプレイを挿入します。
ディスプレイを裏面から固定します。
底面から見るとこういうふうになっています。
赤く見える部分はディスプレイの光が前面のアクリル板に反射しているものです。
電源のコネクタが変なところで中継してしまっているので、
これは直さなければいけませんね。
完成!
|
完成後、メタルラックの頂上に置いて使用しています。
メタルラックということで下からアクセスできるので、
底面板は結局取り付けていませんが、特に外光が入るようなこともなく、
当初の思惑通り、なかなか格好いい時計として愛用しています。
以下、ちょっと補足事項です:
- 底面がら開き構造は、机の上に置いて使用したり、
メタルラック等の下からアクセスできる棚に置いて使用したりする分には、
このままでも特に問題ないようです (デザイン的な意味で)。
ただし、壁掛けにして使用する場合は、
下から基板類が見えてしまいますので、
底面板を取り付けたほうがよさそうです。
この場合、底面板は両面テープでの固定を想定しています。
- アクリル板の切断面の処理は、ケースが完成してから超微細な研磨剤で磨けば、
全体がツルっと1つの物体のように見えたりしないかなぁ。
削り出しに見えるくらいになれば最高ですね。
- ファームウエアをいじるといろいろステキなことができると思いますが、
とりあえずフォントを変更すると、こんな感じになったりもします:
![[ALTERNATIVE FONT]](i/altfont.jpg)
|
| 種類 |
型番/容量 |
数量 |
備考 |
| IC |
PIC16F84A |
1 |
マイクロコントローラ |
| クリスタル発振器 |
12.8MHz |
1 |
|
| コンデンサ |
0.1µF |
3 |
積層セラミック |
|
470µF |
2 |
電解 |
| プッシュスイッチ |
- |
4 |
|
| 秋月LED表示器 |
- |
2 |
|
| NHコネクタ |
4P |
1 |
|
| DCジャック |
2.1φ |
1 |
|
| ACアダプタ |
5V 2.3A |
1 |
|
| アクリル板 |
195mm×65mm×3mm |
1 |
グレースモーク |
|
195mm×65mm×3mm |
1 |
ブラック |
|
195mm×28mm×3mm |
1 |
ブラック |
|
60mm×28mm×3mm |
2 |
ブラック |
| スペーサ |
20mm |
4 |
|
| ねじ |
- |
適宜 |
|
|
|
64x16 dot matrix LED clock; assembly completed in Jan. 2006. |