Fab Academy 2024 Website

  • Home
  • About
  • WEEK1 Project Management / Principles and Practices
  • WEEK2 Computer Aided Design
  • WEEK3 Computer-controlled cutting
  • WEEK4 Electronics production
  • WEEK5 3D scanning and printing
  • WEEK6 Embedded programming
  • WEEK7 Computer-controlled machining
  • WEEK8 Electronics design
  • WEEK9 Output devices
  • WEEK10 Mechanical design, Machine design
  • WEEK11 Input devices
  • WEEK12 Molding and casting
  • WEEK13 Networking and communications
  • WEEK14 Interface and application programming
  • WEEK15 Wildcard week
  • WEEK16 System integration
  • WEEK17 Applications and implications, project development
  • WEEK18 Invention, intellectual property, and income
  • Final
目次
  • Final Project
    • Acquiring proper form:
    • Improving rhythm and timing:
    • Building strength and flexibility:
    • Mental training:
    • The device I want to make for my final project:
    • Tasks to be completed:
    • Development schedule for SmartSuburi
    • Introduction
    • Background
    • Project Objective
    • Development History
      • Challenge 1: Selecting Sensor Devices and Data Acquisition Methods
      • Challenge 2: Stabilizing Data Acquisition and Modeling
      • Challenge 3: Improving Swing Type Detection Accuracy
      • Challenge 4: Stabilizing Speed Calculation
      • Challenge 5: Implementing BLE Communication
      • Challenge 6: Developing the PC Application
      • Enclosure Creation
      • BOM(Bill of Materials)
      • Download Project Files
    • Future Prospects
      • Challenges and Improvements
      • Evaluation Methods
      • Future Development
      • Dissemination Plan
      • License
    • Conclusion

Final

  1. Fab Academy 2024 Website
  2. Final
hito |


Final presentation slide

Final Project

Shadow swings or dry swings are considered an essential training method for sports that use equipment like rackets, bats, or clubs such as baseball, golf, and tennis. It is valued in the sports world globally for several reasons.

Acquiring proper form:

Repeated shadow swings help ingrain the correct swing or stroke mechanics into muscle memory, enabling accurate movements during actual play.

Improving rhythm and timing:

Focusing on the tempo during shadow swings helps develop a smooth, rhythmic motion.

Building strength and flexibility:

Slow motion dry swings or using weighted implements can increase the necessary strength and flexibility.

Mental training:

It enhances concentration and can be utilized for visualization drills.

The device I want to make for my final project:

I am considering developing a device to further enhance the effectiveness of shadow practice training. This device will involve attaching a sensor connected to a smartphone to the end of the equipment used in various sports. The sensor will measure swing speed and swing count during shadow swings.

alt text

alt text

alt text

Tasks to be completed:

  • Learning how to use Tensorflow Lite for my project
     - Determining how to collect training data
     - Find the optimal threshold and sampling rate
  • Selection of battery
  • Selection of Bluetooth components
  • Determining the App features(Swing speed, number of shadow swings, Reps)
  • Determining what functions PCB board will be added.
  • Determining the installation location of the device. And how it will be attached.

By aligning the content of each weekly assignment with the Final Project, I can ensure continuous progress on the project.

Development schedule for SmartSuburi

Week Tasks Comments Progress
Apr 17: Project Planning and Design Define project goals and requirements. Research existing solutions and technologies. Design initial schematics and system architecture. Completed
Apr 24: Component Selection and Procurement Select sensors, microcontroller, battery, and other components. Order components and plan for their delivery. Design PCB layout. May 2: For Assignment 13, I was originally planning to work on the Final Project using the combination of ESC32C3 and MPU-6050. However, since the nRF52840 Sense has an integrated accelerometer, I have decided to use it for development instead. Completed
May 1: Hardware Assembly and Prototype Development Assemble prototype hardware. Solder components onto the PCB. Test basic functionality of the hardware. May 18: By purchasing a personal 3D printer, the efficiency of developing the enclosure has significantly improved. May 31: Making PCB board Completed
May 8: Aruduino code development Develop Aruduino code for sensor data collection. Implement Bluetooth communication. Test code with prototype hardware. Completed
May 15: Machine Learning Model Development Collect data for training the machine learning model. Train and validate the TensorFlow Lite model. Integrate the model with the firmware. May 11: Start investigating whether it is possible to use ML for development in order to accurately identify different types of badminton swings. May 28: Collecting swing data to make Tensorflow Lite model file. Completed
May 22: PC App Development Develop a PC app to display swing data. Implement Bluetooth connectivity in the app. Test app with the hardware device. Completed
May 29: Testing and Final Adjustments Conduct comprehensive testing of the device and app. Identify and fix bugs or issues. Finalize documentation and prepare the final presentation. Jun 3: The name of the final project has been decided as Smart Suburi. June 6: Final presentation files uploaded. Completed

Introduction

This document provides a detailed explanation of the development history of Smart Suburi, outlining the challenges faced and the solutions implemented in chronological order.
alt text

Background

In sports, shadow swinging and similar exercises are crucial for form correction and strength training. However, traditional methods make it difficult to objectively track movements, hindering effective training. To address this, I developed a device that uses sensor technology to measure and analyze swing types and speeds in real-time, helping athletes objectively monitor their movements for more effective training.

Project Objective

This project aims to improve the efficiency of shadow swing practice in badminton by developing a device called Smart Suburi. Smart Suburi attaches a sensor device to a badminton racket, measuring swing types, speeds, and counts, and sends this data via BLE to a PC or smartphone for real-time monitoring.

Development History

Challenge 1: Selecting Sensor Devices and Data Acquisition Methods

