Electronic Book Reader
Area of InterestElectrical/Software Engineering
SchoolLowell High School
Throughout the 6 weeks, I created an Electronic Reader which will convert words on written pages to words you can hear. Because English is my second language, it is very difficult for me to learn pronunciation. The idea behind this is for people who are learning English to be able to learn how to pronounce certain English words in a book. Or it can just be used for lazy people who don’t want to actually read a physical book. The entire machine consists of a page turning mechanism, a camera, a speaker, and a small pocket sized computer to control both the camera and the components of the page turning mechanism. The camera is in charge of taking a picture of the page, get the words to be recognized by the computer and spoken through the speaker. The page turning mechanism, as the name suggests, turn the pages after the words are spoken.
In addition to learning many software and mechanical aspects such as coding and mechanical designing from the project, I also gained a lot of knowledge about life in general. There are two that really left an impression on me. One is how having sufficient material is very important to a high-quality project. Just as how Sun Tzu, the author of Art of War, has once said, “Supplies goes before an army on the move”, the same applies to creating projects. Sufficient preparation of the materials should be made before starting on the project. In my case, my bill of materials for my project is poorly written, so when I started to build my project I realized that I am missing a lot of necessary components. Also, sometimes the material supplier is slow on delivery so I wasted a lot of time waiting for the materials to arrive which lead to a rush in the end and a not so high-quality project.
One other piece of advice that my project taught me is that never rush, if you rush, the chance of failure increases. In my case, I broke the camera module when I am rushing to film my final milestone video by accidentally tearing off an inductor that is soldered on the camera. Unfortunately, the inductor is a very tiny component of the module, so it is impossible to resolder it back on. The broken camera leads to the inability to recognize characters, and so I can’t film my milestone video. Not only I have to waste time to find a solution to overcome that obstacle, the quality of the project also decreases. Though the project is not finished, but it still taught me knowledge that is not only technical, also knowledge I can apply to life as general. So the project is definitely a very unique and valuable learning experience for me.
This is my second milestone video. In this video, I demonstrated and explained how the machine recognizes the words in the book. The core of this process is an OCR engine or Optical Character Recognition Engine. The engine will find characters in a picture and plot them down in a text file, through detecting groups of pixels in a picture that resembles characters. Since I am not advanced enough to program an OCR engine myself, I used a pre-created OCR called Tesseract. The camera on top of the machine will take a picture of the pages and send it to Tesseract to recognize the characters. After it finishes recognizing the characters, the output will be sent to another program called a TTS engine or Text to Speech engine, which will turn the text into words you hear. The Text to Speech I used is called Espeak, you can find both Tesseract and Espeak online if you are interested in the reference below.
Hello, I am Andrew a rising junior from Lowell High School. My Main Project is an electronic reader that will read the words in a book to you through sound. The finished project should have a camera up here, which will take a picture of the book and a speaker will speak the word on the page, and after it finishes reading the book, a mechanism that turns pages will automatically turn the page. Now the thing I have here right now is the Mechanism that flips pages. The roller here will turn and wrinkle the page and the rod will go into the wrinkle in the page and flips it over. A demonstration is available in the video. As you can see, it is not fine tuned very well, I will continue to improve it through out the future. Some difficulty That I encountered is to find a way to let the servo for the roller to slide freely, but not much movement horizontally. The solution I came up with is to create a bracket that connects to the servo but also creates a channel to let the rail slide in. Thank you for listening and see you next time.
Hello, my name is Andrew, and I am a rising junior at Lowell High School. My starter project is “The Simon Says Game.” It is a memory game where the lights will blink in a sequence and you will have to press the button in the correct order that is shown. If you do that for 13 consecutive rounds, you win. However, if you pressed something wrong, a losing tone will be played and all four lights will light up. You can also change the game mode by pressing a button and turning on the power, one of which include a battle mode. It is a 2 player mode where one player sets the sequence and the other player has to copy it in order to win.
The heart of this entire project is the ATmega328 chip which you can program. However, for this project, the code is already uploaded and you just have to solder the IC on. Other parts of the project include capacitors, resistors, switch and of course LEDs. The LEDs light up when current is passed through them, which is controlled by the IC following the rules of the game. The IC also detects if the buttons are pressed. Electricity will pass through and go to a pin on the ATmega chip to let the chip know that a button has been pressed. The IC will then execute the actions defined by the prewritten code and continue on with the game. Since the capacitor and the resistor are connected to the reset pin on the IC, the main function for it is to not restart the sequence when the power is switched on. Almost all of the components connect to the IC, so the IC is an extremely important part of the entire circuit. As you can see, I enjoyed building this project and have learned a lot from it.
Tesseract Source Code:
Espeak Source and Documentation:
Reference for my project: