Inhoudsopgave:

Thomas de trein de mogelijkheid geven om 's nachts te rijden: 5 stappen
Thomas de trein de mogelijkheid geven om 's nachts te rijden: 5 stappen

Video: Thomas de trein de mogelijkheid geven om 's nachts te rijden: 5 stappen

Video: Thomas de trein de mogelijkheid geven om 's nachts te rijden: 5 stappen
Video: KIJK MEE MET DE AMBULANCE DIENST! - TOPDOKS HULPDIENSTEN 2024, November
Anonim
Thomas de trein de mogelijkheid geven om 's nachts te rijden
Thomas de trein de mogelijkheid geven om 's nachts te rijden

Deze instructable leert je hoe je een lichtsysteem maakt om wachtende passagiers te waarschuwen wanneer een trein nadert en ook hoe je een bericht op een laptop kunt laten verschijnen wanneer de trein op het station is. Een geluid voor wanneer de trein het station passeert, wordt gegenereerd samen met een reeks knipperende LED-lampjes. Dit kan allemaal met een Raspberry Pi.

Stap 1: Benodigdheden

Benodigdheden
Benodigdheden

Een computer

MatLab 2016 of nieuwer

Download het Raspberry Pi-pakket

3D-printer

3D-geprint treinstation om de frambozenpi te huisvesten

Raspberry Pi met de volgende componenten:

2 infraroodsensoren

5 LED-lampjes naar keuze in kleur

11 draden

2 weerstanden

200-300 Ohm weerstanden

USB-akkoord om de computer aan te sluiten op de Raspberry Pi

Stap 2: Ontwerp het circuit voor de gewenste uitgangen en ingangen

Ontwerp het circuit voor de gewenste uitgangen en ingangen
Ontwerp het circuit voor de gewenste uitgangen en ingangen

Met behulp van basiscircuits moeten de lichten en de infraroodzender en -ontvanger worden aangesloten op de Raspberry Pi. De rode LED-lampjes zijn aangesloten op aarde en worden vervolgens aangesloten op GPIO-pinnen 4, 5, 6 en 7. De infraroodontvanger is aangesloten op GPIO-pin 21 en de infraroodzender is aangesloten op de 5V-pin.

Stap 3: Ontwikkel codering om aan het gewenste resultaat te voldoen

Ontwikkel codering om te voldoen aan de gewenste uitkomst
Ontwikkel codering om te voldoen aan de gewenste uitkomst

De belangrijkste regels van de code zijn regels 12 en 16 die de dialoogvensters starten. Regel 18, het if-statement, leest of de infraroodsensoren een obstructie ertussen hebben en als ze worden gehinderd, betekent dit dat de trein passeert, de claxon klinkt en de lichten aan gaan. Als de verklaring onwaar is, gebeurt er niets omdat de trein niet nadert.

Code: %% Koptekst

%Microcontroller Project-Nachttrein

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

%3 oktober 2017

%Projectbeschrijving: Ontwerp een microcontroller die twee ingangen nodig heeft en

%produceert twee uitgangen om aspecten van een modeltreinopstelling te helpen verbeteren

% Oplossingsmethode: gebruik verschillende bronnen en Matlab om aspecten van de

%model trein setup.

%% Setup-Eerste invoer/uitvoer

terwijl het waar is

a=0;%initialiseert a

while readDigitalPin(rpi, 21) == 1

a=1;% stopt de uitvoering van de lichtcode vóór de code van het vraagdialoogvenster

vraag=('De trein stopt bij het station. Wilt u aanbellen?');

vraag_title=('Trein Hoorn');

resp=questdlg(question, question_title, 'yes', 'no', 'no');% verschijnt een vraagdialoogvenster met twee opties en een standaardantwoord

tf=strcmp(resp, 'yes');%vergelijkt de lengte van de tekenreeks van het antwoord met de tekenreeks ja.

if tf==1%if resp='ja'

[Y, FS]=audioread('train_horn.m4a');%neemt audiobestand en converteert het naar voorbeeldgegevens, y, en bemonsteringssnelheid, FS.

sound(Y, FS)%sound-opdracht neemt gesamplede gegevens en bemonsteringssnelheid en genereert geluid

msgbox('De treinhoorn klinkt!')

pauze (2)

pauze

else%if resp='no', tf zal logisch 0 zijn omdat nee en ja char-arrays verschillende lengtes hebben

msgbox('De treinhoorn is niet geklonken!')

pauze (2)

pauze

einde

einde

while readDigitalPin(rpi, 21) == 1 && a==1 %start while-lus terwijl de schakelaar is ingeschakeld en het vraagdialoogvenster is gestart

%Dit eerste codesegment zet de lichten in volgorde aan.

schrijfDigitalPin(rpi, 4, 0)

pauze(0,25)

writeDigitalPin(rpi, 5, 0)

pauze(0,25)

schrijfDigitalPin(rpi, 6, 0)

pauze(0,25)

schrijfDigitalPin(rpi, 7, 0)

pauze(0,25)

%Dit tweede codesegment schakelt de lichten in volgorde uit.

schrijfDigitalPin(rpi, 4, 1)

pauze(0,25)

schrijfDigitalPin(rpi, 5, 1)

pauze(0,25)

schrijfDigitalPin(rpi, 6, 1)

pauze(0,25)

schrijfDigitalPin(rpi, 7, 1)

pauze(0,25)

end%end while-lus

einde

Stap 4: Luister of de trein om de hoek komt en kijk hoe de lichten je waarschuwen om achteruit te gaan

Luister of de trein om de hoek komt en kijk hoe de lichten je waarschuwen om achteruit te gaan
Luister of de trein om de hoek komt en kijk hoe de lichten je waarschuwen om achteruit te gaan

Terwijl de trein de infraroodsensoren nadert en passeert, gaan de lichten uit, waardoor de treinhoorn afgaat om passagiers aan te komen die van de rand wegstappen; er zal echter ook een dialoogvenster verschijnen dat de treinconducteur vraagt: "De trein nadert het station, stopt de trein?", en een tweede luidt: "De treinhoorn klinkt", en als de hoorn niet klinkt getrokken, zal een derde dialoogvenster zeggen: "Er is niet op de hoorn geklonken."

Stap 5: Definitieve installatie

Definitieve installatie
Definitieve installatie

Om het project te voltooien, moet het hele systeem worden gecombineerd in het blauwe treinstation dat 3D-geprint is voor esthetiek. Het treinstation symboliseert waar de passagiers zullen zijn als de trein aankomt. Nu zijn ze veilig dankzij het waarschuwingssysteem Nachttrein.

Aanbevolen: