Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Oamenii tind să fie nostalgici cu privire la hobby-urile importante pentru ei, cum ar fi drumețiile.
Dar cum păstrezi amintirea unei excursii?
Imaginile sunt o opțiune, da. Acest dispozitiv ar permite unei alte opțiuni să fie arhivele de date din călătorie. Persoana ar avea un grafic care să stabilească timpul pe care l-a luat drumeția în comparație cu altitudinea pe care a mers-o. În plus, le-ar spune presiunea maximă, minimă și medie la care au fost expuși pe toată durata excursiei.
Aceasta utilizează senzorul de altitudine și presiune Internet of Things pentru a monitoriza și înregistra date despre excursie. MATLAB este apoi utilizat pentru a analiza datele pentru a genera citiri de presiune cheie și un grafic de timp vs. altitudine.
Pasul 1: Piese și materiale
Sparkfun ESP8266
Senzor de altitudine / presiune compatibil
Fire
Cablu USB la micro-USB
Contul ThingSpeak
Software Arduino
Software-ul MATLAB și caseta de instrumente ThingSpeak
Pasul 2: Configurarea software-ului
Creează un cont
Creați un „canal nou”
Etichetați câmpul 1 ca altitudine și câmpul 2 ca presiune
Salvați canalul
Accesați „Partajare” și selectați „Distribuiți vizualizarea canalului tuturor”
Lipiți codul de la [https://ef.engr.utk.edu/ef230-2017-08/projects/ard…] în Arduino
Schimbați rețeaua WiFi „ssid” și parola
Schimbați „streamID” și „privateKey” pentru a se potrivi cu cheile API pe ThingSpeak
Pasul 3: Configurarea hardware-ului
Sârmă hardware conform imaginii de mai sus
Conectați USB la laptop și ESP8266
Pasul 4: Conectarea la dispozitivul dvs
Căutați și întoarceți comutatorul mic și negru de pe ESP8266 pentru a porni
Faceți clic pe săgeata orientată spre dreapta din colțul din stânga sus al programului Arduino pentru a încărca codul (aceasta poate dura câteva minute)
Acum, citirile senzorilor ar trebui să trimită date pe site-ul web ThingSpeak, care este reprezentat grafic
Pasul 5: Codificare MATLAB
Copiați următorul cod pentru funcția „microcontroller_project” în MATLAB
Modificați textul aldin pentru a se potrivi canalului specific ThingSpeak
(„90” cu caractere aldine se referă la numărul de minute de date luate în considerare de la canal. Modificați manual acest lucru în funcție de cât timp rulează canalul.)
Apelați funcția tastând „microcontroller_project” în fereastra de comandă
Cod:
function [graph Pressures_Pa] = microcontroller_project () data = thingSpeakRead (364102, 'Fields', [1, 2], 'NumMinutes', 90, 'OutputFormat', 'table');
readChannelID = 364102;
readAPIKey = 'U9AJ9S68KVNYQKQV';
altitudefieldID = 1;
pressurefieldID = 2;
writeChannelID = 364102;
writeAPIKey = '6H8W3UNH6HMT1TCZ';
pentru i = 1: max (dimensiune (date))
timestamp = date (i, 1);
time_cell_array = table2cell (timestamp);
time_string_array = datestr (time_cell_array {1, 1});
hour = str2num (time_string_array (13:14));
minute = str2num (time_string_array (16:17));
second = str2num (time_string_array (19:20));
timp (i) = 3600. * oră + 60. * minut + secundă;
Sfârșit
alt = date (:, 2);
alt2 = table2cell (alt);
altitudine = transpune (cell2mat (alt2));
p = date (:, 3);
presiune = cell2mat (table2cell (p));
parcela (timp, altitudine)
title („Date trasee drumeții: timp vs. altitudine”)
xlabel ('Timp (sec)')
ylabel ('Altitudine (ft)')
str = data; legenda (str)
Presiuni_Pa.max = max (presiune)
Presiuni_Pa.min = min (presiune)
Pressures_Pa.avg = medie (presiune)
Sfârșit