Engineering
This is what the final form of my apparatus looks like:
Caption: "The first picture: Portable Version. | The second Picture: Hardwired Version."
Here is a link to my Visual Basic 6.0 code.
Description of the building process
First: I designed a program that could interpret information coming from an analogue-to-digital converter. This was a very old, rudimentary A2D converter, which I later replaced with an inexpensive A2D converter that also had output ('digital') channels, as well as analogue channels.
Because my apparatus would only be useful if it detected some levels of sound, and not every level of sound (like breathing), I created a pulse-width modulating system. It randomly creates a value between zero and 100%, and checks to see if the sound is louder than that. If it is, then the motor vibrates. Otherwise, it does not. In addition, the motor will only vibrate if the noise is louder than 15%. This was to ensure that the apparatus would not pick up background noise. My microphones were directional and so this worked very well later in the project. Only one hand would vibrate at a time, unless they were both pointing to the noise.
Here is a link to my code
Journal Entry (corresponding)
Second: I added microphones to my circuit here, then created a calibrator. The calibrator takes the mean of the sound over the past less-than-a-second, and subtracts this value from all input after that point. Data can be calibrated multiple times, without stacking (previous calibrations will be overwritten). The input from the microphone might not give a default value of "zero", so I calibrate to set it to zero at the beginning of the test. In plain English, this gets rid of motor vibration that doesn't have any apparant cause. The picture on the right is of my calibration button: a larger version is on entry 4.
Journal Entry (corresponding)
Third: I added a motor to my circuit. The DataQ provided too weak of a signal for my motor to read, so I used a transistor. The transistor was wired up to a separate battery, with the base connected to my DataQ A2D Converter. As a result, the motor vibrated whenever it recieved a signal from my microphone.
Journal Entry (corresponding)
Final: I added a parallel circuit for another glove. I also built the glove, making sure that the microphones were on the bottom (palm) of the hand, to be intuitive, and the motor on the opposite side of the hand (back), while also being within the glove, as to maximize hand-motor contact. One of the reasons for the separation of the motor and the microphone was that I found that if the microphone was close to the motor, the microphone picked up the noise from the motor. The calibration button now calibrated both input channels. The picture on the right is of my glove. A larger version is on the Journal Index.
Journal Entry (corresponding)
You may want to read the next section of my project: experimenting!
