Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Extremely low frequency oscillator

Status
Not open for further replies.

iceblue

Member
Hi

I need to produce a sinusoidal or triangular oscillation with a period of around 30-60 minutes. The circuit needs to be simple and have a low component count, and it's running off batteries (4.5V) so single supply would be best. Quadrature output would be ideal but if not then I can just use an inverter to get the quadrature signal.

I looked at using the typical opamp triangle wave generator or sinusoidal generator but so far they do not seem to be working. I think the resistor values for such a low frequency are too high. I am simulating in LTSpice at the moment, although it is late so it is possible I am not thinking straight and missing something.

Could somebody advise on a circuit that could do this? I basically want to build a light which fades from white to red and back to white over a period of around 1 hour. I will be using LED's for the lighting but don't want to use PWM as the lights will will be filmed and I do not want flickering on the video.

I would appreciate any advice.
 
Hi

....Quadrature output would be ideal but if not then I can just use an inverter to get the quadrature signal.....

An inverter will not give you a quadrature output. It will shift the input 180°. Quadrature is a shift of 90°.

Beyond that, maybe you could use a 16 bit DAC driven by an up/down counter to get 65535 levels.

Ken
 
Last edited:
An oscillator to produce a frequency that low would not be practicle. K. Moffett's idea of using a 16 bit DAC clocked very slowly would work, You could build a R2R ladder DAC with resistors and an op amp and an emitter follower buffer. You could also do it with a PIC and PWM if you low pass filter the PWM to DC you wont get any flickering on the video.
 
I'll bet you could even use a 10bit DAC, which would give 1024 steps...

For an OpAmp RC oscillator, the upper bound on R would be determined by input bias current (which could be pA for some OpAmps) and capacitor leakage (which is more in the uA range). It is tough to get time-constants over 30min.
 
An inverter will not give you a quadrature output. It will shift the input 180°. Quadrature is a shift of 90°.
Oops. As I said, it was late, hence my bad thinking. I actually need 180° shift, not 90, so quadrature is out then.
PIC's are out I think as I need to finish it before next weekend, and I have never used them before. I'm going to investigate the DAC idea a bit.
 
K. Moffett's idea of using a 16 bit DAC clocked very slowly would work, You could build a R2R ladder DAC with resistors and an op amp and an emitter follower buffer

Seconded.
 
Hi,

The digital ideas sound good. It's not that easy to generate a very very slow signal with analog.

For this i would guess that 1024 levels would be enough but that's up to you as it may be ok even with only 256 levels. That could be done with an oscillator and some dividers and maybe even make your own R2R digital to analog converter with resistors, although ready made D to A converters are simpler to implement.
 
NCO numerical control oscillator
I have used NCOs. Usually I use a fast crystal (50mhz) but with a slower crystal (1mhz) you should get down to 0.01hz.
**broken link removed**
**broken link removed**

I can't remember what part I used last. I think it is much like the AD9830.
------------------------edit-------
The AD9837 (10 bit) is $1.65 at 1000 pieces.
The AD5933 is 12 bit.
 

Attachments

  • 00001523A NCO.pdf
    1.1 MB · Views: 424
  • AD9830 nco.pdf
    412.3 KB · Views: 233
Last edited:
Here is a circuit for a slow triangle-voltage motor speed control for a medical application that I built many, many years ago. The circuit allowed you to set the minimum and maximum motor speed. Then it would step up and down 256 levels between those points. If you are going full on to full off and at a Vcc=4.5V, you can dump the switch and 741 circuits and put a different opamp in to drive your
Triangle Motor Control.gif
LEDs....I think.

Ken
 
This might work. It's a capacitor multiplier. I've not tried it but I think it would work. Make the cap a ceramic and the op amps FET inputs.
 

Attachments

  • Multiplier.png
    Multiplier.png
    180.5 KB · Views: 254
Thanks for all the input thus far.

ronsimpson: Thanks for the info on the NCO's. I've worked with a DDS recently for the first time and was amazed at how easy and accurate they were. Unfortunately they are too expensive for this application.

KMoffett: Thanks for the circuit diagram. Will look at it a properly tomorrow. I've looked at the counter and DAC idea and it may be my best option, taking time and component availability into account. But will decide after examining your other circuit further tomorrow.

