The idea , small device that sits on your desk. It uses an ultrasonic sensor to know if you are sitting in front of the computer. If you stay too long the device shows a message on the LCD screen and makes a sound with the buzzer to remind you to stand up and move. You can press a button to reset the timer .
The inspiration came from my current life, where the computer, laptop, or even the phone has become almost essential in the daily lives of most people. We spend long hours using the PC or the phone, and this often causes many problems such as back pain, neck pain, eye strain, or blurred vision. These are just a few of the possible negative effects, and there are many more.
So, I felt that there must be a solution to balance between spending long hours on the PC or phone and taking care of our health as much as possible. The goal is to reduce these harmful effects or even avoid them whenever we can.
To build and verify the circuit, I relied on TinkerCAD for the simulation and Arduino IDE for code checking .
First, I built the electronic circuit on TinkerCad to test the connections and code, and to make sure everything was working without any issues.
I also tried, as much as possible, to organize the wires in order to make the connections clearer and to simplify reviewing the circuit at any time
The idea of the device is to detect when the owner is sitting at the desk using any device, like a PC or a phone, and start a timer from the moment it senses them for a set period.
When the timer ends, an alert is triggered through a buzzer and LED, and a message appears on the LCD to remind the owner to stand up, take a break, and move.
The timer can be reset using a push button.
The purpose of the device is to protect the owner’s health, preventing negative effects of sitting for long periods on bones, neck, and spine, as well as protecting the eyes and nerves from strain caused by computer or phone use.
It helps reduce damage by reminding the user to move and take breaks, because working for long periods can make you lose track of time, and the damage may only be noticed later.
In our circuit, let’s clarify the inputs and outputs:
Inputs:
The ultrasonic sensor, which sends the signal that starts the system.
The push button, which resets the system and makes it start again from the beginning.
Outputs:
A buzzer, which works as an alarm to give a warning.
An LED, as a visual indicator.
An LCD screen, which displays whether the system has started or is running by showing a countdown timer. It also shows the number of times the system was reset using the push button
Note:
For the timer, I set it to 30 seconds to test the system multiple times, but it can be easily adjusted.
The recommended duration for actual use is between 25 and 45 minutes at most.
Yes, we just need to change the 30 to the desired time, but in seconds.
Development 🪓📦⚡🔌
First we connected the 5V and GND pins to the breadboard 🔴⚫
Then we connected the VCC and GND pins of the Ultrasonic sensor using a jumper gray wire 🌫️
Then we connected the Echo pin of the sensor to Pin 5 on the Arduino using a blue jumper wire.🔵
After that we connected the Trig pin to Pin 6 on the Arduino using a Yellow jumper wire.🟡
Then we connected the Buzzer to Pin 4 on the Arduino using a Purple jumper wire 🟣 and the GND with an Brown jumper wire 🟤
Additionally we extended the GND line using a Purple jumper wire 🟣
After that, we connected the LED, making sure to correctly align the positive and negative terminals ,We also added resistor connecting one side of each resistor to GND and the other side to the corresponding LED .and we connected the LED to Pin 3 on the Arduino using a gray jumper wire 🌫️
we connected the Push button pins to the breadboard 🔴⚫
Then we connected the Push button pins to the breadboard 🔴⚫
Cardboard 📦
I faced an issue with the LCD where it was showing strange readings, not as expected. The problem initially originated from the code.㊗️㊙️
Later, another issue appeared where the screen was unclear. After referring back to the instructors, it turned out that the problem was due to the screen calibration and also the connections. The wires were not stable in their positions, which caused this issue.
In the end, everything worked perfectly.🥳