สารบัญ:

เคาน์เตอร์ Kettlebell (ล้มเหลว): 4 ขั้นตอน
เคาน์เตอร์ Kettlebell (ล้มเหลว): 4 ขั้นตอน

วีดีโอ: เคาน์เตอร์ Kettlebell (ล้มเหลว): 4 ขั้นตอน

วีดีโอ: เคาน์เตอร์ Kettlebell (ล้มเหลว): 4 ขั้นตอน
วีดีโอ: TEMPLE RUN 2 SPRINTS PASSING WIND 2024, พฤศจิกายน
Anonim
เคาน์เตอร์ Kettlebell (ล้มเหลว)
เคาน์เตอร์ Kettlebell (ล้มเหลว)

เรื่อง: ฉันสร้างโครงการนี้เพื่อการทดลองเท่านั้น

ฉันต้องการดูว่าฉันจะใช้การตรวจจับการตกอย่างอิสระของมาตรความเร่งเพื่อนับการแกว่งของกาเบลล์เบลล์ได้หรือไม่

อะไหล่:

1 * Arduino นาโน

1 * MAX7219 โมดูลแสดงผล LED 7 ส่วน

1 * ADXL345 มาตรความเร่ง

ตัวต้านทาน 2* 4k7

2*15 ทาง 0.1 นิ้วซ็อกเก็ต - สำหรับ nano

1*8 ทาง 0.1 นิ้วซ็อกเก็ต - สำหรับมาตรความเร่ง

1*5 way 0.1 นิ้ว pin strip - สำหรับ display

1*2 ทางขั้วต่อสกรู - สำหรับ power

1*27 โดย 34 Stripboard

คลิปหนีบแบตเตอรี่ 1*9 โวลต์

1*9 โวลต์แบตเตอรี่ (PP3)

ขั้นตอนที่ 1: การก่อสร้าง:

การก่อสร้าง
การก่อสร้าง
การก่อสร้าง
การก่อสร้าง
การก่อสร้าง
การก่อสร้าง

ฉันออกแบบและสร้างบอร์ดขนาดเล็กสำหรับเก็บนาโน มาตรความเร่ง ตัวต้านทาน และตัวเชื่อมต่อสำหรับจอแสดงผลและแบตเตอรี่

มีสายไฟ 12 เส้นและตัวแบ่งแทร็ก 20 เส้น (15 ในนั้นอยู่ระหว่าง 2 ซ็อกเก็ตสำหรับ Arduino nano)

ฉันเสียบนาโนเข้ากับคอนเน็กเตอร์ 2 ตัวเพื่อตั้งค่าให้ถูกต้องและวางตำแหน่งบนบอร์ด

ฉันบัดกรีหมุดมุมก่อนและตรวจสอบว่าทุกอย่างเข้าที่แล้วก่อนที่จะบัดกรีหมุดตัวเชื่อมต่อที่เหลือ

จากนั้นฉันก็บัดกรีหมุดสำหรับจอแสดงผลและซ็อกเก็ตสำหรับมาตรความเร่ง ฉันยึดทั้งสองไว้กับที่ด้วยตะปูสีน้ำเงินขณะบัดกรี

จากนั้นฉันก็บัดกรีสายไฟทั้งหมดและตัวต้านทาน 2 ตัว

ในที่สุดฉันก็ใส่ตัวแบ่งแทร็กทั้งหมด

โปรดทราบว่าตามอัตภาพคุณควรทำงานจากส่วนประกอบที่มีความสูงต่ำสุดไปจนถึงสูงสุด สายไฟและตัวต้านทานจะเข้าไปก่อนและซ็อกเก็ตจะอยู่ได้ยาวนาน

ฉันเพียงแค่ติดเทปที่บอร์ด แบตเตอรี่ และแสดงผลไปที่ kettlebell สำหรับการทดสอบ ไม่ใช่วิธีแก้ปัญหาที่ดี แต่นี่เป็นเพียงการทดลองเท่านั้น

ขั้นตอนที่ 2: ซอฟต์แวร์:

ฉันแก้ไขซอฟต์แวร์ทั้งหมดและตั้งโปรแกรม Arduino nano โดยใช้ Arduino IDE

โค้ดนี้เป็นแบบฝึกหัดในการใช้ซ้ำ โค้ดส่วนใหญ่เป็นโค้ดสาธิต Sparkfun Library "SparkFun_ADXL345_Example.ino"

ฉันเพียงแค่เพิ่มโค้ดสำหรับตัวนับและตัดออกสองสามบิตที่ไม่ได้ทำอะไรเลย

การเขียนจอแสดงผลได้รับการจัดการโดยไลบรารี DigitLedDisplay

จากการทดลอง ฉันพยายามทำให้โค้ดทำงานโดยใช้การขัดจังหวะของตัวตรวจวัดความเร่งแทนการสำรวจ แต่ไม่ประสบความสำเร็จ

โปรดทราบว่ามีตัวเลือกการทดสอบภายในไฟล์โค้ด หากคุณไม่ใส่เครื่องหมายในบรรทัด //#define ทดสอบ ตัวนับจะเพิ่มขึ้นเมื่อแตะสองครั้งที่ตัวตรวจวัดความเร่ง แทนที่จะเป็นบนอิสระ

ขั้นตอนที่ 3: ผลลัพธ์แบบผสม:

หลังจากรวมทุกอย่างเข้าด้วยกันฉันก็ทำชุด 10 วงสวิงทำให้มีค่า 20 บนเคาน์เตอร์ ฉันลองอีกครั้งและได้ผลลัพธ์เช่นเดียวกัน

ฉันเชื่อมโยง freefall กับขั้นตอนการดร็อปของ kettlebell ดังนั้นในโค้ดแรกที่ฉันเขียน ฉันนับแต่ละเหตุการณ์ freefall ความคิดที่ตามมาของฉันคือจุดสูงสุดของวงสวิงจะต้องเป็นเหตุการณ์ freefall ด้วย ดังนั้นฉันจึงแก้ไขโค้ดของฉันให้เพิ่มขึ้นทุก ๆ วินาที เวลา.

การทดสอบครั้งแรกของฉันหลังจากแก้ไขรหัสทำงานสำเร็จ

การทดสอบที่ตามมามีผลที่หลากหลายกับการนับภายใต้การรายงานจำนวนการแกว่งตามปริมาณต่างๆ

ฉันเดาว่ารูปแบบของฉันในเทคนิคการสวิงทำให้เกิดการนับพลาด

ข้อสรุปของฉันคือการตรวจจับการตกอย่างอิสระไม่น่าเชื่อถือพอที่จะนับการแกว่งของกาเบลล์เบลล์ได้อย่างน่าเชื่อถือ

ชิงช้าทั้งหมดในการทดสอบของฉันอยู่ในแนวราบ ไม่ใช่เหนือศีรษะเหมือนที่ Kettlebells ทำ

ขั้นตอนที่ 4: ข้อมูลอ้างอิง:

ห้องสมุดที่ใช้:

SparkFun_ADXL345_Arduino_Library

DigitLedDisplay เวอร์ชัน 1.1.0

ทั้งคู่ได้รับข้อมูลเมื่อ 29 มิถุนายน 2019

แนะนำ: