Using one 555 timer to trigger another at intervals

Discussion in 'Digital Circuit Design' started by seanspotatobusiness, Sep 12, 2019.

  1. seanspotatobusiness

    Thread Starter Member

    Sep 17, 2016
    188
    3
    I would like to make a circuit which turns a small fan on for about five minutes every half hour. I thought about maybe doing it with an Arduino Mini but maybe using a couple of CMOS 555 chips would save a bit more power for the fan (not sure that matters since the fan will probably use like 200-300 mA when it's on; it's going to be powered by a couple of 18650 cells). If I use 555 timers, how do I arrange them? Thanks.
     
  2. AnalogKid

    AAC Fanatic!

    Aug 1, 2013
    8,080
    2,285
    The datasheet has the circuit for an astable oscillator and a monostable. Connect the output (pin 3) of the oscillator to the Trigger input (pin 2) of the monostable.

    BUT ...

    30 minutes is a looooong time for an R-C timer. The timing capacitor will be around 1000 uF, and the leakage current will be greater than the calculated timing current. Consider a CD4060 oscillator/divider, plus a MOSFET to drive the fan. The timing capacitor is 8000 times smaller for the same period.

    ak
     
  3. seanspotatobusiness

    Thread Starter Member

    Sep 17, 2016
    188
    3
    Thanks. I had read elsewhere that you connect the output to the reset of the second 555 and I was getting confused what to do with the trigger.

    The CD4060 has a CMOS and a regular version too, right? I mean, I'm getting results when I search for a CMOS version. Is it comparable in power consumption? Since I don't have a CD4060 to hand, I guess I will order some and use the Arduino in the mean time.
     
  4. ElectricSpidey

    Active Member

    Dec 2, 2017
    683
    169
    For what you want to do, you only need a single 555 in astable mode, the 555 drives a P-Channel MOSFET or PNP transistor.

    TIP…tying the Control Voltage directly to the output of the 555 with a 1k resistor allows the usage of a much smaller timing capacitor.
     
  5. seanspotatobusiness

    Thread Starter Member

    Sep 17, 2016
    188
    3
    Thanks very much. How do I determine the timing when the Control Voltage pin is connected to the Output via 1K R? Does this configuration have a name or something so I can read more about it?

    I had a fight with Eagle and lost but was able to get this out of it; is it the right layout?

    Refrigerator defrost fan.png
     
  6. Alec_t

    Expert

    Sep 17, 2013
    10,267
    2,511
    I agree with AK, post #2. A 555 is not the answer for such long timing periods.
     
  7. seanspotatobusiness

    Thread Starter Member

    Sep 17, 2016
    188
    3
    Well, what is the longest I can go with this voltage control tip?
     
  8. danadak

    Distinguished Member

    Mar 10, 2018
    3,502
    785
    For future designs consider using ATTINY for pulse sequence/delay generation.

    See this thread https://forum.allaboutcircuits.com/threads/pulse-sequence-generation.161138/#post-1408557

    That thread was done with Arduino board, but easily can by done with ATTINY as well.
    Just a matter of programming ATTINY, which can be done with Arduino board like a
    NANO or UNO board.

    If you use boards timing accurate to << 1%. If ATTINY 2%.
    ATTINY can do delays to years if you need it. No external
    components other than cap to bypass its Vdd pin.

    And ATTINY easily debounce mechanical trigger/on switch.

    Something like this (attached).



    Regards, Dana.
     
    Last edited: Sep 13, 2019
  9. AnalogKid

    AAC Fanatic!

    Aug 1, 2013
    8,080
    2,285
    Here is a circuit from another thread. It turns on an LED for 5 seconds out of every minute. Note the size of the timing capacitor for a 1 minute period. The circuit can be adjusted to meet your timing requirements. The result would be approx 4.5 min on, and 24 min off. Because Q11 is not brought out, the timing components and decoding change slightly. I'll post an updated schematic later.

    To handle the start-up current of a 300 mA fan, I would go with something more robust than a 2N2222, such as a small power MOSFET.

    ak
    Led-Flasher-4060-5-60-2.gif
     
    Last edited: Sep 13, 2019
  10. danadak

    Distinguished Member

    Mar 10, 2018
    3,502
    785

    Here is the code approach using mBlock to program the ATTINY -

    upload_2019-9-13_7-44-29.png

    You drag and drop blocks, mBlock takes your block design and translates into
    Arduino code which can be used to program an ATTINY.

    Regards, Dana.
     
    JohnInTX likes this.
  11. AnalogKid

    AAC Fanatic!

    Aug 1, 2013
    8,080
    2,285
    Here is an updated schematic.

    ak
    Fan-Timer-4060-5-30-1-c.gif
     
    Last edited: Sep 13, 2019
    Kjeldgaard likes this.
  12. ElectricSpidey

    Active Member

    Dec 2, 2017
    683
    169
    To use the CV trick you must change the RC math from 1 third to 2 thirds to the new RC constants that get you to aprox 10% to 90%. I admit I usually use LTSpice to get in the ballpark, and then use trim pots in the actual project to get what I want.

    Of course breadboarding the circuit is always a good idea to find the proper values.

    If you have a good high impedance MM or a scope you can determine the actual voltages reached by the capacitor, and do the math from there.

    As far as the 4060 method, I personally have never tried it, but somehow my gut tells me that the smaller timing errors are just multiplied by stage count and might just end up just as inaccurate...but I could be wrong.

    PS: I can work out the timing values for you with LTSpice if you decide to go with the 555, just ask...but you will still need to breadboard the circuit, and test the times.
     
    Last edited: Sep 13, 2019
  13. AnalogKid

    AAC Fanatic!

    Aug 1, 2013
    8,080
    2,285
    Your gut is incorrect. First, when something with a certain percentage error is multiplied or divided, the absolute error changes but the percentage stays the same. Ten 1K, 1% resistors in series and one 10K, 1% resistor have the same overall value and error percentage.

    The 555 has a well-documented error contribution of around 1%. The three trip point resistors are not accurate at all, but their ratios are very tight. If you use 1% timing components, the circuit overall accuracy will be around 2% without tweaking. The problem is that for a loooong period, a 1000 uF, 1% capacitor does not exist.

    With a 4060, the oscillator section transition levels are not as accurate or stable as in a 555, so it contributes a larger percentage error to the circuit. The good news is that the timing capacitor is 8,192 times smaller in monostable applications, and 16,384 times smaller in some astable circuits. A 0.1 uF, 1% capacitor is sitting on the shelf at Mouser for under a dollar.

    Life is choice.

    ak
     
  14. ElectricSpidey

    Active Member

    Dec 2, 2017
    683
    169
    It's true there are no 1% 1000uf caps available, but there are low leakage types available.

    And I always use trimmer pots in my longer time designs, that solves the tolerance problems, and I never use such designs where accuracy is a critical factor.
     
  15. seanspotatobusiness

    Thread Starter Member

    Sep 17, 2016
    188
    3
    Thanks for all the advice and support everyone. I've ordered 4060s but they will take a while to arrive. In the meantime I have LTSpice and can maybe use a 555 in astable - the accuracy is not at all important for me; I should have stated in the OP. I might also try an ATTiny85 since I have one on a little devboard already.
     
  16. danadak

    Distinguished Member

    Mar 10, 2018
    3,502
    785
    How are you programming the ATTINY ?

    Regards, Dana.
     
  17. seanspotatobusiness

    Thread Starter Member

    Sep 17, 2016
    188
    3
    The ATTiny that I have is built into a development board called the Digispark. I haven't used it yet but I had thought it was as easy to program as the Arduino series of boards. Is that not the case?
     
  18. danadak

    Distinguished Member

    Mar 10, 2018
    3,502
    785
    Yes, you can use Arduino IDE or one of the block languages like mBlock, Ardublock,
    Scratch for Arduino, Snap4Arduino.....the visual programming languages. I think
    Ardubllock installed into the Arduino IDE maybe best approach with Digispark or
    just Arduino if you are a "C" programmer.

    Searching web seems like mBlock not supporting Digispark, but if you use mBlock
    I think you can use the Arduino as programmer and take the hex from mBlock
    would work. Not tried it though.


    Regards, Dana.
     
Loading...