Normally fingers provide the force needed to set a guitar’s strings vibrating, but with some simple electronics we can make a self-strumming guitar that plays itself without any moving parts at all. It is better than magic- its physics! Click on for a full explanation of how it works and a video of the ghost guitar rocking itself out (it really does make some creepy and spooky sounds)…
A (very) Little Physics
When a charged particle moves though a magnetic field, it feels a force. If the particle is moving forward and the magnetic field is up and down, the particle gets pushed to the left. Strange but true.
Guitar wires are made of steel so they can conduct an electric current (moving charged particles).
We can create a magnetic field that is perpendicular to the wires by putting a magnet next to them.
So current flows in wire though the field, wire feels a force, wire moves.
By turning the current on and off, we can make the wire move back and forth.
A wire that moves back and forth vibrates the air and that makes a sound.
Now we are playing!
The Practical Setup
I found a magnet that just happened to be the right size and shape so that the field lines are vertical where they cross the strings. The magnet is very, very strong. I’d be scared to hold two of them next to each other.
Even with a very strong magnet, it takes a lot of tiny charged particles (electrons) to make enough force to move a guitar wire. That means a lot of current – about 1 Ampere worth (or about 6,000,000,000,000,000,000 electrons per second).
I used a beefy power supply capable of supplying this much current. To be able to turn the current to the string on and off quickly, I used a power transistor. It acts like a switch. Whenever you put a small positive voltage on the transistor’s input, it will turn on the large current flowing though the guitar string. It can turn on and off 10,000 times per second or more.
I used a frequency generator to create the voltage that turns the transistor on and off. You set the frequency of how fast you want it to turn on and off on a handy dial. The string we are using here (high-E) is typically tuned to vibrate back and forth about 330 times per second, so I initially set the frequency dial to about 330 Hz. If we can push on the string at exactly the right time so that we are always pushing when it is moving the the direction of the force, and never push when it is moving in the opposite direction, then the pushes will build up and the string will resonate. Cue the mandatory child-on-swing reference. It is a very good analogy for what we are doing here.
In this simple setup, I manually find the exact resonant frequency by carefully turning the knob back and forth until the string resonates. You know when it happens because the string suddenly starts dancing and gets really loud.
This is the simplest possible setup. To make a practical self-strumming guitar you could make many improvements.
Most importantly, you’d want to be able to strum all the strings. Just strumming a single string gets boring fast (ask anyone in my house).
For aesthetics, you’d want to put all the electronics out of sight. You could connect all the pegs together electrically and use the truss rod to connect them to a driver circuit inside the guitar body. You’d then connect the other end of the individual strings to their individual drivers though the bridge pins. You’d also maybe want to inlay the magnets into the finger board. (Maybe alternate the direction the magnets face with each string so that the fields reinforce each other?) You could make the whole works completely invisible from the outside. A person staring straight at them would be unable to figure out how the strings were magically moving by themselves (unless that person knows physics!).
Currently, the transistor is either on (current flows in wire) or off (no current). When it is on, the string feels a push, when it is off, the string feels nothing. You could double the efficiency by having the current flow back and forth in both directions. This way you could both push and pull on the string instead of just pushing. This would require at least an additional transistor and another power supply, or you could use an H-Bridge and a single supply. You also might want to drive the string with a sine wave (smooth pushing and pulling) rather than a square wave (abrupt pushing and pulling).
In the demo, I have to manually adjust the driver frequency until it makes the string resonate. It would be much better to have the driver automatically find the exact resonant frequency for each string and continually adjust itself. We can use a complementary physical principal to sense the movement of the wire. A charged particle moving inside a magnetic field will generate a voltage (called motional EMF), so we should see a voltage across a moving string. The faster the string moves, the higher the voltage. We can carefully watch the voltage to see when the string is moving forward quickly, then stopping when it gets to one end of its vibration, then moving back the other way. By measuring how long it takes each time it moves back and forth, we can find and track the resonant frequency.
Here is a proof of concept video showing that it actually does work…
This is very similar to the way that some brushless motors work. You drive a current though them to make them move, then you listen for a voltage generated by the moving motor to figure out how fast it is turning. Our string really just is a very simple brushless motor except that it has zero turns (just one straight wire) and moves back and forth rather than round and round.
Once you are able to get feedback on the speed and direction of the movement of the string, it should even be possible to purposefully drive the current backwards to dampen the vibrations. This would let you both start and stop the string electrically and therefore control how long any note gets played.
The steel wires have resistance to the flow of current though them. Fighting this resistance generates heat. Wires expand when they get hotter. Expanding guitar wires get looser, and that changes their resonant frequency to a lower note.
The simple 1 Amp setup here noticeably heats up the wire and detunes it to a lower note after just a second or two.
By combining the frequency feedback technique above with some careful power control, I think you could make a self-tuning self-strumming guitar. You would first tune all the strings to be sharp at normal room temperature, then you’d start self strumming at full power and listening for resonance. Once you locked in, you’d let the wire heat up until it got loose enough to be perfectly in tune. From then on, you’d carefully control the power you sent in to the string (probably using PWM) to keep it exactly in tune. If the frequency started to drift a little flat, you’d ease back on the power and let the air cool the string slightly so it would tighten up. Heat it up again when it got a little sharp. You could use a PID algorithm to continuously keep the note right where you wanted it. This is how some 3D printers keep their extruders at just the right temperature.
If you did all these things, I think you would have a pretty amazing instrument. A full featured Ghost Guitar would not sound like a normal guitar. There would be no fingering and the overtones on an electrically strummed string sound totally different than a plucked one. You’d probably need to write new music take advantage of the Ghost Guitar’s special talents. You could play notes that sustained at a constant volume for as long as you wanted, then instantly snuff them out. You could precisely play any string at anytime, rather having to strum them in order. You could delicately tickle the strings to get them dance among all the crazy acid trip harmonics are totally inaccessible to physical strumming or plucking. You could play with extreme timing and tonal precision. But probably the coolest part of all is being able to watch an instrument mysteriously produced sounds by itself – its strings vibrating under the influence of an invisible force.
Let me know when you build one so I can come and hear and watch it!