MINTIAの空き箱を使ってLEDライトにする


何となく、Mintiaの空き箱を再利用したく成ったのでLEDライトにしてみました。

箱の中に入れるには高さ5mm以下にする必要があるので、ボタン電池ホルダーとLED(5mmしか家に無かった)は削っています。

各部品

ボタン電池:直列繋ぎで6V
LED:並列繋ぎで1つ恐らく3Vの20mAくらい
抵抗:150Ω=(6V-3V)/0.02A

回路図

詰め込み画像

スイッチが真ん中から動かないようにグルーガンを使って空きスペースを埋めました。

Pythonでコーディングしてみる。

回路図もプログラミングの一種だと思っていますが、規約違反にならないように念のためPythonで今回のLEDライトの動作をプログラミングしてみます。

下のコードを実行すると、何かキーを押すたびに電圧が0.3V下がって行き2Vを切ると終了するように成っています。

キー入力:トグルスイッチ
RESISTOR:抵抗値
LED_AMPERE:LEDのアンペア
INPUT_VOLT:電池の電圧
BATTERY_NUM:電池の個数
としています。

led_light.py

INPUT_VOLT = 3
BATTERY_NUM = 2
LED_AMPERE = 0.02
RESISTOR = 150


def _light(volt: float, resistor: int) -> float:
    v: float = volt - (LED_AMPERE * resistor)
    for i in range(1, 4):
        print(f"  LED{i}: {v:.2f}V")
    return v


try:
    volt = INPUT_VOLT*BATTERY_NUM
    while True:
        input(f"スイッチON: 入力電圧: {volt:.2f}")
        v = _light(volt, RESISTOR)
        if v < 2.0:
            input("LED 消灯")
            break
        volt -= 0.3

except KeyboardInterrupt:
    print("終了")

結果

$ python3 led_light.py
スイッチON: 入力電圧: 6.00
  LED1: 3.00V
  LED2: 3.00V
  LED3: 3.00V
スイッチON: 入力電圧: 5.70
  LED1: 2.70V
  LED2: 2.70V
  LED3: 2.70V
スイッチON: 入力電圧: 5.40
  LED1: 2.40V
  LED2: 2.40V
  LED3: 2.40V
スイッチON: 入力電圧: 5.10
  LED1: 2.10V
  LED2: 2.10V
  LED3: 2.10V
スイッチON: 入力電圧: 4.80
  LED1: 1.80V
  LED2: 1.80V
  LED3: 1.80V
LED 消灯