Have fun! See you in 2008!
Nice....wonder how many innocent people died because
you posted these easy
to follow directions for any Islamic Extremist to
build a command IED on your
site. You are obviously a very intelligent
person with either, no common sense
or no sense of
I appreciate his/her concerns, and they are valid to some extent. To be honest, I was aware that my "easy to follow directions" could be followed for doing much more than just opening a door. Then why did I write about it? Well, like a coin, everything has two sides - one is the good side, and the other is the not so good side. There is already tons of information on the Internet on making bombs and weapons of mass destruction. Does this mean that the Internet should be shut-down..and people should stop sharing ideas with each other? I don't think so. If we stop sharing ideas to stop terrorists from misusing them, no one will be able to make good use of them either. Besides, this is what terrorists want..they want to create an atmosphere of insecurity, mistrust and terror. If we stop sharing our ideas to keep them from getting into the wrong hands, they will succeed in their mission. Moreoever, there are several scientists and engineers who work for these extremist groups. I'm sure that building a simple DTMF decoder wouldn't be difficult for them.
So relax, and be happy. My little door opener cannot worsen the already dire situation of our planet, let alone killing innocent people. :)
UPDATE: I did some experiments today to check which Shift key I use more often. Here are the results:
Activity Left Shift Key Right Shift Key Writing E-mails 54.3% 45.6% Programming (C#) 66.6% 33.3%
When I'm writing e-mails, I use both of the Shift keys. However, I use the left one more while writing code. The right shift key on my keyboard is slightly smaller than the left one..and I'm pretty sure this is the reason why its entire surface has been wiped clean by my pinky.
I’ve been reading a lot on how DTMF (Dual Tone Multi Frequency) tones work over the last couple of weeks. I’m sure you’ve noticed that when you press the keys on a standard telephone keypad, an audible ‘beep’ is generated. These beeps are actually the combination of two distinct frequencies. For example, the tone you hear when you press the number ‘9’ on a telephone, is actually a combination of a 1447 Hz and 852 Hz signal. In a telephone exchange, these signals are decoded by a computer which finally connects the dialer to the designated phone line. For example, the tone of 1447 Hz and 852 Hz will be decoded as binary ‘1001’. In this project, I have designed a simple DTMF decoder circuit which allows me to control appliances in my house from any place on Earth using a telephone.
I always wanted to be able to control things such as air-conditioners, lights, etc, remotely…but I never thought about putting the front door of my house under remote control until I saw this “knock to open” door hack on Hackaday. It’s a door that will unlock when the correct knock pattern is performed. After being inspired by the mechanical door opening system in that hack, I decided to do something similar to allow me to open my door with a cell phone! I mean c’mon, door locks with keys are obsolete..everyone uses them..they’re so old fashioned! They’ve been around for over 4,000 years. Yikes! It’s time for a little change.
This project would have been much simpler if I had an electronic door lock…but I didn’t! They’re expensive, so I didn’t want to buy a new electronic door lock. I wanted to open the front door of my house without “seriously” modifying/replacing any door components. I thought about using a servo/stepper motor to twist the door knob on the door, but their control circuitry is slightly complicated if you’re not using a microcontroller. So, I decided to use a simple, 24VDC, “pull solenoid”. They don’t have any complicated control circuitry and you just have to supply the required voltage to make them work. I simply fastened the solenoid to the door knob with a metal wire. When the solenoid is switched on, its linear motion twists the door knob and opens the door. Positioning the solenoid properly was probably the only mechanical challenge in building this door opener because the force applied by a solenoid, is theoretically inversely proportional the square of the length of the air gap. Thus, strongest force is generated when the air gap is smallest.
The second part of this project was to build a DTMF decoder circuit. I used a CM8870PI tone decoder IC for doing this. The circuit I have built is fairly simple, and can be used for controlling up to four devices. If you want to control more than four devices, check out this circuit. I had a Nokia 1100 cell phone lying around with a hands-free accessory which was rarely used. So, I hacked its hands-free accessory and connected it to the circuit (I just cut the wires which went into the earpiece). That’s about it! To control things in the house, you just dial into the base station and the Nokia 1100 auto-answers the phone call. Each function is just a matter of pressing the appropriate number on the phone and the DTMF chip decodes it and sends output to a transistor which controls a relay. To open my door, I just dial the phone, enter the magic code and voila - Alohomora! Watch the video above. :)
Now I’m thinking about building a password protected door by placing a keypad outside my house which will generate DTMF tones. A circuit on the other side of the door will check the numbers entered, and if the password is correct, it will open the door. However, there’s one little snag. Any nasty programmer would just love to use a computer to generate DTMF tones and crack the password using brute force…I would. :)
I had almost forgotten about that game until I saw this auto wood-chopper project in which a computer plays a simple game on a PSP using only a webcam to view its screen. I thought the idea was pretty good. So, I decided to make my own computer play that old pong game of mine on another computer using a webcam for vision! I fired up my code editor, and after several hours of coding and experimentation, my image recognition code started looking good. It uses edge detection to determine the boundaries of the ball and the bat in the webcam’s field of view. The area of the ball is more than the bat, so that’s how it differentiates between the two. The other steps are more or less similar to the things I did for my object tracking app. Like the auto wood-chopper dude, I thought about using motors to press the keyboard keys on my laptop. However, I thought it would be overkill when I could write a simple TCP client/server program to establish communication between the two computers.
Be sure to watch the video above! I’d love to hear what you think. Oh and here’s a similar project in which a computer plays Minesweeper on another computer using a webcam – wow!
You can download my fun Pong game from here. (1.20 MB)
This was a very exciting project. In my opinion, one of the coolest webcam based projects I’ve done so far. I entered the world of webcams after working on CamCapture – a project based on a Coding4Fun article by Scott Hanselman. :) Webcams are fun but I sometimes wonder why they’re called Webcams. I never use them for online video conversations! In my opinion, they should be simply called USB cameras. :)
It’s been a long time since my last blog post. I was a bit busy and wasn’t getting time for blogging. Anyway, I did something cool and thought you people would like it. I’ve been working mostly with webcams over the last couple of months. I wanted to do something different for a little change and found sound a very interesting way of communicating with robots/computers. I created a sound sensor for my Microbric Viper Robot to give it the ability to respond to claps and whistles. I had to work extra hard on this project as things weren’t getting done as quickly as they usually do. The basic idea was that the sensor would send the PIC a logic 1 if the loudness of the sound coming in to the microphone exceeds a certain threshold and 0 otherwise. So, the sensor compares the microphone voltage to a reference voltage, and sends a logic 1 if the microphone output is higher (however, my signal is inverted because of the way I set up the op-amp as a comparator in my circuit). I had to experiment a lot on a breadboard before I had the circuit working perfectly. Here’s the final circuit I ended up with:
Since I didn’t have an oscilloscope at home, I turned my computer into an oscilloscope by using PC-Oscilloscope by Christian Zeitnitz. This software works with a sound card. It doesn’t have a fast sampling rate, but it’s good enough for testing this circuit. Parallel port based oscilloscopes are probably a little faster, but I didn’t have time to make one. In the oscilloscope, the signal from the sensor is a nice series of sharp spikes.
This was a fairly simple project, but it took much longer than usual. Well, I have some more cool ideas for sound sensors. ;) Keep visiting!
I've been playing around with the Microbric Viper robot construction kit over the last couple of days. The Viper uses a Basic Atom microcontroller which can be programmed in BASIC. These robots can also be controlled with a computer using an IR transmitter. I'm using an Iguanaworks IR tranceiver which works with a serial port for my projects.
Well, since I love webcams, I decided to turn my Viper into a simple laser following robot! I've mounted a small wireless webcam on top of the robot. The webcam, transmits video to my computer. My computer determines the position of the laser in the camera's field of view and tries to move the robot towards it. As far as the software is concerned, I'm using a modified version of my Autonomous RC Car code. Watch the video above. I think the next step could be to mount the camera on a servo motor. That way, the robot would be able to scan its surroundings by rotating the camera! I also plan to try object tracking with this robot. That would be fun!
A few weeks ago, I was invited to Engineer 2007, one of
Well, I left for Surathkal on the 5th of March. The flight took about three hours to reach from
The projects I decided to show were - laser gesture recognition and parallel port driven relays (I built a new opto-isolated relay box for Engineer 2007 - more information later), computer controlled RC car, computer controlled autonomous airsoft turret and some webcam projects I did over the last 5-6 months. This was the first presentation of my life and I was obviously a bit nervous at first. However, everything turned out very good and I somehow also managed to successfully solve every little problem which got in my way while demonstrating. Phew! Everyone loved the presentation and clapped whenever I did something cool - this was a big relief for me. I’ve learned a lot from this experience. I’m quite sure my next presentation will be even better than this one.
Engineer 2007 had some lectures addressed by notable people like Bjarne Stroustrup (creator of C++), Professor Kevin Warwick (aka Captain Cyborg), John C. Mather - 2006 Nobelist (Physics), Dr. Timothy Poston - mathematician and interdisciplinary scientist (picture above), just to name a few. I really loved Kevin Warwick’s stuff. I think he is most widely known for his famous work in “Project Cyborg”. In Project Cyborg, he had a chip implanted into his left arm which allowed him to control lights, doors and other computer controlled devices around him! His work on building direct interfaces between computer systems and the human nervous system are really fascinating. He also showed us a necklace he gave to his wife, which changes color to reflect Kevin Warwick’s mood! If Kevin Warwick is happy and relaxed, the mood necklace would turn blue. If he gets angry or excited about something, the necklace would flash red!
I really liked the students of NITK. They were very helpful and helped me out whenever I needed some help for my presentation or otherwise. Nothing could’ve been possible without their help. I also enjoyed watching some of the robotics events at Engineer 2007 like “Automata”. The students had to build a robot which could move through a pattern made of white lines on a black background and locate the smallest loop in the given pattern. Some of the students had built their robots completely from scratch and watching them test was really fun.
I came back home yesterday night. I’ve made some really cool friends at NITK and I’ll always remember this trip. I’ve even got some new ideas after watching the events which took place at Engineer 2007. Let’s see if I’m successful in implementing some of them.