Sisällysluettelo:
- Vaihe 1: Materiaalit ja tarvikkeet
- Vaihe 2: Taulun asennus
- Vaihe 3: Koodin kirjoittaminen
- Vaihe 4: Kopioi koodi
- Vaihe 5: Tulokset
Video: Aavikon rautatien lämpötilanilmaisin ja matkustajalaskuri: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
Tarkoitus:
Lämpötila: Tämä ohje opettaa sinulle, miten voit asentaa ja ohjelmoida Arduino RedBoardin (käyttäen MATLABia) rautatien lämpötilan havaitsemiseksi. Kun matkustajien vaarallinen lämpötila saavutetaan, kuuluu varoitusviesti, summeri sammuu ja varoitusvalo syttyy.
Matkustajalaskuri: Tämä osa opettaa sinua käyttämään painiketta matkustajien laskemiseksi ja antaa varoituksen, kun maksimikapasiteetti on saavutettu.
Ominaisuudet:
- Painikkeella lasketaan junassa tulevat matkustajat
- Tunnistaa rautatien lämpötilan TMP36: lla (lämpötila -anturi)
- Varoittaa rautatieasemaa punaisella LED -valolla
- Käyttää hälytyksiä summerilla
- Lähettää hälytysviestin, jossa on kuvaaja lämpötilasta vs
- Ponnahdusvaroitukset MATLABissa
Vaihe 1: Materiaalit ja tarvikkeet
- 1 Kannettava tietokone
- MATLAB 2017
- Lataa Arduino Toolbox
- Sparkfun RedBoard
- 1 Virtajohto
- Breadbord
- 14 johtoa
- 1 Pietsosummeri
- 1 Painike
- 2 10 k ohmin vastusta
- 1 TMP36 -anturi
- Punainen LED -valo
- 3D -painettu kyltti (valinnainen)
Vaihe 2: Taulun asennus
Noudata yllä olevia asetuksia
Vaihe 3: Koodin kirjoittaminen
Silmukka: Kun haluat varmistaa, että koodi jatkaa lämpötilan testaamista ja tunnistaa painikkeen tilan (painettuna tai painamatta), asetamme koodin while -silmukkaan tietyn ajan.
Käyttämällä TMP36: Määritämme lämpötilan lukemalla jännitteen ja muuntamalla sen Fahrenheit -asteiksi käyttämällä muuntokertoimia. Sitten käytämme if -lauseketta äänimerkin ja äänen lähettämiseen/hälytysten lähettämiseen, jos lämpötila on korkeampi tai yhtä suuri kuin asetettu maksimilämpötila
Buttonin käyttö: if -lausekkeen avulla voimme testata, onko painiketta painettu readDigitalPin -ohjelmalla. Tämä komento palauttaa Boolen (1 tai 0). Jos vastaus on 0, painiketta painettiin ja matkustajalaskuri kasvaa ja näyttää tervetuloviestin. Kun maksimikapasiteetti on saavutettu, kuuluu varoitusviesti.
Vaihe 4: Kopioi koodi
%Tulot: Painikkeen painaminen, lämpötila -anturi
%Lähdöt: valot, summerit, äänihälytys, sähköpostit, kaaviot
%Tarkoitus: Tämä tuote on suunniteltu auttamaan turvallisuuden ja mukavuuden takaamisessa %matkustajista, jotka matkustavat junalla autiomaassa.
%Käyttö: Matkustajien lukumäärän tunnistaminen painonapilla ja %lämpö lämpöanturin avulla ja sen kuvaaja ja lähettää sekä %matkustajamäärät että lämpötilakaavio rautatieasemalle
configurePin (a, 'D2', 'pullup'); %tulevissa julkaisuissa käyttää configurePin -ohjelmaa
aika = 200;
e = 0;
x = 0
kun aika> 0
button_status = readDigitalPin (a, 'D2'); % on nolla, kun painiketta painetaan, muuten yhtä kuin 1
jännite = lukuVoltage (a, 'A0');%pin riippuu siitä, mihin se sijoitetaan
tempCelcius = (jännite*100) -50; %anturin käsikirjassa
tempF (aika) = (tempCelcius*1,8) +32 %tunnettu muunnoskaava
max = 120; %astetta F.
writeDigitalPin (a, 'D11', 1);
rem = mod (e, 2);
jos tempF (aika)> = max
writeDigitalPin (a, 'D11', 0);
writeDigitalPin (a, 'D9', 1);
playTone (a, 'D9', 2400,.5)
tauko (.5)
writeDigitalPin (a, 'D6', 1)
playTone (a, 'D6', 1000,.5)
tauko (.5)
writeDigitalPin (a, 'D9', 1);
playTone (a, 'D9', 2400,.5)
tauko (.5)
writeDigitalPin (a, 'D6', 1)
playTone (a, 'D6', 1000,.5) %soittaa "sireeniä"
z = 'Ylikuumeneminen.m4a'; %Tämä asettaa äänitiedoston muuttujaan
[data, taajuus] = ääniluku (z); %Lataa tiedot äänitiedostosta
o = audioplayer (data, taajuus); %Luo objektin ohjaamaan äänitiedoston toistoa
o.play () %Toistaa äänitiedoston
o.playblocking () %Toistaa tiedoston ja odottaa sen päättymistä
loppuun
jos button_status == 0 && rem == 0
e = e+1
msgbox ('Tervetuloa!');
elseif button_status == 0 && rem == 1
e = e+1
msgbox ('Bienvenido a bordo!');
loppuun
jos e == 5
writeDigitalPin (a, 'D11', 0);
jos x == 0
playTone (a, 'D6', 600, 1);
s = 'Varoitus_EF.m4a'; %Tämä asettaa äänitiedoston muuttujaan
[data, taajuus] = ääniluku (t); %Lataa tiedot äänitiedostosta
o = audioplayer (data, taajuus); %Luo objektin ohjaamaan äänitiedoston toistoa
% o.play () % Toistaa äänitiedoston
o.playblocking () %Toistaa tiedoston ja odottaa sen päättymistä
msgbox ('Suurin kapasiteetti')
x = x+1
loppuun
muu jos e> = 6
playTone (a, 'D6', 2400, 0);
loppuun
aika = aika - 1;
% tauko (0,1);
% jos e == 5 && max (tempF)> = 120
% aika = 0
% loppu
loppuun
ee = num2str (e)
t = [1: 200];
tempF2 = fliplr (tempF);
käyrä (t, tempF2);
otsikko ('Aika vs. lämpötila')
ylabel ('Lämpötila (F)')
xlabel ('Aika')
saveas (gcf, 'tempplot.jpg')
mail = '[email protected]'
password = 'Srsora123#'
isäntä = 'smtp.gmail.com'
setpref ('Internet', 'SMTP_palvelin', isäntä);
setpref ('Internet', 'Sähköposti', posti);
setpref ('Internet', 'SMTP_Käyttäjänimi', posti);
setpref ('Internet', 'SMTP_Password', salasana);
rekvisiitta = 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 (posti, 'Hei rautatieasema! Junassa on näin paljon matkustajia', ee, 'tempplot.jpg')
Vaihe 5: Tulokset
Suositeltava:
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): 8 vaihetta
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): ultraäänikaiuttimet L298N DC-naarasadapterin virtalähde urospuolisella dc-nastalla ja analogiset portit koodin muuntamiseksi (C ++)
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: 3 vaihetta
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: Seuraava opas auttaa sinua saamaan live-HD-videovirtoja lähes mistä tahansa DJI-dronesta. FlytOS -mobiilisovelluksen ja FlytNow -verkkosovelluksen avulla voit aloittaa videon suoratoiston droonilta
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite
4 vaihetta akun sisäisen vastuksen mittaamiseksi: 4 vaihetta
4 vaihetta akun sisäisen vastuksen mittaamiseksi: Tässä on 4 yksinkertaista vaihetta, joiden avulla voit mitata taikinan sisäisen vastuksen
Automaattinen rautatien ylitysjärjestelmä, joka käyttää Arduino -pohjaista sulautettua alustaa: 9 vaihetta
Automaattinen rautateiden ylitysjärjestelmä Arduino -pohjaisen sulautetun alustan avulla: Joulu on vain viikon päässä! Kaikki ovat kiireisiä juhlien ja lahjojen saamisen kanssa, mikä muuten on entistä vaikeampaa saada loputtomilla mahdollisuuksilla ympärillämme. Entä jos valitset klassisen lahjan ja lisäät ripauksen DIY