Innehållsförteckning:
- Steg 1: Material och tillbehör
- Steg 2: Board Setup
- Steg 3: Skriva koden
- Steg 4: Kopiera koden
- Steg 5: Resultat
Video: Desert Railroad Temperature Detector & Passenger Counter: 5 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Ändamål:
Temperatur: Den här instruerbara lär dig hur du ställer in och programmerar en Arduino RedBoard (med MATLAB) för att detektera temperaturen på en järnväg. När en osäker temperatur för passagerarna uppnås, hörs ett varningsmeddelande, summer hörs och en varningsskylt tänds.
Passagerarräknare: Den här delen lär dig hur du använder en knapp för att räkna passagerare och avge en varning när maxkapacitet har uppnåtts.
Funktioner:
- Använder knapp för att räkna upp passagerare som går in i tåg
- Använder TMP36 (temperaturgivare) för att detektera järnvägens temperatur
- Använder en röd LED -lampa för att varna tågstationen
- Använder summer för att larma
- Skickar ett varningsmeddelande med en diagram över temperatur mot tid
- Popup-varningsmeddelanden på MATLAB
Steg 1: Material och tillbehör
- 1 bärbar dator
- MATLAB 2017
- Ladda ner Arduino Toolbox
- Sparkfun RedBoard
- 1 strömkabel
- Brödbord
- 14 ledningar
- 1 Piezo -summer
- 1 Tryckknapp
- 2 10k ohm motstånd
- 1 TMP36 -sensor
- Rött LED -ljus
- 3D -tryckt skylt (tillval)
Steg 2: Board Setup
Följ installationen ovan
Steg 3: Skriva koden
Medan loop: För att säkerställa att koden fortsätter att testa temperaturen och känna av knappstatus (tryckt eller ej tryckt), placerar vi koden i while -loop för en viss tidsperiod.
Använda TMP36: Vi bestämmer temperaturen genom att läsa av spänningen och omvandla den till grader Fahrenheit med hjälp av omvandlingsfaktorer. Sedan använder vi en if -sats för att spela upp en ton och ljud/skicka varningar om temperaturen är högre än eller lika med den inställda maxtemperaturen
Användningsknapp: Med en if -sats kan vi testa om knappen trycktes med readDigitalPin. Detta kommando returnerar en booleskt (1 eller 0). Om svaret är 0, tryckte man på knappen och passagerarens räknare ökar och visar ett välkomstmeddelande. När den maximala kapaciteten uppnås ljuder ett varningsmeddelande.
Steg 4: Kopiera koden
%Ingångar: Tryck på knappen, temperaturgivare
%Utgångar: lampor, summer, ljudvarning, mejl, grafer
%Syfte: Denna produkt är utformad för att säkerställa säkerheten och komforten för %passagerare som reser med tåg genom öknen.
%Användning: Upptäcker antalet passagerare med en tryckknapp, och %detekterar värmen med en temperatursensor och ritar den och skickar både %passagerarnummer och temperaturdiagrammet till tågstationen
configurePin (a, 'D2', 'pullup'); %i framtida versioner använder configurePin
tid = 200;
e = 0;
x = 0
medan tiden> 0
button_status = readDigitalPin (a, 'D2'); % är lika med noll när knappen trycks in, annars är 1
voltage = readVoltage (a, 'A0');%pin beror på var vi placerar den
tempCelcius = (spänning*100) -50; %anges i sensorhandboken
tempF (tid) = (tempCelcius*1,8) +32 %känd omvandlingsformel
max = 120; %grader F
writeDigitalPin (a, 'D11', 1);
rem = mod (e, 2);
om tempF (tid)> = max
writeDigitalPin (a, 'D11', 0);
writeDigitalPin (a, 'D9', 1);
playTone (a, 'D9', 2400,.5)
paus (.5)
writeDigitalPin (a, 'D6', 1)
playTone (a, 'D6', 1000,.5)
paus (.5)
writeDigitalPin (a, 'D9', 1);
playTone (a, 'D9', 2400,.5)
paus (.5)
writeDigitalPin (a, 'D6', 1)
playTone (a, 'D6', 1000,.5) %spelar "siren"
z = 'Överhettning.m4a'; %Detta sätter ljudfilen i en variabel
[data, frekv] = ljudläsning (z); %Läser in data från ljudfilen
o = ljudspelare (data, frekvens); %Skapar ett objekt för att styra uppspelningen av ljudfilen
o.play () %Spelar ljudfil
o.playblocking () %Spelar upp filen och väntar på att den ska slutföras
slutet
if button_status == 0 && rem == 0
e = e+1
msgbox ('Välkommen ombord!');
elseif button_status == 0 && rem == 1
e = e+1
msgbox ('Bienvenido a bordo!');
slutet
om e == 5
writeDigitalPin (a, 'D11', 0);
om x == 0
playTone (a, 'D6', 600, 1);
s = 'Varning_EF.m4a'; %Detta sätter ljudfilen i en variabel
[data, frekv] = ljudläsning (er); %Läser in data från ljudfilen
o = ljudspelare (data, frekvens); %Skapar ett objekt för att styra uppspelningen av ljudfilen
% o.play () % Spelar ljudfil
o.playblocking () %Spelar upp filen och väntar på att den ska slutföras
msgbox ('Max kapacitet')
x = x+1
slutet
annarsif e> = 6
playTone (a, 'D6', 2400, 0);
slutet
tid = tid - 1;
% paus (0,1);
% om e == 5 && max (tempF)> = 120
% tid = 0
% slutet
slutet
ee = num2str (e)
t = [1: 200];
tempF2 = fliplr (tempF);
plot (t, tempF2);
title ('Time vs. Temperature')
ylabel ('Temperatur (F)')
xlabel ('Tid (ar)')
saveas (gcf, 'tempplot.jpg')
mail = '[email protected]'
password = 'Srsora123#'
host = 'smtp.gmail.com'
setpref ('Internet', 'SMTP_Server', värd);
setpref ('Internet', 'E_mail', e -post);
setpref ('Internet', 'SMTP_Username', mail);
setpref ('Internet', 'SMTP_Password', lösenord);
rekvisita = 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 finns så många passagerare i tåget', ee, 'tempplot.jpg')
Steg 5: Resultat
Rekommenderad:
Enkel automatiserad Point to Point Model Railroad: 10 steg (med bilder)
Enkel automatiserad punkt till punkt modell järnväg: Arduino mikrokontroller är bra för att automatisera modell järnvägs layouter. Automatisering av layouter är användbart för många ändamål, till exempel att lägga upp din layout på en display där layoutoperationen kan programmeras för att köra tåg i en automatiserad sekvens. L
Laptop Touchpad Controlled Model Railroad - PS/2 Arduino -gränssnitt: 14 steg
Laptop Touchpad Controlled Model Railroad | PS/2 Arduino -gränssnitt: En bärbar pekplatta är en av de fantastiska enheterna att använda som ingång för mikrokontrollerprojekt. Så idag, låt oss implementera den här enheten med en Arduino -mikrokontroller för att styra en modelljärnväg. Med en PS/2 -pekplatta kommer vi att kunna styra 3
Model Railroad Automatic Tunnel Lights: 5 steg
Model Railroad Automatic Tunnel Lights: Detta är mitt favorit kretskort. Min modelljärnvägslayout (pågår fortfarande) har ett antal tunnlar och även om det förmodligen inte är prototypiskt, ville jag ha tunnlampor som tändes när tåget närmade sig tunneln. Min första impuls var att
O Scale Model Railroad Tornado: 16 steg
O Scale Model Railroad Tornado: Jag är säker på att varje person har sett en Tornado i videor. Men har du sett en som fungerar i full animation på en O Scale Model Railroad? Tja, vi har inte installerat det på järnvägen ännu, eftersom det är en del av ett komplett ljud- och animationssystem.
One More Arduino Weather Station (ESP-01 & BMP280 & DHT11 & OneWire): 4 steg
One More Arduino Weather Station (ESP-01 & BMP280 & DHT11 & OneWire): Här kan du hitta en iteration av att använda OneWire med de få få stiften på en ESP-01. val (du måste ha meriter …) Samlar in sensoriska data från en BMP280 och en DHT11