Functionality:

The clock shows real-time locations of family members. Each hand represents one family member and the hand will turn to the corresponding position on the clock whenever a button is pressed. When you wave to the clock, the LEDs on the clock face will light up. When you call a person’s name in front of the clock, the hand representing that person lights up.

Technical description:

Hardware: standard servo motors, breadboard, wires, photoresistor, GPS module(which fails to give any signal), buttons and resistors, LED lights(tons of them), three arduinos, microphone that’s built inside a computer.

Arduino 1: servo motors and slave module

Arduino 2: buttons, master module, LEDs on the clock face and photoresistor

Arduino 3: LEDs on the clock hands controlled by Matlab

Servo: We use two standard servos to control the movement of a hand of the clock.

Why two standard servos?

We choose standard servo instead of continuous servo because a continuous servo can only be assigned a rotation speed which is not what we want. A standard servo can only take in a number between 0 to 180 degrees and turn to the corresponding position. However, we want to make the hand to turn to any position from 0 to 360 degrees so we connect two servos together to achieve that.

Codes notes:

At first we try to directly assign an angle to the standard servo and expect to turn to the corresponding position. However, as it turned out, when you ask a servo to turn to a certain position, the servo might have difficulty to do so if the position is too far away(say from 0 to 180). In order to solve it, we write a help function(which has the name help to turn the servo one degree at a time so that the servo wouldn’t crash).

Photoresistor: a photo-resistor’s resistance change rapidly according to the light intensity. In our circuit, when we wave to the photoresistor, some of the light would be blocked, so the voltage on the photoresistor would change rapidly. And we use the analogread to deal with such change and make the arduino light up the LEDs around the clock when the photo-resistor’s covered.

Software: (Codes in the attachment) arduino and matlab

Matlab: We adapted lab6 on signal processing into recognizing “Jack” and “Bob”. Then, we create an arduino object in Matlab. If the voice is recognized as “Jack” or “Bob”, the corresponding LED light up for 6 seconds.

Problems:

We intended to use GPS module to get location information as the person goes from place to place. In that way, we do not have to put a list of buttons but instead one on the device. As long as the person presses the button, the clock at home will automatically point to the corresponding location according to the GPS data it receives. We ordered GPS neo 6m online and found that it did not have any signals and did not output any data even outdoors. Failing to get the GPS module to work, we changed to the multi-button version.

Future development:

We could get the GPS module to work so that location information can be sent automatically. We could add a sending text functionality to the device. When the person reaches a new place, a text message can be sent to his/her phone automatically to remind him/her to press the press the button and update his location. If possible we could also develop a mobile app to accommodate the clock. For example, when newly connecting to the clock, the app can be used to set up connection between the person and the clock. Also, the mobile app can replace the device that the person has to carry around. The person only has to indicate in the app instead of actually pressing a button.

Market research:

This product will be very popular among Harry Potter fans because it is a reproduction of a magic object in the movie. For non-Harry Potter fans, this product is very useful especially for parents to track their kids’ location, so that they do not have to worry about their kids’ whereabouts all the time.

Codes:

https://docs.google.com/document/d/1ftYf3ZQMslgHv40GKrUI5qv5AehVTHxixs7USKKHWo0/edit?usp=sharing

2-min promotional video

https://www.youtube.com/watch?v=R0YFQLUJsnU

Enjoy!!

Share this project:

Updates