We created this project as an Engineering Project for my Pre-Engineering II teacher, Mr. Chen. Our idea for the project was to create more than a boring security camera, we sought to create a seemingly living and reactive eye using our skills and resources. What motivated us primarily, beside the grade for Mr. Chen's class, was our desire to prove ourselves as Engineers and desirable applicants for college. Starting this project, we sought to create a realistic eye that reacted when someone was nearby. We wanted the eye to move, blink, and glow. We also wanted an LCD to say "Motion detected" when the eye finds someone nearby. Mechanism explanation:
The Ultrasonic Rangefinder is attached to a servo that rotates between 0 and 90 degrees. If the Ultrasonic Rangefinder detects someone within 30 centimeters, the Arduino NANO receives the signal that "objectdetected" is true and "eyeactive" should now be true. The Arduino NANO tells a servo to rotate from 0 to 174 degrees slowly, opening the eyelid. The actual eyeball sits on the eyelid stand (the bottom eyelid) and rotates between 78 and 112 degrees through the use of a servo. The upper eyelid also randomly shifts between 0 and 174 degrees to make the eye blink. This effectively creates an eye that moves and blinks, appearing realistic. As the eye is still active, an LCD says "I see you..." as well. A counter ticks how long it has been since the Ultrasonic Rangefinder detected motion. If no motion has been detected for 5 entire ticks, the eye is deactivated. The upper eyelid moves from 174 to 0 degrees and the eye moves to 90 degrees, the default position. The LCD is cleared, and the cycle begins again with the Ultrasonic Rangefinder continuing to look for motion. Documentation:
We began this project April 1st 2026, when I texted Yves and asked if he wanted to be my partner for Mr. Chen's project. He responded immediately and agreed, we would call that night to brainstorm. When brainstorming, I had already had a vision. I wanted to recreate the all seeing eye from Lord of the Rings. Yves believed in the vision and added on to the idea by encouraging the use of an LCD. We had decided to make a realistic eye that blinks and rotates when motion is detected nearby, with an LCD also reporting the motion nearby. We finished brainstorming and generally planning our project that night, and came to a class with vision.Starting the project, we began with a prototype. We began creating the code and making sure the sensors alone would work the way we envisioned. It took us 3 days to create a generally working prototype with working code and several sensors (3 Servos, LCD, Ultrasonic Rangefinder, Breadboard, and Arduino NANO). The code and sensors were never a huge challenge to us, little did we know we had a huge challenge incoming. We had to create a model for 3D printing in TinkerCAD. We notably struggled to use TinkerCAD, the software and tools often glitched and messed up numbers. I remember when I asked TinkerCAD to convert 5 centimeters to millimeters, and apparently 5 centimeters equaled 15 millimeters. Nevertheless, we persevered and made due with our tools. We went to several phrases in our 3D modeling. On our first version, we struggled to figure out how to make the mechanism for the upper and bottom eyelid to work. We attached 2 beams, 1 on the upper and 1 on the lower, and elevated it with a block. The beams were thin and would not have efficiently worked, and the general mechanism was sloppy. Mr. Chen was quick to criticize the model and pushed us to do more extensive research. On our second version, we had thought of a much more logical mechanism. Rather than moving the bottom eyelid, it would serve as a stand for the eyeball to sit on. From the bottom eyelid stand, there were two rectangular beams going upwards with holes for the upper eyelid to fit into to. Finally a rectangular piece would attach to a beam on the upper eyelid, allowing the servo to move the upper eyelid through a connection to the rectangular piece. Yves notably and fittingly dubbed the rectangular piece the name "Wheely." This model was much more promising and we sent it to Mr. Chen for 3D printing. Mr. Chen reported that our model was the size of a thumb after he printed it. We had not realized we designed the model with inches rather than centimeters. After realizing and setting the 3D printer to inches, we still faced measurement issues. We realized that the TinkerCAD software was the issue and we had to find our own mathematical way to convert said measurements (which ended up being scale +1000%). We then realized that the upper eyelid was far too apart from the eyeball, and on version three we would lower the hole for the upper eyelid. We also had to adjust some measurement issues in version three regarding the servo for the eyeball. After printing, the model was somewhat successful. However, the eyeball was far too huge to move and we lowered the size of the eyeball on the fourth version. We also made the beams on the side of the lower eyelid stand larger to promote further stability. On our fifth and final version, we fixed more measurement issues, made the upper eyelid beams larger to prevent it from falling off, made "Wheely" more stable by using a rectangle hole instead of a circular hole. Overall, this version worked, however, there were two issues. One, the servo for the eyeball had made the eyeball slightly not aligned with the bottom eyelid stand. Two, the sensors and components all had to be held at very specific distances from each other to work, forcing us to keep our hands in difficult positions to make the project work. After brainstorming, we decided to create a platform for our project. Through the use of a platform, we could accommodate for the alignment issue with the eyeball, keep the components at specific distances, organize the components, and make the project overall more clean and appealing. Our first version of the VISOR platform worked perfectly, a testament to our growth in 3D modeling. Now that our project was assembled and complete, we sought only to make it look cooler. We started off by ordering an eyeball sticker to make the eye more vivid and lifelike. We then wanted to optimize our code. We made a soft blink in the code to make the eyelid close and open much slower, looking far more realistic and aesthetically pleasing. We then created code to make the eyeball blink at random intervals, further making our eye seem alive. Finally, Yves had grown tired of calling the project "VISOR" and we sought to infantilize our work. We decided to keep "VISOR" as the professional name and "Fredrick" as the personal name, do not ask why.
We successfully created an eye that reacts to nearby motion by opening its eye, blinking, moving its eye, and saying on an LCD "I see you..." The only thing we did not directly accomplish from our initial objective was making the eye glow. We initially assumed it would be simple and we would only have to add an LED inside the eye. However, we quickly abandoned this idea because the glow would take from the realism of the eye and be difficult to organize considering wire placement and servo placement. This is how we created the VISOR, or Fredrick some may call him, and we hope with this project that we are recognized for our engineering expertise and drive, and most of all, we hope we get a 100 on Mr. Chen's project.













_t9PF3orMPd.png?auto=compress%2Cformat&w=40&h=40&fit=fillmax&bg=fff&dpr=2)








Comments