Spisu treści:

Umożliwienie Thomasowi pociągu do jazdy nocą: 5 kroków
Umożliwienie Thomasowi pociągu do jazdy nocą: 5 kroków

Wideo: Umożliwienie Thomasowi pociągu do jazdy nocą: 5 kroków

Wideo: Umożliwienie Thomasowi pociągu do jazdy nocą: 5 kroków
Wideo: Momenty w Które Byście Nie Uwierzyli Gdyby Nie Zostały Nagrane - Część 5 2024, Listopad
Anonim
Umożliwienie Thomasowi pociągu do jazdy nocą
Umożliwienie Thomasowi pociągu do jazdy nocą

Ta instrukcja nauczy Cię, jak stworzyć system świateł ostrzegających oczekujących pasażerów, gdy zbliża się pociąg, a także jak wyświetlić komunikat na laptopie, gdy pociąg jest na stacji. Gdy pociąg przejedzie przez stację, zostanie wygenerowany dźwięk wraz z serią migających świateł LED. Wszystko to można zrobić za pomocą Raspberry Pi.

Krok 1: Materiały eksploatacyjne

Kieszonkowe dzieci
Kieszonkowe dzieci

Jeden komputer

MatLab 2016 lub nowszy

Pobierz pakiet Raspberry Pi

drukarka 3d

Wydrukowany w 3D dworzec, w którym mieści się malinowe pi

Raspberry Pi z następującymi komponentami:

2 czujniki podczerwieni

5 diod LED do wyboru koloru

11 przewodów

2 rezystory

Rezystory 200-300 Ohm

Kabel USB do podłączenia komputera do Raspberry Pi

Krok 2: Zaprojektuj obwód dla pożądanych wyjść i wejść

Zaprojektuj obwód dla pożądanych wyjść i wejść
Zaprojektuj obwód dla pożądanych wyjść i wejść

Za pomocą podstawowych obwodów nadajnik i odbiornik światła i podczerwieni należy podłączyć do Raspberry Pi. Czerwone diody LED są podłączone do masy, a następnie podłączone do pinów 4, 5, 6 i 7 GPIO. Odbiornik podczerwieni jest podłączony do pinu 21 GPIO, a emiter podczerwieni jest podłączony do pinu 5V.

Krok 3: Rozwiń kodowanie, aby osiągnąć pożądany rezultat

Rozwijaj kodowanie, aby osiągnąć pożądany rezultat
Rozwijaj kodowanie, aby osiągnąć pożądany rezultat

Najważniejszymi liniami kodu są linie 12 i 16, które uruchamiają okna dialogowe. W wierszu 18, w oświadczeniu if, czytamy, czy między czujnikami na podczerwień znajduje się przeszkoda, a jeśli są zatkane, oznacza to, że pociąg przejeżdża, zabrzmi klakson i zapalą się światła. Jeśli stwierdzenie jest fałszywe, nic się nie stanie, ponieważ pociąg się nie zbliża.

Kod: %% Nagłówek

%Mikrokontroler Project-Nocny pociąg

%John Brown, Trent Payne, Karsten Parker; Sekcja 9

%3 października 2017

% Opis projektu: Zaprojektuj mikrokontroler, który pobiera dwa wejścia i

%wytwarza dwa dane wyjściowe, aby pomóc ulepszyć aspekty konfiguracji modelu pociągu

%Metoda rozwiązania: Użyj różnych zasobów i Matlab, aby poprawić aspekty

Konfiguracja pociągu %model.

%% Konfiguracja - pierwsze wejście/wyjście

podczas gdy prawda

a=0;% inicjuje a

podczas gdy readDigitalPin(rpi, 21) == 1

a=1;% zatrzymuje uruchamianie kodu światła przed kodem okna dialogowego pytania

question=('Pociąg zatrzymuje się na stacji. Czy chcesz włączyć klakson?');

question_title=('Klakson pociągu');

resp=questdlg(question, question_title, 'yes', 'no', 'no');% wyskakuje okno dialogowe pytania z dwiema opcjami i domyślną odpowiedzią

tf=strcmp(resp, 'tak');% porównuje długość tablicy znaków odpowiedzi na tablicę znaków tak.

if tf==1%if odp='tak'

[Y, FS]=audioread('train_horn.m4a');% pobiera plik audio i konwertuje go na dane próbki, yi częstotliwość próbkowania, FS.

sound(Y, FS)%sound polecenie pobiera próbkowane dane i częstotliwość próbkowania oraz generuje dźwięk

msgbox('Dźwięk trąbki pociągu!')

pauza(2)

przerwa

else%if resp='no', tf będzie logiczne 0, ponieważ tablice znaków no i yes mają różne długości

msgbox('Klakson pociągu nie zabrzmiał!')

pauza(2)

przerwa

kończyć się

kończyć się

while readDigitalPin(rpi, 21) == 1 && a==1 %uruchamia się, gdy pętla jest włączona, a okno dialogowe pytania jest uruchomione

%Ten pierwszy segment kodu włącza światła w kolejności.

writeDigitalPin(rpi, 4, 0)

pauza(0.25)

writeDigitalPin(rpi, 5, 0)

pauza(0.25)

writeDigitalPin(rpi, 6, 0)

pauza(0.25)

writeDigitalPin(rpi, 7, 0)

pauza(0.25)

% Ten drugi segment kodu wyłącza światła w kolejności.

writeDigitalPin(rpi, 4, 1)

pauza(0.25)

writeDigitalPin(rpi, 5, 1)

pauza(0.25)

writeDigitalPin(rpi, 6, 1)

pauza(0.25)

writeDigitalPin(rpi, 7, 1)

pauza(0.25)

end%end while pętla

kończyć się

Krok 4: Posłuchaj, jak pociąg wyjedzie za róg i obserwuj, jak światła ostrzegają Cię przed cofnięciem się

Posłuchaj, jak pociąg wyjedzie zza rogu, i obserwuj, jak światła ostrzegają Cię przed cofnięciem się
Posłuchaj, jak pociąg wyjedzie zza rogu, i obserwuj, jak światła ostrzegają Cię przed cofnięciem się

Gdy pociąg zbliży się i przekroczy czujniki podczerwieni, światła zgasną, uruchamiając klakson pociągu, aby przybyli pasażerowie, aby oddalili się od krawędzi; jednak pojawi się również okno dialogowe z pytaniem konduktora pociągu: „Pociąg zbliża się do stacji, czy pociąg się zatrzymuje?”, a następnie pojawia się komunikat „Dźwięk klaksonu pociągu”, a jeśli nie pociągnięty, trzecie okno dialogowe powie: „nie zabrzmiał klakson”.

Krok 5: Końcowa konfiguracja

Konfiguracja końcowa
Konfiguracja końcowa

Aby ukończyć projekt, cały system powinien zostać połączony w niebieską stację kolejową, która została wydrukowana w 3D dla estetyki. Stacja kolejowa symbolizuje, gdzie będą pasażerowie, gdy przyjedzie pociąg. Teraz będą bezpieczni dzięki systemowi ostrzegania Night Train.

Zalecana: