TCS34725を使ったカラーセンサーモジュールとWS2812Bを使って、色コピー機を作ってみました。(カラーセンサーモジュール at Strawberry Linux)
必要な治具をつくっていきます。
右:カラーセンサーモジュールのSCL、SDAをIchigoJamのSCL(EX1)とIN3(SDA)に接続し、白色LEDを1kΩ経由でOUT2接続。
左:CN5用の5ピンを2列使えるように拡張し、WS2812Bを5Vからダイオードで0.6V降圧して、OUT1からの信号で制御!
裏面はこのような感じ。Upverterでプリント基板化してしまうと楽できそう!
続いてプログラム!
1 'color copy 2 POKE#700,240,181,114,182,64,24,80,33,9,2,1,49,9,4,4,136,1,48,128,37,1,48,3,120,255,34,74,96,3,39,10,38,43,66,1,208,10,39,3,38 3 POKE#728,1,63,253,209,0,34,74,96,1,62,253,209,109,8,239,209,1,60,234,209,98,182,240,189 10 OUT2,1 25 POKE#800,#81,#C0:?I2CW(#29,#800,2) 30 POKE#800,#80,3:?I2CW(#29,#800,2) 40 POKE#800,#94:U=I2CR(#29,#800,1,#800,8) 50 ?[0],[1],[2],[3] 54 D=4 55 POKE#800,3,0,[2]>>D,[1]>>D,[3]>>D 56 U=USR(#700,#800) 70 GOTO40
2-3行: WS2812B用ドライバ(OUT1)
10行: 白色LED点灯
25行: 色計測時間を154msecに設定(TCS34725 データシートより)
30行: カラセンサー計測開始!
40行: クリア、R、G、Bをそれぞれ16bitで取得
50行: 表示
54行: 輝度調整(大きいほどに暗くなる)
55行: WS2812B点灯用設定
56行: WS2812B点灯
赤が多めにでています。
透明アクリルを上に敷くと安定して読み込めるはず。
結構精度よく値がでてくるので、バーコードなどの替わりに色を印刷したカードで識別する仕組みづくりなどもおもしろそう。
サーボやモーターで動かせば、スキャナだって作れちゃいますね!
センサーの探し方
「センサ・セレクションガイド - ストロベリーリナックス(カタログ)」ワクワクする実用的なセンサーが続々登場!
「センサ一般 秋月電子通商-電子部品・ネット通販」いろんなセンサーがあります!
「センサー名 IchigoJam」や「センサー名 Arduino」で検索して、作例を探して、簡単に作れそうなものからチャレンジしてみましょう。