『ArduinoとProcessingでRGB LED操作のデモンストレーション』をしてみるページ。
Lチカから続くArduinoとProcessing連携第7弾。
今回は、http://www.instructables.com/から後述のProcessing上のスライダから、また、Processing上のカラーマップからArduino側RGB LEDを操作する2つプロジェクトを試させて頂きました。
実行、停止は後述するとして回路として必要になるハードウェアは、ArduinoボードとRGB LED単体かモジュール、ブレッドボードを各1個とジャンパワイヤ4本だけ。(もちろん、USBケーブルとPC、Arduino IDEもしくは代替も要るけど。)
今回、RGB LEDには、37センサーキットに入っていた各チップ抵抗付きRGB LEDモジュールとSMD RGBモジュールの2種類を使ってみたのですが、当初正常だったと思いますが、前者は青が点かず、後者で検証することになりました。
尚、後者にはチップ抵抗はありませんが、抵抗を追加する必要はない模様(内蔵されているのか、大きすぎたのか220Ω程度を追加してみると点灯しませんでした)。
必要なソフトウェアは、Arduino IDEか代替とProcessing。
ここでは、2通りのRGB LED操作方法のデモをしてみます。
RGB's With Arduino and Processingからダウンロードさせて頂いたArduino側スケッチをアップロード、同じくProcessingのスケッチを開き、実行するとスライダ付きポップアップが表示されます。
ただし、実行する前に
しておく必要があります。
対処したら、実行、ポップアップが開いたら、デフォルトはRGB共に中間の125(8進数値指定)になっているので、R・G・Bそれぞれスライダで値を設定。
ただ、色の変化はありますが、下部ウィンドウやポップアップ上の値や色とLEDの色が一致しない模様。
というわけで、もう一方のプロジェクトを試させて頂くことにしました。
Controlling an RGB Led With Arduino and Processingからダウンロードさせて頂いたArduino側スケッチをアップロード、同じくProcessingのスケッチを開き、実行するとカラーマップのポップアップが表示されます。
ただし、実行する前に
しておく必要があります。
任意のグラフィックソフトにもありそうでしたが、自身は、リンク先のカラーマップ画像をコピー、保存させて頂き、パス付きで指定しました。
対処したら、実行し、指定した画像であるカラーマップが開くのでマウスでマップ上の任意の場所をクリックするとArduino側のRGB LED(モジュール)の色にも反映されます。
モジュールによるのか、保存時に横着してマップの一部を切り捨ててしまったためか、概ね良好も黄色など一部、指定した色にならないことがありました。
それにしても仕組み上、当然なのでしょうが、画像上の座標から色を取得できるとは、驚きました。