profile-photo

トレーニングタイマ

室内トレーニングマシンのインターバルトレーニング用タイマ


これはバーグラフ表示のものと8x8ドットマトリクスでメッセージを表示するものの2種類を作った。
前者は、1ピットのポートでバーグラフのカラー表示ができる非常に便利な表示器だ。後者はI2C接続のドットマトリクス表示を使ったので、こちらも接続は簡単だ。
Arduino UNOを手に入れて、ブレッドボードでLEDとかセンサとかを付けて遊んでいたが、そろそろ何か使える物を作りたくなった。シールドと言う考えは優れていて良いのだが、どうしても嵩張るのが欠点だ。
そこで、チップだけで作ることを考えた。とは言え、バーグラフタイプはハードウェアは馬鹿みたいに簡単何せ最低1本のデジタル出力があれば良いのだから。当然CPUはTiny85。85で無くても良いほどなのだが、たまたま手元にあったのが、85だったので、それを使った。
マトリクス表示もI2Cなので、3〜4本のデジタルI/Oがあれば済んでしまうのだが、表示のパターンが容量を食う。残念ながらTinyでは無理で、MEGA328を内蔵8MHzで動作させることにした。

 

001

自転車が趣味なので暇がある時はなるべく乗るようにしている。しかし、雨の日や雪の日また酷暑の時や厳寒の折など、どうしても乗れない(乗りたくない(^_^;)日もあるのだ。そんな時はローラー台に自転車を乗せて室内で走る。
ただ漫然と走っていても面白くないので、インターバルトレーニングをすることにした。
20秒全力で漕いで、20秒ゆっくり。これを8〜10回繰り返す。僅かな時間だが、汗が滴り落ちる程の運動量になる。忙しい人達にもインターバルトレーニングはおすすめだ。

002

これはバーグラフ表示タイプのものの中身。
「何も無いじゃないか!」と、言われそうだ。だがまさにそのとおり。8PのAtTinyに電源2本と、Neopixelへ繋ぐ線が1本、合計3本の線を繋いだだけだ。ケースは単4電池3本用の電池ボックス。ここに2本だけ電池を入れている。
エネループだと2.4Vなので昇圧回路が要るかと思ったが、これだけで元気に動いている。

003

こちらはLEDマトリクス表示タイプ。
せっかくATMEGA328を搭載したので、足は沢山余っている。そこで圧電スピーカーも搭載して、スタートサウンドや終了のファンファーレも鳴るようにしてみた。
ただ表示するだけで無く、音が出るとやはり楽しいし分かり易い。トレーニングする気力にも繋がるというものだ。

004

こちらが背面。手頃なケースがこれしかなかったので、バッテリーも単4を2本とした。LEDの消費電流が結構大きいので、秋月の昇圧電源ボードも搭載して、5Vでドライブしている。
コンパイルは"ATmega328(8MHz/Inner)"でやったので、タイマの設定などは、そのままで特に問題なく動作している。I2Cのシリアル通信も大丈夫。board.txtで適当に調整してくれているらしい。
arduino IDEは素晴らしい。

カラーバーグラフ表示

Adafruit社(www.adafruit.com)のシリアル接続タイプのLEDを使った。
1本の信号線にシリアルのデータを送り、最初のLEDから次のLEDへとデータをリレーして送信する。データの中に、何番目のLEDにRGB各8bitのカラーデータを渡すかと言う内容があって、制御できるのだ。
今回は短い物を使ったが、テープLEDもあって、何メートルものイルミネーションを作ることもできるようだ。

8x8ドットマトリクス表示

こちらもやはりAdafruit社のものだ。表示器はI2Cのコントローラを搭載したものと、ただのLEDマトリクスのものとの2タイプがある。今回はハードウェアを簡略化するため、I2C接続のものを使った。
当初はこちらもAtTinyの積もりだったからだ。結果的には、周辺デバイスが結構大きかったのでCPUのオーバーサイズは殆ど問題にならなかった。本当に小さくしようと思えば、圧電スピーカーをもう少し小さくしたり、バッテリを小さいものにするなど、工夫はできると思う。


参考までにハードウェア・ソフトウェアの情報を。ただしこれらは僕の覚えであり、正確に改版を反映していない可能性があります。この通り作って動かないからと、怒らないで欲しい。