Hi, my name is Noam, I am a rising sophomore at the the RAMAZ upper school. For my starter project I built a theremin which is an electronic musical instrument invented by Leon Theremin. When it wasn’t working at first, I actually built a tester circuit for the 555 timer chip in it which ended up being like a second starter project. That circuit, would turn on and off two LEDs, alternating which one was on and which one was off. For my main project I built a bicycle computer(Speedometer), to measure the speed and average speed of the bike, and the distance travelled and distance left. This project was very interesting and fun, because I got to encounter obstacles along the way, and solve them and in the end, come out with a functional and complete design and product which can actually benefit me while doing one of my favorite things; riding my bike. This project was also great because I saw how my design and planned product completely pivoted from what it was before. I thought I would build just a cycle computer which can communicate to my computer which would use processing to make a cool visualization of my ride but I decided instead, to build something of my own, which I could make better use of. This was a cycle computer which could communicate with my phone. This is great especially today when smart phones are becoming a huge part of our lives. I also got a lot of experience with arduino, basic coding and electrical engineering.
Here is my Wrap-up Video
Here is My Schematic
Here are my Materials
Here is My Code
Final Project complete: Final Blog Post
This summer in bluestamp has really been great. I have learned to deal with problems, learned about engineering from professionals who spoke to us, and learned a lot about technology, especially electricity and computer programming. Bluestamp also motivated me to earn a lot on my own like start taking a Udacity course on python, and always be thinking about my next project. My project is completed to its goal now. As it shows in my video, the MPH reading is correct and it is mounted on my bike. I have even been able to ride with it. On the wheel I have a bluetooth BLE shield, which will communicate with my phone and computer. it also is the Arduino which computes everything by measuring the time it takes for the wheel to make one rotation. On the front, I have an Arduino attached to an LCD display. I want these two Arduinos to eventually communicate with XBee radio communication. The hardest part of this project was getting the communications to work properly. I was using Serial communication through wires to connect the two Arduinos. This is both because communications problems can be caused by the most minor things, and because I came into this program knowing nothing about coding and I pretty much had to learn as I go. This was an amazing thing because it motivated me to learn programming and when I had finished, I had both a completed project, and a lot of new knowledge.
Final Project Final Video and demonstration
Theremin: Starter Project
Today I finished my theremin starter project. I also troubleshooted and solved some problems I was having with the theremin. When my theremin was not working I looked at the wiring and found ends of wires that were touching that weren’t meant to touch. I also felt my project getting hot and was worried that I had made a short circuit. When I fixed everything my project still didn’t work and I thought that I may have fried the chips. I needed a way to test whether my chips are working. First I learned about my 555 chip which is made for oscillations. I learned what each pin does. There is a power pin and a ground pin. There is also a trigger pin which based on the amount of voltage coming in, controls the electric pulses of the output pin. There is also a pin that makes sure that the voltage coming into pin 2 is changing. It makes the capacitor discharge and recharge depending on how much voltage is coming into pin 2. When I found a test circuit I tried to understand it and I did. The output gives electricity to LEDs depending on the supply voltage into pin 2. I tested it and it did exactly what I thought it would do if the chip was working. This meant that my problem wasn’t a short circuit anymore or a problem in the 555 chip. I wanted to test the transmitter receiver program chip and the simplest way to test it was to test it on the theremin. When I looked at the instructions again to put the chips back in the right place, I realized that I had put the chips in the wrong sockets. Chip 1 was in socket 2 and chip 2 was in socket 1. I fixed this problem and the theremin worked. Although it seems I spent a lot of time and effort doing very little, I actually learnt a lot about capacitance and resistance in the process, and learned a lot about the 555 chip. I also completed a tester circuit which is cool to experiment with, and is relatively simple and generally awesome.
The theremin is an instrument which you can play without touching. The aerial (antenna) receives vibration waves from your hand and converts them into electrical signals. Then the 12F508 chip contains transmitter/receiver programs which changes the hand vibration signals into signals that can produce sound through the loudspeaker. Then there is a 555 chip which controls the volume based on the strength of the vibrations that your hands make. There is also a push button switch which controls whether the sound is continuous or separate notes. The sound comes out from a piezo loudspeaker. There are also LEDs which are just a cool feature. different combinations of LEDs light up based on the sound it makes (the vibrations your hand produces).
Main Project: Bicycle computer(bicycle Speedometer)
Blog Post: Milestone 1:
I have now reached my first milestone in the cycle computer project. I have now conducted a first test of my test program on the LCD display board. In the process of doing this I have learned many things. I have learned how to program arduino, I have learned how to connect the LCD display board to arduino and how to specially program for the LCD display on arduino. I have also learned many things about the hardware of this project. I learned what an Xbee is, what the adapter does, what serial data is and what it does, and learned about things which don’t affect how the part works but could make a big difference in context with the circuit.
At this point I have two arduinos, one for the seat post attached to the reed switch near the wheel, and another for the LCD to go on the handlebars. the arduino sends information to the LCD and I have conquered many problems in doing this. The biggest problem was the arduino not uploading its program properly. I found out this was as a result of a problem related to the 5v pin and after more testing, I found it had to do with the XBee. I found out this is because the XBee draws too much current for the arduino to give. When I gave the XBee an external power source, the arduino worked. I also built a voltage regulator circuit to supply 5V to the LCD and not 6 from the batteries, but I realized, too late, that 4.5 should be enough. I had to take out the voltage regulator circuit to make the simplest and best circuit possible to properly power the LCD display. The LCD is displaying whatever I tell it and the arduino is uploading properly. This is a huge step in building and making my project.
Blog Post: Milestone 2:
I am up to my second milestone. I have my basic program working with the potentiometer and the reed switch and everything. The battery is powering the arduinos and they are transmitting Serial data through the RX and TX pins. When the reed switch senses the magnet it sends a signal and the arduino counts the amount of time between then and the next time the reed switch senses a magnet. It also calculates the number of times that the reed switch senses the magnet to find the number of spins of the wheel to calculate total distance. I have 3D printed a case for one of the 9V batteries and a potentiometer to control the contrast of my lcd. I have the backlight working for my lcd. I am using 4 bit transmission to the lcd so I am only using 4 signal pins from the lcd, pins D4-D7. I encountered many problems while getting to here but most of them were pretty minor. the worst thing that happened was that I found that my old lcd is fried. I accidentally put too much current through it and it got destroyed over a long period of time. one of my reed switches was also crushed by accident and it is so small, that it took me 2 hours to figure it out. I had some coding bugs which were annoying but they were all very easy fixes. I am very excited that I now have a fully functional speedometer, not yet with bluetooth or XBees, but still fully functional and working well and consistently!
I wrote the code for my transmitting Arduino on the wheel which gathers and processes data, mostly from scratch. The only thing I didn’t write from scratch was the timer which was based on the timer in a code I found on the Instructables page. My receiving program was written 100% by me.