If I go with the counter and dac, I will have to cascade 3 up/down counters to get 12 bits. Do I then connect the carry out pin to the following devices carry in pin or to the clock pin? The datasheet refers to this as parallel or ripple clocking. I need a triangular output, not sawtooth, so need to count down after counting up. Am I correct that I will achieve this by connecting the final stage carry out pin to the up/down pins on the cascaded device?
 
If I go with the counter and dac, I will have to cascade 3 up/down counters to get 12 bits. Do I then connect the carry out pin to the following devices carry in pin or to the clock pin? The datasheet refers to this as parallel or ripple clocking. I need a triangular output, not sawtooth, so need to count down after counting up. Am I correct that I will achieve this by connecting the final stage carry out pin to the up/down pins on the cascaded device?
Ripple clocking will cause noise that you don't want. Parallel clocking is what you need.

The CD40193 has two clock inputs. clock up and clock down which might be hard to deal with.
The CD4516 has one clock and a input: "up/down" I think, with every carry out you need to flip a FF. This flip flop will drive the up/down pin. So to say that another way; every the counter hits last last count (o if counting down, OR FFF if counting up) change the state of the up/down pin.
 
Looking through some old notes...an alternative maybe using a gyrator circuit (Google it) to simulate large inductors in an oscillator. The capacitors can be low values silvered mica types that can be very stable with temperature.
 
Hi,

Creating a very long time period analog wave is almost the same as creating an analog memory element, which is also hard to do. There could always be some variation with aging and other factors. That's where digital really shines because it can 'store' the present state for an almost indefinite amount of time. That's why i have to vote 'digital' even after hearing the other possibilities because they all rely on some aspect of a capacitor or inductor which just isnt as good unless the application is not that critical.
For the very demanding application, the main clock can even be derived from a crystal oscillator.

I once had to create a timer with timing period equal to about 12 hours. Any way i thought about doing it always meant some sort of digital solution. In that case i went with a PIC chip because after all you can get them for 2 dollars and make time periods into the hundreds of years (if they lasted that long ha ha). So 2 dollars plus a small low current voltage regulator, and either filtered PWM or low cost external D to A converter and that makes a very low cost but very effective project. Also, adjusting the time period is also pretty simple by sampling two timer period momentary push button switches: "Increase Time" and "Decrease Time".
 
Last edited:
Just another thought I had: since the waveform doesn't have to be triangular (I just want the lights to fade from red to white to red continuously), do you think I could get by with an astable feeding into an RC circuit with a time constant of around 2000, and the capacitor voltage fed to an opamp with a really high input impedance?

Then have a look here:
https://www.ebay.co.uk/sch/i.html?_...RC0.A0.Xad9850&_nkw=ad9850&_sacat=0&_from=R40
Complete DDS modules using an AD9850, for very little money.

JimB
Whoa! Never realised I could get them for so cheap. Unfortunately I won't be able to get them shipped to me in time :banghead: but I will order a few for future use. Thanks for the link!
 
Hi,

Yes that's an interesting thought. If you use the time period of a single time constant you can get nearly a straight line ramp. How much it varies may not matter for such a low accuracy requirement application.

The idea would be to use only the first 63 percent of the total charging voltage as the ramp part. So if the cap charges through a resistor that connects to say 10 volts, that would mean just use the voltage up to 6.3 volts to vary the lighting. Once it reaches 6.3 volts, start the discharge cycle, then when it reaches near zero start the charge cycle again.

If you look at the charge curve from 0v to 6.3v you'll see it is nearly straight just like a true ramp. Not exactly the same, but close enough for this app i would bet. We were talking about something like this in another thread so i already had a drawing which i'll post here too. Note the time period from 0 to 1 second, that the red line (a true ramp) is almost the same as the blue line (the actual cap charge curve) during that first time constant period of 1 second.
 

Attachments

  • CapCharge-02.gif
    CapCharge-02.gif
    14.5 KB · Views: 250
I started a simulation and have something going. I didn't think of the 63% of the charging ramp though, so will adjust it for that instead. Thanks for the info.

I have plenty of components lying around for this method, so it may turn out to be the quickest way for me to get this done.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top