Lekcja 16: Czujnik pochylenia

Tematem tej lekcji jest czujnik pochylenia Tilt-a-Whirl RPI-1031. Urządzenie wykrywa zmiany położenia w czterech kierunkach. Układ po zasileniu przy przechyleniu na cyfrowych wyjściach pojawiają się w zależności od położenia stany:

  • - niski/niski
  • - niski/wysoki
  • - wysoki/niski
  • - wysoki/wysoki

  • Specyfikacja czujnika poniżej:

    • Napięcie zasilania: 3,3 V do 5 V
    • S1 i S2 - cyfrowe wyjścia.

    Wyprowadzenia:

    Piszemy kod:

            int tilt_s1 = 2;
            int tilt_s2 = 3;
            void setup(){
                pinMode(tilt_s1, INPUT);
                pinMode(tilt_s2, INPUT);
                Serial.begin(9600);
                }
            void loop(){
                int position = getTiltPosition();
                if(position ==0){Serial.println("pozycja startowa");}
                if(position ==1){Serial.println("obrociles o +90 stopni");}
                if(position ==2){Serial.println("obrociles o +270 stopni");}
                if(position ==3){Serial.println("obrociles o +180 stopni");}
                delay(200); 
                }
            int getTiltPosition(){
                    int s1 = digitalRead(tilt_s1);
                    int s2 = digitalRead(tilt_s2);
                    return (s1 << 1) | s2; 
                }

    W linii 1 i 2 deklarujemy zmienne z numerami wejść cyfrowych na Arduino.
    W linii 4 i 5 wykorzystujemy zadeklarowane zmienne do skojarzenia z pinami Arduino.
    W linii 6 ustalamy szybkość transmisji na 9600bit/s.
    W linii 9 odwołujemy się do funkcji getTiltPosition(), która zaczyna się w linii 16 a zwraca wynik stanu w postaci liczby 0 lub 1 lub 2 lub 3. Zwrócone wartości są zmiennymi, które wykorzystujemy w liniach 10 - 13 do określenia i wypisania na ekranie wartości położenia.
    W linii 14 robimy 200milisekundową przerwę w odczycie.



    Powrót do spisu materiałów

    Nowy zakup

    Zakupiliśmy nowy moduł Arduino Leonardo i Yun z obsługą sieci przez Ethernet i WiFi.

    Nowe czujniki

    Mamy nowe czujniki żyroskopowe. Możemy kontrolować położenie robota.

    Zajęcia otwarte

    Zapraszamy na zajęcia otwarte uczniów klas SP, które odbywają się w każdy poniedziałek w godz. 15.00-16.00 (Prosimy o kontakt w celu zebrania grupy).