Automatic Garage Door Closer
Keeping your home safe, one forgotten door at a time
Automatic Garage Door Closer
Keeping your home safe, one forgotten door at a time
The automatic garage door closer was inspired by the gut wrenching feeling one gets when they realise their garage door is wide open, has been since they left home, and will be until they return. The model is designed to illustrate the idea that the Arduino would be connected into the garage door system. Hypothetically, after a set amount of time that the sensors in the system have not detected movement, the servo will be triggered; thus hitting the button to close the door again. With this, ideally one will never have to panic about a possible, unmonitored garage sale, again.
Step 1| Programmed Arduino recieves energy from either a battery pack or a computer.
Step 2| The Arduino tells the servo to exicute the programmed sequence.
Step 3| The servo's arm presses down on the garage system's remote.
The studio, NuVu 123, was geared to teach the students in greater detail how the resources at NuVu work, why they do what they do and how to work with them in the best manners possible; rather than a typical studio where a specific goal or product is determined at the beginning and achieved by the end of the two week studio. In NuVu 123, the first week we focused on, what I like to call, classroom topics. We had lesson plans, listened to lectures and worked hands-on with the various materials and techniques presented to us. On the last day of the first week, all of the students brainstormed and selected design engineering based projects. However the second week of our studio was greatly minimised in time due to the series of horrific events following the bombings at the Boston Marathon (one town over from NuVu). At the end of the first week, I decided to make an automatic garage door closer. This was inspired by the few times of pulling into my driveway after a long day at school, and finding that I had forgotten to close my garage door in the morning. Fortunately I live in a quite neighbourhood. Going into this project I was aware that I was not making anything new, this is actually a very common feature in many of the newer garage systems. However, I wanted to challenge myself to make this feature for my older garage system.
The research process for how The Genie Company designed their systems was very accessible, and credit to the previous week of classroom time, I was able to understand the diagrams at a much higher level than I was prior. Both my greater understanding of the diagram, along with the hours spent on learning the Arduino programming software, Arduinos (of all forms), Bread Boards and servos; it was relatively simple to do the programming for the whole project. Ironically, the difficult section of the project was constructing the casing.
It was decided that it was best to 3D print the casing. This meant I spent all of Thursday creating a 3D design in SketchUp. However, after spending 4-5 hours on SketchUp going through trial and error, and coming up with a final model, it was found that it would function however it was not possible within the restrictions of the 3D printer. With the help of my NuVu Coach, a simpler model was quickly constructed in the 3D Printer Programme. Printing started around 2:30PM on Thursday, and supposedly finished around 1AM on Friday. However, because of the lockdown, the model ended up sitting in the 3D printer for almost three days before being taken out and placed in a solution for the support material to dissolve. Thus making the construction of final model quite difficult.
This studio and project, as stated earlier, was more about the education than the product. And though the product of my studio was more of a rough model than anything else, I was still pleased with the outcome. The studio was incredibly educational and worthwhile.
Thank you breaking down NuVu, David!
Our group decided to create a device which opens a door using voice recognition. On Monday we began to plan and sketch the door opener, the original sketch included the idea that the user would step on a mat, then speak a password, and if the user got it right a servo would turn on the inside of the door opening it, and if you got it wrong, it would shock you with nine volts. But in the end we took out the idea of punishment for failure. Along with the door part we also wanted a car door opener to work the same exact way, but instead of stepping on a mat you would just have to say a password. then later that day we ordered most of the parts. On Tuesday we started to build the door opener. We started by building the door mat which when pressure was applied to the correct places would allow you press a large elbow button, opening the door. This is made using a piece of foam with two holes cut into it, we place two pieces of thin copper on either side of the foam. When the user steps on the foam, the copper presses together and completes the circuit. On Tuesday we also got to experiment with the voice recognition shield and start to wire and program the arduino. On Wednesday we had to go to radioshack to select a project box to hold the arduino, wiring, and the button we bought. We cut a circular hole using the laser cutter in the box for the button to stick out of, it was a perfect fit. On Thursday we finished assembling and programming the door opener. The programming for the door opener was very difficult. It consisted of the idea that the servo would not be allowed to turn unless the door matt was conducting electricity. We finished the programming and in the end, it worked perfectly.
The overall project turned out well, what we have now is a button connected to a servo, all plugged into a breadboard. Along with that is a matt with copper pieces on both sides so when the user steps on the correct places the copper touches connect the copper completing the circuit. We have the arduino and most of the wiring in a project box to make the project look cleaner. During the process of doing the programming we ran into a bump with how to have the arduino only be able to work in a certain order, mat, button, door opens. In the end we figured out how to use a state system in programming to have the program have an order to which things are happening. We were overall happy with the project but we wanted to be able to use the voice activation sensor to open the door instead of a button.
NuVu123 is different from other studios that have been done in the past. Usually NuVu’s priority is to have all the kids express their ideas and get them to understand the idea and iteration process. NuVu123 still incorporates those processes but the priority and goal of the studio is a little bit different. The problem was that people ended up having to wait for the teachers to finish making the technology work which takes up a lot of time. The goal of NuVu123 is to teach the basics and the foundation of the technology used to make the ideas come to life. The first thing we did was brainstorm minor problems that we could solve with the electronic skills David had taught us. Sam, Rowan, and Graeme wanted to make a way to open a door and unlock it without having to touch the door at all. For this to work we would need a sound sensor, some kind of pressure sensor or something to connect electricity to use on a doormat, a button, a servo, and programming skills.
At nuvu, projects often attempt to use knowlege that was learned the week before, and that knowledge tends to be close to the cutting-edge. But sometimes that leaves gaps in human knowledge. This studio attempted to fill in the gaps, by making something mundane with a nuvu spin: an alarm clock.
The alarm clock was comprised of a few parts, cheif among them a LCD screen. This was commanded by an Arduino microcontroller, and a breadboard held them both in place. The first few days were spent wiring the components all up together. Then, the troubles began.
The LCD screen in use could display alphanumeric characters, but not make then more then one line wide as I wanted. That would be fine, as the LCD could display custom characters, except the LCD screen could only display 8 of them. Which wouldn't work for 3x3 numbers, which needed 9 custom characters.
Thannkfully, then internet came to the rescue in the form of 7 reusable characters that when combined, made all 10 numbers, as well as forming a colon to connect the minute and second parts of the clock. The arduino had a timer, so that was used to measure the clock accurately. Everything was fine until problem #2 surfaced.
After a bit of coding, the numbers sucessfully displayed on the clock, rolling over, and connecting to thearduino's clock, and it was all working just well. Except the arduino's clock was running fast, and the clock, meant to be a 12-hour clock, was displaying 19:63.
The faults were traced to the arduino's timer, which was runing way faster then intended, and to the code, which didn't handle the timer value resetting properly. More coding ensued, and soon everything was working. But it was reading the wrong time, and had no alarm! 3 buttons were added, two to set the time, and one to set the alarm. A buzzer would ring whenever the time was right, and you could set the alarm when necessary. Finally, to add a nuvu twist, the alarm would roll back a little. If you set it for 7:30, it might wake you up at 7:15, to help you get up earlier. A few more bug fixes, andd it was done.
Given more time, I would make a case and add a wall outlet, so it could be used as a nactual alarm clock. But in doing this, while it may not be perfect, it helped fill in those holes in my knowledge, and also helped wake you up when you fell in them.
This was my second studio, and was one of my favorites since doing this type of thing interests me such as learning programing, learning more of arduinos and learning of different components of electronics. For the first week my studio wasn’t assigned projects yet we spent it learning of the basics of programing and did different projects and mini lessons. Which were very interesting such as the persistence of vision and the annoyatron.
Near the end of the first week my studio started projects, at first I had trouble coming up with ideas for what I was going to do for my project. The problem that our studio wanted to solve was everyday problems that people face that can be solved with electronics. I then remember a problem that I deal with on a daily basis, which was that when I play videogames for extended periods of time especially in the winter my hands would get very cold. So that’s where my idea of the heating system in a game controller originated from. I didn’t really need much material when I started the project. I had an old PS3 controller that I didn’t really have much use of anymore.
All I needed was some resistors since they produce a good source of heat that would suit my purposes. I also had some copper that could be attached like applying tape. The reason for it was that copper is a good conductor of heat so it can spread the heat out from the resistors more. After getting everything I needed I then learned on how to disassemble a PS3 controller which turned out rather simple. There were some complications when it came to finding a place for the resistors to be placed. I had to sacrifice the rumblers in the controller which was what made the controller vibrate. But that wasn’t a big deal. Next I had to do some modifications to the controller, such as putting holes in the casing so the resistors and the switch. I learned how to use a dimsel which is a tool that uses sandpaper at high speeds to carve holes, which is what I used to modify the casing of the controller.
After everything was starting to get finalized my last task was to hook up the controller battery to the resistors. However a problem showed up that I wasn’t expecting which was that the battery has a smart feature on it that if the battery is powering anything else then what it was meant to provide power for it shuts off its flow of power. So I had a bootleg PS3 controller so that I can take the battery from it and use it for the controller.
While this worked the resistors were generating heat and the controller was working, but on the day of presentation the controller stopped functioning. However I solved it temporary by having a battery pack connected to the controller via USB. My hopes is to soon resolve the power issue before the final exhibit.
I made a device that tells you if you are forgetting something you need when you leave your house. It consists of an Arduino, a Voice Recognition Shield, and a Text to Speech module. The VR shield remembers the words phone, keys, and wallet, though the device becomes more helpful when you add more items. On Easy Voice Commander I trained the words wallet, keys, and phone to be recognized verbally. I merged the code from the text to speech module and the VR shield and added a function called listen which allows me to use 2 Software Serial connections in my project (both the text to speech module and the voice recognition shield need one.) The text to speech module comes with different voices. I picked Perfect Paul because it was the clearest and least annoying. In the code for the text to speech module I made it say “Please list the things you are carrying” and “you forgot your keys,” “you forgot your wallet,” and “you forgot your phone.” When the voice recognition doesn’t pick up one or more of the words phone, wallet or keys, it tells you which one you didn’t say. After 10 cycles of 5 seconds (including the time it took to say the words) it would tell you what you forgot. The final product works, but there are many flaws.
Lets face it, car horns are annoying, and misleading. You can never really get your anger out on an average car horn. I am making an alternative non-annoying car horn. This horn will make different sounds than the average honks.
The ultimate goal is to have two speakers on top of the car, one facing forward and one facing behind. There are sneaky wires running from the speakers to inside the car. Inside the car the wires will run through a steering wheel cover, and be distributed to different buttons on the steering wheel cover. The concept is that when you press a button on the steering wheel cover, a different honk sound comes out.
There are five buttons, two green, two yellow and one red. When you press the corresponding button, the car horn says; “Watch out!”, “Nice bumper sticker”, “Put the phone down!”, “Nice blinker” and “Really?”. The car horn says every thing you cannot thoroughly express through a normal car horn.
The car horn is made of a wave shield, which improves audio quality. Other components are two speakers, two breadboards which connect wires without soldering them, and an amplifier. The arduino wave shield had to be put together, which was a tedious task. The wave shield had about 20 different parts that each had at least two wires that needed to be soldered. I had to follow diagrams to find out how to put the wave shield together. I did a pretty good job soldering except for the pins. I soldered all 26 pins on the wave shield upside down.
After the soldering I had to connect the speakers to the amplifier, the amplifier to the wave shield, the wave shield to the arduino and the arduino to the breadboard. I had to solder wires to the analog output numbers on the shield. I plugged those wires to the breadboard and connected the buttons.
I then had to sew the perf board onto the steering wheel cover. A perf board is a breadboard that you can solder onto and also cut to shape. I put buttons on the perf board and the wires to connect them to the other breadboard. It was hard to sew the pref board on because the steering wheel cover is made of thick rubber, which was very difficult to sew to.
If I had more time and a car I would actually install the car horn onto a car, and test it out.