The alarm clock which performs a wakeup call automatically

(英語合ってるのか)

24日、小檜山研の最終発表で出してきた怪しい目覚まし時計がこれだ!

DSC01431.jpg

普通の時計なんだけど、上にDOCOMOの携帯電話を刺すコネクタが付いていて、目覚ましと共に誰かに電話をかける。

映像(8.5MB)ソースコード(AVR-GCC)

時間が無くて2日しかかけられなかったが、結構よく頑張ったと思う。

俺もこれが何なのか良くわからない。奇をてらってコンセプト無しに見たことのないモノを作ってみたらこんなのになった。

俺としては、もっとケータイをいっぱい刺せる様にしたら顔も知らない友達の友達にモーニングコールがかかったりとか面白いと思ったんだけど時間が無くて1つだけ。改良してもっともらしいコンセプトを付けてどこかに出すかもしれんね。

ケータイとの通信は去年のutaさんの資料と、NTTDOCOMO 自動車携帯電話サービスを利用するための技術参考資料が参考になった。57ページあたりから通信方法について書かれている。

ドコモのP506に接続できるデータ通信用ケーブルをバラして、

DSC01448.jpg

マイコンとの通信ケーブルにした。

600bps、ストップビット1、パリティ2のUARTで通信すれば普通に信号が送れる。変なコードを大量に送ると「ブースタヲカクニンシテクダサイ」とか言われてケータイが固まるが、解釈できないコードは無視される使用とのこと。

まずテストとして、atmega8からのUARTで写真を撮ってみた。

ソースコード(AVR-GCC)映像

ケータイが操作できる事がわかったので、ざっと設計して見た目を考えて

DSC01460.jpgDSC01461.jpgDSC01447.jpg050723_robustnessDiagram.jpg

結構うける外見になる事がわかった。

時:分表示の為の4桁の7セグメントLEDを作る。

DSC01417.jpgDSC01397.jpg

かなり気が狂いそうになる。というか見た目わからないけど、部品が足りなかったので3つの違う7セグでマトリクス点灯している。

さらにこの後、この向きじゃガワに入らない事が発覚して上下反転させるプログラムを書いた。面倒臭い…

ブレッドボード上である程度作る。7セグマトリクス点灯用のデマルチプレクサとして74HC154を使用。

DSC01407.jpg

一気に実装に。12時間後に発表だ。

DSC01432.jpgDSC01433.jpg

つーかブレッドボード横に置いてニコイチで実装していったんだけど、かなり綺麗な配置。職人的になってきた

ガワも作る。詰め込む。

DSC01427.jpgDSC01429.jpgDSC01434.jpgDSC01435.jpg

できた!とりあえずラックに入れておきます。残留する人使って下さい。

DSC01443.jpgDSC01445.jpg

鼻のスイッチを入れた方の目が光ります。確か右が時刻表示で、左がアラーム時刻設定だった筈。

本体裏のツマミ(ロータリーエンコーダー)を回すとアラーム設定ができます。時刻の方は携帯電話から取得して調整したかったんだけど、資料に載っていなかったので手動です。裏の小さいスイッチを押しながらツマミを回すと調節できます。

アラームで指定した時刻になるとブザーが鳴り、ケータイにコードを送って電話させます。

タイマを3種類(7セグマトリクス更新用、ロータリーエンコーダ監視、1秒を計測)回した。今回は8MHzで足りた。

1秒は、8MHzなので1024分周で8000カウントされたら1秒という事で16bitのタイマ/カウンタを使った。

一番苦労したのは時計としての状態管理。バウンダリが多いと管理が大変になる。

倒したらスヌーズになるとか考えて3面に傾斜スイッチを付けたり、そのせいで足りなくなった足を補う為にTINY2313を追加したりと終盤迷走したけどギリギリなんとかなって良かった。

提出したレポートが手書きの表紙とソースコードだけというのがアレだったけど_|‾|○