Close

Dá se sfouknout LEDka?

Arduin LED svička - sfouknutí

Když si chcete udělat pěkný večer, není nad to si zapálit svíčku. Geekové možná sáhnou po LED svíčce, která už dokáže docela obstojně ty skutečné svíčky napodobit. Tyhle umělé svíčky ale většinou neumí jednu věc, kterou od svíčky čekáte – aby se dala sfouknout. Kutil s přezdívkou electron_plumber se ale rozhodl, že vymyslí, jak by šlo LED svíčky zhasínat fouknutím.

Jeho projekt je založený na měření úbytku napětí na LED, který se mění s teplotou LED. Když na ni fouknete, dojde k ochlazení diody, Arduino UNO tuto změnu detekuje a LED zhasne.

Arduin LED svička - sfouknutí

Primárním účelem LEDek je, aby vydávaly světlo. Zároveň se ale dají použít jako překvapivě užitečné senzory. Pouze za použití Arduino UNO, LED, dvou vodičů a rezistoru je tak možné sestavit nejenom sfouknutelnou LED, ale i další typy uživatelských rozhraní.

Jak to funguje?

Když skrz LED prochází proud, dochází k jejímu zahřívání. Rychlost zahřívání závisí na procházejícím proudu, ale také na tom, jak dobře LED ochlazujeme. Když fouknete na zahřátou LED, dojde k jejímu ochlazení a zároveň poklesu úbytku napětí na diodě, který můžeme měřit.

Obvod je velice jednoduchý a vlastně vypadá tak, jako kdybyste jen napájeli LED. Jedinou úpravou je připojení dalšího vodiče za rezistor, který slouží právě k měření úbytku napětí. Změna napětí, kterou je potřeba měřit, je v řádu milivoltů, což je na hranici toho, co umí Arduino spolehlivě měřit. Proto potřebujeme, aby byla LED malá a změna teploty při fouknutí tak byla dostatečně velká. Jako ideální se ukázalo SMD pouzdro 0402. I vodiče by měly být co nejtenčí, aby nedocházelo ke zbytečnému ochlazování LED.

Připojení sfouknutelné LED k Arduinu

Připojení sfouknutelné LED k Arduinu

Na následujícím videu jsme použili pro vyzkoušení modrou LED velikosti 0603 s odporem 100 Ω a funguje to obstojně s níže uvedeným programem. Tomuhle se prostě nedá odolat a museli jsme to vyzkoušet :).

Program pro Arduino

// Program pro vytvoření efektu hořící svíčky (LED), kterou je možné sfouknout (zhasnout).
// Funkce se obnoví po 2 sekundách
// Copyright 2018, Paul H. Dietz
// Připojení LED
#define PLUS A1               // Pin pro napájení pro LED
#define MEASURE A0            // Pin pro měření napětí na LED (anoda LED)
// Katoda LED je připojena na GND
#define NUMSAMPLES 10         // Počet vzorků pro vyhodnocení
#define MINJUMP 150           // Minimální změna pro sfouknutí
long int sensedata[NUMSAMPLES];
int dataptr = 0;
int buffull = 0;
void setup() {
 Serial.begin(250000);                     // Inicializace sériové linky
 pinMode(MEASURE, INPUT);
 pinMode(PLUS, OUTPUT);
 digitalWrite(PLUS, HIGH);                 // Rozsvícení LED
}
void loop() {
 int cnt;
 long int sum = 0;
 // Sum 256 (pro redukci šumu)
 for (cnt = 0; cnt < 256; cnt++) {
   sum = sum + analogRead(MEASURE);
 }
 
 Serial.println(sum);                      // Výstupní sum pro vyhodnocení na sériové lince
 // Porovnání měření s nejstarším, pokud je buffer plný
 if (buffull && (sum > (sensedata[dataptr] + MINJUMP))) {
   // Pokud teplota dosáhne minima tak vypni LED
   digitalWrite(PLUS, LOW);
   dataptr = 0;                            // Obnovení bufferu
   buffull = 0;
   delay(2000);                            // Zhasnutí LED na 2 sekundy
   digitalWrite(PLUS, HIGH);
 }
 else {
   sensedata[dataptr] = sum;               // Uloží poslední data do bufferu
   dataptr++;                              // Aktualizuje ukazatel bufferu
   if (dataptr == NUMSAMPLES) {            // Kontrola dosažení počtu vzorků
     dataptr = 0;                          // Reset datapr
     buffull = 1;                          // Označení plného bufferu
   }
 }
}

Přeloženo z https://blog.arduino.cc/2018/08/21/blow-out-this-arduino-led-candle/ a upraveno.

Zbyšek Voda

Zbyšek Voda

Už nějaký čas se zajímám o věci kolem Internetu věcí a otevřeného hardware a software. Tak jsem se také v roce 2010 dostal k Arduinu, pro které dodnes programuji a taky píšu články o práci s ním. Baví mě vymýšlet, jak staré věci používat novým způsobem.
Zbyšek Voda

Latest posts by Zbyšek Voda (see all)

Napsat komentář