電子カメレオン:Arduino Nano、RGB LED、カラーセンサーを使ったプロジェクト
部品と材料
| Arduino Nano R3 ×1 |
| Adafruit NeoPixelリング:WS2812 5050 RGB LED ×1 |
| TCS3200カラーセンサー ×1 |
アプリとオンラインサービス
- Arduino IDE
プロジェクトについて
カメレオンが環境の色に合わせて体色を変える仕組みをご存知でしょうか? これは「メラノサイト刺激ホルモン(MSH)」と呼ばれるホルモンが関係しています。詳しく知りたい方はこちらのリンクをご覧ください。
今回は、このカメレオンの仕組みを電子工作で再現し、環境光の色に合わせて光るアンビエントライトシステムを作ります。目にも優しく、見た目もクールな作品です。手元にNeoPixel LEDストリップとカラーセンサーがあったので、Arduinoを脳として「電子カメレオン」を製作しました。
ステップ1:必要なもの
- Arduino Nano(どのArduinoでも可)
- カラーセンサー TCS3200
- NeoPixel LEDストリップ
- ジャンパーワイヤーと電源
ステップ2:パーツの簡単な説明
- Arduino:TCS3200からRGBカラーデータを取得し、NeoPixel LEDを制御するPWM信号を生成するマイクロコントローラー。
- TCS3200カラーセンサー:異なる色に異なる反応を示すフォトダイオードアレイを内蔵し、入射光の色情報を周波数信号として出力します。
- NeoPixel LED(WS2812B):制御信号に基づいて多彩な色を表現できるアドレサブルRGB LED。
ステップ3:配線

ArduinoがTCS3200の4つのフォトダイオードからデータを読み取り、その値をNeoPixel LEDに反映させて同じ色を再現するように配線します。センサー上の4つのフォトダイオードはそれぞれ異なる色の組み合わせに感度を持ち、光電流を周波数信号に変換(I/F変換)して出力します。Arduinoはこの周波数を読み取り、NeoPixel LEDへの制御信号として出力します。センサーの詳細な動作原理については、TCS3200のデータシートを参照してください。
ステップ4:プログラミング
このプロジェクトのコードはGitHubで公開されています。ダウンロードして解凍し、必要なライブラリをArduino IDEのライブラリフォルダに配置してからコンパイル・アップロードしてください。コードは自己説明的ですが、最適化の提案は常に歓迎です。
ステップ5:完成! 動作確認
センサーにかざした色をそのままLEDが再現します。主な応用例:
- テレビやPCのアンビエントライト(画面の色を模倣して目の疲れを軽減)
- ルームライティング
- ムードライティング
- 3Dプリンターでカメレオンの形を印刷し、電子部品を内蔵して本物のような「電子カメレオン」を作成
コンテストへの投票をお忘れなく!
ステップ6:動作デモ動画
実際の動作はこちらの動画で確認できます。
コード
回路図

製造プロセス
- 電子インク:仕組み、歴史、未来応用
- Bluetooth操作のArduinoスパイボットを自作する
- FlickMote:ジェスチャー操作のIRリモコンでスマートホームを制御
- 自作Arduino TV-B-Gone:全テレビ対応の万能リモコン
- 12メートル先から見える大型LEDマスタークロック(アラーム機能付き)を自作しよう
- ArduinoとBluetoothで作るスマート紛失防止タグ「Find Me」
- Arduinoプロジェクトのための最適化電源ソリューション
- Arduino三目並べ:MAX7219 LEDマトリクスと段ボールケースで自作
- スマートArduino四足歩行ロボットの製作:ステップバイステップガイド
- Arduino向日葵:太陽を追尾する電子ヒマワリの製作
- ゲーム用カスタムArduinoジョイスティックハンドルの製作