İçindekiler:

Kettlebell Sayacı (başarısız): 4 Adım
Kettlebell Sayacı (başarısız): 4 Adım

Video: Kettlebell Sayacı (başarısız): 4 Adım

Video: Kettlebell Sayacı (başarısız): 4 Adım
Video: 100 Squats Challenge [Round Butt + Burn Fat + Toned Legs] - How Many Squats Can You Do? 2024, Temmuz
Anonim
Kettlebell Sayacı (başarısız)
Kettlebell Sayacı (başarısız)

Öykü: Bu projeyi tamamen bir deney olarak inşa ettim.

Bir kettlebell'in salınımlarını saymak için bir ivmeölçerin serbest düşüş algılamasını kullanıp kullanamayacağımı görmek istedim.

Parçalar:

1 * Arduino nano

1* MAX7219 7 Segment LED ekran modülü

1 * ADXL345 İvmeölçer

2* 4k7 Dirençler

2* 15 yollu 0.1 inç soket - nano için

1* 8 yollu 0,1 inç soket - ivmeölçer için

1* 5 yollu 0.1 inç pin şeridi - ekran için

1* 2 yollu vidalı terminal - güç için

1* 27 x 34 Stripboard

1*9 volt pil klipsi

1*9 volt pil (PP3)

Adım 1: İnşaat:

Yapı
Yapı
Yapı
Yapı
Yapı
Yapı

Ekran ve pil için nano, ivmeölçer, dirençler ve konektörleri tutmak için küçük bir kart tasarladım ve yaptım.

12 kablo ve 20 parça kopması vardır (15'i Arduino nano için 2 soket arasında).

Nano'yu doğru şekilde yerleştirmek için 2 konektörüne taktım ve panoya yerleştirdim.

Önce köşe pimlerini lehimledim ve kalan konektör pimlerini lehimlemeden önce her şeyin düzgün oturduğunu kontrol ettim.

Daha sonra ekranın pimlerini ve ivmeölçer soketini lehimledim, lehimlerken ikisini de mavi tack ile yerinde tuttum.

Daha sonra tüm kabloları ve 2 direnci lehimledim.

Sonunda tüm parça aralarını koydum.

Geleneksel olarak, en düşük yükseklikteki bileşenlerden en yükseğe kadar çalışmanız gerektiğini unutmayın; kablolar ve dirençler önce girer ve soketler en son girer.

Testlerim için sadece anakartı, pili ve ekranı kettlebell'e bantladım, harika bir çözüm değil ama bu sadece bir deneydi.

2. Adım: Yazılım:

Tüm yazılımları düzenledim ve Arduino nano'yu Arduino IDE kullanarak programladım.

Kod yeniden kullanımda bir alıştırmaydı, kodun çoğu Sparkfun Kitaplığı tanıtım kodu "SparkFun_ADXL345_Example.ino".

Sadece sayaç için bazı kodlar ekledim ve hiçbir şey yapmayan birkaç biti kestim.

Ekran yazma işlemleri DigitLedDisplay kitaplığı tarafından işlenir.

Deneysel olarak, yoklama yerine ivmeölçer kesmesini kullanarak kodu çalıştırmaya çalıştım ama başarılı olamadım.

Kod dosyasında bir test seçeneği olduğunu unutmayın, //#define test satırının yorumunu kaldırırsanız, sayaç serbest düşüş yerine ivmeölçerin çift dokunuşuyla artırılacaktır.

3. Adım: Karışık Sonuçlar:

Her şeyi bir araya bantladıktan sonra, tezgahta 20 değerinde bir 10 salınım seti yaptım. Tekrar denedim ve aynı sonucu aldım.

Serbest düşüşü kettlebell'in düşme aşamasıyla ilişkilendirdim, bu yüzden yazdığım ilk kodda her bir serbest düşüş olayını saydım, sonraki düşüncem, salınımın tepesinin de bir serbest düşüş olayı olması gerektiğiydi, bu yüzden kodumu her saniyeden sonra artacak şekilde değiştirdim. zaman.

Kodu değiştirdikten sonraki ilk testim başarıyla çalıştı.

Sonraki testler, çeşitli miktarlarda salınım sayısını rapor eden sayımla karışık sonuçlar verdi.

Swing tekniğindeki varyasyonlarımın eksik sayımlara neden olduğunu tahmin ediyorum.

Benim sonucum, serbest düşüş tespitinin bir kettlebell'in salınımlarını güvenilir bir şekilde saymak için yeterince güvenilir olmadığıdır.

Testimdeki tüm salınımlar, bazılarının kettlebells ile yaptığı gibi baş üstü değil, yataydı.

Adım 4: Referanslar:

Kullanılan kütüphaneler:

SparkFun_ADXL345_Arduino_Library

DigitLedDisplay Sürüm 1.1.0

Her ikisi de 29 Haziran 2019'da alındı.

Önerilen: