Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
Mensen hebben de neiging om nostalgisch te zijn over hobby's die voor hen belangrijk zijn, zoals wandelen.
Maar hoe bewaar je de herinnering aan een wandeling?
Foto's zijn een optie, ja. Dit apparaat zou een andere optie mogelijk maken om gegevensarchieven van de reis te zijn. De persoon zou een grafiek hebben die de tijd uitzet die de wandeling heeft geduurd in vergelijking met de hoogte die ze hebben gewandeld. Bovendien zou het hen de maximale, minimale en gemiddelde druk vertellen waaraan ze gedurende de hele wandeling werden blootgesteld.
Dit maakt gebruik van de Internet of Things hoogte- en druksensor om gegevens over de wandeling te bewaken en vast te leggen. MATLAB wordt vervolgens gebruikt om de gegevens te analyseren om toetsdrukmetingen en een grafiek van tijd versus hoogte uit te voeren.
Stap 1: Onderdelen en materialen
Sparkfun ESP8266
Compatibele hoogte-/druksensor
Draden
USB naar micro-USB-kabel
ThingSpeak-account
Arduino-software
MATLAB-software en ThingSpeak-gereedschapskist
Stap 2: Software instellen
Account aanmaken
Maak een "Nieuw kanaal"
Label veld 1 als hoogte en veld 2 als druk
Kanaal opslaan
Ga naar "Delen" en selecteer "Kanaalweergave delen met iedereen"
Plak de code van [https://ef.engr.utk.edu/ef230-2017-08/projects/ard…] in Arduino
Wijzig wifi-netwerk "ssid" en wachtwoord
Wijzig "streamID" en "privateKey" om overeen te komen met API-sleutels op ThingSpeak
Stap 3: Hardware instellen
Draadhardware volgens de bovenstaande afbeelding:
Sluit USB aan op laptop en ESP8266
Stap 4: Verbinding maken met uw apparaat
Zoek en draai de kleine, zwarte schakelaar op de ESP8266 om deze in te schakelen
Klik op de naar rechts gerichte pijl in de linkerbovenhoek van het Arduino-programma om de code te uploaden (dit kan een paar minuten duren)
Nu zouden de sensormetingen gegevens moeten uitvoeren naar de ThingSpeak-website, die grafisch wordt weergegeven
Stap 5: MATLAB-codering
Kopieer de volgende code voor de functie "microcontroller_project" naar MATLAB
Wijzig de vetgedrukte tekst zodat deze bij het specifieke ThingSpeak-kanaal past
(De vetgedrukte "90" verwijst naar het aantal minuten aan gegevens dat van het kanaal in aanmerking is genomen. Wijzig dit handmatig op basis van hoe lang het kanaal al actief is.)
Roep de functie aan door "microcontroller_project" in het opdrachtvenster te typen
Code:
functie [grafiek Pressures_Pa] = microcontroller_project ()data = thingSpeakRead (364102, 'Fields', [1, 2], 'NumMinutes', 90, 'OutputFormat', 'table');
readChannelID=364102;
readAPIKey='U9AJ9S68KVNYQKQV';
hoogteveldID=1;
drukveldID=2;
writeChannelID=364102;
writeAPIKey='6H8W3UNH6HMT1TCZ';
voor i=1:max(grootte(gegevens))
tijdstempel = gegevens (i, 1);
time_cell_array=table2cell (tijdstempel);
time_string_array=datestr(time_cell_array{1, 1});
uur=str2num(time_string_array(13:14));
minuut=str2num(time_string_array (16:17));
second=str2num(time_string_array(19:20));
tijd(i)=3600.*uur+60.*minuut+seconde;
einde
alt=gegevens(:, 2);
alt2=tabel2cell(alt);
hoogte = transponeren (cell2mat (alt2));
p=gegevens(:, 3);
druk=cell2mat(table2cell(p));
plot (tijd, hoogte)
title('Gegevens wandelroute: tijd versus hoogte')
xlabel('Tijd (sec)')
ylabel('Hoogte (ft)')
str=datum; legende(str)
Pressures_Pa.max=max(druk)
Pressures_Pa.min=min (druk)
Pressures_Pa.avg=gemiddelde (druk)
einde