Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Ljudi su skloni nostalgiji prema hobijima koji su im važni, poput planinarenja.
Ali kako čuvati uspomenu na pješačenje?
Slike su opcija, da. Ovaj bi uređaj dopustio da druga mogućnost budu arhive podataka s putovanja. Osoba bi imala grafikon koji prikazuje vrijeme potrebno za pješačenje u usporedbi s nadmorskom visinom koju je pješačila. Osim toga, to će im reći maksimalan, min i prosječni pritisak kojem su bili izloženi tijekom cijele dužine pješačenja.
Ovo koristi senzor nadmorske visine i tlaka Interneta stvari za praćenje i snimanje podataka o pohodu. MATLAB se zatim koristi za analizu podataka za ispis ključnih očitanja tlaka i grafikona vremena u odnosu na nadmorsku visinu.
Korak 1: Dijelovi i materijali
Sparkfun ESP8266
Kompatibilan senzor visine/pritiska
Žice
USB na mikro-USB kabel
ThingSpeak račun
Arduino softver
MATLAB softver i alatna kutija ThingSpeak
Korak 2: Postavljanje softvera
Stvorite račun
Izradite "Novi kanal"
Označite polje 1 kao nadmorsku visinu, a polje 2 kao tlak
Spremi kanal
Idite na "Dijeljenje" i odaberite "Podijeli prikaz kanala sa svima"
Zalijepite kôd s [https://ef.engr.utk.edu/ef230-2017-08/projects/ard…] u Arduino
Promijenite "ssid" WiFi mreže i lozinku
Promijenite "streamID" i "privateKey" tako da odgovaraju API ključevima na ThingSpeaku
Korak 3: Postavljanje hardvera
Žičani hardver prema gornjoj slici
Priključite USB u prijenosno računalo i ESP8266
Korak 4: Povezivanje s vašim uređajem
Potražite i okrenite mali crni prekidač na ESP8266 da biste ga uključili
Pritisnite strelicu okrenutu udesno u gornjem lijevom kutu programa Arduino za učitavanje koda (to može potrajati nekoliko minuta)
Sada bi očitanja senzora trebala slati podatke na web stranicu ThingSpeak, koja je grafički prikazana
Korak 5: MATLAB kodiranje
Kopirajte sljedeći kôd za funkciju "mikrokontroler_projekt" u MATLAB
Promijenite podebljani tekst tako da odgovara specifičnom kanalu ThingSpeak
(Podebljano "90" odnosi se na minute podataka uzetih u obzir s kanala. Promijenite to ručno ovisno o tome koliko dugo kanal radi.)
Pozovite funkciju upisivanjem "microcontroller_project" u naredbeni prozor
Kodirati:
function [graph Pressures_Pa] = microcontroller_project () data = thingSpeakRead (364102, 'Polja', [1, 2], 'NumMinutes', 90, 'OutputFormat', 'tablica');
readChannelID = 364102;
readAPIKey = 'U9AJ9S68KVNYQKQV';
visinsko poljeID = 1;
polje tlakaID = 2;
writeChannelID = 364102;
writeAPIKey = '6H8W3UNH6HMT1TCZ';
za i = 1: max (veličina (podaci))
vremenska oznaka = podaci (i, 1);
time_cell_array = table2cell (vremenska oznaka);
time_string_array = datestr (time_cell_array {1, 1});
hour = str2num (time_string_array (13:14));
minuta = str2num (vremenski_strujni_red (16:17));
drugi = str2num (vremenski_strujni_market (19:20));
vrijeme (i) = 3600.*sat+60.*minuta+sekunda;
kraj
alt = podaci (:, 2);
alt2 = tablica2 ćelija (alt);
visina = transponirati (cell2mat (alt2));
p = podaci (:, 3);
tlak = ćelija2mat (tablica2 ćelija (p));
radnja (vrijeme, nadmorska visina)
title ('Podaci o pješačkoj stazi: vrijeme u odnosu na nadmorsku visinu')
xlabel ('Vrijeme (sek)')
ylabel ('Nadmorska visina (ft)')
str = datum; legenda (str)
Tlakovi_Pa.max = max (tlak)
Tlakovi_Pa.min = min (tlak)
Pritisci_Pa.avg = srednji (tlak)
kraj