ArduinoのADCの基準電圧は次の3つの指定が可能である
- DEFAULT: 電源電圧(5V)が基準電圧(デフォルト)
- INTERNAL: 内蔵基準電圧を使用(ATmega168と328Pでは1.1V)
- EXTERNAL: AREFピンに供給される電圧(0V~5V)を基準電圧とする(電源電圧を超えてはならないとの事)
外部供給にしないなら電源電圧と内蔵基準電圧1.1Vの2つ利用可能である
そこで精度の良い方を利用したいのでどのくらい精度が変わるのか確認してみることにする
基準電源
確認にあたって基準電源が必要で以前実験したシャントレギュレータを利用しようかなっと・・・
ところがブレッドボードで実験したまま放置だったため直ぐに使用できるようになってない
先ずは今後も使うことがあるだろうってことで基板に組むことにした
既に使い方は判っているのでサクッと基板に載せた
元電源は5~9V位のACアダプタを使う(電池でも可能)
目の前にちょうど空いたDAISOの糸付ようじのケースがあったので使うことする
こんな感じになる
多少でかいのは空きの部分に電池ボックスを実装できるようにするため
出力端子は未実装なのでしばらく(ずーとかも)は使う時に蓋を開ける
実はLEDが非常に明るすぎた・・・眩しいので少し寝かせた(写真は寝かせてない時に撮ったもの)
電源電圧(5V)を基準で測定
(注)電流値の表示は無視して良い
2.465V:かなりずれがある
4.096V:同様にずれあり
内蔵基準電圧(1.1V)で測定
2.465V:大きい方へずれている
4.096V:同様に大きい方へずれている
結論
- 電源電圧基準と内蔵基準電圧どちらとも補正が必要である
- 秒毎にサンプリングしていて(写真では判らないが)内蔵基準電圧だと電圧の変動が多い(つまり安定しない)
- 電源電圧基準の方が良さそうである
(追加)
良く考えてみたら,今回の評価は条件もあいまいで単に内蔵基準電圧でやってみたって感じなので,近日中(となるかどうかは判らないが)に改めて評価し直すことにする
内蔵基準電圧(1.1V)を評価すべき事項としては
- 1.1Vまでの分解能が1/1024の約1mVであるか?
- 分圧する場合の最大電圧の適正値は?
で,(精度と安定性が高いのであれば)内蔵基準電圧だけでADCが使えるってことを確かめるって事だ