Lego Mindstorms EV3: Czujnik dotykowy szczegółowo

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)

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

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)

| Stan | Wartość |
|---|---|
| Wydany | 0 |
| Prasowany | 1 |
| zderzyłem | 2 |
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
- 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

- 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)

- 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

- 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

- 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

- , 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
- Wybrałem następujące do mojego programu:
Pełen program powinien wyglądać jak na obrazku poniżej:

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:
- Zacznij robota posuwa się naprzód
- Gdy przycisk jest zderzył zatrzymać robota
- , 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)

- 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%)

- 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

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:
- Konfigurowanie logiki zmienna (prawda / fałsz) o nazwie „kierunek”
- Po naciśnięciu przycisku odwrócić zmiennej (czyli jeśli to prawda, sprawiają, że fałszywe i vice versa)
- Jeśli zmienna kierunek jest prawda ruch do tyłu, jeśli jest fałszywy ruch do przodu.
- 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

- 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)

- 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)

- 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

- 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.

- 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

Cały program powinien wyglądać tak:

Brak komentarzy:
Prześlij komentarz