こちらは「Obniz Advent Calendar 2018」 の12月1日の記事になります。
12月といえばクリスマスを想う方も多いと思います。そこで、
ObnizでフルカラーLEDを制御して、クリスマス イルミネーションを再現しようと考えました。
当初20〜30球のフルカラーLEDを考えてましたが、まったくの準備不足で入手/検証する時間がなくなり、手持ちの8球のLED1となってしまいました。
発光点灯のアルゴリズムは以下の通り単純なものです。
- 8球の中から任意の1〜3球を選択
- yellow, green, red, blue から任意の1色を選択し、先に選んだLEDに設定
- 任意の時間ウエイト
「クリスマス イルミネーションを再現」とは言い難いので、「クリスマス イルミネーションもどき」としましたが、雰囲気だけでも・・・。
BGMはクリスマス ソングのメロディIC[^2]です。ちょっと音痴なのは抵抗やコンデンサーをケチったせいかも??
[^2]: [UM3481](http://akizukidenshi.com/catalog/g/gI-05272/)12月1日のトップバッターでしたが、力不足ですみません(´>人<`)。
コード例
//javascript
obniz.repeat(async function() {
const pixels = randomSample(makeArrayRange(stick8.NUM_PIXELS), ramdomInt(1, 3));
const rgb = [yellow, green, red, blue][ramdomInt(4)];
stick8.clear();
for (let n of pixels) {
stick8.setRgb(n, rgb)
}
stick8.show();
await obniz.wait(100 + ramdomInt(10)*100);
});