Initially, I planned to use a combination of ESP32C3 and MPU-6050 but switched to nRF52840 Sense due to its built-in accelerometer for easier development. I considered both BLE and USB for data acquisition but opted for USB due to the longer data reception time of over 40 seconds per swing via BLE.
alt text

Challenge 2: Stabilizing Data Acquisition and Modeling

Using a 5m USB cable to connect the sensor to a PC failed due to cable length. Switching to a 1.5m USB cable resolved the issue. For modeling acquired data, I modified the code from "Getting Started with TensorFlow Lite on Seeed Studio XIAO nRF52840 Sense" to allow selection of any CSV file.
Assignment16

Challenge 3: Improving Swing Type Detection Accuracy

Initial detection results using the created header file were inaccurate. Investigation revealed that the threshold settings in IMU_Capture.ino were too sensitive, causing multiple detections per swing. Gradual adjustment found 5.5 to be the optimal threshold. By focusing on the start and end of each swing, I recreated the header file, significantly improving detection accuracy.

Challenge 4: Stabilizing Speed Calculation

I added a function to calculate the speed of each swing, but initial results were inconsistent. Noise reduction and sensor calibration were identified as solutions. Using ChatGPT, I added static sensor calibration and moving average filtering to the Modified IMU_Classifier code, achieving more stable speed calculation results.

Challenge 5: Implementing BLE Communication

I combined the BLE communication code from Assignment 14 with the Modified IMU_Classifier code, resulting in a functional BLE-enabled classifier. Additionally, I incorporated sleep functionality and a charge status LED.

Challenge 6: Developing the PC Application

A PC application was created to receive and display data sent via BLE. Using Python, Kivy, and Bleak, I based the application on Python code from Assignment 11, adding features such as control of the charge LED, sleep/wake buttons, swing type-specific images, and swing count display. Each swing's type, speed, and count are displayed in real-time.

Enclosure Creation

I designed and created an enclosure for the nRF52840 Sense, battery, additional LED, and buttons using Fusion 360 and 3D printing. The enclosure is essential for device protection and user handling.
alt text

BOM(Bill of Materials)


Parts Qty Unit price Cost(Yen) Source
XIAO nFR52840 Sense 1 2,499 2,499 marutsu
Red LED 3216 1 33 33 satodenki
Resister 2.0x1.25 220OHM 1 15 15 satodenki
TACT Switch SKHCBEA010 1 33 33 satodenki
Button TOP(Green) 1 22 22 satodenki
LiPo Battery 3.7V 75mAh GEB501419 1 1,140 1,140 satodenki
PCB board 1/8 319 40 yodobashi
Flat-head screw 2.1x10, matte white 4 19 76 Monotaro
PLA Plus 3D filament 1.75mm 8 2.6 20.8 Amazon
Acrylic Sheet 7.9 x 11.8 x 2.0 inches (200 x 300 x 5 mm) 1/20 1,100 55 Amazon

Total Cost: 3,934Yen

Download Project Files

  • Enclosure Fusion 360(.f3d)
  • PCB layout PCB data(.f3z)

  • Tensorflow Lite
    Capture swing data(Aruduino)
    Model file generator(Python) model.h
    Swing Detection(Aruduino)

  • PC app(Python) Display swing Type, Speed, Reps
    Pics of badminton swings(Zip)
    alt text

Future Prospects

Challenges and Improvements

Current challenges include:

  • Unstable BLE data reception.
  • Need for speed calculation adjustments.
  • Incomplete swing detection accuracy, requiring improvements in the Tensorflow TRAIN DATA section.

Evaluation Methods

To assess the effectiveness of Smart Suburi, I will measure:

  • Swing detection accuracy: Monitoring the precision, recall, and error rates of the TensorFlow model.
  • BLE communication stability: Testing the reliability of BLE connections between the sensor device and PC or smartphone.
  • Speed calculation accuracy: Comparing calculated swing speeds with known standards for consistency.

By adhering to these evaluation criteria, Smart Suburi will ensure accuracy, reliability, and user satisfaction, enhancing badminton training as an effective tool.

Future Development

  • Resolving the mentioned challenges.
  • Adding application features (battery level display, etc.).
  • Adapt Smart Suburi technology for use in other sports such as tennis, golf, or baseball.

Dissemination Plan

The initial step is to produce several sets of Smart Suburi and conduct beta testing with members of my badminton team. Based on the feedback and reactions obtained from this testing, I will move on to the next phase of the plan.

License

Smart Suburi by Hajime Ito is licensed under Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International

The Creative Commons license CC BY-NC-ND 4.0 is the license I have chosen for my final project.

Here are the reasons why using this license during the development phase is particularly beneficial:

  • Protected Usage:

The ND (No Derivatives) clause prevents others from modifying and distributing altered versions of SmartSuburi. This helps avoid the spread of incomplete or inappropriate modifications by others.

  • Consistency Maintenance:

Inappropriate modifications during the development phase can compromise the original vision and objectives of the project. The ND clause ensures that the project progresses in the intended direction, maintaining consistency.

  • Reliability Assurance:

Unauthorized modifications can confuse users about which version is official, leading to potential misunderstandings. The NC (Non-Commercial) clause helps prevent commercial use, maintaining the reliability of the official source.

  • Flexibility for Future Changes:

As development progresses, you can change the license conditions. Once the project is completed, you may consider switching to a more permissive license, but during development, it is wise to enhance protection with the current license. By doing this, you ensure that the development of SmartSuburi proceeds smoothly and that the project maintains its integrity and reliability until it reaches completion.

Conclusion

Throughout Smart Suburi's development, I faced numerous challenges in both hardware and software, finding solutions and advancing the project. I aim to further improve accuracy and add features, creating a device that effectively supports badminton players' training.

Copyright 2024 Hajime Ito - Creative Commons Attribution Non Commercial

検索
キーワードを入力して検索を始めましょう