Need help with a project

Need: to decide on a board that can handle:
*frequency generation from 1 hz to 2000 hz

  • display of frequency

  • Hint:
    AD8933 or such, written via I2C bus to put out the frequency, and a display that would indicate the frequency also.
    Out put would be a sinewave and the handling of that is out of scope of Arduino peeps..

Nonetheless if one can find the smallest and most efficient means os coming up wiht a "vco" so to speak, with 1 to 2000 Hz, that would be groovy!

I'm working on the voice coil actuator and amplifier for that matter.

Investigate "arduino DDS." Even the most basic Nano can handle 2kHz. For display, you have a wide variety of devices available.

2 Likes

Saw it. Thanks.
I need to hire someone to do this. I'd rather be sailing.

Ask a moderator to move your thread to the Jobs and Paid Consultancy category. Members that code for pay are more likely to see your thread there.

Get one of the AD8933 boards and use it to generate the frequency. The few bucks spent saves a lot of effort trying to get the Arduino to do it. They claim up to 12.5Mhz, but the sine wave drops in amplitude and gets a bit grainy above ~2 Mhz. There are libraries for it. I used

Fantastic.
I looked at the code for the earlier advise and it seems they are using pulse width with a low pass filter. doesn't seem cosher, converting a square wave into a sin.
I will look at the ad9833. Thanks.

I also recommend the AD9833 however one thing to be aware of is the output will be 0V to 0.65V peak to peak for sine and triangle waveforms, so if your application needs higher outputs you will need to use an op-amp to boost the signal output of the AD9833, and if you need a waveform centered on 0V then of course whether you use the AD9833 or the PWM method then the circuit becomes more complex to implement.

It's mathematically valid. A square wave is composed of a number of sine waves at various frequencies. The filter is to remove the frequencies you don't care about.

That said, with such a wide range of 0 - 2,000Hz, an RC filter is probably not the best choice. I'd use an external DAC. 2kHz is such a low frequency that a dedicated DDS device is probably an unnecessary expense. How much resolution/dynamic range do you need on the sine wave amplitude?

If you use a processor with a built-in DAC it's probably a single-chip solution!

Thanks! So far I've decided to use the AD9833 board module that I can buy for cheap, and plug that into the main board. Then install an audio amp module onboard as well. Super cool idea is to use an analog output pin as gain control.

Made the order. thanks! Let's see where this goes.

I'm looking to drive power, so it seems prudent, based on your comment, to boost it up with an op/amp and then run that into a power amp, right?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.