Kuidas kodeerida matkaja külalisteraamatut: 5 sammu (piltidega)
Kuidas kodeerida matkaja külalisteraamatut: 5 sammu (piltidega)
Anonim
Kuidas kodeerida
Kuidas kodeerida
|

Inimesed kipuvad olema nostalgilised nende jaoks oluliste hobide, näiteks matkamise suhtes.

Kuidas aga matka mälestust hoida?

Pildid on võimalus, jah. See seade võimaldaks teisel võimalusel olla reisi arhiivid. Inimesel oleks graafik, mis kirjeldaks matka aega võrreldes tema kõrgusega. Lisaks ütleks see neile maksimaalse, minimaalse ja keskmise rõhu, millega nad kogu matka jooksul kokku puutusid.

See kasutab matkade andmete jälgimiseks ja salvestamiseks asjade Interneti kõrguse ja rõhuandurit. Seejärel kasutatakse MATLABi andmete analüüsimiseks, et väljastada peamised rõhunäidud ja aja ja kõrguse graafik.

Samm: osad ja materjalid

Osad ja materjalid
Osad ja materjalid

Sparkfun ESP8266

Ühilduv kõrguse/rõhuandur

Juhtmed

USB-mikro-USB-kaabel

ThingSpeaki konto

Arduino tarkvara

MATLAB tarkvara ja ThingSpeak tööriistakast

2. samm: tarkvara seadistamine

Kontot looma

Looge "uus kanal"

Märkige väli 1 kõrguseks ja väli 2 rõhuks

Salvesta kanal

Avage jagamine ja valige „Jaga kanalivaadet kõigiga”

Kleepige kood aadressilt [https://ef.engr.utk.edu/ef230-2017-08/projects/ard…] Arduinosse

Muutke WiFi -võrku "ssid" ja parooli

Muutke "streamID" ja "privateKey", et need sobiksid ThingSpeaki API võtmetega

3. samm: riistvara seadistamine

Riistvara seadistamine
Riistvara seadistamine

Traadi riistvara vastavalt ülaltoodud pildile

Ühendage USB sülearvutiga ja ESP8266

Samm: seadmega ühendamine

Sisselülitamiseks otsige ja pöörake ESP8266 väikest musta lülitit

Koodi üleslaadimiseks klõpsake Arduino programmi vasakus ülanurgas paremale suunatud noolt (see võib võtta paar minutit)

Nüüd peaksid anduri näidud väljastama andmeid ThingSpeaki veebisaidile, mis on graafiliselt esitatud

Samm: MATLABi kodeerimine

Kopeerige funktsiooni "mikrokontroller_projekt" järgmine kood MATLAB -i

Muutke rasvast teksti, et see sobiks konkreetse ThingSpeaki kanaliga

(Rasvases kirjas olev "90" viitab minutite väärtusele, mida kanalilt arvesse võetakse. Muutke seda käsitsi vastavalt sellele, kui kaua kanal on töötanud.)

Funktsiooni kutsumiseks tippige käsuaknasse "microcontroller_project"

Kood:

function [graph Pressures_Pa] = microcontroller_project () data = thingSpeakRead (364102, 'Fields', [1, 2], 'NumMinutes', 90, 'OutputFormat', 'table');

readChannelID = 364102;

readAPIKey = 'U9AJ9S68KVNYQKQV';

kõrguseväli ID = 1;

surveväli ID = 2;

writeChannelID = 364102;

writeAPIKey = '6H8W3UNH6HMT1TCZ';

i = 1: max (suurus (andmed))

ajatempel = andmed (i, 1);

time_cell_array = table2cell (timestamp);

time_string_array = datestr (time_cell_array {1, 1});

tund = str2num (aja_stringi_massiiv (13:14));

minut = str2num (time_string_array (16:17));

teine = str2num (aja_stringi_massiiv (19:20));

aeg (i) = 3600.*tund+60.*minut+sekund;

lõpp

alt = andmed (:, 2);

alt2 = tabel2rakk (alt);

kõrgus = ülevõtmine (cell2mat (alt2));

p = andmed (:, 3);

rõhk = cell2mat (tabel2 rakk (p));

maatükk (aeg, kõrgus)

title ('Matkaraja andmed: aeg vs kõrgus')

xlabel ('Aeg (sek)')

ylabel ('Kõrgus (ft)')

str = kuupäev; legend (str)

Rõhud_Pa.max = max (rõhk)

Rõhud_Pa.min = min (rõhk)

Rõhud_Pa.avg = keskmine (rõhk)

lõpp