Ms. Helpy is a teacher's assistance whose main job is to reinforce students' positive behavior. It also makes them aware of the noise they made in the classroom. The teacher can easily set a countdown timer for any class activity.
My design consists of 4 parts :
Body
Arm
Head
Foot
I used Fusion 360 for the CAD process
It looks like a box but without bottom as it will be attached to the top side of the body.
Face
Top
Side
Back
Front
I identified a place for the LCD 16x2 i2c, Keypad 3x4 and the sound sensor
Right Side
There is a hole for the screw to attach the sound sensor to the right side
Left Side
Both sides (right & left) have a place for the servo motor.
Back
I identified a place for the push button in the middle of the back. Two places for the Arduino's power source and USB. I made an extra place for the adaptor.
Top
I made press-fit holes to assembly the head over the body
Bottom
I made press-fit holes to assembly the feet under the body
Keypad Support
It will at the back of the keypad to support it
One of the sides has a place for attaching the servo motor. The back has an extended part at the
Front
Side with servo
Back with a sign
Side
Top
Bottom
I made a simple design of the feet since the device is not mobile.
Side
Bottom
Laser Cutting Machine
4 Sheets of Wood
LaserCad
Screw & nuts
to assemble parts together
I saved each sketch on Fusion 360 as dxf files and import them on the LaserCad program to prepare them for the fabrication. Then, I adjusted the power & speed for the cutting parts ( Speed 15 - Power 85) and for engraving ( Speed 300 - Power 50).
I used an online png to dxf convertor to add a bowknot to give my device a female look and I used shapes to make the circles of the eyes. Both of the bowknot and eyes were engraved not cut.
I adjusted the nozzle of the laser cutting machine with the focus point and downloaded the file to the machine.
I assembled the parts together with 3/10 mm screws and nuts.
I saved each sketch on Fusion 360 as dxf files and import them on the LaserCad program to prepare them for the fabrication. Then, I adjusted the power & speed for the cutting parts ( Speed 15 - Power 85) and for engraving ( Speed 300 - Power 50).
I adjusted the nozzle of the laser cutting machine with the focus point and downloaded the file to the machine.
I used an online png to dxf convertor to add a noise sign next to the sound sensor and I used text to type the name of the device on it. Both of them were engraved not cut.
On the front side, I attached the LCD first, then the keypad with its support at the back. on the right side, I attached the servo motor with a screw and the sound sensor. On the left side I attached the servo motor only with another screw.
I attached the head to the top part of the body.
I assembled all the parts together with 3/10 mm screws and nuts.
LCD and Keypad attached to the front
Keypad support
Servo motor attached to the side
Sound Sensor attached to the right side with a screw and a joint.
I saved each sketch on Fusion 360 as dxf files and import them on the LaserCad program to prepare them for the fabrication. Then, I adjusted the power & speed for the cutting parts ( Speed 15 - Power 85) and for engraving ( Speed 300 - Power 50).
I adjusted the nozzle of the laser cutting machine with the focus point and downloaded the file to the machine.
I used an online png to dxf convertor to add a technology logo on the front part of the arm and I used text to type the "Keep quiet!" and " Good idea!" on the back part of the arm. All of them were engraved not cut.
I attached the servo handle with two screws on the arm side, then I attached the handle to the servo with another screw.
I assembled all the parts together with 3/10 mm screws and nuts.
I saved each sketch on Fusion 360 as dxf files and import them on the LaserCad program to prepare them for the fabrication. Then, I adjusted the power & speed for the cutting parts ( Speed 15 - Power 85).
I adjusted the nozzle of the laser cutting machine with the focus point and downloaded the file to the machine.
I attached the foot to the bottom of the body using press-fit parts and screw and nuts.
I assembled all the parts together with 3/10 mm screws and nuts.
It detects the sound with the help of a microphone if the sound level exceeded a certain level, the servo motor raises the right hand and the buzzer goes on.
It is used to complete an electric circuit when you press on it, so the servo motor raise the left hand.
The buttons on a keypad are arranged in rows and columns. Pressing a button closes the switch between a column and a row trace, allowing current to flow between a column pin and a row pin. These numbers are displayed on the LCD.
It raises the arm with a sign more than 90 degrees when the push button is pressed or when the sound sensor detects certain sound level.
It produces sound when the timer finishes counting down or when the sound sensor detects certain sound level.
It displays the the countdown timer which consists of hours, minutes and seconds. When '*' is pressed, time can be set and '#' works as enter.
I used USB cable to connect the Arduino to my tablet. I think this power source is suitable since the device isn't mobile.
My code consists of three parts:
Good idea sign (push button & servo motor)
Keep quiet sign (sound sensor, servo motor & buzzer)
Countdown Timer (Keypad 3x4 , LCD 16x2 and buzzer)
I defined the libraries of the keypad 3x4, LCD and the servo
I set the variables for the countdown timer code, sound sensor and its data, the 2 servo motors (Myservo & Myservop2), push button and the inital position of the servo motors.
I coded the LCD to begin with it is connect to a power source and display the timer with its backlight on and I identified the buzzer as an output component. I also identified the serial.
I identified the pins of the 2 servos motor and, push button as an input component and the sound sensor too. I added comments to each feature to be easily recognized in the code during the debugging process.
The sound sensor is connected to an analog pin to control the degree of the sound level. I added if condition code to control the sound level that the sensor detects to make the buzzer produce a certain tone and the servo motor raise the the right arm to a certain position.
When the push button is pressed, the servo motor raise the the left arm to a certain position. I used the serial communication to test this feature.
Then, I coded the Countdown Timer which can be set when ('*') is clicked with if condition too. When ('#') is clicked another if condition begin to start the countdown of the timer. At the end the buzzer announced the end of the activity. The timer consists of hours, minutes and seconds.
Sound Sensor test (minimum feature)
I tested the sound sensor alone to check the detection of the sound. I connected it to a digital pin first but the instructor advised me to connect it with an analog pin to control the sound level easily.
Sound Sensor, buzzer and servo motor test (minimum feature)
I tested the sound sensor with the servo motor and the buzzer all together. When the sound sensor detects a certain sound level, the servo motor changes its position to raise the arm and the buzzer produces a tone.
Push Button and Servo motor (minimum feature)
I tested the push button with the servo motor. When the push button is pressed, the servo motor changes its position to raise the arm.
Countdown Timer test (Complete feature)
I tested the keypad 3x4, buzzer and the LCD 16x2 i2c all together.
All features together
I didn't find sound sensor on Tinkercad, so I added IR.
I always ask for feedback from my instructor and my peers , especially Faten.
My instructor 💡advised me to change the place of the push button from the front side of the body to the back side to make the students think that the device raises its arm automatically and they don't notice that the teacher press on the push button.
When I fabricated the front part of the body, it wasn't assembled with the other sides as it was shorter than them. she advised me to check the assembly on Fusion carefully. She usually follows the progress of my project😍.
Attaching the servo motor with arm side was the biggest challenge for me as the screws of the servo didn't fit at all. Without the help of my instructor, it wouldn't have been solved. Mr. Ahmed attached the servo with two screws to the side of the arm and used another one to attach the servo to the side of the body.
One screw of a servo motor was missing, so I had to use a screw of a sharpener.
The arm attached to the servo motor and the push button keeps moving randomly when it is was connect to a power source. When I reviewed the code again with my instructor, I found out that I wrote a different digital pin in the code.
I would add two LEDs as the eyes of the Head
I would add LED Strip sounding the ears to lighten up when any feature is processed.
I would add IR sensor to detect the attendance of the students.
I would add DC motor to the feet to make it mobile and control it via Bluetooth.