Open form

Fotorezystor i Arduino

Poradnik pokazuje w jaki sposób można obsłużyć fotorezystor z wykorzystaniem Arduino. Fotorezystor jest to rodzaj rezystora, którego rezystancja zależy od padających na niego promieni świetlnych.

 

W przykładzie wykorzystano następujące elementy:

 

Podłączenie fotorezystora z Arduino:

W przeciwieństwie do fototranzystora, fotorezystor nie ma określonej polaryzacji i możemy go dowolnie wpiąć w układ (jak zwykły rezystor). Układ należy podłączyć w następujący sposób:

 

Fotorezystor Pin Arduino
Pierwsza nóżka A1
Druga nóżka 5 V

 

Dodatkowo pin A1 podciągamy do masy przez rezystor 1 kΩ tworząc prosty dzielnik napięcia (wartość rezystora możemy dobierać eksperymentalnie). Połączony układ widoczny jest na poniższym schemacie:

 

 

Schemat podłączenia fotorezystora z Arduino Uno.

 

Program do Arduino

Wartość z fotorezystora odczytywana jest na wejściu analogowym Arduino. Po przekroczeniu  ustalonego progu program zapala diodę podłączona do pinu 13. Dodatkowo cały czas wyświetla odczytaną wartość na monitorze szeregowym. W przykładzie został wykorzystany następujący kod:

  1. int czujnik = A1; //pin analogowy A1 połączony z nóżką fotorezystora
  2.  
  3. void setup() {
  4. Serial.begin(9600); //inicjalizacja monitora szeregowego
  5. Serial.println("---- Test fotorezystora ----");
  6. pinMode(13, OUTPUT); //pin 13 ustawiony jako wyjście - dioda
  7. }
  8.  
  9. void loop() {
  10. int war = analogRead(czujnik); //odczytanie wartości z A1
  11. Serial.print(war); //wyświetlenie jej na monitorze
  12. if (war > 700) //gdy wartość przekroczy pewien ustalony próg, wtedy dioda na pinie 13 zaświeci się
  13. {
  14. Serial.print(" Dioda zapalona");
  15. digitalWrite(13, HIGH);
  16. }
  17. else
  18. {
  19. digitalWrite(13, LOW);
  20. }
  21. Serial.println("");
  22. delay(200); //opóźnienie między kolejnymi odczytami
  23. }

 

Efekty działania programu można zaobserwować na poniższym screenie:

 

Zrzut ekranu szeregowego monitora.

 

zapraszamy do współpracy!