見出し画像

シーケンシャルLEDフラッシャー その3

はじめに

レベルメーターIC LA2284Aを用いたシーケンシャルLEDフラッシャーの製作記事の3回目です。前回の記事では、LEDを点灯させる電圧をdBからmVへ変換しました。その結果、入力電圧は最大で112mVあれば十分であることと、数mV単位の細かい制御が求められるため、0Vから5Vを255段階でしか出力できないArudinoでは制御しにくいことがわかりました。そこで、Arudinoで制御しやすくするための電圧変換回路を考えます。

電圧変換回路(原理)

Arudinoは0Vから5Vの範囲で電圧を出力できますが、Arudinoで5Vぴったりを出力したときのLA2284Aへの入力電圧をComparator ON Level 5の112mVに合わせてしまうと、誤差や特性ばらつきのためうまく動きません。Arudinoで4Vから4.5Vを出力したときに、LA2284Aへの入力電圧がComparator ON Level 5の112mVになるくらいがよいでしょう。

実用性や部品の入手性を無視すると、答えはこうなります。

電圧変換回路(原理)

Arudinoからの出力電圧とLA2284Aへの入力電圧の関係は、オームの法則で決まります。Arudinoからの出力が4Vのとき、LA2284Aへの入力は117mVになります。Comparator ON Level 5の112mVからずれていますが、Comparator ON Level 5以上でLEDが5個点灯ですので、上振れするぶんには問題ありません。

Arudinoからの出力が2Vのとき、LA2284Aへの入力は58mVになります。Comparator ON Level 3の56mV以上で、Comparator ON Level 4の79mV未満ですので、3個のLEDが点灯します。

実際には、LA2284Aへの入力がComparator ON Level nとComparator ON Level n+1の中間くらいになるように、Arudinoからの出力電圧を調整して運用します。

電圧変換回路(実用)

さて、理屈の上では上記の回路でよいのですが、LA2284Aの特性にはばらつきがあります。Comparator ON Level 5が最大となるケースは、Comparator ON Level 3が66mVで、Comparator ON Level 5が7dBの場合です。このときのComparator ON Level 5は148mVとなりますが、上記の回路では、Arudinoからの出力が5Vのとき、LA2284Aへの入力は146mVで、電圧が足りません。

300Ωの抵抗を330Ωにすると、Arudinoからの出力が5Vのとき、LA2284Aへの入力は160mVで余裕ができます。ですが、逆にComparator ON Level 5が最小となるケース、Comparator ON Level 3が46mVで、Comparator ON Level 5が5dBのときは、Comparator ON Level 5が82mVしかないので、Arudinoからの出力を0-2.5V程度で制御しなければなりません。

このばらつきに対応するため、300Ωの抵抗を可変抵抗にします。とはいっても、300Ωをそのまま可変抵抗に置き換えてしまうと、抵抗を少し変化させただけでLA2284Aへの入力電圧が大きく変化してしまい、使いにくい回路になってしまいます。そこで、変化に必要なぶんだけを可変抵抗に分担させ、あとは固定抵抗にしておきます。

具体的にはこうなります。

電圧変換回路(実用)

グランド側を220Ω+100Ω=320Ωまで振り切ると、Arudinoからの出力が4.77Vのとき、LA2284Aへの入力は148mVとなり、想定されるComparator ON Level 5の最大値148mVに並びます。この場合でも、Arudinoの出力電圧の上限の5Vまで使えば、なんとか制御できそうです。

逆に、グランド側を220Ωまで絞ると、Arudinoからの出力が3.84Vのとき、LA2284Aへの入力は82mVになり、想定されるComparator ON Level 5の最小値82mVに並びます。Arudinoの出力電圧をだいたい0-4Vの範囲で制御することになります。

可変抵抗を中点にしてグランド側を270Ωにすると、Arudinoからの出力が4.27Vのとき、LA2284Aへの入力は112mVで、Comparator ON Level 5のTYP値112mVに並びます。Arudinoの出力電圧をおおよそ0-4.5Vの範囲で制御します。

実際には、Arudinoで出力電圧を振ってみて、ちょうどよい感じになるように可変抵抗を調整します。

おわりに

ArudinoとLA2284Aの間に適切な抵抗を入れると、数mV単位で制御しななければならないLA2284Aを、最大5Vを255段階でしか出力できないArudinoでもちょうどよい感じで制御できることがわかりました。

ですが、ArudinoのanalogWrite関数による出力は、本当に電圧を変化させているわけでありません。5Vの出力を繰り返しオンオフしているだけで、オフの時間が長いほど見かけの電圧が下がって見えるだけです。これをPWM(Pulse Width Modulation)制御といいます。

PWM制御は、オンオフの速さに追随しきれないものを制御するならよいのですが、残念ながらLA2284Aはそういうわけにはいきません。というわけで、次回は、PWM制御をごまかしてLA2284Aを制御する方法を紹介します。

いいなと思ったら応援しよう!