皆さんこんにちは、池澤あやかです。 世間はもうすぐバレンタインデー!
バレンタインデーと言えば、チョコレートをプレゼントして、好きな人に気持ちを伝えたり、お世話になっている方に感謝を伝える日です。サプライズでいつもとはちょっと違うチョコレートをプレゼントしたい。そんなことを思っている方も多いのではないでしょうか。
そこで、ちょっぴりインパクトのあるチョコレートを作りたいと思っている方におすすめな、とっておきのレシピをご紹介したいと思います! 普通に見えるこちらのチョコレートですが、ある特別なしかけを仕込んでみました。
「きらきらチョコレート」というネーミングでお気付きの方も多いかもしれません。そうなんです、このチョコレート、光ります。
早速作っていきましょう! 用意する材料はこんな感じ。
【材料】
●割りチョコレート/150g
●生クリーム/50cc
●お好みのラッピング
●はんだ
●はんだごて
●グルーガン
●グルーガン用グルースティック
●RGB LED(マイコン内蔵)/9個
●Arduino Pro Mini 5V/1個
●FTDI USBシリアル変換アダプター/1個
●線材/1個
●フレキシブル基板/1個
●9V電池 /1個
●9V電池用バッテリースナップ/1個
【レシピ】
1. ホワイトトリュフを作ります。私はクックパッドのこちらのレシピを参考にしました!
2. LEDをユニバーサル基板にはんだづけをします。マイコン内蔵のRGB LEDは、数珠つなぎに配線していくだけで、Arduinoのピン1つで制御することができます。
VDDピンとVDDピン、GNDピンとGNDピン、DOUTピンとDINピンをどんどん繋いでいきます。
3. Adafruitが配布しているNeoPixel(RGB LED)制御用のライブラリをインストールします。公式Githubからファイルをダウンロードし、Arduino > librariesディレクトリにいれればインストール完了。
4. Arduino Pro Miniをパソコンに繋ぎ、Arduinoのアプリケーションからプログラムを書き込みます。(私が書き込んだプログラムは後述します)。NeoPixelのプログラムはサンプルのものでも充分綺麗です。
5. 念のためLEDの足をグルーガンで絶縁します。
6. LEDにトリュフをかぶせていきます。
7. 完成!
暗闇ではより一層輝きます!夜景と共にプレゼントするのはいかがでしょうか。
書き込んだプログラムはこちら。
#include <Adafruit_NeoPixel.h> #define RGBLED_OUTPIN 2 #define NUMRGBLED 9 Adafruit_NeoPixel RGBLED = Adafruit_NeoPixel(NUMRGBLED, RGBLED_OUTPIN, NEO_RGB + NEO_KHZ800); int iloveyoucount=0; int mode = 0; void setup() { RGBLED.begin(); RGBLED.setBrightness(50); } void loop() { switch(mode){ case 0: theaterChase(RGBLED.Color(127, 127, 127), 50); // White theaterChase(RGBLED.Color(127, 0, 0), 50); // Red theaterChase(RGBLED.Color( 0, 0, 127), 50); // Blue mode = 1; break; case 1: rainbow(20); mode = 2; break; case 2: iloveyou(); break; case 3: rainbowCycle(20); mode = 0; break; } } void theaterChase(uint32_t c, uint8_t wait) { for (int j=0; j<10; j++) { //do 10 cycles of chasing for (int q=0; q < 3; q++) { for (int i=0; i < NUMRGBLED; i=i+3) { RGBLED.setPixelColor(i+q, c); //turn every third pixel on } RGBLED.show(); delay(wait); for (int i=0; i < NUMRGBLED; i=i+3) { RGBLED.setPixelColor(i+q, 0); //turn every third pixel off } } } } void rainbow(uint8_t wait) { uint16_t i, j; for(j=0; j<256; j++) { for(i=0; i<NUMRGBLED; i++) { RGBLED.setPixelColor(i, Wheel((i+j) & 255)); } RGBLED.show(); delay(wait); } } void rainbowCycle(uint8_t wait) { uint16_t i, j; for(j=0; j<256*5; j++) { // 5 cycles of all colors on wheel for(i=0; i< NUMRGBLED; i++) { RGBLED.setPixelColor(i, Wheel(((i * 256 / RGBLED.numPixels()) + j) & 255)); } RGBLED.show(); delay(wait); } } uint32_t Wheel(byte WheelPos) { WheelPos = 255 - WheelPos; if(WheelPos < 85) { return RGBLED.Color(255 - WheelPos * 3, 0, WheelPos * 3); } else if(WheelPos < 170) { WheelPos -= 85; return RGBLED.Color(0, WheelPos * 3, 255 - WheelPos * 3); } else { WheelPos -= 170; return RGBLED.Color(WheelPos * 3, 255 - WheelPos * 3, 0); } } void iloveyou(){ int letter[8][9] = { {0, 1, 0, 0, 1, 0, 0, 1, 0}, {1, 0, 0, 1, 0, 0, 1, 1, 1}, {1, 1, 1, 1, 0, 1, 1, 1, 1}, {0, 0, 0, 1, 0, 1, 0, 1, 0}, {1, 1, 1, 1, 1, 0, 1, 1, 1}, {1, 0, 1, 0, 1, 0, 0, 1, 0}, {1, 1, 1, 1, 0, 1, 1, 1, 1}, {1, 0, 1, 1, 0, 1, 1, 1, 1}, }; for(int i=0; i<9; i++){ if(letter[iloveyoucount][i] == 0){ RGBLED.setPixelColor(i, RGBLED.Color(0, 0, 0)); } else { RGBLED.setPixelColor(i, RGBLED.Color(255, 105, 180)); } } iloveyoucount++; if(iloveyoucount > 7){ iloveyoucount = 0; mode = 3; } RGBLED.show(); delay(1000); }
女子の皆さん、ぜひキラキラ輝くチョコレートで意中の方の心を鷲掴みにしてください! 池澤あやかでした!
■Amazon.co.jpで購入
アイディアを実現させる最高のツール プログラミングをはじめよう池澤 あやか(著)大和書房
週刊アスキーの最新情報を購読しよう
本記事はアフィリエイトプログラムによる収益を得ている場合があります