Již jsme se naučili, jak pracovat s fotorezistorem, stejně tak jsme zvládli práci s bzučákem. Abychom si ukázali, že všechny zde uvedené lekce je možné kombinovat a být tedy inspirací pro vymýšlení dalších zapojení, zkusíme nyní lekci fotorezistoru a bzučáku vzájemně zkombinovat. Ukážeme si, jak lze ovládat bzučák pomocí fotorezistoru tak, aby pípal v různých frekvencích.
Když posvítíme na fotorezistor, bude intenzita dopadajícího světla větší, odpor fotorezistoru se sníží a naopak. V tomto pokusu je výstup fotorezistoru připojen na pin A0
modulu Arduino, kde je zpracován ADC převodníkem. Získanou hodnotu použijeme jako parametr čekací funkce v kódu, než se ozve bzučák. Pokud je dopadající světlo silné, je výsledná hodnota vyšší, což znamená, že bude bzučák pípat pomalu. Je-li světlo slabé, výsledná hodnota je nižší a bzučák bude pípat rychleji.
Krok 1: Sestavíme si obvod podle následujícího obrázku nebo schématu.
Blokové schéma
Elektronické schéma
Krok 2: V prostředí mBlock sestavíme následující program.
Program lze stáhnout z:
http://
Jak již naznačují jednotlivé bloky tohoto kódu je jeho princip poměrně pochopitelný. V nekonečné smyčce „opakuj stále“ je načítána analogová hodnota na pinu A0
, která odpovídá osvitu fotorezistoru. Čím je fotorezistor více osvícen, tím je díky jeho zapojení v tzv. děliči napětí na pinu A0
vyšší, tedy je vyšší i vstupní hodnota. Tato vstupní hodnota je uložena do proměnné sensorValue
a následně použita jako čekací doba pro generování zvuku. To vidíme v následujících blocích, kde nejdříve nastavíme výstupní digitální pin 9
na vysokou úroveň (HIGH). Tím zapneme připojený aktivní bzučák. Následuje blok čekání – jelikož vstupní hodnota pinu A0
může být v rozmezí 0–1023, ale blok čekání vyžaduje vstupní hodnotu v sekundách, je hodnota proměnné sensorValue
vydělena tisícem. Po uplynutí této čekací doby je výstupní pin 9
nastaven na nízkou úroveň (LOW), čímž je aktivní bzučák umlčen. Opět se čeká dobu určenou tisícinou hodnoty proměnné sensorValue
. Zapínáním a vypínáním bzučáku a setrváním v tomto stavu dle načtené vstupní hodnoty tak generuje pípání, jehož četnost je odvislá od osvětlení fotorezistoru.
Krok 3: Zkompilujeme kód a nahrajeme do modulu Arduino tlačítkem .
Krok 4: Pokud postavíte fotorezistor do tmy, bude bzučák pípat rychle. Osvětlíme-li fotorezistor, bude pípat pomalu. Funkčnost zařízení můžeme ověřit zakrýváním fotorezistoru rukou.