What it does
"Ray" is a wearable technology project that combines fashion with healthcare. This project introduces a necklace that is integrated with a UV sensor capable of tracking UV radiation. Paired with a mobile app hosted using Blynk, "Ray" aims to revolutionize how individuals interact with and manage their sun exposure.
Key Features:
- UV Monitoring: Continuous tracking of UV levels to give real-time and historical data through a chart and value display.
- Harshness Index: UV monitoring technology currently available in the market displays only real-time UV values. However, prolonged UV exposure can be harmful, and existing solutions do not take into account the duration of exposure. Additionally, existing solutions do not account for the application of sunscreen by a user. Our solution utilizes Machine Learning to develop a "Harshness Index". It incorporates a temporal component and, hence, considers both the time of exposure and the level of UV radiation. Additionally, our project takes in user input about the SPF applied. Based on this data, it makes personalized suggestions to users to increase or decrease their sun exposure.
- SPF Recommendations: Intelligent algorithm that suggests suitable SPF protection based on the current UV index, and user-inputted value of SPF applied.
- Skin Cancer Likelihood: Incorporates machine learning to predict how much more or less likely the user is to develop skin cancer based on historical raw UV data
- Sun Intensity Alerts: Push notifications to warn users of high UV levels and advise on protective measures.
- User-friendly App Interface: Easy-to-navigate app providing a seamless user experience for monitoring and managing sun exposure data.
How we built it
We started by interfacing our UV sensor and reading real-time data from it. We set up a sample GUI with the help of Blynk to send our raw values to. We logged this data for a few hours. After this, we set up a Python program that accessed these values using the RestFul API and then performed a multitude of data processing and machine learning algorithms on it. We proceeded to solder our breadboard connections together and use some jewelry-making techniques to have a more wearable prototype. The data generated was pushed to the app. The final phase of the project involved fine-tuning the GUI to properly represent the data being pushed.
Challenges we ran into
- Connection issues between the Blynk Server, Python Code, and C++ code.
- Hardware issues
- Lack of datasets
- A paucity of time for data collection
- Data Cleaning
Accomplishments that we're proud of
- Implementing APIs correctly
- Finding workarounds for our bugs
- Finding workarounds for Blynk’s limitation
What we learned
- Use of APIs in Python
- Programming ESP8266 using the Arduino IDE
- Using Blynk’s cloud Server
- Mathematical fitting using Machine Learning
- Hardware prototyping skills
What's next for Ray: The Smart UV Tracking Necklace
- Manufacture custom printed circuit boards for size and cost reduction
- Train model using better data
- Improve GUI
- Communication via Bluetooth instead of Wifi
- Hyperparameter tuning for machine learning algorithms
- Ultimately host own server to supersede Blynk’s limitations.
- Quantify the amount of Vitamin D being produced
- Incorporate other parameters such as skin-type, age and others.
- Provide support for a larger range of UV values
Niranajan Vijaya Krishnan (niruvk@princeton.edu, discord: grapeswag) Divija Durga (divija@princeton.edu, discord: dividurga )
Log in or sign up for Devpost to join the conversation.