Iot

IoT Basketball Wheelchair

IoT Basketball Wheelchair

Designing Data-Driven products and Services for the Internet of Things

Project details

Project type:
ECTS:
Time:
Client:
Nature:
Keywords:

Elective
3
2018
TU Delft
Group Project
AI, Data, IoT

Project type:
ECTS:
Time:
Client:
Nature:
Keywords:

Elective
3
2018
TU Delft
Group Project
AI, Data, IoT

Summary

The goal of this elective was to design an IoT product and/or service system out of a wheelchair. To ensure we could design impactful features we decided to specify our target group from wheelchair users to basketball wheelchair users. From there we set out to design an IoT product that would provide both the users and the manufacturers of these wheelchairs with additional value. The final design embeds the wheelchair with 4 types of sensors, an optical encoder, a gyroscope, an RF receiver and a seat pressure matrix. These four sensors allowed us to add 3 additonal smart features to the wheelchair, iTactiX, Exhaustion Detection & Tired.
iTactiX is an feature to improves players tactical play by showing them wether they should take a shot at the basket from there current possition or pass to a specific team mate.
Exhaustion Detection aims to prevent injuried by measuring their exertion through a training and looking for abnomolies.
Tired is a system to detect the wear and tear of the tires. It allows the manufactur to give the players buy advice when their tires are in need of replacemant and is able to offer specifc tires based on their play style.

iTactiX

iTactix is a training feauture to help teams improve their tactical play in matches. It gives players suggestions on to who they should pass or if they should shoot on the basket. It bases these suggestion on location, orientation and acceleration data gathered throughout training and matches. This data allows the wheelchair to calculate in real time what the best option is given the players current location, orientation and velocity.

Succes formula
Technical diagram

Exhaustion

Exhaustion is a feature to help prevent players injuries. It should the players how much energy they have exerted compared to how much energy they normally have. It does this by creating a profile for each player conisting of data about each training they have and the forces they exerted throughout each training.

Succes formula
Technical diagram

Tired

Tired is a service what offers personalized tire advice to the basketball players. It does this by gathering data on the usage of the tires and makes a profile on how a player plays. It uses this information to offer tires with different friction or profiles that would fit their playstyle better. It also is able to predict tire ware and can use this to give the players a prompt when they should buy a new set of tires.

Succes formula
Technical diagram

Final Video

Disco Wheelchair

Disco Wheelchair

Designing a wheelchair that is the centre of attention at a party by connecting the wheelchair to the music and lights.

Project details

Project type:
ECTS:
Time:
Client:
Nature:
Link:
Keywords:

 

Elective
3
2019
TU Delft
Group Project
GitHub
AI, Data, Programming & Prototyping

Project type:
ECTS:
Time:
Client:
Nature:
Link:
Keywords:

Elective
3
2019
TU Delft
Group Project
GitHub
AI, Data, Programming & Prototyping

Summary

The goal of this elective was to create a working prototype of an IoT product. As a product, we were given a wheelchair. We specified this to a wheelchair that allows children to become the centre of the party. We envisioned a wheelchair which could control the music similarly to how a DJ could control the music. In this project, we created a working prototype of a wheelchair which could pause, play and skip tracks, adjust the play speed, and high and low pass filters. The input for these controls is based on gestures and postures. For the gestures a adafruit gesture sensor was used. For the postures, several pressure sensors (FSR) were used. The presure from each sensor was used as input for a classifiaction algorithm created through machine learning.

Sensors, Actuators & Controllers

At the centre of the electronics in the wheelchair lays an Arduino mega and a Raspberry pi. The Arduino is a microcontroller and is the interface between all the sensors and the LED strip. The Raspberry Pi is a single-board computer and is used for the more computational intensive processes such as playing and adjusting music and running the classification algorithm. Connected to Arduino are a led strip and all the sensors: a microphone, a  proximity sensor, a gesture sensor and 4 pressure sensors. Connected to the Raspberry Pi is a speaker.

The music

To play and manipulate the music we used Pure Data on the Raspberry Pi. Pure Data is a visual open-source programming language for multimedia. It gives us basic music controls, such as pause, play, forwards and backwards but also more advanced such as speeding up or slowing down the music and adding low and high pass filters.  Pure Data receives its command to apply these controls through TCP communication from a python script that is also running on the Rapsberry Pi. This python script gets input form the adruino through the serial port uses this to determine what commands to send to Pure Data.

Proximity sensor

The proximity sensor is a SHARP 2Y0A02 and is used to determine whether somebody is close to the wheelchair. It is connected to the Arduino which preforms a bit of processing, translating the voltage values to a distance in cm. The Arduino then sends this data to the Raspberry Pi through the serial port. On the Raspberry Pi, the python script reads the serial port and uses the values to determine if sombody is close to the wheelchair. If that is the case is passes a command to Pure Data using TCP to add an sample on top of the music that is already playing.

Gesture sensor

To detect gestures the Adafruit APDS9960 is used. It is connected to the arduino and uses a library provided by adafruit. This library procces the input from the senors and classifies this into 4 gestures, up, down, left and right. These were then communicated to the raspberry through the serial port and passed along to Pure Data through TCP.

Pressure sensor

To determine the posture of the person sitting in the wheelchair, four pressures sensors were added to the sitting and back surface of the wheelchair. Each sensor is connected to the Arduino which passes the values along to the Raspberry Pi. On the Raspberry Pi, it passes the values to a trained classification algorithm determining the posture the person is currently sitting. The output of this algorithm is them again communicated to Pure Data to apply the appropriate commands.

Lights

To add ad bit of extra flair to the wheelchair we also added an LED strip. To control this strip we used a Sparkfun sound detector. This allowed us to detect the beat and use this to match it to the output of the LED strip, creating a disco like effect where the music and the lights are in sync.

Demonstration