XBee ワイヤレス 32x16マトリクスLED時計

by ボクにもわかる地上デジタル

XBeeメインメニューへ

地デジトップへ戻る

はじめに

 このページではXBee ワイヤレス 32x16マトリクスLED時計について説明します。ただし、秋月電子通商で販売されていたマトリクスLED C-2AAOSRDTを2つ用いた「32×16ドットLED電光掲示板用拡張表示ユニット」(¥2,500)および「32×16ドットLEDマトリクス表示装置パーツセット」の販売は2014年3月頃に終了し、互換性の無いAdafruit製の「RGBフルカラードットマトリクスLEDパネル」(¥2,880)へ移行してしまいました。
 このため、あまり詳細な製作方法を紹介するのではなく、製作の概要とソフトウェアの公開程度のページとなります。YouTubeに公開した上記の動画を見て「同じマトリクスLEDを所有しているので製作したい」という要望がありスケッチを提供しました。その際に説明した内容を中心に当ページに公開いたします。
 なお今のところAdafruit製のマトリクスLEDパネルを用いて再製作する予定はありません。


ワイヤレス 32x16マトリクスLED時計の製作例

製作の概要

 ケースには秋月で売られている西務良(ニシムラ)製の大型ポリカーボネート・ケース140を用いました。このケースに以下のユニットを収容しています。

各ユニットの配置

 ケースの表面にはマトリクスLEDユニット、スピーカ、ユニバーサル基板をビスで固定しました。ユニバーサル基板にはXBeeモジュール、音声合成IC AquesTalkおよび周辺回路、赤外線リモコンの送信ダイオードと受信モジュール、照度センサを実装しています。
 基板1のArduinoは写真のユニバーサル基板の裏側に、基板2のArduinoはマトリクスLEDの裏側に配置し、ケースの裏側に固定しています。また、冷却ファイン、ヒューズ、DCジャックも裏側に固定しました。

各ユニットの役割

 基板1のArduinoにはXBeeライブラリおよびスケッチ「main_clock」を書き込み、XBeeによるワイヤレス機能を持たせました。また赤外線リモコン信号を送受信する機能やAques Talkへの音声データ出力も基板1のArduinoが担います。
 基板1のソフトウェアシリアルには基板2のArduinoを接続し、XBeeから受け取った表示情報や時刻調整情報を基板2へ伝達します。さらに基板4に実装した照度センサの値も取得することができます。
 基板2のArduinoにはスケッチ「matrix_clock」を書き込み、時計機能とマトリクスLEDの表示制御を行います。温度測定と冷却ファンの制御も行います。
 Arduinoを2つも使用した理由はArduinoのメモリ不足や処理速度不足を補うためと、基板2の時計機能側は一つのモジュールとして独立させることで開発効率を上げるためです。

節電と冷却

 このマトリクスLEDは5V動作で500mA〜1Aもの電流を消費し発熱量も大きく冷却ファンが必須です。基板2のArduinoは、マイコン内部の温度計でマトリクスLEDの裏側の温度を測定し、設定温度を超過した時に冷却ファンを回転させる自動制御を行います。設定温度はXBeeのワイヤレス通信で基板1no Arduinoを経由し基板2のArduinoに伝えられます。
 冷却のための開口部はケースの上部に設けました。ちょうどマトリクスLEDとマトリクスLED用の基板との間に開口し、冷却ファンが回転していない時も自然放熱しやすくしています。(写真にて上部に丸穴の開口部が並んでいるのが分かると思います。)
 また、基板2のArduinoは基板1のArduinoからの指示で時計表示、メッセージ表示をオフすることも可能です。
 しかし、これだけでは消費電力が大きいので、節電対策を行いました。まずはマトリクスLEDの消費電流の低減です。マトリクスLEDの輝度設定用にR4およびR5用に390Ωの抵抗が付属していますが、これらをより高抵抗に変更します。発熱原因のほとんどがLEDの輝度に起因しているので、なるべく高い値にするのが良いでしょう。室内利用等で、多少、暗くても良いのであれば1kΩ程度まで上げると冷却ファンは不要になります。
 またArduinoの動作電圧もDCDCコンバータなどで3.3Vにすることで消費電力を下げることが可能です。3.3VにするとXBeeとのUART接続を直結することが出来るので回路の部品点数が削減できます。当方の製作例では、マトリクスLED、冷却ファン、オーディオアンプを5V動作、その他は3.3V動作にしました。(※Arduinoのクロックは16MHzのままにつき、熱暴走しやすくなっていますが、1年以上の動作期間で、一度も熱暴走したことはありません。)
 節電と冷却はこのマトリクス時計の製作にあたり最も重要なポイントだと思います。また、冷却ファンは予期せぬ温度上昇時(例えば、夏場の不在時に部屋の温度が上昇し、かつ点灯数の多い文字が長時間表示されていた時など)に非常用として回転する程度にするのが良いでしょう。

スケッチのダウンロード

 製作したスケッチは下記からダウンロードすることが出来ます。なお、日本語フォントに美咲フォントを使用しました。詳しくはスケッチ「font.ino」中の参考文献に記しています。

matrix_clock.zip



地デジトップへ戻る

XBeeメインメニューへ戻る