カウントダウンタイマーの製作
-
はじめに
今回、イベントまでのカウントダウンをしたいと思い、カウントダウンタイマを製作することにしました。 -
構成図
今回の製作したカウントダウンタイマは、なるべく簡単に作れるように、Arduinoを使用して製作しました。指定した残り日数の計算には秋月電子で販売しているGPSを使用して日付を取り出し、指定した日までの残り日数を計算することにしました。今回、製作をするカウントダウンタイマの構成は下の図のようにしました。
動作としては、GPSから日付を取得し、得られたデータから残り日数を計算し、7セグメントLEDを使用して残り日数を表示します。7セグメントLEDの表示制御には、はじめの段階ではシフトレジスタを使用したダイナミック点灯を利用していましたが、思った以上に明るさが得られなかったため、7セグメントLEDを直接制御しています。
-
主な使用部品
- ATMEGA328P(3.3V 内部発振8[MHz] Arduino化)
- GPSモジュール(秋月電子 AE-GNSS-EXTANT+ANT_SET)
- シフトレジスタ(74HC595)
- トランジスタアレイ([TD62083APG)
- 大型7セグメントLED(A-127UR)
- LCD(16文字×2行)
-
基板作成
基板の設計にはEagleを使用しました。色々なECADのソフトがありますが、昔からEagleを使用していたので、現在も継続して使用しています。
-
プログラムについて
プログラムの作成には、Arduinoを使用しました。LCDやGPSのライブラリが充実しており、簡単にプログラムを作成することができました。Aruduino純正の開発環境は環境が良くないので、Visual Stduio CodeにArduinoの拡張機能を追加して、プログラムを設計しました。Visual Studio Codeはコード補完もしてくれるので、開発が楽になり、とても気にっています。
追記
GitHubにソースコードを公開しました。良いソースコードではないですが、参考にして頂けたらと思います。 -
設計した基板をプリント基板化
最初に製作した基板は片面基板だったので配線の関係でLCDをコネクタで接続する形になりました。できれば、LCDも基板に取り付けたいと思い、プリント基板にすることにしました。作った基板をプリント基板にするときには、価格が安いFusionPCBを利用しており、今回もFusionPCBで注文しました。昔はプリント基板にすると高かったですが、今は1枚400円程度(今回の基板サイズで)製作できるので、感光基板でエッチングするより安く、綺麗にでいるので重宝しています。ホビーで電子工作をやる人にとっては本当に良い時代になったと思います・・・。
-
最後に
今回、カウントダウンタイマーを製作に取り組んでみました。とりあえず、動作できるものを作ることができ、満足しています。
これをどのような形で活用するかはまだ未定ですが、せっかく製作したのでどこかで活用をしたいと思います。
投稿者の人気記事
-
keiske-hongyo
さんが
2021/02/11
に
編集
をしました。
(メッセージ: 初版)
-
keiske-hongyo
さんが
2021/07/24
に
編集
をしました。
-
keiske-hongyo
さんが
2021/07/25
に
編集
をしました。
Opening
koharusou
2023/08/09
keiske-hongyo
2023/08/11 Opening
koharusou
2023/08/09
keiske-hongyo
2023/08/11 Opening
koharusou
2023/08/11
keiske-hongyo
2023/08/11 Opening
koharusou
2023/08/12
keiske-hongyo
2023/08/14 Opening
koharusou
2023/08/30
keiske-hongyo
2023/08/31 Opening
koharusou
2023/09/01 Opening
koharusou
2023/09/01
keiske-hongyo
2023/09/01 Opening
koharusou
2023/09/06
keiske-hongyo
2023/09/08
koharusou
2023/09/13
keiske-hongyo
2023/09/14
ログインしてコメントを投稿するコメント失礼します
現在keiske-hongyoさんの投稿通りにカウントダウンボードを作製しておりますがうまく行っておりません。色々と教えて頂きたいです。
コメント、ありがとうございます。
気づくのが遅くなり返信が遅くなり、ごめんなさい。
わからないことがあったら、コメントしてください。
LCDとの通信はI2C方式ですか?
全くの初心者でご教授頂きたいです。
LCDについては試作したときはI2CのLCDを利用しています。
実際に、プリント基板にしたものは直接制御をしています。
Githubにアップしているコードは、プリント基板用ですが、ArduinoなのでI2Cで行うならライブラリを
変更するだけでいけると思います。
返信ありがとうございます。とても嬉しいです。
残り1ヶ月で完成させないといけないのですが全く進んでおりませんでした(涙)
I2Cではないのですね。購入したLCDがI2C方式のではないので丁度良かったです。
マイコン側からの配線やLCD周りの回路図等教えて頂きたいです
回路図を書かず、そのまま頭で配線して、Eagleで作成したので回路図を書いていません。ごめんなさい。
先ほどソースコードを置いてあるGithubにEagleのボードファイルをアップしました。
面倒かもしれませんが、Eagleをインストールしてボードファイルをダウンロードしてボード図を見てくれたらと思います。信号線の名称とかも入れているので配線がわかると思います。
また、LCD関連の配線はArduinoとLCDについてインターネットで検索してもらうと色々な人が書いてくれています。私もそれを参考にして、作っています。
また、わからないことがあればコメントしてください。
おはようございます
ファイルありがとうございます。回路図を書かず頭で配線するんですね。凄いです。
eagleをダウンロードして試してみたいと思います。
大変助かります。本当にありがとうございます
また分からなかったら連絡させて頂きます。その時は助けてください
返信、遅くなり申し訳ありません。
素人の回路なのであまり参考になるかわかりませんが、少しでも手助けになればと思います。
制御については、プログラムを見てください。74HC595を使った点灯制御回路なので動作はプログラムを見てくれたらと思います。
完成まで大変だと思いますが、がんばってください!
久々の投稿失礼しますeagleのインストールはうまく行ったのですが、ファイルのダウンロード方法がわかりません。「リンク先をダウンロード」で良いのでしょうか?
返信が遅くなり申し訳ありません。
ファイルのダウンロードの件ですが、このページのGitHubのリンクにアクセスするとカウントダウンタイマーのページに行くので、そこに緑色のプルダウンメニューで「<>Code」と書いているところがあるので、そこで「Download Zip」を選んでファイル一式をダウンロードしていただき、Eagleからボードファイルを開いてください。
よろしくお願いします。また、うまくいかなければ連絡ください。
御回答ありがとうございます
ご説明通りさせていただくとできました。
ありがとうございます。引き続きお願い致します
御回答ありがとうございます
ご説明通りさせていただくとできました。
ありがとうございます。引き続きお願い致します
良かったです。
また、何かあれば気軽にコメントに書いてください。
コメント失礼します。
お助けください。eagleのボードファイルにあるCN4とCN9とCN5はそれぞれ何に繋がりますか?
ブレッドボード上に組んでいるのですが動作せず困ってます。よろしくお願い致します。
返信、遅くなりました。すいません。
CN4はI2C用、CN9はGPSから出力を表示するためのLEDを接続、CN5はプログラム書き込み端子です。
御回答ありがとうございます!!!
ということは、
①今回はI2C通信は行わないのでCN4は使用しませんか?
②GPSから出力を表示するためのLEDとはLCDディスプレイのことですか?全くの別物で接続しなくても良いものですか?
③プログラムはアップしていただいてあるmainプログラムを書き込んで使用させていただこうと考えてます。アルディーノボードのマイコンに直接書き込みそのマイコンを回路に移植しようとしています。その場合、CN5は使用しませんか?
毎回、質問ばかりですみません。良い報告ができるよう頑張っています。
①について
I2Cを使用しないなら使うことはありません。
②について
このカウントダウンボードは秋月のGPSモジュールを使用して、1秒に1回GPSのデータを取得し、日時を計算しています。CN5はその信号の出力をLEDで表示するためのコネクタです。特に受信状況をモニタリングするのではないなら使うことはありません。
③について
Arduino Unoなどのボードからプログラムを書き込み、差し替えるならCN5は入りません。プログラムを書き込んだり、デバッグ時にシリアルからGPSなどの情報を出力に使用します。特に必要がなければ使うことはありません。
完成を期待しています。