勝手な電子工作・・

勝手なオリジナル電子工作に関する記事を書きます

Arduinoで作る紫外線A波B波チェッカー

f:id:a-tomi:20190310173304j:plain

前から考えていた紫外線A/B波の測定器を日曜工作として試しました。

ここしばらくガンマ線スペクトロメータに少しずつ取組中ですが、そちらは後で紹介するとしまして、記事の間があくので気分転換の簡単な工作の話題を。

早くも3月中旬にさしかかり日差しも暖かくなってきました。花粉が急に多くなったのも気になりますが、年々少しずつ濃くなる紫外線が気になる方もおられるでしょう。

ご存じのとおり、紫外線にはA波(波長400~315nm)、B波(315~280nm)、C波(280nm以下)があり、日差しで地表に届くのはA波と、B波少しというところ。

A波とB波を併せて測る高精度のアナログ・センサーICとしてML8511がありますが、使いやすい小さなブレークアウトモジュールも各種出回っています。

f:id:a-tomi:20190310175801j:plain

f:id:a-tomi:20190310175826j:plain

裏面

このICは次のような紫外線の領域を検出します。

f:id:a-tomi:20190310175038j:plain

ML8511データシートの図に勝手に色付け

これを使ってA波とB波を独立して計りたいわけなのですが、どうすればよいでしょうか?クイズのようなものですね。

データシートに記述されているアウトプット電圧は次のもので、温度補正もかなりしっかりしていると思います。

f:id:a-tomi:20190310175939j:plain

 

供給電圧はIC自体は3V~3.3Vですが、ブレークアウトモジュールの場合はレギュレータ(3.3V)と電圧変換パーツが内蔵されており、Arduino-Uno(ATmega328P)へ供給する5Vの共用ができます。正確にAD変換したいので、DC-DCコンバータを使い正確な5.0Vを使うことにします。

複数のML8511モジュールを調べてみると、光をあてないときのAD変換値はどれも203、ごくたまに202となります。つまり0.992Vほどであり上のグラフと少しだけ合わないことに気づきます。その理由はArduino(ATmega328P)のADC入力ピンのインピーダンスにあるでしょう。

データシートによればこの出力は「なるべく600KΩ以上」で受けるようにとありますが、ArduinoのADC入力インピーダンスはそれよりは1桁小さいものですから。上図から計算すると、光をあてないときは1023x1.0/5.0=204.6になって欲しいですが、そういうわけでごく僅かに下がるわけです。

それにしても、このICを3つ試した限りは、個体差がなく正確です。

 

さてここから本題です。

このセンサーが検出する紫外線のうちUV-Bの占める量は、グラフの面積比を調べると28%というところ。つまり残りの72%はA波と少しばかりの可視光というところです。

UV-B波は通常のガラスを殆ど透過しません。ただしごく薄いガラスは少しですが通過します。そこで、顕微鏡のスライドグラス用のカバーグラス(厚さ0.15ミリ)を数枚重ねてフィルターにします。まずは5枚重ねて0.75mmの厚さと5つの表裏面としてみましたがもっと少なくてよいかもしれません(枚数がもし少なすぎれば結果としてはB波が少し少なめに出るし、もし多すぎれば結果としてはB波が少し多く表示されます。必要が出れば何かの方法で校正することにします)。

もっとも、B波の透過・不透過が境界の315nmで垂直になっていることはなく、多少は斜めになっていることでしょう。確かめるのは難しいですが、そもそも紫外線の強さを知る目的なので、A波とB波が大体分けられればよしと考えます。

勝手な方策としては、このセンサーを2つ使って作ることにしました。片方にガラスのフィルターをつけるわけです。回路は次のようにいたって簡単です。

 

f:id:a-tomi:20190310182552j:plain

片方のセンサーを先程のカバーグラスで覆うことにより、A波と可視光だけが通過するとみなします。この値を、覆いをしないセンサーでの値から引き算すれば、残りがB波だけの値となると考えたわけです。

そしてブレッドボードで次のように試作しました。

f:id:a-tomi:20190310182912j:plain

右半分はDC-DCコンバータによる5.0V安定化電源です。

左半分が本体ですが、左端の上下にセンサーがあります。下のセンサーはカバーグラスで覆ってあります。

f:id:a-tomi:20190310183112j:plain

覆いをした方をAD変換した値はA波等のエネルギーで、もう一つの値からこれを差し引けばB波のエネルギーと考えます。

表示したいのは紫外線インデックスですが、インデックスの定義は紫外線量(単位mW/平米)を25で割った値とされています。もし単位がW/平米の場合は40を掛けることになります。

データシートのグラフだけをみると、この換算をすると桁が1つ違っているようにみえますので、確認が必要でした。グラフ横軸にmW/平方センチとあるのは、10mW/平方センチの誤りであると思われ、結果的に計算ではそちらを使っています。上の図には示していませんが、そのグラフのタイトルにも誤植があり、Output VoltageがOutput Valtageと書かれています。せっかく精度の高いICなのにデータシートに誤植を含んでいるのは残念ですね。怪しい箇所は他の記述場所と突き合わせるとわかるのが殆どですが。

A波とB波を別々に表示する簡素な紫外線計としては、かつてはタニタから小さくて便利なものがでていました。現在は合計した指数を示すものが殆どで、別々に出すのは他のメーカーから出ている数万円以上の測定器しかみあたらないようです。電子工作をやられる方はこのICで自作されるとよいと思います。海外のネットではこの正確なブレークアウトモジュールはわずか2.5ドル程でした。それ2個と他を全部加えて千円というところ。

ちなみにタニタが出していた紫外線チェッカーは次の写真のものです。

f:id:a-tomi:20190310202233j:plain

 

 普段は時計で、右のボタンを押すとまずA波(UV-A)の強さ、もう一度押すとB波(UV-B)の強さがでます。単位は右下にはW/平米と表示されていますが、太陽にかざしたときに表示される値を見るかぎりは、紫外線インデックスであろうと思われます。今回作った装置と似たような値となりますから。

わずかな時間で試作ができたので、このまますぐ作ってしまおうかと考えました。しかし改善すべき点があり、今回は保留にしました。何かと言えば、この道具は必ず太陽にかざして使うわけですから、表示の媒体はバックライトつきLCDでなく、バックライトなしのLCD等でないと見づらい点です。いっそのこと、音声でアウトプットすると良いかなとも考え中です。

 

では今回はこのへんで。

 

©2019 Akira Tominaga, All rights reserved.

 

 

 

 

~