この記事は「浜松ホトニクスC12880MAを使って分光測色計(カラーメーター)を作ろう」の補足記事です。
ご無沙汰してます。
なかなか時間がとれずにブログ記事の作成が進みません。
今回は文字数が少なくて済む費用の話をしようかなと思いました。
Arduinoで分光測色計を幾らで作れるのか。まずは今回使用した部品のリストを見てください。
マイクロ分光器本体の値段が結構高価です。ただそれ以外に関しては普通の部品たちですので、スイッチ類やケースなどのコストを検討すれば、2万円台で作成することができるのは間違いありません。
ただこの仕組みを一般化して、誰でも作れるようにしようとするといくつかの問題があります。
問題1 センサー固有の特性をどう修正するか。
まず、センサーが分光した光の強度を出力する時に、何nmの波長の出力が出てくるのかは、製造番号ごとに異なります。これを使うセンサーごとに設定しなおす必要があります。今回は波長の行列を入力しておくことで、センサーを交換しても同じプログラムで動作できるようにしてあります。ただ、これを他の人が同じように計算して設定できるかは疑問です。
その他アイデアだけですが、検査成績書に記載されている五次方程式の係数を入力して計算する方法がとれるかもしれません。
そして、センサーのゼロ補正。これは、センサーを暗闇で覆った時にA/D変換の値が0となるように補正することです。これはArduino側でその機能を作ることができます。
最後に分光感度特性を補正することです。センサーごとに波長に対する感度が大きく変化します。補正なしにこのセンサーを使うとまったく正しくない結果になります。
データシート引用の分光感度特性図をご覧いただくと、だいたい500nmあたりの感度を最大にして感度が低下し、800nmあたりでは、最大感度から10%くらいまで低下します。
そしてこれは代表例であり、センサーによって感度特性は変化します。
対策として、タングステン電球を使用した簡易的な補正を行う方法です。
原理を話すのは別の機会があればその機会にするとして、LED、蛍光灯、太陽光と比較して、タングステン電球の分光特性というのはたいてい同じになります。
なので、タングステン電球の分光特性を既知のものとし、その特性になるように係数をかけていくという方法です。
こういう補正の機能を持たせないと一般化は難しいでしょうが、今回は外部(Excel)で行っています。これをArduinoで自動でできるようにしようとすると、また難しくなりそうですね…。
問題2 フルカラー液晶はどれを使えばいい?
フルカラー液晶はメーカーやドライバの種類が変わるたびにライブラリが変わりますし、タッチパネルの機能を使ったり、解像度が変わるとまたそのたびにスケッチを変更する必要があり、一般化のネックになります。LCD液晶みたいに何でもいけますよーみたいなライブラリがあったり、安定供給した定番フルカラー液晶みたいのがあればいいんですけど、まぁこれにタッチパネルとか機能もたせると基本的には同じ液晶を購入していただかないと難しいと思います。
その他、スマートフォンなどと連携して表示に関しては外部端末に任せるという方法もあるかもしれません。とにかく表示に関しては悩ましいところです。
まぁいろいろ難しいところはありますが、分光測色計は2万円台から作成が可能です。
分光測色計はこのような部品で構成されています |
ご無沙汰してます。
なかなか時間がとれずにブログ記事の作成が進みません。
今回は文字数が少なくて済む費用の話をしようかなと思いました。
Arduinoで分光測色計を幾らで作れるのか。まずは今回使用した部品のリストを見てください。
マイクロ分光器本体の値段が結構高価です。ただそれ以外に関しては普通の部品たちですので、スイッチ類やケースなどのコストを検討すれば、2万円台で作成することができるのは間違いありません。
ただこの仕組みを一般化して、誰でも作れるようにしようとするといくつかの問題があります。
問題1 センサー固有の特性をどう修正するか。
まず、センサーが分光した光の強度を出力する時に、何nmの波長の出力が出てくるのかは、製造番号ごとに異なります。これを使うセンサーごとに設定しなおす必要があります。今回は波長の行列を入力しておくことで、センサーを交換しても同じプログラムで動作できるようにしてあります。ただ、これを他の人が同じように計算して設定できるかは疑問です。
その他アイデアだけですが、検査成績書に記載されている五次方程式の係数を入力して計算する方法がとれるかもしれません。
そして、センサーのゼロ補正。これは、センサーを暗闇で覆った時にA/D変換の値が0となるように補正することです。これはArduino側でその機能を作ることができます。
最後に分光感度特性を補正することです。センサーごとに波長に対する感度が大きく変化します。補正なしにこのセンサーを使うとまったく正しくない結果になります。
データシート引用の分光感度特性図をご覧いただくと、だいたい500nmあたりの感度を最大にして感度が低下し、800nmあたりでは、最大感度から10%くらいまで低下します。
そしてこれは代表例であり、センサーによって感度特性は変化します。
対策として、タングステン電球を使用した簡易的な補正を行う方法です。
原理を話すのは別の機会があればその機会にするとして、LED、蛍光灯、太陽光と比較して、タングステン電球の分光特性というのはたいてい同じになります。
なので、タングステン電球の分光特性を既知のものとし、その特性になるように係数をかけていくという方法です。
こういう補正の機能を持たせないと一般化は難しいでしょうが、今回は外部(Excel)で行っています。これをArduinoで自動でできるようにしようとすると、また難しくなりそうですね…。
問題2 フルカラー液晶はどれを使えばいい?
フルカラー液晶はメーカーやドライバの種類が変わるたびにライブラリが変わりますし、タッチパネルの機能を使ったり、解像度が変わるとまたそのたびにスケッチを変更する必要があり、一般化のネックになります。LCD液晶みたいに何でもいけますよーみたいなライブラリがあったり、安定供給した定番フルカラー液晶みたいのがあればいいんですけど、まぁこれにタッチパネルとか機能もたせると基本的には同じ液晶を購入していただかないと難しいと思います。
その他、スマートフォンなどと連携して表示に関しては外部端末に任せるという方法もあるかもしれません。とにかく表示に関しては悩ましいところです。
まぁいろいろ難しいところはありますが、分光測色計は2万円台から作成が可能です。
コメント
コメントを投稿