Innholdsfortegnelse:

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

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

Video: Time Cube - Arduino Time Tracking Gadget: 6 trinn
Video: When The Quiet Kid Does Your Homework 💀 #electronics #arduino #engineering 2024, Juli
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

Jeg vil foreslå et enkelt, men veldig nyttig arduino -prosjekt for å spore tidshendelser ved å bla en smart kube -gadget. Slå den til "Work"> "Learn"> "Chores"> "Rest" -siden, og det vil telle tiden du bruker på denne aktiviteten. Time cube er bygget basert på Arduino Nano og ADXL345 akselerometer plassert i en passende størrelse boks som du kan tegne aktivitetssymboler eller navn på. På slutten av dagen kan du sjekke statistikken. Jeg håper det vil motivere meg til å "lære" mer.

Det er mange lignende produkter på markedet som TimeFlip.io, Timeular.com, ZEI. Du kan også prøve et fint DIY-prosjekt fra Adafruit https://learn.adafruit.com/time-tracking-cube. Men jeg foreslår at du gjør det mye enklere. For å spore tidsdata trenger du ingen wifi eller bluetooth internettforbindelse til skytjenestene. Time Cube er drevet og koblet til PC via USB -kabel. På datamaskinen må du kjøre min Java -applikasjon som lytter til serielle meldinger fra arduino og viser total brukt tid.

Alle nødvendige programkilder og noen lite detaljerte instruksjoner du finner på mitt GitHub-prosjekt:

Rekvisita

1. Arduino Micro eller Nano sånn:

2. ADXL345 akselerometer:

3. Kartong / plast terningboks

4. USB -kabel

Trinn 1: Koble brettet og akselerometeret

Koble brettet og akselerometeret
Koble brettet og akselerometeret

ADXL345-sensoren er et 3-akset akselerometer som kan måle akselerasjonskrefter, og når det er statisk kan du også lese orienteringen. Du må koble til Arduino Nano eller Micro board og ADXL345 akselerometer som på bildet.

Jeg vil ikke forklare i detalj hvordan ADXL345 akselerometer fungerer. All nødvendig informasjon fant jeg i en veldig fin artikkel om tilkoblingsakselometre til arduino og programmering:

Trinn 2: Flash -program til Arduino Nano

Flash -program til Arduino Nano
Flash -program til Arduino Nano
Flash -program til Arduino Nano
Flash -program til Arduino Nano

I dette trinnet må vi laste opp program fra Arduino studio til arduino board. Arduino nano vil kunne lese XYZ -koordinater fra akselerometer og sende dem til serieporten i en slags datapakker som

Du kan laste ned alle nødvendige kilder fra min GitHub-prosjektside (som en enkelt arkivfil):

1. Pakk ned det nedlastede zip -arkivet til en mappe som c: / program / tcube og åpne filen tcube / arduino / tcub / tcub.ino i Arduino studio.

2. Koble arduino -kortet til PC ved hjelp av USB -kabel.

3. Fra Verktøy-> Brett: velg "Arduino Nano" (eller et annet brett som du planlegger å bruke).

4. Hvis du bruker noen kinesiske arduino-kloner, bør du velge fra Verktøy-> Prosessor-> ATmega328P (Old Loader)

5. Velg tilkoblet port fra Verktøy-> Port -> COM3 (i mitt tilfelle)

6. Last opp program til arduino

7. Fra det øyeblikket vil den umiddelbart sende datapakker til USB seriell port.

8. For å teste om alt fungerer bra kan du åpne "Serial Monitor" i Arduino Studio. Du bør se pakker som genererte hvert sekund som …… (som betyr faktiske koordinater for akselerometer).

Trinn 3: Installer Java Runtime Environment for å kjøre klientprogram på PC

Installer Java Runtime Environment for å kjøre klientprogram på PC
Installer Java Runtime Environment for å kjøre klientprogram på PC

Før vi fortsetter må du kontrollere at du har Java Runtime Environment (JRE) installert på datamaskinen.

Klientprogrammet som jeg opprettet for å motta meldinger fra Arduino og samlet statistikk, er skrevet på Java -programmeringsspråk. Og JRE er nødvendig for å kjøre Java -programmer. Du bør ha minst JRE8 installert. Jeg foreslår at du laster ned x64 -versjonen for Windows. Last den ned fra Oracle -nettstedet

Trinn 4: Installer klientprogram for å lese koordinater fra Arduino og spor statistikk

Installer klientprogram for å lese koordinater fra Arduino og spor statistikk
Installer klientprogram for å lese koordinater fra Arduino og spor statistikk
Installer klientprogram for å lese koordinater fra Arduino og spor statistikk
Installer klientprogram for å lese koordinater fra Arduino og spor statistikk

Nå er det på tide å forberede og starte klientprogram på din PC, som vil koble til USB -porten for å lytte og spore tidsstatistikk.

Hvis du er kjent med Java, kan du laste ned og kompilere kilder til Time Cube java -applikasjon fra mitt GitHub -prosjekt. Men i det fullstendige prosjektarkivet du allerede har lastet ned, er det allerede samlet og klar til å bruke applikasjonsarkivet tcube.zip som du må pakke ut til en mappe (det kan være c: / programs / tcube)

Hvis du kjører filen run.bat, bør den starte programmet, som umiddelbart vil prøve å starte tilkoblingen til en aktiv COM -port som brukes av Arduino -kortet (Arduino koblet til USB gjenkjennes automatisk av Windows som en virtuell COM -port).

Hvis alt er konfigurert riktig, bør du umiddelbart se tidstellerne kjøre i henhold til en viss aktivitet. Og ved å snu kuben bør du kunne spore forskjellige aktiviteter. Programvinduet viser hendelseslogg, og du kan se eventuelle tilkoblingsfeil som kan skje.

Trinn 5: Akselerometerkalibrering

Akselerometer kalibrering
Akselerometer kalibrering

Det kan skje at du bør kalibrere Time Cube fordi akselerometeret ditt ikke er orientert akkurat som mitt. Bare åpne filen app.properties og rediger områder for koordinater for hver kubeside i henhold til faktiske koordinater som du vil se i programloggvinduet for hver kubeside.

Eller du kan eksperimentere med orientering og finne at akselerometerposisjonen er akkurat som min.

Trinn 6: Ekstra analyse

Ekstra analyse
Ekstra analyse

Java -applikasjonen min er ganske enkel og viser bare tid brukt på hver aktivitet i løpet av dagen. Hvis du vil ha mer analyse, kan du bruke Microsoft Excel for ekstra analyse.

Programmet produserer time-log.csv-fil i CSV-format, som inneholder alle hendelser sendt fra arduino. Siden hendelser genereres hvert sekund kan du utføre detaljert dagsanalyse i MS Excel for å bygge fine diagrammer, grafer og ekstra analyser.

I mappen du har lastet ned fra mitt GitHub-prosjekt kan du finne log_analytics.xlsx excel-fil som bygger kakediagram ved hjelp av data fra time-log.csv-filen. Du må oppdatere diagrammet manuelt ved å trykke "Oppdater alle" -knappen i Excel.

Anbefalt: