ロータリーエンコーダの回転数をarduinoを使って計測してみた
こんにちは、akkiliです。14、22、23日の三日間advent calenderの記事を書かせていただきます。今回はadvent calender 初投稿です。なんか書くネタないかなと思って探してみた結果、2月上旬に1次ビデオ審査が控えているロボコンに向けて、僕自身が今やっている制御、回路、プログラムの学習したことについてまとめて自分自身の理解を深めようと思ってます。
そもそもarduinoとロータリエンコーダってなんなん?
ロータリエンコーダというのは回転角の位置測定を行う機械です。スケールの中に光学的、もしくは電磁気的な検出素子を等しい間隔で置いた作りになっていて、角度をデジタル信号として検出して回転角を測定します。
arduinoとはarduino.ccから引用すると
Arduino is an open-source electronics platform based on easy-to-use hardware and software. It's intended for anyone making interactive projects.
なのですが、要するにモータ制御等が簡単にできるマイコンみたいなものだと思っていただいて構いません。
つくってワクワクな工作の時間!
黙々と回路を作っていくこの感じ、サイコーですね。実習とかだとやらされてる感があって全く楽しめない…それはさておき、とりあえず完成しました。
完成したが…
完成してシリアルモニタで結果の表示をしたところなぜか意味不明な値が出てしまいました。考えた結果、bptの値がプログラムに書いた値とシリアルモニタに表示されていた値が対応していなかっただけだということが分かりました。焦った(;'∀')
感想
今回はロボットに必要不可欠なセンサの初歩の初歩を学習しました。次はロボコンに向けてモーターの知識を増やしていきたいです。