INHOUDSOPGAWE:

Time Cube - Arduino Time Tracking Gadget: 6 stappe
Time Cube - Arduino Time Tracking Gadget: 6 stappe

Video: Time Cube - Arduino Time Tracking Gadget: 6 stappe

Video: Time Cube - Arduino Time Tracking Gadget: 6 stappe
Video: When The Quiet Kid Does Your Homework 💀 #electronics #arduino #engineering 2024, November
Anonim
Time Cube - Arduino Time Tracking Gadget
Time Cube - Arduino Time Tracking Gadget
Time Cube - Arduino Time Tracking Gadget
Time Cube - Arduino Time Tracking Gadget

Ek wil u 'n eenvoudige, maar baie nuttige arduino -projek voorstel om tydgebeurtenisse op te spoor deur 'n slim kubus -gadget te draai. Draai dit na die "werk"> "leer"> "take"> "rus" kant, en dit tel die tyd wat u aan die aktiwiteit spandeer. Die tydkubus is gebou op grond van die Arduino Nano- en ADXL345-versnellingsmeter wat in 'n geskikte boks geplaas is, waarop u aktiwiteitsimbole of -name kan teken. Aan die einde van die dag kan u die statistieke nagaan. Ek hoop dat dit my sal motiveer om meer te "leer".

Daar is baie soortgelyke produkte op die mark, soos TimeFlip.io, Timeular.com, ZEI. U kan ook 'n lekker DIY-projek van Adafruit https://learn.adafruit.com/time-tracking-cube probeer. Ek stel u egter voor om dit baie eenvoudiger te maak. Om tyddata op te spoor, het u geen wifi- of bluetooth -internetverbinding met die wolkdienste nodig nie. Time Cube word aangedryf en via 'n USB -kabel aan die rekenaar gekoppel. Op die rekenaar moet u my java -toepassing uitvoer wat na seriële boodskappe van arduino luister en die totale tyd wat dit spandeer, vertoon.

Alle vereiste programbronne en 'n paar nie baie gedetailleerde instruksies wat u op my GitHub-projek kan vind:

Voorrade

1. Arduino Micro of Nano so:

2. ADXL345 versnellingsmeter:

3. Karton / plastiekblokkie

4. USB -kabel

Stap 1: Bedraad die bord en die versnellingsmeter

Draai die bord en die versnellingsmeter
Draai die bord en die versnellingsmeter

ADXL345-sensor is 'n 3-as versnellingsmeter wat versnellingskragte kan meet, en as dit staties is, kan u ook die oriëntasie daarvan lees. U moet 'n Arduino Nano- of Micro -bord en 'n ADXL345 -versnellingsmeter bedraad, soos op die prent.

Ek sal nie in detail verduidelik hoe die ADXL345 -versnellingsmeter werk nie. Alle vereiste inligting wat ek gevind het in 'n baie goeie artikel oor verbindingsversnellingsmeters met arduino en programmering:

Stap 2: Flash -program vir Arduino Nano

Flash -program vir Arduino Nano
Flash -program vir Arduino Nano
Flash -program vir Arduino Nano
Flash -program vir Arduino Nano

In hierdie stap moet ons die program van die Arduino -ateljee na die arduino -bord oplaai. Die arduino nano kan XYZ -koördinate vanaf die versnellingsmeter lees en dit na die seriële poort stuur in 'n soort datapakkies, soos

U kan alle vereiste bronne aflaai van my GitHub-projekbladsy (as 'n enkele argieflêer):

1. Pak die afgelaaide zip -argief uit na 'n gids soos c: / program / tcube en maak lêer tcube / arduino / tcub / tcub.ino oop in Arduino studio.

2. Sluit die arduino -bord aan op 'n rekenaar met 'n USB -kabel.

3. Van Tools-> Board: kies "Arduino Nano" (of 'n ander bord wat u van plan is om te gebruik).

4. As u 'n paar Chinese arduino-klone gebruik, moet u kies uit Tools-> Processor-> ATmega328P (Old Loader)

5. Kies die gekoppelde poort uit Tools-> Poort -> COM3 (in my geval)

6. Laai program op na arduino

7. Vanaf daardie oomblik stuur dit dadelik datapakkies na die USB -seriële poort.

8. Om te toets of alles goed werk, kan u 'Serial Monitor' in Arduino Studio oopmaak. U behoort pakkies te sien wat elke sekonde gegenereer het, soos … (wat die werklike koördinate van die versnellingsmeter beteken).

Stap 3: Installeer Java Runtime -omgewing om die kliëntetoepassing op 'n rekenaar uit te voer

Installeer Java Runtime -omgewing om die kliëntetoepassing op 'n rekenaar uit te voer
Installeer Java Runtime -omgewing om die kliëntetoepassing op 'n rekenaar uit te voer

Voordat ons verder gaan, moet u seker maak dat Java Runtime Environment (JRE) op u rekenaar geïnstalleer is.

Die kliëntetoepassing wat ek geskep het om boodskappe van Arduino en totale statistieke te ontvang, is in Java -programmeertaal geskryf. En JRE is nodig om Java -toepassings uit te voer. U moet ten minste JRE8 geïnstalleer hê. Ek stel voor dat u die x64 -weergawe vir Windows aflaai. Laai dit af van die Oracle -webwerf

Stap 4: Installeer die kliëntetoepassing om koördinate van Arduino te lees en statistieke op te spoor

Installeer die kliëntetoepassing om koördinate van Arduino te lees en statistieke op te spoor
Installeer die kliëntetoepassing om koördinate van Arduino te lees en statistieke op te spoor
Installeer die kliëntetoepassing om koördinate van Arduino te lees en statistieke op te spoor
Installeer die kliëntetoepassing om koördinate van Arduino te lees en statistieke op te spoor

Dit is nou tyd om die kliëntetoepassing op u rekenaar voor te berei en te begin, wat aansluit by die USB -poort om te luister en tydstatistieke op te spoor.

As u vertroud is met Java, kan u die bronne van die Time Cube -java -toepassing aflaai en saamstel uit my GitHub -projek. Maar binne die volledige projekargief wat u reeds afgelaai het, is dit reeds saamgestel en gereed om die toepassingsargief tcube.zip te gebruik, wat u in 'n gids moet uitpak (dit kan c: / programme / tcube wees)

As u file run.bat hardloop, moet die toepassing begin, wat onmiddellik probeer om die verbinding met 'n aktiewe COM -poort wat deur die Arduino -bord gebruik word, te begin (Arduino wat op USB gekoppel is, word outomaties deur Windows herken as 'n virtuele COM -poort).

As alles korrek gekonfigureer is, moet u die tydtellers onmiddellik sien volgens 'n aktiwiteit. En deur die kubus te draai, moet u verskillende aktiwiteite kan opspoor. Die toepassingsvenster toon die gebeurtenislogboek en u kan enige verbindingsfoute sien wat kan gebeur.

Stap 5: Kalibrasie van versnellingsmeter

Versnellingsmeter kalibrasie
Versnellingsmeter kalibrasie

Dit kan gebeur dat u u Time Cube moet kalibreer omdat u versnellingsmeter nie presies soos myne gerig is nie. Maak die app.properties -lêer oop en wysig reekse vir koördinate van elke kubuskant volgens die werklike koördinate wat u in die toepassingslogboekvenster vir elke kubuskant sal sien.

Of u kan met oriëntasie eksperimenteer en die versnellingsmeter se posisie presies soos myne vind.

Stap 6: Ekstra analise

Ekstra analise
Ekstra analise

My java -toepassing is redelik eenvoudig en toon net tyd bestee aan elke aktiwiteit gedurende die dag. As u meer analise wil hê, kan u Microsoft Excel gebruik vir ekstra ontleding.

Die toepassing produseer time-log.csv-lêer in CSV-formaat, wat alle gebeurtenisse bevat wat vanaf arduino gestuur is. Aangesien gebeurtenisse elke sekonde gegenereer word, kan u gedetailleerde daganalise in MS Excel uitvoer om mooi kaarte, grafieke en ekstra analise te bou.

In die gids wat u van my GitHub-projek afgelaai het, kan u 'n Excel-lêer log_analytics.xlsx vind wat 'n sirkeldiagram opstel met behulp van data uit die time-log.csv-lêer. U moet die grafiek handmatig opdateer deur op die knoppie "Verfris alles" in Excel te druk.

Aanbeveel: