Innehållsförteckning:

Kettlebell Counter (misslyckas): 4 steg
Kettlebell Counter (misslyckas): 4 steg

Video: Kettlebell Counter (misslyckas): 4 steg

Video: Kettlebell Counter (misslyckas): 4 steg
Video: Battle of Loudoun Hill, 1307 ⚔️ First War of Scottish Independence (Part 4) ⚔️ DOCUMENTARY 2024, Juli
Anonim
Kettlebell Counter (misslyckas)
Kettlebell Counter (misslyckas)

Berättelse: Jag byggde det här projektet enbart som ett experiment.

Jag ville se om jag kunde använda frihandsdetekteringen av en accelerometer för att räkna gungorna på en kettlebell.

Delar:

1* Arduino nano

1* MAX7219 7 segment LED -displaymodul

1* ADXL345 Accelerometer

2* 4k7 motstånd

2* 15 -vägs 0,1 tums uttag - för nano

1* 8 -vägs 0,1 tums uttag - för accelerometern

1* 5 -vägs 0,1 tums stiftremsa - för skärmen

1* 2 -vägs skruvterminal - för ström

1* 27 x 34 Stripboard

1* 9 volt batteriklämma

1* 9 volt batteri (PP3)

Steg 1: Konstruktion:

Konstruktion
Konstruktion
Konstruktion
Konstruktion
Konstruktion
Konstruktion

Jag konstruerade och byggde en liten bräda för nano, accelerometer, motstånd och kontakter för displayen och batteriet.

Det finns 12 ledningar och 20 spåravbrott (varav 15 mellan de två uttagen för Arduino nano).

Jag kopplade nano till dess 2 kontakter för att ställa in dem korrekt och placerade dem på kortet.

Jag lödde hörnpinnarna först och kontrollerade att allt satt ordentligt innan jag lodde resten av kontaktstiften.

Jag lödde sedan i stiften för displayen och uttaget för accelerometern, jag höll båda på plats med blå klibb när jag lödde.

Jag lödde sedan i alla trådar och de 2 motstånden.

Slutligen lade jag in alla spårpauser.

Observera att vanligtvis bör du arbeta från komponenterna på den lägsta höjden till den högsta, trådarna och motstånden går först in och uttagen sist.

Jag tejpade helt enkelt upp kortet, batteriet och displayen på kettlebell för mina tester, inte en bra lösning men detta var bara ett experiment.

Steg 2: Programvara:

Jag redigerade all programvara och programmerade Arduino nano med Arduino IDE.

Koden var en övning vid återanvändning, det mesta av koden är Sparkfun Library -demonstrationskoden "SparkFun_ADXL345_Example.ino".

Jag har helt enkelt lagt till lite kod för räknaren och klippt ut några bitar som inte gjorde någonting.

Skärmskrivningarna hanteras av DigitLedDisplay -biblioteket.

Experimentellt försökte jag få koden att fungera med hjälp av accelerometeravbrottet istället för polling men lyckades inte.

Observera att det finns ett testalternativ i kodfilen, om du avmarkerar raden //#definiera testet kommer räknaren att ökas med en dubbelknackning på accelerometern istället för i fritt fall.

Steg 3: Blandade resultat:

Efter att ha tejpat ihop allt gjorde jag en uppsättning av 10 gungor vilket resulterade i ett värde på 20 på disken. Jag försökte igen och fick samma resultat.

Jag associerade fritt fall med kettlebells droppfas så i den första koden jag skrev räknade jag varje fritt fallhändelse, min efterföljande tanke var att toppen av svingen också måste vara en fritt fallhändelse, så jag ändrade min kod till steg efter varje sekund tid.

Mitt första test efter att ha ändrat koden fungerade framgångsrikt.

Efterföljande tester hade blandade resultat med antalet under rapportering av antalet svängningar med olika belopp.

Jag gissar att mina variationer i swingteknik orsakar de missade räkningarna.

Min slutsats är att upptäckten av fritt fall inte är tillräckligt tillförlitlig för att på ett tillförlitligt sätt räkna gungorna på en kettlebell.

Alla svängningar i mitt test var horisontellt, inte för överliggande som vissa gör med kettlebells.

Steg 4: Referenser:

Bibliotek som används:

SparkFun_ADXL345_Arduino_Library

DigitLedDisplay Version 1.1.0

Båda hämtade 29 juni 2019.

Rekommenderad: