czwartek, 24 października 2019

5. Czujnik dotykowy szczegółowo Lego Mindstorms EV3

Lego Mindstorms EV3: Czujnik dotykowy szczegółowo

Dotykać czujnika V1
Czujnik Lego Mindstorms EV3 Touch ma kilka zastosowań w świecie robotyki. Na wysokim poziomie może być wykorzystywany do:
  • Wykrycia obiektu lub barierę
  • Zainicjować program sterujący, gdy jego stan zmienia (tzn wciśnięty, wpadł lub zwolniony)
Domyślny port czujnika dotykowego w sprawie Lego EV3 Brick jest numer portu 1 i jego blok programowania jest dostępny od żółtej palety czujnika:
Lego Mindstorms EV3 Software - Blok czujnika dotykowego
Dotykać bloku programowania czujnika

W jaki sposób EV3 dotykowy Czujnik działa?

Jak włącznik światła kończy swój obwód, gdy światło jest włączone, czujnik Lego Mindstorms EV3 dotykowy działa w ten sam sposób, czyli wykorzystuje obwód do wykrywania przycisk jest wciśnięty. Kiedy przycisk jest wciśnięty to zamyka obwód i kiedy jest w stanie domyślnym (tj zwolniony) obwód jest przerwany.
Gdy obwód jest połączony (czyli przycisk wciśnięty) czujnik wysyła sygnał elektryczny z powrotem do EV3 Brick, aby poinformować go, że przycisk jest wciśnięty. Kiedy przycisk zostaje zwolniony (tzn uszkodzony obwód) rejestruje gulę i uwolnienie.

EV3 dotykowe Tryby czujników

Czujnik EV3 Touch posiada dwa tryby:

środek państwowy

Tryb stan Działanie wyjścia bieżący stan czujnika dotykowego. Istnieją tylko 2 stany, w których czujnik może być w tym trybie: Prawda czy fałsz:
  • True = Tłoczone
  • Fałszywe = Wydany
Lego Mindstorms EV3 Software - Blok czujnika dotykowego
Dotykać czujnika - środek państwowy

Porównaj państwo

Compare tryb stanu pozwala testować lub monitorować czujnik EV3 dotykowego dla określonego stanu. W tym trybie nie są dostępne 3 stany:
  • Wydany (domyślnie)
  • Prasowany
  • Zderzyłem (tj wciśnięty, a następnie zwolniony)
Tryb ten zwraca Prawda czy fałsz, prawda zostanie zwrócone, gdy wartość na wejściu państwa jest wykrywany przez czujnik dotykowy.
Lego Mindstorms EV3 Software - Czujnik dotykowy Block - Porównaj Sensor
Dotknąć sensora - Porównaj państwo
Stan wejścia tym trybie może być albo wybrany z rozwijanej od samego bloku lub połączone ze zmiennej (lub innego źródła do programu). Wejście stanu przyjmuje następujące wartości od 0 do 2:
StanWartość
Wydany0
Prasowany1
zderzyłem2

Przykład EV3 czujnika dotykowego Program 1: Random twarzy

W pierwszym przykładzie programu użyjemy czujnik dotykowy do zainicjowania logiki w ramach programu. Kiedy przycisk jest wciśnięty czujnik dotykowy program będzie wykonać następujące czynności:
  • Wygenerować losową liczbę od 1 do 5
  • Użyj przycisku, aby wyświetlić twarz na wyświetlaczu EV3 cegły w zależności od wartości liczb losowych za
  • Powtórz ten proces w ciągu 20 sekund
Nie ma skomplikowana budowa wymagane dla tego programu, wystarczy podłączyć czujnik dotykowy do portu 1 i wykonaj następujące czynności:
  1. Utwórz drugą pętlę 20:
    • Przeciągnij upuść bloku Loop pomarańczowy obok przycisku Start
    • Ustaw jej tryb na wskaźniku czasu
    • Ustaw Sekund wkład 20
Lego Mindstorms EV3 Software - Czujnik dotykowy Losowe Face - Krok 1
  1. Dodaj logikę czekać na czujnik dotykowy być wciśnięty.
    • Przeciągnij i upuść pomarańczowy Wait blok wewnątrz pętli
    • Ustaw swój tryb  do czujnika dotykowego | Porównaj | Stan
    • Ustaw State wejście do 2 (guz)
Lego Mindstorms EV3 Software - Czujnik dotykowy Losowe Face - Krok 2
  1. Tworzenie liczbę losową
    • Przeciągnij i upuść red Losowa blok obok bloku Wait
    • Ustawić dolną granicę wejście do 1 a górna granica wejście do 5
