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
目次
  • WEEK17 Applications and implications, project development
    • Assignment
      • What will it do?
      • Who’s done what beforehand?
      • What will you design?
      • What materials and components will be used?
      • Where will they come from?
      • How much will they cost?
      • BOM(Bill of Materials)
      • What parts and systems will be made?
        • PCB layout(Fusion360 electronics)
        • Housing(Fusion 360)
        • Apps development
          • Swing Data Sampling App (Arduino):
          • TRAIN Data Generation App (Python):
          • Swing Classification & Transmission App (Arduino):
          • Data Reception App (Python):
      • What processes will be used?
      • What questions need to be answered?
      • How will it be evaluated?

WEEK17 Applications and implications, project development

  1. Fab Academy 2024 Website
  2. WEEK17 Applications and implications, project development
hito |


WEEK17 Applications and implications, project development

Assignment

==Propose a final project masterpiece that integrates the range of units covered, answering: - What will it do? - Who’s done what beforehand? - What will you design? - What materials and components will be used? - Where will come from? - How much will they cost? - What parts and systems will be made? - What processes will be used? - What questions need to be answered? - How will it be evaluated?

Your project should incorporate 2D and 3D design, additive and subtractive fabrication processes, electronics design and production, embedded microcontroller interfacing and programming, system integration and packaging

Where possible, you should make rather than buy the parts of your project

Projects can be separate or joint, but need to show individual mastery of the skills, and be independently operable==

What will it do?

I developed Smart Suburi to support shadow swing training in sports, especially those involving equipment such as tennis, badminton, table tennis, baseball, golf, and kendo. Shadow swing training is a popular method among athletes as it can be done alone and without location constraints. By attaching Smart Suburi to a racket, baseball bat, or golf club during shadow swing training, data such as swing type, speed, and count is sent to a PC or smartphone via BLE, allowing real-time monitoring. This time, I developed a device specifically for badminton. One reason for this focus is that I am a badminton player myself. Additionally, because badminton involves a greater variety of swings and more complex judgments compared to other sports, successfully developing a Smart Suburi for badminton will make it easier to adapt the sensor technology for other sports.

Who’s done what beforehand?

In the past, various shadow swing training devices(e.g., Blast Motion) have been available on the market, but they were either very expensive or had low measurement accuracy. Smart Suburi, which uses the high-performance, low-cost nRF52840 Sense MCU and leverages machine learning for software-based high-precision measurement, is the first device to achieve both low cost and high accuracy.

Previous assignments and projects have provided foundational knowledge and skills necessary for this final project.

Week Assignment Details
Week1 Principles and practices, Project management Build a personal site in the class archive describing you and your final project
Week2 Computer-aided design Learned how to use drawing apps and how to compress files
Week3 Computer-controlled cutting Design, lasercut, and document a parametric construction kit
Week4 electronics production Make and test a microcontroller development board
Week5 3D scanning and printing Design and 3D print an object & 3D scan an object
Week6 Embedded programming Write a program for a microcontroller development board to interact and communicate
Week7 Computer-controlled machining Make (design+mill+assemble) something big (~meter-scale)
Week8 Electronics design Use an EDA tool to design a development board to interact and communicate with an embedded microcontroller,produce it, and test it
Week9 Output devices Add an output device to a microcontroller board you’ve designed, and program it to do something
Week10 Mechanical design, Machine design Design a machine that includes mechanism+actuation+automation+application. Build the mechanical parts and operate it manually. Actuate and automate your machine
Week11 Input devices Measure something: add a sensor to a microcontroller board that you have designed and read it
Week12 Molding and casting Review the safety data sheets for each of your molding and casting materials, then make and compare test casts with each of them compare printing vs milling molds
Week13 Networking and communications Design, build, and connect wired or wireless node(s) with network or bus addresses and local input &/or output device(s)
Week14 Interface and application programming Write an application that interfaces a user with an input &/or output device that you made
Week15 Wildcard week Scratch Embroidery process with Brother Embroidery Pro Next
Week16 System integration Design and document the system integration for your final project
Week17 Applications and implications, project development This page
Week18 Invention, intellectual property, and income Develop a plan for dissemination of your final project

What will you design?

I develop a device to support shadow swing training in badminton. It's a complex product that involves housing design, electronics, and programming.
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.

The XIAO nRF52840 Sense includes an IMU, BLE, and battery controller, meeting my requirement to make the device as small and light as possible. The PCB layout consists of only five components: XIAO, LED, resistor, tact switch, and battery. THe LED is added for an extra charging indicator. The tact switch for Sleep/Wakeup funcitons.

In the production process, the preparation of the software took more time than the hardware. It is no exaggeration to say that the collection of training data determines the success or failure of development with TensorFlow Lite.

