Innholdsfortegnelse:
- Trinn 1: Materialer og rekvisita
- Trinn 2: Board Setup
- Trinn 3: Skrive koden
- Trinn 4: Kopier koden
- Trinn 5: Resultater
Video: Desert Railroad Temperature Detector & Passenger Counter: 5 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
Hensikt:
Temperatur: Denne instruksjonen vil lære deg hvordan du setter opp og programmerer et Arduino RedBoard (ved hjelp av MATLAB) for å oppdage temperaturen på en jernbane. Når en usikker temperatur for passasjerene er nådd, høres en advarselsmelding, summer summer, og et advarselsskilt lyser.
Passasjerteller: Denne delen vil lære deg hvordan du bruker en knapp for å telle passasjerer og varsle en advarsel når maksimal kapasitet er nådd.
Funksjoner:
- Bruker knappen for å telle opp passasjerer som kommer inn i toget
- Bruker TMP36 (temperatursensor) for å oppdage temperaturen på jernbanen
- Bruker et rødt LED -lys for å advare togstasjonen
- Bruker summer til å slå alarm
- Sender en varsel på e -post med plott av temperatur mot tid
- Popup-advarsler på MATLAB
Trinn 1: Materialer og rekvisita
- 1 bærbar PC
- MATLAB 2017
- Last ned Arduino Toolbox
- Sparkfun RedBoard
- 1 strømkabel
- Brødbord
- 14 ledninger
- 1 Piezo -summer
- 1 Trykknapp
- 2 10k ohm motstander
- 1 TMP36 sensor
- Rødt LED -lys
- 3D -trykt skilt (valgfritt)
Trinn 2: Board Setup
Følg oppsettet ovenfor
Trinn 3: Skrive koden
Mens sløyfe: For å sikre at koden fortsetter å teste temperaturen og registrere knappestatusen (trykket eller ikke trykket), plasserer vi koden i mens -løkken i en bestemt periode.
Bruke TMP36: Vi bestemmer temperaturen ved å lese av spenningen og konvertere den til grader Fahrenheit, ved hjelp av konverteringsfaktorer. Deretter bruker vi en if -setning for å spille av en tone og lyd/sende varsler hvis temperaturen er større enn eller lik den angitte maksimale temperaturen
Bruke knapp: Med en if -setning kan vi teste om knappen ble trykket med readDigitalPin. Denne kommandoen returnerer en boolsk (1 eller 0). Hvis svaret er 0, ble knappen trykket og passasjertelleren øker og viser en velkomstmelding. Når maksimal kapasitet er nådd, høres det en advarsel.
Trinn 4: Kopier koden
%Innganger: Trykk på knappen, temperatursensor
%Utganger: lys, summer, lydvarsel, e -post, grafer
%Formål: Dette produktet er designet for å sikre sikkerheten og komforten til %passasjerer som reiser med tog gjennom ørkenen.
%Bruk: oppdager antall passasjerer ved hjelp av en trykknapp, og %oppdager varmen ved hjelp av en temperatursensor og tegner den og sender både %passasjerer og temperaturgrafen til togstasjonen
configurePin (a, 'D2', 'pullup'); %i fremtidige utgivelser bruker configurePin
tid = 200;
e = 0;
x = 0
mens tiden> 0
button_status = readDigitalPin (a, 'D2'); % er lik null når knappen trykkes, ellers er 1
voltage = readVoltage (a, 'A0');%pin avhenger av hvor vi plasserer den
tempCelcius = (spenning*100) -50; %gitt i sensorhåndboken
tempF (tid) = (tempCelcius*1.8) +32 %kjent konverteringsformel
maks = 120; %grader F.
writeDigitalPin (a, 'D11', 1);
rem = mod (e, 2);
hvis tempF (tid)> = maks
writeDigitalPin (a, 'D11', 0);
writeDigitalPin (a, 'D9', 1);
playTone (a, 'D9', 2400,.5)
pause (.5)
writeDigitalPin (a, 'D6', 1)
playTone (a, 'D6', 1000,.5)
pause (.5)
writeDigitalPin (a, 'D9', 1);
playTone (a, 'D9', 2400,.5)
pause (.5)
writeDigitalPin (a, 'D6', 1)
playTone (a, 'D6', 1000,.5) %spiller "sirene"
z = 'Overoppheting.m4a'; %Dette setter lydfilen inn i en variabel
[data, freq] = lydlesing (z); %Laster data fra lydfil
o = lydspiller (data, frekvens); %Oppretter et objekt for å kontrollere avspillingen av lydfilen
o.play () %Spiller av lydfil
o.playblocking () %Spiller av filen og venter på at den skal være ferdig
slutt
hvis button_status == 0 && rem == 0
e = e+1
msgbox ('Velkommen ombord!');
elseif button_status == 0 && rem == 1
e = e+1
msgbox ('Bienvenido a bordo!');
slutt
hvis e == 5
writeDigitalPin (a, 'D11', 0);
hvis x == 0
playTone (a, 'D6', 600, 1);
s = 'Advarsel_EF.m4a'; %Dette setter lydfilen inn i en variabel
[data, frekvens] = lydlesing (er); %Laster data fra lydfil
o = lydspiller (data, frekvens); %Oppretter et objekt for å kontrollere avspillingen av lydfilen
% o.play () % Spiller av lydfil
o.playblocking () %Spiller av filen og venter på at den skal være ferdig
msgbox ('Maksimal kapasitet')
x = x+1
slutt
elseif e> = 6
playTone (a, 'D6', 2400, 0);
slutt
tid = tid - 1;
% pause (0,1);
% hvis e == 5 && max (tempF)> = 120
% tid = 0
% slutt
slutt
ee = num2str (e)
t = [1: 200];
tempF2 = fliplr (tempF);
plot (t, tempF2);
tittel ('Tid vs. temperatur')
ylabel ('Temperatur (F)')
xlabel ('Tid (er)')
saveas (gcf, 'tempplot.jpg')
mail = '[email protected]'
password = 'Srsora123#'
host = 'smtp.gmail.com'
setpref ('Internett', 'SMTP_Server', vert);
setpref ('Internett', 'E_mail', post);
setpref ('Internett', 'SMTP_Username', mail);
setpref ('Internett', 'SMTP_Password', passord);
rekvisitter = java.lang. System.getProperties;
props.setProperty ('mail.smtp.auth', 'true');
props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory');
props.setProperty ('mail.smtp.socketFactory.port', '465');
sendmail (mail, 'Hello Train Station! Det er så mange passasjerer i toget', ee, 'tempplot.jpg')
Trinn 5: Resultater
Anbefalt:
Enkel automatisert Point to Point Model Railroad: 10 trinn (med bilder)
Enkel automatisert punkt -til -punkt modell jernbane: Arduino mikrokontrollere er gode til å automatisere modelljernbanelinjer. Automatisering av oppsett er nyttig for mange formål, for eksempel å sette oppsettet ditt på et display hvor layoutoperasjonen kan programmeres til å kjøre tog i en automatisk sekvens. Den l
Model Railroad Automatic Tunnel Lights: 5 trinn
Model Railroad Automatic Tunnel Lights: Dette er mitt favoritt kretskort. Jernbanemodellen min (fortsatt pågår) har en rekke tunneler, og selv om den sannsynligvis ikke var prototypisk, ønsket jeg å ha tunnellys som ble slått på da toget nærmet seg tunnelen. Min første impuls var å b
O Scale Model Railroad Tornado: 16 trinn
O Scale Model Railroad Tornado: Jeg er sikker på at hver person har sett en Tornado i videoer. Men har du sett en operere i full animasjon på en O Scale Model Railroad? Vel, vi har ikke installert det på jernbanen ennå, fordi det er en del av et komplett lyd- og animasjonssystem
Automatisert Point to Point Model Railroad With Yard Siding: 10 trinn (med bilder)
Automatisert Point to Point Model Railroad With Yard Siding: Arduino mikrokontrollere åpner store muligheter for modelljernbaner, spesielt når det gjelder automatisering. Dette prosjektet er et eksempel på en slik applikasjon. Det er en fortsettelse av et av de tidligere prosjektene. Dette prosjektet består av et poeng
One More Arduino Weather Station (ESP-01 & BMP280 & DHT11 & OneWire): 4 trinn
One More Arduino Weather Station (ESP-01 & BMP280 & DHT11 & OneWire): Her kan du finne en iterasjon av bruk av OneWire med de få pinnene på en ESP-01. valg (du må ha legitimasjon …) Samler sansedata fra en BMP280 og en DHT11