Lego Mindstorms EV3 Software - Czujnik dotykowy Losowe twarzy - krok 3
  1. Dodaj przełącznik ocenić liczbę losową i wyświetli twarz
    • Przeciągnij i upuść jest blok pomarańczowy Przełącznik obok bloku losowego
    • Ustaw jej tryb na numeryczne
    • Drut Losowe bloku do bloku Przełącznik przeciągając wyjście wartości ponad do wejścia numer bloku przełącznika
Lego Mindstorms EV3 Software - Czujnik dotykowy Losowe Face - Krok 4
  1. Dodać 3 kolejne wypowiedzi sprawę do bloku Switch (aby dopasować liczbę losową, która może wynosić od 1 do 5):
    • Kliknij przycisk + w bloku przełączyć się dodać nowy przypadek
    • Powtórz 3 razy
    • Przenumerować kontrole przypadków od 1 do 5
Lego Mindstorms EV3 Software - Czujnik dotykowy Losowe Face - Krok 5
  1. , Dodaj bloki wyświetlacza, aby wyświetlić inną twarz w każdym razie w bloku Switch:
    • Przeciągnij i upuść zielony blok wyświetlacza w przypadku # 1
    • Kliknij O wyboru obrazu n górny prawy i od folderze Files \ Expressions LEGO Obrazek wybrać wyrażenie
    • Powtórz te czynności dla 2 każdorazowo.
      • Wybrałem następujące do mojego programu:
        • 1 = Big Smile
        • 2 = jamy 1 Otwarte
        • 3 = Teraz
        • 4 = chorych
        • 5 = oczko
To wszystko, gotowe. Hit przycisk Pobierz i uruchom i przetestować program, obserwując zmianę wyświetlacza poprzez naciśnięcie przycisku dotykowego czujnika.
Pełen program powinien wyglądać jak na obrazku poniżej:
Lego Mindstorms EV3 Software - Czujnik dotykowy Losowe Face - Pełna

Przykład EV3 czujnika dotykowego Program 2: rozpoczęcia i zakończenia robot

W drugim przykładzie programu użyjemy czujnika dotykowego, aby zatrzymać poruszający robota. Z tego programu polecam przy użyciu robota build Explor3r, to proste i może być wykonane przy użyciu albo sprzedaży lub wykształcenie zestawu LEGO Mindstorms EV3. To instrukcje można znaleźć tutaj . Zapraszam do zbudowania czujnika dotykowego zderzak z przodu - będzie dobrze działać z tym programem, zatrzymanie robota EV3 raz trafi coś.
Logika dla tego programu jest dość prosta:
  1. Zacznij robota posuwa się naprzód
  2. Gdy przycisk jest zderzył zatrzymać robota
Zacznijmy:
  1. , Tworzenie pętli z wylotem raz przycisk czujnika dotykowego jest zderzył:
    • Przeciągnij i upuść jest blok pomarańczowy pętli obok przycisku start
    • Zmień to logika zjazd do czujnika dotykowego | Stan
    • Zaktualizuj wejście państwa do 2 (Bump)
Lego Mindstorms EV3 Software - Czujnik dotykowy Zatrzymaj Robot - Krok 1
  1. Zacznij robota do przodu:
    • Przeciągnij i upuść zielony blok Ruch kierownicy wewnątrz pętli
    • Ustaw jej tryb na Włączone
    • Zostawię to domyślna prędkość i kierunek (do przodu z prędkością 50%)
Lego Mindstorms EV3 Software - Czujnik dotykowy Zatrzymaj Robot - Krok 2
  1. Zatrzymanie silników, gdy przycisk jest wciśnięty czujnik dotykowy
    • Przeciągnij i upuść zielony blok Ruch Sterujący zewnątrz pętli
    • Ustaw jej tryb na Off
Lego Mindstorms EV3 Software - Czujnik dotykowy Zatrzymaj Robot - Krok 3
To wszystko gotowe. Kliknij przycisk pobierania i uruchamiania, aby przetestować program z robotem. Po naciśnięciu zderzyłem (naciśnięty i zwolniony) będzie zatrzymać robota.

Przykład EV3 dotykowy Program Sensor 3: Zmiana kierunku na Bump