Please refer to the 'What processes will be used?' section.

What materials and components will be used?

Where will they come from?

How much will they cost?

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

What parts and systems will be made?

PCB layout(Fusion360 electronics)

I chose the nRF52840 Sense for my final project because it has onboard BLE, IMU, and battery charging features, making it ideal for our need to make the device as lightweight as possible.

The PCB layout will be a simple configuration, adding sleep and wakeup buttons and an additional LED to indicate charging to the nRF52840 Sense. Desing of PCB layout is showed on Assignment 16 page.

Housing(Fusion 360)

I focused on creating a design that is as small and easy to attach as possible. Since the measurement results vary depending on the orientation of the sensor, I made sure the design clearly indicates the sensor's orientation.
alt text alt text

Apps development

Swing Data Sampling App (Arduino):

The IMU_capture threshold was adjusted to be compatible with Smart Suburi. Initially, BLE was attempted for data transmission, but it was abandoned due to the excessive time required to transmit 119 samples per swing.

TRAIN Data Generation App (Python):

Using Python, I trained the model and generated a TensorFlow Lite file.

Swing Classification & Transmission App (Arduino):

An improved version of IMU_Classifier. The classified swing type and speed calculation results are transmitted via BLE.

Data Reception App (Python):

Displays the received data on the screen and calculates and displays the number of shadow swings per shot.

What processes will be used?

Data Collection:
At the heart of Smart Suburi is a sensor device that collects data on badminton swings. The sensor device is attached to the racket and captures accelerometer and gyroscope data during the swing. These data points are crucial for identifying and analyzing the speed and type of swing.

Data Transfer:
The collected sensor data is wirelessly transmitted to a PC or smartphone via Bluetooth Low Energy (BLE). This allows for real-time monitoring and analysis of the data.

Data Processing and Analysis:

BLE Data Reception: The PC or smartphone application receives the BLE data transmitted from the sensor device.

Data Processing: The received data is processed using techniques such as noise reduction and sensor calibration to improve accuracy.

Swing Type Identification: A TensorFlow Lite model is used to identify the swing type based on the processed sensor data. This model is trained using a dataset of various pre-recorded swing types.

Speed Calculation: The speed of each swing is calculated from the processed accelerometer data.

Data Display:
The processed and analyzed data (swing type, speed, count, etc.) is displayed on the PC or smartphone application in a user-friendly format.

Additional Features:

Sleep and Wake-Up: Pressing a button on the device toggles between sleep and wake-up modes, conserving battery life.

Charging LED Indicator: An additional LED lights up during charging to clearly indicate that the device is charging.

Continuous Improvement:
Ongoing efforts are made to further improve the accuracy and reliability of the device, including refining swing detection and speed calculation.

What questions need to be answered?

Improving the Accuracy of Training Data for the TensorFlow Model:
To enhance the accuracy of swing detection, it is necessary to improve the quality of the training data for the TensorFlow model. This involves capturing more precise swing start and end points and reducing noise. How can we achieve this?

Stabilizing BLE Communication:
There are issues with unstable BLE communication between the device and the PC or smartphone. What measures are necessary to ensure stable data reception?

Adjusting Speed Calculation:
Speed calculation still needs adjustments. What algorithms or parameter adjustments should be considered to improve the accuracy of speed calculations?

Expanding App Features:
The app currently displays information such as swing speed, swing count, and swing type. What additional features would be helpful for users' training? Possible features include swing form analysis, training history recording, and goal setting.

Answering these questions will help develop Smart Suburi into a more effective training device.

How will it be evaluated?

Accuracy of Swing Detection:
Measure the precision and recall of the TensorFlow model, and monitor the error rate (false positives and false negatives) for swing detection.

Stability of BLE Communication:
Test the reliability of the BLE connection between the sensor device and the PC or smartphone, and ensure stable data transmission in real-time.

Accuracy of Speed Calculation:
Compare the calculated swing speeds with known standards and ensure consistency across multiple trials.

User Experience and Feedback:
Conduct usability tests and gather user satisfaction feedback to evaluate the app's ease of use and functionality.

Battery Life and Power Management:
Test the battery life under normal usage conditions and measure power consumption in various operational modes.

Durability and Reliability:
Perform stress tests on the sensor device and evaluate its error handling capabilities.

Continuous Improvement Metrics:
Track the effectiveness of software and firmware updates and promptly resolve reported bugs and issues.

By adhering to these evaluation criteria, Smart Suburi can ensure accuracy, reliability, and user satisfaction, guaranteeing its quality as an effective tool for badminton training.

Copyright 2024 Hajime Ito - Creative Commons Attribution Non Commercial

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