Project

# Title Team Members TA Documents Sponsor
71 Automatic Puzzle Solver
Alex Kim
Conor Devlin
Eric Chen
Angquan Yu design_document2.pdf
final_paper1.pdf
other1.zip
photo1.jpeg
photo2.jpeg
presentation1.pptx
proposal2.pdf
# Automatic Puzzle Solver for Accessibility and User Convenience


Team Members:
- Eric Chen (egchen2)
- Alex Kim (alexk4)
- Conor Devlin (conorbd2)

# Problem

Jigsaw puzzles remain a popular pastime, offering enjoyment and cognitive benefits. However, manual assembly can be challenging for individuals with motor skill limitations, visual impairments, or limited attention spans. Existing automated solutions are often expensive, complex, or limited in puzzle sizes and complexities.

This project addresses the need for an accessible and user-friendly automatic jigsaw puzzle solver. Our solution aims to empower individuals of all abilities to enjoy the benefits of puzzle solving while reducing frustration and increasing user satisfaction.

# Solution

This project will deliver an accessible and user-friendly solution to enhance the puzzle-solving experience for individuals of all abilities. We propose an innovative Automatic Jigsaw Puzzle Solver equipped with a precision-controlled robotic arm and computer vision system.

# Solution Components

## 3D Movement System

Function: Precisely position the robotic arm above puzzle pieces.

Components:
- Stepper motors (e.g., Nema 17 series) with high torque and speed for accurate movement.
- Belt/pulley system or leadscrew system for linear motion on X and Y axes.
- End-stop switches for precise positioning.

## Rotation System

Function: Rotate puzzle pieces for proper orientation before pickup.

Components:
- Servo motor (e.g., MG996) with sufficient torque for desired rotation angle.
- Gears/belt system for rotating a platform holding the puzzle piece.
- Limit switch for accurate positioning at specific angles.

## Piece Picking System

Function: Securely lift and place puzzle pieces without damage.

Components:
- Vacuum suction cup(s) with size and material suitable for puzzle pieces (e.g., foam or silicone).
- Venturi vacuum generator with sufficient flow rate and pressure for suction.
- Compressed air supply with regulator for controlling suction strength.

## Computer Vision System

Function: Identify and locate puzzle pieces within the complete image.

Components:
- Camera sensor (e.g., ArduCam OV5642 or Olimex OV7670) with high resolution and auto-focus capability.
- Microcontroller (e.g., Raspberry Pi Zero W, Raspberry Pi 3, STMicroelectronics STM32F103C8T6) for initial image processing and communication.
- Processing Unit (e.g., dedicated AI accelerator or cloud-based processing) for intensive image analysis (optional).

## Control Software

Function: Orchestrate the entire system, interpret vision data, and control robotic movements.

Environment: Open-source libraries like OpenCV for image processing and Python for overall control.

Modularity: Designed for easy maintenance and future improvements.

# Criterion For Success

- Camera Accuracy: 95% of puzzle pieces correctly identified and oriented within the complete image.
- Arm Performance: 90% success rate in accurately picking and placing puzzle pieces.
- Puzzle Completion Time: Solve a 100-piece puzzle of moderate complexity within 60 minutes.

UV Sensor and Alert System - Skin Protection

Liz Boehning, Gavin Chan, Jimmy Huh

UV Sensor and Alert System - Skin Protection

Featured Project

Team Members:

- Elizabeth Boehning (elb5)

- Gavin Chan (gavintc2)

- Jimmy Huh (yeaho2)

# Problem

Too much sun exposure can lead to sunburn and an increased risk of skin cancer. Without active and mindful monitoring, it can be difficult to tell how much sun exposure one is getting and when one needs to seek protection from the sun, such as applying sunscreen or getting into shady areas. This is even more of an issue for those with fair skin, but also can be applicable to prevent skin damage for everyone, specifically for those who spend a lot of time outside for work (construction) or leisure activities (runners, outdoor athletes).

# Solution

Our solution is to create a wristband that tracks UV exposure and alerts the user to reapply sunscreen or seek shade to prevent skin damage. By creating a device that tracks intensity and exposure to harmful UV light from the sun, the user can limit their time in the sun (especially during periods of increased UV exposure) and apply sunscreen or seek shade when necessary, without the need of manually tracking how long the user is exposed to sunlight. By doing so, the short-term risk of sunburn and long-term risk of skin cancer is decreased.

The sensors/wristbands that we have seen only provide feedback in the sense of color changing once a certain exposure limit has been reached. For our device, we would like to also input user feedback to actively alert the user repeatedly to ensure safe extended sun exposure.

# Solution Components

## Subsystem 1 - Sensor Interface

This subsystem contains the UV sensors. There are two types of UV wavelengths that are damaging to human skin and reach the surface of Earth: UV-A and UV-B. Therefore, this subsystem will contain two sensors to measure each of those wavelengths and output a voltage for the MCU subsystem to interpret as energy intensity. The following sensors will be used:

- GUVA-T21GH - https://www.digikey.com/en/products/detail/genicom-co-ltd/GUVA-T21GH/10474931

- GUVB-T21GH - https://www.digikey.com/en/products/detail/genicom-co-ltd/GUVB-T21GH/10474933

## Subsystem 2 - MCU

This subsystem will include a microcontroller for controlling the device. It will take input from the sensor interface, interpret the input as energy intensity, and track how long the sensor is exposed to UV. When applicable, the MCU will output signals to the User Interface subsystem to notify the user to take action for sun exposure and will input signals from the User Interface subsystem if the user has put on sunscreen.

## Subsystem 3 - Power

This subsystem will provide power to the system through a rechargeable, lithium-ion battery, and a switching boost converter for the rest of the system. This section will require some consultation to ensure the best choice is made for our device.

## Subsystem 4 - User Interface

This subsystem will provide feedback to the user and accept feedback from the user. Once the user has been exposed to significant UV light, this subsystem will use a vibration motor to vibrate and notify the user to put on more sunscreen or get into the shade. Once they have done so, they can press a button to notify the system that they have put on more sunscreen, which will be sent as an output to the MCU subsystem.

We are looking into using one of the following vibration motors:

- TEK002 - https://www.digikey.com/en/products/detail/sparkfun-electronics/DEV-11008/5768371

- DEV-11008 - https://www.digikey.com/en/products/detail/pimoroni-ltd/TEK002/7933302

# Criterion For Success

- Last at least 16 hours on battery power

- Accurately measures amount of time and intensity of harmful UV light

- Notifies user of sustained UV exposure (vibration motor) and resets exposure timer if more sunscreen is applied (button is pressed)