LilyPad Arduino で光る帽子を作った

妻とのコラボで、LilyPad Arduino で暗くなると LED が光る帽子を作りました。

実装はとても簡単なものでしたが、導電糸の縫い付けがとても難儀でした。

帽子本体は妻作。

暗くなると光ります。

普通の糸でまず仮止めして、

導電糸で縫い付けます。

ただ縫い付けただけだと、帽子の裏でショートしてしまうので、絶縁に工夫が必要です。

この写真では仮にセロハンテープで固定しています。

また、LED 素子が焼けてしまって交換に苦労したので、メンテナンス性を考慮していなかったことが反省点です。

素材

実装

const int temt6000Pin = A5;
const int ledPins[] = { 5, 6, 9, 10, 11, A2, A3, A4};
const int ledSize = 8;
const int threshold = 20;
const int ledDelay = 500;
int ledCursor;

void setup() {
  ledCursor = 0;
  pinMode(temt6000Pin, INPUT);
  for(int i = 0; i < ledSize; i++) {
    pinMode(ledPins[i], OUTPUT);
  }
}

boolean isDark() {
  int value = analogRead(temt6000Pin);
  return value < threshold;
}

void allOff() {
  for(int i = 0; i < ledSize; i++) {
    digitalWrite(ledPins[i], LOW);
    analogWrite(ledPins[i], 0);
  }
}

void allOn() {
  for(int i = 0; i < ledSize; i++) {
    digitalWrite(ledPins[i], HIGH);
    analogWrite(ledPins[i], 0xff);
  }
}

void loop() {
  if(isDark()) {
    digitalWrite(ledPins[ledCursor], HIGH);
    analogWrite(ledPins[ledCursor], 0xff);
    delay(ledDelay);
    digitalWrite(ledPins[ledCursor], LOW);
    analogWrite(ledPins[ledCursor], 0);
    if(++ledCursor == ledSize) {
      ledCursor = 0;
    }
  }
  else {
    allOff();
  }
}

ソースコードは GitHub で管理しています。 ngs/ledcap

comments powered by Disqus