SORACOM色のLチカをWioLTEでやってみる

2017年12月18日

どうもくろにゃんこたんです。

はじめに

WioLTEを使ったらやるのが、まずLチカと呼ばれる儀式かと思います(´ω`)
サンプルコード自体とても綺麗でいい感じなのですが、SORACOM松下さんから直々に公開してと言っていただけましたので、
そこはもう一歩出て自作で好きな色に光らせてみたいと思います。

今回はSORACOMハンズオンでもご紹介したので、SORACOMのコーポレートカラーである水色にしてみます!
SORACOMのWebサイトがほぼ同じ色で作られているので、適当にパクってきます(´ω`)

カラーコードはこちら「#34cdd7」です。
RGB値は 52 , 205 , 215 となります。

本当はこちらの記事を参考にさせていただいて、

〇ArduinoでLEDの明るさを「線形に」変える
https://qiita.com/radi_bow/items/4f274aa1e441ee3bc186

RGB値の単体。たとえばRだけならうまくいくのですが、
3つ組み合わせた場合けっこうちらついてしまいます。。

Weber-Fechnerの法則を使って要調整部分が多かったので、今回はカラーチャートを考えて出来るだけ違和感ないように泥臭くいきます(・ω・;)

実践

早速コードです。
[cpp]
#include <WioLTEforArduino.h>

#define INTERVAL (20)

WioLTE Wio;

void setup() {
delay(200);

SerialUSB.println("");
SerialUSB.println("— START —————————————————");

SerialUSB.println("### I/O Initialize.");
Wio.Init();
}

void loop() {
Wio.LedSetRGB( 1 , 8 , 8 );
delay(INTERVAL);
Wio.LedSetRGB( 5 , 28 , 29 );
delay(INTERVAL);
Wio.LedSetRGB( 10 , 49 , 51 );
delay(INTERVAL);
Wio.LedSetRGB( 14 , 69 , 72 );
delay(INTERVAL);
Wio.LedSetRGB( 18 , 89 , 93 );
delay(INTERVAL);
Wio.LedSetRGB( 22 , 110 , 114 );
delay(INTERVAL);
Wio.LedSetRGB( 26 , 130 , 136 );
delay(INTERVAL);
Wio.LedSetRGB( 31 , 151 , 157 );
delay(INTERVAL);
Wio.LedSetRGB( 35 , 171 , 178 );
delay(INTERVAL);
Wio.LedSetRGB( 39 , 192 , 200 );
delay(INTERVAL);
Wio.LedSetRGB( 52 , 205 , 215 );

delay(500);

Wio.LedSetRGB( 39 , 192 , 200 );
delay(INTERVAL);
Wio.LedSetRGB( 35 , 171 , 178 );
delay(INTERVAL);
Wio.LedSetRGB( 31 , 151 , 157 );
delay(INTERVAL);
Wio.LedSetRGB( 26 , 130 , 136 );
delay(INTERVAL);
Wio.LedSetRGB( 22 , 110 , 114 );
delay(INTERVAL);
Wio.LedSetRGB( 18 , 89 , 93 );
delay(INTERVAL);
Wio.LedSetRGB( 14 , 69 , 72 );
delay(INTERVAL);
Wio.LedSetRGB( 10 , 49 , 51 );
delay(INTERVAL);
Wio.LedSetRGB( 5 , 28 , 29 );
delay(INTERVAL);
Wio.LedSetRGB( 1 , 8 , 8 );
delay(INTERVAL);
}

[/cpp]

上記はWio LTEのスケッチ例を参考に作成いたしました。
基本的には輝度のみ調整して、スムーズに点滅させます。

動作動画はこちら

ぜひ自分の好きなカラーで試してみてくださいね(・ω・)ノ

IoT,IT,SORACOMLチカ

Posted by kuronyankotan