I'm experimenting with electro vibrations. This principle is about simulating textures using low current electricity on an insulated conductive surface (see Wikipedia: http://en.wikipedia.org/wiki/Electrovibration).

I've started to use some EL-wire IC's to create a AC signal from a DC powersupply since i need a high voltage AC signal (max 115 vpp). With the IC's i got some results but i'd like to have more freedom in the output (the ic gives a fixed voltage and frequency).

Actually what i'm looking for is a high voltage, low current signal generator circuit. 80-115 Vpp (AC) and 80-400 HZ. I'd like to control it with arduino. So ideally it would be a way to amplify and convert the 0-5 DC signal to a 80-115Vpp AC signal.

What's the best way to do this?


  • \$\begingroup\$ Use an H-bridge. \$\endgroup\$ Nov 20 '13 at 14:03
  • \$\begingroup\$ This is the same question you asked a couple of weeks ago. \$\endgroup\$ Nov 20 '13 at 14:32
  • \$\begingroup\$ Hi Olin, at the time it was more about limiting the current. I was using a Ic for driving EL lamps for the DC AC conversion. Now i want to replace the IC with a arduino controlled circuit to make it more felxible in output (wave type en amplitude) \$\endgroup\$
    – Ruben
    Nov 20 '13 at 22:15

Your 'output' is high impedance - essentially capacitive coupling to the user with capacitance in the order of picoFarads.

So driving a suitably high voltage transistor base or gate with the Arduino and connecting the collector/drain to HV with a resistor and taking the output from collector/drain will allow you to easily swing the voltage across the whole range from full supply to ground.

Lets assume a bipolar transistor for now - say the venerable TO92 high voltage MPSA42.

If you are able to drive the base with a variable voltage (filtered PWM or DAC output) and you place a resistor Re from emitter to ground and a resistor Rc from collector to supply then fror HGV supply Vdd:

(Vb-0.6)/Re ~~= (Vdd-Vc)/Rc or

Vc = Vd- (Vb - 0.6) x Rc/Re

ie the collector voltage decreases away from Vdd by the drive voltage multiplied by Rc/Re.
Drive voltage is 0.6V less than Vb.

eg for Rb = 1k, Rc = 100k, the collector voltage will drop by 100 volts for every volt of drive or by 1V for every 10 mV of drive.

At say 200V HV (watch transistor rating) max dissispation in Rc = 100k = V^2/R =200^2 / 100k = 0.4V.
Also beware max voltage ratings of resistors.

The wise and prudent will use some form of isolation between Arduino and HV transistor.


simulate this circuit – Schematic created using CircuitLab

Use of an opamp in the drive circuit allows the approximate 0.6V Vbe to be vanished from the above equations.


Not the answer you're looking for? Browse other questions tagged or ask your own question.