<a href="http://casperelectronics.com/wp-content/uploads/Interfacing/ArduinoInterfacing2.jpg"><img src="http://casperelectronics.com/wp-content/uploads/Interfacing/ArduinoInterfacing2-282x300.jpg" alt="" title="ArduinoInterfacing" width="390" height="400" class="alignnone size-medium wp-image-858" /></a>
The schematic above illustrate 3 ways of interfacing the Arduino with various electronics, especially bent circuits and analog audio circuits. The circuits are actually pretty non-specific and can be used for interfacing with pretty much any micro controller, but we'll just talk about the Arduino to keep it simple. 
The three circuits allow the Arduino to control physical electronics in three ways: you can make  digitally controlled resistors, digital switches, and generate variable voltages (using a digital to analog convertor).
<strong>-Variable resistor</strong>
This circuit is a simple, brute force way of using one of the PWM (pulse width modulation) outputs of the Arduino to create variable effects in other circuits. If you're interested in PWM, read more at the bottom of the page.
HOW TO:
<strong>Making a vactrol</strong>
For this circuit you first need to make a <em>vactrol</em>. There's lots of tutorials for how to do this online. 
-Connect an LED to a light dependent resistor face to face. I found that high brightness LEDs are TOO bright. Average red LEDs will work fine.  You'll also need a 220ohm current limiting resistor in there to keep the LED from getting too bright and burning out. 
-The LED is polarized and the LDR is NOT. Mark the negative leg of the LED with a marker or piece of tape.
-Make sure the face of the LED and the LDR are touching and wrap a piece of electrical tape or heat shrink tubing around them, something that will ensure that no light gets in. 
*If you want to be organized about it you can bend all of the legs in the same direction and solder them to a piece of perf board. This is a good way to do it if you want to make several vactrols for one system. Make sure the material you use to connect and insulate the LED/LDR is secure and wont let ANY light in. 
<p>
Now you can connect the vactrol to your system.
<strong>Connecting the vactrol to the Arduino. </strong>
-Connect the negative leg of the LED to the ground terminal of the Arduino.
-Connect the positive leg of the LED to one of the PWM output pins of the Arduino.
-Assigning a number value to the chosen output terminal will set the pulse width of a square wave at that terminal.

<strong>Connecting the vactrol to your circuit. </strong>
The useful function of a vactrol is that it produces a variable resistance controlled by a varying voltage input or even better by PWM. Therefore in order for valuable interfacing between the circuit and the arduino you need to find a feature that you want to alter and CAN be alter by varying a resistance. A good example of this is pitch. Most toys have a pitch resistor. Altering the value of this resistor changes the pitch. For more info on this check out my <a href="http://casperelectronics.com/finished-pieces/circuit-bending-tutorial/pitch-adjustment/">pitch adjustment tutorial</a>(If you follow that tutorial you will be using the vactrol in the "attenuator method").
-Find a resistor in your circuit that you want to control with the vactrol. 
-Remove that resistor. You may want to install a switch that lets you switch between vactrol control and a preset resistance.
-Connect the two legs from the LDR in your vactrol to the two points on your board where the original resistor used to be. 
-Done. 

I strongly recommend installing a limiting resistor, especially if you are controlling pitch. Lowering the resistor too much can fry the circuit. a limiter resistor will guarantee that even if the LDR resistor drops to zero there will still be some resistance in the circuit. 
I've illustrated a few other configurations below which I have found useful in tuning in the Vactrol resistance range.
<a href="http://casperelectronics.com/wp-content/uploads/Interfacing/VactrolWiring.jpg"><img src="http://casperelectronics.com/wp-content/uploads/Interfacing/VactrolWiring-150x150.jpg" alt="" title="VactrolWiring" width="150" height="150" class="alignnone size-thumbnail wp-image-863" /></a>

HOW IT WORKS:
As the LED gets brighter, the resistance of the LDR gets lower. 
As the pulse width (or duty cycle) changes the LED brightness will change as well. A low PW will result in a dim LED. A high PW will be a bright LED. 
-Digital Switch
-Digital to Analog convertor</strong>

PWM is a way of creating a varying signal using a digital output. Digital outs either generate 5 volts or 0 volts. That's 2 states. If you want to generate a varying signal you have to get clever. That's where PWM comes in. The Arduino has several PWM output pins. These output a high frequency square wave and the duty cycle of the wave is variable. Duty cycle is the ratio of time the wave is high vs low. Lets say 1 cycle of the wave is 100 micro seconds. A 50% duty cycle means the wave will be high for 50mS and low for 50mS. a 20% duty cycle will be high 80mS and low 20mS. 