Jak zakodować „Notatnik turysty”: 5 kroków (ze zdjęciami)
Jak zakodować „Notatnik turysty”: 5 kroków (ze zdjęciami)
Anonim
Jak kodować
Jak kodować
|

Ludzie mają tendencję do nostalgii za hobby, które są dla nich ważne, takie jak wędrówki.

Ale jak zachować pamięć o wędrówce?

Zdjęcia są opcją, tak. To urządzenie pozwoliłoby na inną opcję, aby były archiwami danych z podróży. Osoba miałaby wykres przedstawiający czas wędrówki w porównaniu z wysokością, na którą wspięła się. Ponadto poinformuje ich o maksymalnym, minimalnym i średnim ciśnieniu, na które byli narażeni podczas całej wędrówki.

Wykorzystuje czujnik wysokości i ciśnienia Internetu Rzeczy do monitorowania i rejestrowania danych o wędrówce. MATLAB jest następnie używany do analizy danych w celu uzyskania kluczowych odczytów ciśnienia i wykresu czasu w funkcji wysokości.

Krok 1: Części i materiały

Części i materiały
Części i materiały

Sparkfun ESP8266

Kompatybilny czujnik wysokości/ciśnienia

Przewody

Kabel USB do micro-USB

Konto ThingSpeak

Oprogramowanie Arduino

Oprogramowanie MATLAB i zestaw narzędzi ThingSpeak

Krok 2: Konfiguracja oprogramowania

Utwórz konto

Utwórz „nowy kanał”

Oznacz pole 1 jako wysokość, a pole 2 jako ciśnienie

Zapisz kanał

Przejdź do „Udostępnianie” i wybierz „Udostępnij widok kanału wszystkim”

Wklej kod z [https://ef.engr.utk.edu/ef230-2017-08/projects/ard…] do Arduino

Zmień „ssid” sieci Wi-Fi i hasło

Zmień „streamID” i „privateKey”, aby pasowały do kluczy API w ThingSpeak

Krok 3: Konfiguracja sprzętu

Konfiguracja sprzętu
Konfiguracja sprzętu

Sprzęt drutowy zgodnie z powyższym obrazkiem!

Podłącz USB do laptopa i ESP8266

Krok 4: Łączenie z urządzeniem

Poszukaj i przestaw mały, czarny przełącznik na ESP8266, aby go włączyć

Kliknij strzałkę skierowaną w prawo w lewym górnym rogu programu Arduino, aby przesłać kod (może to potrwać kilka minut)

Teraz odczyty czujnika powinny przesyłać dane do witryny ThingSpeak, która jest przedstawiona graficznie

Krok 5: Kodowanie MATLAB

Skopiuj następujący kod funkcji „microcontroller_project” do MATLAB

Zmień pogrubiony tekst, aby pasował do konkretnego kanału ThingSpeak

("90" pogrubione odnosi się do wartości minut danych wziętych pod uwagę z kanału. Zmień to ręcznie w zależności od tego, jak długo kanał działał.)

Wywołaj funkcję, wpisując „microcontroller_project” w oknie poleceń

Kod:

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

IDKanału odczytu=364102;

readAPIKey='U9AJ9S68KVNYQKQV';

Id pola wysokości=1;

ID pola ciśnienia=2;

writeChannelID=364102;

writeAPIKey='6H8W3UNH6HMT1TCZ';

dla i=1:max(rozmiar(dane))

znacznik czasu=dane(i, 1);

tablica_komórek_czasu=komórka_tabeli(sygnatura czasowa);

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

godzina=str2num(time_string_array(13:14));

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

drugi=str2num(time_string_array(19:20));

czas(i)=3600.*godzina+60.*minuta+sekunda;

kończyć się

alt=dane(:, 2);

alt2=tabela2komórka(alt);

height=transpose(cell2mat(alt2));

p=dane(:, 3);

ciśnienie=komórka2mat(tabela2komórka(p));

działka (czas, wysokość)

title('Dane szlaku turystycznego: czas a wysokość')

xlabel('Czas (sek)')

ylabel('Wysokość (w stopach)')

str=data; legenda(str)

Ciśnienia_Pa.max=max(ciśnienie)

Ciśnienie_Pa.min=min(ciśnienie)

Ciśnienia_Pa.avg=średnia(ciśnienie)

kończyć się