Fény- és színérzékelés

Fotoellenállás

A legegyszerűbb fényérzékelési megoldást a fotoellenállás szolgáltatja. Ez egy olyan ellenállás, melynek megvilágítás hatására csökken az ellenállása. A legegyszerűbb alapesetben ez (illetve az ezen keresztül érkező feszültség) közvetlenül az analóg bemeneten beolvasható, mindössze egy lehúzó-ellenállásra van szükség ehhez a grund felé, hogy a mérés rendesen működjön:

Fotoellenállás

A fenti képen az ellenállásnak nagyjából 6-10 kΩ-osnak kell lennie.

Egy fokkal professzionálisabb megoldás, ha komperáló-IC-vel értékeljük ki a fénymennyiséget, és egy ellenállási határértéket alulhaladva ez az áramkör ad ki digitális jelet. Ilyen megoldást kínál az LM393 modul:

LM 393 + fotoellenállás

int readIt; 
 
void setup() {
  Serial.begin(9600);
}
 
void loop() {
  readIt = analogRead(A0);
  Serial.println(readIt);
  delay(1000);
 
}

Lángszenzor

Lángszenzor en: Flame Sensor

A lángszenzor technikailag egy egyszerű infravörös érzékelőt rejt magában. A lángok nagy mennyiségű (az emberi szem számára láthatatlan) IR-t bocsátanak ki, a lángérzékelő modul az innen érkező infravörös sugázást érzékeli. Az IR érzékelő szenzorok olyan fotoellenállások, melyek változó ellenállást generálnak az infravörös fény hatására. Általában olyan optikai szűrővel látják el ezeket a szenzorokat, hogy más fénytartományt nem eresztenek át; azaz nem is érzékelik ezeket.

Az IR által generált ellenállást az Arduino akár közvetlenül is kiértékelheti (lásd fent, a fotoellenállásnál), vagy egy komperáló-modulon keresztül teszi ezt meg (ez jellemzően szintén egy LM393-as). Ezt a kombót (LM393 + IR szűrős fotoellenállás) KY-026 néven is megtalálhatjuk. A digitális riasztás határértéke a modulon található potméterrel hangolható.

Technikai adatok:
Érzékelési (hullámhossz) tartomány: 760-1100nm
Tápfeszültség: max. 15V DC
Érzékelési szög: 60°

Gyakorlatilag az optikai (nem CMOS) mozgásérzékelők (PIR-szenzorok) nagy része is az IR szenzor ellenállás kiértékelését végzi.

APDS-9930 környezeti fényérzékelő szenzor

APDS-9930 környezeti fényérzékelő szenzor

Az APDS-9930 egy ALS szenzor. Jellemzően a szenzort modulként lehet beszerezni, ilyen például a CJMCU-9930 is:

CJMCU-9930

CJMCU-9930

Technikai jellemzők:

További, I²C-s megoldások: Arduino I²C kommunikáció

CJMCU-9930 pinek

pinleírás
VLopcionális betáp az infravörös LED-hez. Ez 3.0..4.5V lehet
GNDgrund
VCCTáp, 2.4..3.6V
SDAI²C adatjel
SCLI²C órajel
INTKülső megszakítás PIN (opcionális)

CJMCU-9930 vezetékezés

CJMCU-9930 vezetékezés

CJMCU-9930 szoftver

https://github.com/Davideddu/APDS9930

CNY70 optikai érzékelő

A CNY70 a Vishay Semiconductors által gyártott optikai érzékelő egység, mely egy infravörös fényforrásból és a visszaverődő infravörös fényt érzékelő fototranzisztorból áll. A szenzor napfény elleni blokkoló szűrőt is tartalmaz, az IR LED 950 nm hullámhosszú fényt bocsájt ki. Működési sémája a következő:

CNY70 optikai érzékelő sémája

Ha az érzékelőt fentről nézzük, jobb oldalra fordítva a típusmegjelölését, akkor az érzékelő a jobb, az IR LED bal oldalon található:

CNY70 optikai érzékelő felülnézet

Technikai jellemzők

Vezetékezés

CNY70 optikai érzékelő vezetékezés

Nyomkövető robot

A szenzort gyakran nyomkövető robotokhoz szokták alkalmazni. A nyom általában egy kontrasztos sötét felfestés szokott lenni világos felületen, ami elég ívelt és széles ahhoz, hogy a robot le tudja követni. Ennek a működési elve a következő:

CNY70 optikai érzékelő / nyomkövető robot

Szoftver

Github tachométer program a CNY70-hez: https://github.com/fmilburn3/Tachometer_CNY70