Sadržaj:

Vremenska kocka - Arduino gadget za praćenje vremena: 6 koraka
Vremenska kocka - Arduino gadget za praćenje vremena: 6 koraka

Video: Vremenska kocka - Arduino gadget za praćenje vremena: 6 koraka

Video: Vremenska kocka - Arduino gadget za praćenje vremena: 6 koraka
Video: CS50 2015 - Week 7 2024, Juli
Anonim
Time Cube - Arduino gadget za praćenje vremena
Time Cube - Arduino gadget za praćenje vremena
Time Cube - Arduino gadget za praćenje vremena
Time Cube - Arduino gadget za praćenje vremena

Želio bih vam predložiti jednostavan, ali zaista koristan arduino projekt za praćenje vremenskih događaja okretanjem nekog pametnog kockastog gadžeta. Okrenite ga na stranu "Rad"> "Učenje"> "Poslovi"> "Odmor" i računat će vrijeme koje potrošite na tu aktivnost. Vremenska kocka izgrađena je na temelju Arduino Nano i ADXL345 akcelerometra postavljenih u okvir odgovarajuće veličine na kojem možete nacrtati simbole ili nazive aktivnosti. Na kraju dana možete provjeriti statistiku. Nadam se da će me to motivirati da „naučim“više.

Na tržištu postoji mnogo sličnih proizvoda poput TimeFlip.io, Timeular.com, ZEI. Možete probati i lijepi DIY projekt sa Adafruit https://learn.adafruit.com/time-tracking-cube. Međutim, predlažem vam da to učinite mnogo jednostavnijim. Da biste pratili podatke o vremenu, ne trebate nikakvu WiFi ili bluetooth internetsku vezu s uslugama u oblaku. Time Cube se napaja i povezuje sa računarom putem USB kabla. Na računaru morate pokrenuti moju java aplikaciju koja sluša serijske poruke s arduina i prikazuje ukupno provedeno vrijeme.

Svi potrebni izvori programa i neka ne baš detaljna uputstva možete pronaći na mom projektu GitHub:

Supplies

1. Arduino Micro ili Nano poput toga:

2. ADXL345 akcelerometar:

3. Kartonska / plastična kutija

4. USB kabl

Korak 1: Ožičite ploču i akcelerometar

Ožičite ploču i akcelerometar
Ožičite ploču i akcelerometar

ADXL345 senzor je troosni akcelerometar koji može mjeriti sile ubrzanja, a kada je statičan možete pročitati i njegovu orijentaciju. Morate spojiti Arduino Nano ili Micro ploču i ADXL345 akcelerometar kao na slici.

Neću detaljno objašnjavati kako radi ADXL345 akcelerometar. Sve potrebne informacije koje sam pronašao u vrlo lijepom članku o povezivanju akcelerometra s arduinom i programiranju:

Korak 2: Flash program za Arduino Nano

Flash program za Arduino Nano
Flash program za Arduino Nano
Flash program za Arduino Nano
Flash program za Arduino Nano

U ovom koraku moramo prenijeti program iz Arduino studija na arduino ploču. Arduino nano će moći čitati XYZ koordinate sa akcelerometra i slati ih na serijski port u nekakvim paketima podataka poput

Sve potrebne izvore možete preuzeti sa moje stranice projekta GitHub (kao pojedinačna arhivska datoteka):

1. Raspakirajte preuzetu zip arhivu u neku mapu poput c: / program / tcube i otvorite datoteku tcube / arduino / tcub / tcub.ino u Arduino studiju.

2. Povežite arduino ploču s računarom pomoću USB kabela.

3. Iz Alati-> Ploča: odaberite "Arduino Nano" (ili drugu ploču koju namjeravate koristiti).

4. Ako koristite neke kineske arduino klonove, trebate odabrati iz Alati-> Procesor-> ATmega328P (stari učitavač)

5. Odaberite povezani port iz Tools-> Port -> COM3 (u mom slučaju)

6. Otpremite program na arduino

7. Od tog trenutka će odmah slati pakete podataka na USB serijski port.

8. Da biste provjerili radi li sve u redu, otvorite "Serijski monitor" u Arduino Studiju. Trebali biste vidjeti pakete koji su generirali svaku sekundu poput …… (što znači stvarne koordinate akcelerometra).

Korak 3: Instalirajte Java Runtime Environment za pokretanje klijentske aplikacije na računaru

Instalirajte Java Runtime Environment za pokretanje klijentske aplikacije na računaru
Instalirajte Java Runtime Environment za pokretanje klijentske aplikacije na računaru

Prije nego nastavimo, morate provjeriti imate li na računaru instalirano Java Runtime Environment (JRE).

Klijentska aplikacija koju sam stvorio za primanje poruka s Arduina i zbirne statistike napisana je u Java programskom jeziku. A JRE je potreban za pokretanje Java aplikacija. Trebali biste imati instaliran najmanje JRE8. Predlažem da preuzmete x64 verziju za Windows. Molimo preuzmite ga sa Oracle web stranice

Korak 4: Instalirajte klijentsku aplikaciju za čitanje koordinata iz Arduina i praćenje statistike

Instalirajte klijentsku aplikaciju za čitanje koordinata iz Arduina i praćenje statistike
Instalirajte klijentsku aplikaciju za čitanje koordinata iz Arduina i praćenje statistike
Instalirajte klijentsku aplikaciju za čitanje koordinata iz Arduina i praćenje statistike
Instalirajte klijentsku aplikaciju za čitanje koordinata iz Arduina i praćenje statistike

Sada je vrijeme za pripremu i pokretanje klijentske aplikacije na vašem računaru, koja će se spojiti na USB priključak kako bi slušala i pratila statistiku vremena.

Ako ste upoznati s Javom, možete preuzeti i kompajlirati izvore java aplikacije Time Cube iz mog projekta GitHub. Međutim, unutar cijele arhive projekta koju ste već preuzeli već je sastavljena i spremna za upotrebu arhiva aplikacije tcube.zip koju morate raspakirati u neku mapu (to može biti c: / programs / tcube)

Ako pokrenete datoteku run.bat, trebala bi pokrenuti aplikaciju koja će odmah pokušati uspostaviti vezu s nekim aktivnim COM portom koji koristi Arduino ploča (Arduino spojen na USB Windows automatski prepoznaje kao neki virtualni COM port).

Ako je sve ispravno konfigurirano, trebali biste odmah vidjeti brojače vremena koji se pokreću prema nekoj aktivnosti. Okretanjem kocke trebali biste moći pratiti različite aktivnosti. Prozor aplikacije prikazuje dnevnik događaja i možete vidjeti sve greške pri povezivanju koje se mogu dogoditi.

Korak 5: Kalibracija akcelerometra

Kalibracija akcelerometra
Kalibracija akcelerometra

Može se dogoditi da kalibrirate svoju Time Cube jer vaš mjerač ubrzanja nije orijentiran baš kao ja. Samo otvorite datoteku app.properties i uredite raspone za koordinate svake strane kocke prema stvarnim koordinatama koje ćete vidjeti u prozoru dnevnika aplikacije za svaku stranu kocke.

Ili možete eksperimentirati s orijentacijom i otkriti da je položaj akcelerometra potpuno isti kao moj.

Korak 6: Dodatna analiza

Extra Analysis
Extra Analysis

Moja java aplikacija je prilično jednostavna i samo prikazuje vrijeme provedeno po svakoj aktivnosti tokom dana. Ako želite imati više analitike, možete koristiti Microsoft Excel za dodatnu analizu.

Aplikacija proizvodi datoteku time-log.csv u CSV formatu, koja sadrži sve događaje poslane s arduina. Budući da se događaji generiraju svake sekunde, možete izvršiti detaljnu dnevnu analizu u MS Excelu za izradu lijepih grafikona, grafikona i dodatne analize.

U mapi koju ste preuzeli iz mog projekta GitHub možete pronaći datoteku log_analytics.xlsx excel koja gradi tortni grafikon koristeći podatke iz datoteke time-log.csv. Grafikon morate ažurirati ručno pritiskom na gumb "Osvježi sve" u Excelu.

Preporučuje se: