Internet of Things - Arduino

on-off senzori

Tilt senzor

 Što ćemo naučiti:

Kako otkriti orijentaciju ili nagib pomoću tilt senzora

Zadatak

Napravite sklop za uključivanje i isključivanje svjetlećih dioda ovisno o položaju kuglice unutar tilt senzora. Neka svijetla budu uključena kada se kuglica nalazi u ravnotežnom položaju, a isključena kada je nagnemo za više od 90°.

 

Prikaz spajanja

Arduino kod

const int TiltPin1 = 6;
const int TiltPin2 = 7;
const int LedCrvena = 5;
const int LedZelena = 4;
int TiltPin1Stanje = 0;
int TiltPin2Stanje = 0;
 
void setup() {
  pinMode(LedCrvena, OUTPUT); //postavi izvod LedCrvena(5) kao izlazni
  pinMode(LedZelena, OUTPUT); //postavi izvod LedCrvena(4) kao izlazni
  pinMode(TiltPin1, INPUT);   //postavi izvod TiltPin1(6) kao ulazni
  pinMode(TiltPin2, INPUT);   //postavi izvod TiltPin2(7) kao ulazni
}
 
void loop()
{
TiltPin1Stanje = digitalRead(TiltPin1);
TiltPin2Stanje = digitalRead(TiltPin2);
         if (TiltPin1Stanje == HIGH && TiltPin2Stanje == LOW) {   //ako je kuglica na 1 prvom pinu i dodiruje +pin, a druga -pin
    digitalWrite(LedCrvena,HIGH);                                 //uključi svjetleću LedCrvenu diodu
    digitalWrite(LedZelena,LOW);                                  //isključi svjetleću LedZelenu diodu
  } else if (TiltPin1Stanje == LOW && TiltPin2Stanje == HIGH) {   //ako je kuglica na 2 drugom pinu i dodiruje +pin, a prva -pin
    digitalWrite(LedCrvena,LOW);                                  //isključi svjetleću LedCrvenu diodu
    digitalWrite(LedZelena,HIGH);                                 //uključi svjetleću LedZelenu diodu
  } else if (TiltPin1Stanje == HIGH && TiltPin2Stanje == HIGH) {  //ako je kuglica u ravnotezi
    digitalWrite(LedCrvena,HIGH);                                 //uključi svjetleću LedCrvenu diodu
    digitalWrite(LedZelena,HIGH);                                 //uključi svjetleću LedZelenu diodu
  } else {                                                        //ako obrnemo tilt senzor
    digitalWrite(LedCrvena,LOW);                                  //isključi svjetleću LedCrvenu diodu
    digitalWrite(LedZelena,LOW);                                  //isključi svjetleću LedZelenu diodu
  }
}

verzija 1

Pogledajte ostale materijale za jednostavne on-off senzore