Vary voltage between positive and negative to drive vibration generator

Hi,

I am doing a Physics project which would involve simulating an earthquake from real data (obtained from http://www.strongmotioncenter.org) instead of having a basic signal generator which produces one tone at a given frequency.

I was hoping to use an Arduino Uno and control a vibration generator to move a wooden board with wheels, mimicking tectonic plate movement. I have the displacement data in a csv file which I would scale (max. ve displacement = max. +/-ve voltage) and would pass via the serial port to calculate the required voltage and then supply to vibration generator to create movement.

The vibration generator can take a maximum current of 1A and I assume that it will take a change in voltage to drive the motion. (http://thumbs.worthpoint.com/zoom/images2/360/0412/09/vibration-generator-unilab-working_360_a952191c7a529459de699d798bf84a25.jpg). I think that voltage supplied would have to be both positive and negative to change direction of motion (magnetic induction and Lenz's law). How could I achieve this?

I know I can vary the voltage using the analogWrite functions for the pins, would I have to then amplify the voltage to allow for small changes in displacement (please see attached csv file)? If so how is this achieved?

Thanks
Laurence

Hi,

I am doing a Physics project which would involve simulating an earthquake from real data (obtained from http://www.strongmotioncenter.org) instead of having a basic signal generator which produces one tone at a given frequency.

I was hoping to use an Arduino Uno and control a vibration generator to move a wooden board with wheels, mimicking tectonic plate movement. I have the displacement data in a csv file which I would scale (max. ve displacement = max. +/-ve voltage) and would pass via the serial port to calculate the required voltage and then supply to vibration generator to create movement.

The vibration generator can take a maximum current of 1A and I assume that it will take a change in voltage to drive the motion. (http://thumbs.worthpoint.com/zoom/images2/360/0412/09/vibration-generator-unilab-working_360_a952191c7a529459de699d798bf84a25.jpg). I think that voltage supplied would have to be both positive and negative to change direction of motion (magnetic induction and Lenz's law). How could I achieve this?

I know I can vary the voltage using the analogWrite functions for the pins, would I have to then amplify the voltage to allow for small changes in displacement (please see attached txt version of csv file)? If so how is this achieved? Would a digital to analog convertor be needed?

Thanks
Laurence

20140310_051804_CE_89781_Vo2_StP_Ch2_D.txt (181 KB)

I know I can vary the voltage using the analogWrite functions

Do you? That is wrong, the voltage out is always a 5V rectangular wave, the value you write controls the duty cycle.

To get the current to go both ways through a load then use a circuit known as a H-bridge.