Na ostatnim przykładzie programu będziemy poruszać robota do przodu i raz czujnik EV3 Touch wpadł będziemy odwrócić kierunek robota. Jako przykładowy program z numerem 2, polecam robot build Explor3r EV3, który można znaleźć tutaj .
Logika dla tego programu jest trochę bardziej skomplikowana niż ostatni:
  1. Konfigurowanie logiki zmienna (prawda / fałsz) o nazwie „kierunek”
  2. Po naciśnięciu przycisku odwrócić zmiennej (czyli jeśli to prawda, sprawiają, że fałszywe i vice versa)
  3. Jeśli zmienna kierunek jest prawda ruch do tyłu, jeśli jest fałszywy ruch do przodu.
Zacznijmy:
  1. Ustawić zmienną logiczną Kierunek:
    • Przeciągnij i upuść czerwoną Zmienny blok obok bloku startowym
    • Ustaw swój tryb do Napisz | Logika
    • Korzystanie ze zmienną selektora w prawym górnym rogu bloku kliknij przycisk Dodaj Variable
    • Wpisz kierunek dla nazwy zmiennej i kliknij OK
Lego Mindstorms EV3 Software - czujnika dotykowego przodu i do tyłu - Krok 1
  1. Dodaj nieskończoną pętlę:
    • Przeciągnij i upuść jest blok pomarańczowy pętli po prawej stronie bloku zmiennej
    • Zostaw to warunek wyjście jako nieskończony (lub ustawić timer, jeśli chcesz mieć go uruchomić na określony czas)
Lego Mindstorms EV3 Software - czujnika dotykowego przodu i do tyłu - Krok 2
  1. Dodaj czek na przycisk czym zderzył:
    • Przeciągnij i upuść pomarańczowy Blok przełączników wewnątrz pętli
    • Ustaw swój tryb do czujnika dotykowego | Porównaj | Stan
    • Ustawić wejście państwa do 2 (zderzyłem)
Lego Mindstorms EV3 Software - czujnika dotykowego przodu i do tyłu - krok 3
  1. Ustawić zmienną kierunku, gdy przycisk jest wciśnięty:
    • Przeciągnij i upuść czerwoną Zmienny blok do prawdziwego stanu (zaznaczyć) bloku sprawie.
    • Ustaw swój tryb do Czytaj | Logika
    • Wybierz kierunek zmiennej z zmiennej selektora w prawym górnym rogu.
    • Przeciągnij i upuść red operacje logiczne zablokować obok zmiennej bloku.
    • Ustaw jej tryb na nie
    • Drut czytać Zmienny blok w tym bloku logicznego
    • Przeciągnąć i upuścić czerwoną Zmienny blok po prawej stronie bloku Logic.
    • Ustaw swój tryb do Napisz | Logika
    • Wybierz kierunek zmiennej z zmiennej selektora w prawym górnym rogu.
    • Połącz Równa wyjście z bloku Logic Variable do zapisu bloku
Lego Mindstorms EV3 Software - czujnika dotykowego przodu i do tyłu - Krok 4
  1. Odczytu zmiennej kierunek
    • Przeciągnąć i upuścić czerwoną Zmienny blok po prawej stronie bloku przełączników (ale nadal wewnątrz pętli)
    • Ustaw swój tryb do Czytaj | Logika
    • Wybierz kierunek zmiennej z zmiennej selektora w prawym górnym rogu.
Lego Mindstorms EV3 Software - czujnika dotykowego przodu i do tyłu - Krok 5
  1. Przenieś silniki przodu lub do tyłu
    • Przeciągnij i upuść i pomarańczowy blok Przełącz na prawo od zmiennej do odczytu
    • Ustaw swój tryb do logiki
    • Okablować Odczyt zmiennej długości bloku do bloku switch
    • Rewers: przeciągnij i upuść zielonego bloku Przesuń Sterujący do prawdziwego (tick) część przełącznika i ustaw jej tryb na On i jego mocy wejścia do -50
    • Przód: przeciągnij i upuść zielonego bloku Przesuń Sterujący do prawdziwego (tick) część przełącznika i ustaw jej tryb na On i jego mocy wejścia do 50
Lego Mindstorms EV3 Software - czujnika dotykowego przodu i do tyłu - krok 6
Gratulacje gotowe. Hit przycisk Pobierz, a plat przetestować program. Robota EV3 powinien poruszać się do przodu i kiedy czujnik dotykowy jest wciśnięty, to przesunąć do tyłu, naciśnij go ponownie będzie poruszać się do przodu.
Cały program powinien wyglądać tak:
Lego Mindstorms EV3 Software - czujnika dotykowego przodu i do tyłu - cały program

Brak komentarzy:

Prześlij komentarz