Cuprins:

Oferindu-i lui Thomas Trenul abilitatea de a conduce noaptea: 5 pași
Oferindu-i lui Thomas Trenul abilitatea de a conduce noaptea: 5 pași

Video: Oferindu-i lui Thomas Trenul abilitatea de a conduce noaptea: 5 pași

Video: Oferindu-i lui Thomas Trenul abilitatea de a conduce noaptea: 5 pași
Video: O tânără INFLUENCER de pe TIKTOK rămâne blocată pe un turn de 2000 de metri FARA HRANA și APA 2024, Iulie
Anonim
Oferindu-i lui Thomas Trenul abilitatea de a conduce noaptea
Oferindu-i lui Thomas Trenul abilitatea de a conduce noaptea

Această instrucțiune vă va învăța cum să creați un sistem de lumini pentru a avertiza pasagerii în așteptare când se apropie un tren și, de asemenea, cum să primiți un mesaj care să apară pe un laptop atunci când trenul se află în gară. Un sunet pentru momentul în care trenul trece de gară va fi generat împreună cu o serie de lumini LED intermitente. Toate acestea se pot face folosind un Raspberry Pi.

Pasul 1: consumabile

Provizii
Provizii

Un computer

MatLab 2016 sau mai nou

Descărcați pachetul Raspberry Pi

imprimantă 3d

Stație de tren tipărită 3D pentru adăpostirea pi de zmeură

Raspberry Pi cu următoarele componente:

2 senzori cu infraroșu

5 lumini LED la alegerea culorii

11 fire

2 rezistențe

Rezistențe 200-300 Ohm

Acord USB pentru a conecta computerul la raspberry pi

Pasul 2: Proiectați circuitul pentru ieșirile și intrările dorite

Proiectați circuitele pentru ieșirile și intrările dorite
Proiectați circuitele pentru ieșirile și intrările dorite

Folosind circuite de bază, luminile, emițătorul și receptorul infraroșu ar trebui să fie conectate la Raspberry Pi. Luminile LED roșii sunt conectate la masă și apoi sunt conectate la pinii GPIO 4, 5, 6 și 7. Receptorul cu infraroșu este conectat la pinul GPIO 21, iar emițătorul cu infraroșu este conectat la pinul de 5V.

Pasul 3: Dezvoltați codificarea pentru a satisface rezultatul dorit

Dezvoltați codificarea pentru a satisface rezultatul dorit
Dezvoltați codificarea pentru a satisface rezultatul dorit

Cele mai importante linii ale codului sunt liniile 12 și 16 care lansează casetele de dialog. Linia 18, declarația if, citește dacă senzorii infraroșii au o obstrucție între ei și dacă sunt obstrucționați, atunci înseamnă că trenul trece, claxonul va suna și luminile se vor aprinde. Dacă afirmația este falsă, nimic nu se va întâmpla deoarece trenul nu se apropie.

Cod: %% Header

% Microcontroler Project-Night Train

% John Brown, Trent Payne, Karsten Parker; Secțiunea 9

% 3 octombrie 2017

% Descrierea proiectului: Proiectați un microcontroler care necesită două intrări și

% produce două rezultate pentru a ajuta la îmbunătățirea aspectelor unei configurări a modelului de tren

% Soluție metodă: Utilizați diverse resurse și Matlab pentru a îmbunătăți aspectele

% model configurare tren.

%% Setup-Prima intrare / ieșire

în timp ce este adevărat

a = 0;% inițializează a

în timp ce readDigitalPin (rpi, 21) == 1

a = 1;% oprește executarea codului luminos înainte de codul de dialog al întrebării

întrebare = ('Trenul se oprește în gară. Doriți să sunați din claxon?');

question_title = ('Horn Horn');

resp = questdlg (întrebare, întrebare_titlu, „da”, „nu”, „nu”);% apare fereastra de dialog cu două opțiuni și un răspuns implicit

tf = strcmp (resp, 'da');% compară lungimea răspunsului matricei de caractere cu matricea de caractere da.

if tf == 1% if resp = 'yes'

[Y, FS] = audioread ('train_horn.m4a');% ia fișierul audio și îl convertește în date eșantion, y și rata de eșantionare, FS.

sunet (Y, FS)% comandă de sunet preia datele eșantionate și rata de eșantionare și generează sunet

msgbox („Sună claxonul trenului!”)

pauză (2)

pauză

else% if resp = 'nu', tf va fi logic 0 deoarece nu și da matricile de caractere au lungimi diferite

msgbox („Claxonul trenului nu a sunat!”)

pauză (2)

pauză

Sfârșit

Sfârșit

în timp ce readDigitalPin (rpi, 21) == 1 && a == 1% pornește în timp ce bucla în timp ce comutatorul este activat și se deschide caseta de dialog pentru întrebări

% Acest prim segment de cod aprinde luminile în ordine.

writeDigitalPin (rpi, 4, 0)

pauză (0,25)

writeDigitalPin (rpi, 5, 0)

pauză (0,25)

writeDigitalPin (rpi, 6, 0)

pauză (0,25)

writeDigitalPin (rpi, 7, 0)

pauză (0,25)

% Acest al doilea segment de cod stinge luminile în ordine.

writeDigitalPin (rpi, 4, 1)

pauză (0,25)

writeDigitalPin (rpi, 5, 1)

pauză (0,25)

writeDigitalPin (rpi, 6, 1)

pauză (0,25)

writeDigitalPin (rpi, 7, 1)

pauză (0,25)

end% end while loop

Sfârșit

Pasul 4: Ascultați trenul pentru a veni în jurul colțului și urmăriți cum luminile vă avertizează să faceți un pas înapoi

Ascultați trenul pentru a veni în jurul colțului și urmăriți cum luminile vă avertizează să faceți un pas înapoi
Ascultați trenul pentru a veni în jurul colțului și urmăriți cum luminile vă avertizează să faceți un pas înapoi

Pe măsură ce trenul se apropie și traversează senzorii infraroșii, luminile se vor stinge, pornind claxonul trenului pentru a ajunge pasagerii să se îndepărteze de margine; cu toate acestea, va apărea și o casetă de dialog care va apărea întrebându-l pe dirijorul trenului: „Trenul se apropie de gară, trenul se oprește?”, apoi o secundă citește „Claxonul trenului sună”, iar dacă claxonul nu este tras, o a treia casetă de dialog va spune: „cornul nu a fost sunat”.

Pasul 5: Configurare finală

Configurare finală
Configurare finală

Pentru a finaliza proiectul, întregul sistem ar trebui combinat în gara albastră, care a fost imprimată 3D pentru estetică. Gara simbolizează locul în care vor fi pasagerii la sosirea trenului. Acum vor fi în siguranță datorită sistemului de avertizare pentru trenul de noapte.

Recomandat: