カラーセンサを使ったカラー測定器
【概要】
カラーセンサにより色を数値で測定できる測定器を製作して
みました。白色LEDを照射し、対象物からの反射で色を判別します。
カラーセンサにはデジタル出力のタイプを選びました。
全体の外観は下図のようになっています。
コントローラ部と測定用センサ部とに分かれています。使ったセンサが
デジタル出力タイプなので、信号線を伸ばしても全く問題なく動作します。
右側がセンサ部
木製です。
表示の仕方は下図のように3原色の強さをそのまま表示しています。
写真用ライトのため全色が
最高値の表示となっています。
12ビット分解能ですので最高値
が4095となります。
実際に本の表紙の色で値がどのように変わるか実測してみました。
試した色 Red Green Blue 赤1 1108 64 69 赤2 1237 108 115 橙 1417 1829 316 黄 842 1261 225 薄青 271 589 1617 薄緑 471 1367 503 白 1295 1974 2075 黒 36 53 67 反射なし 1 0 0
表面の艶や、色具合により
微妙に変わりますが、同じものは
毎回同じ程度の値になりますし、
色による変化もそれらしく変わります。
反射が無い場合にはほぼ0で変化
もしませんので、ノイズの影響は
ないものと考えられます。
【全体構成】
このカラー測定器の全体構成は下図のようになっています。
全体をPIC16F785で行いますが、アンプ部は使っていません。
センサからのシリアル信号受信はソフトウェアで制御することとしましたので
内蔵モジュールは特に使わず、汎用I/O制御だけとしています。
したがって非常に簡単な構成となりました。
電源は液晶表示器に5Vが必要ですので、全体を5Vで使うこととし、
定番のDC/DCコンバータでリチウムイオン充電池から生成しています。
【回路構成】
上記構成をもとに作成した回路図が下図となります。センサ部が外部回路
となっていますから、コントローラ部には液晶表示器しかありません。
オプションで、カラーのLEDを外付けできるようにし、センサーで検出した色
と同じ色が出力できるようにしています。
【外観】
コントローラ部の全体構成は下図となります。
表示は3原色をそのまま
10進数で表示しています。
センサ部の外観が下図となります。木製の板に丸穴をあけてセンサ
と白色LEDを囲い、外部光を遮断しています。これで対象物と2cm程度
の距離におけばちょうど反射光が最大となります。
センサには、浜松ホトニクス製の
S9706を使っています。
木板の厚さは15mmですので
センサをサブ基板に実装し
ICソケットで実装するとちょうどよい
高さとなります。丸穴は15φです。
コントローラ基板の外観は下図となります。
液晶表示器とコネクタしか
ありませんので、簡単な構成です。
ハンダ面側が下図となります。
右下にDC/DCコンバータ
が実装されています。
【プログラム概要】
プログラムは単純に1本の流れでメインループだけで構成しました。
最初に白色LEDを点灯し、その後カラーセンサのカラー蓄積時間を
待った後、シリアル通信でセンスした色情報を取り込みます。
色情報を液晶表示器に表示したのち1.5秒程度待ってから、上記を
繰り返します。
★★★ カラー測定器 プログラムファイル一式