- 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?
- What processes will be used?
- What questions need to be answered?
- How will it be evaluated?
- Assignment
WEEK17 Applications and implications, project development
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.
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.