Monday, 1 December 2014

relay - How can I add a power-off delay to this circuit


This may seem simple but I am trying to learn EE. In the below circuit, how can I add a delay when the button is released the relay will stay energized for approx. 5 seconds.


My Circuit:


Coil Voltage Nominal 5VDC; Max - 6.5vdc
Input voltage = 6VDC

enter image description here


As I mentioned I am learning. My initial thought was a resistor–capacitor circuit (RC circuit). But I am not sure how to achieve this. Thank you for the help.


Edit - as suggested I added a schematic. I hope its correct. enter image description here



Answer




The brute force answer is to put a capacitor accross the switch. That will allow current to keep flowing for a while as the capacitor charges up. However, this is not a realistic answer since the capacitor would need to be very large and the switch would end up shorting it when closed. This would send a large pulse of current thru the switch which would probably either vaporize or weld its contacts.


A better way is to still use a capacitor, but in a circuit that controls the relay current instead of providing it outright. I don't have time right now to work out all the details, but here is a basic topology:



C1 is charged up to almost the supply voltage when the switch it closed. R2 is only there to limit the current when the switch would otherwise be shorting C1 accross the supply.
When the switch opens, C1 will discharge exponetially, but will continue to drive current thru the base of Q1 for a while. This will keep Q1 on for a while, which will keep the relay on.


I have to go now. Perhaps someone else can put hard numbers on this. It may be convenient to use a second transistor to provide more gain between the capacitor current and the relay coil current.


Better circuit


As I said above, that was a quick and dirty circuit which should have given the OP what he wanted, and matched his apparent level of expertise. For some reason, EMFields renewed his nagging about this admittedly simple circuit 1½ years later. I was originally just going to ignore it, but then decided this might be a good teachable moment about how to do something like this with "snap action" using only a few discrete parts:



Q2 does the actual switching of the relay. In this example, I assumed a relay that requires 50 mA of coil current.



D1 and R1 conduct for a short time after the relay is switched off. The relay coil has considerable inductance, so can't change its current instantaneously. When the transistor switches off, there has to be a safe path for this current to take, else it will make a high voltage and blow out the transistor. R1 will develop about 6 V across it when the full coil current initially flows thru it. This reverse voltage will decrease the coil current quickly, turning off the relay quickly.


These transistors can be counted on to have a gain of at least 50. To make sure they are solidly on and to leave some margin, I aimed for a base current roughly twice what it needed to be, or 1/25 of the collector current. When Q1 is on, there will be about 2 mA of current into the base of Q2, which will turn on the relay.


To turn on the relay therefore requires turning on Q1. With the left end of R6 held at 0 V, more than enough current will flow out of the base of Q1 to turn it solidly on. Closing the switch essentially shorts the left end of R6 and the bottom of the capacitor to ground. The purpose of R2 is to limit the large current that would otherwise flow thru the capacitor when the switch is first closed. This could damage SW1, and large current transients will cause noise and other problems.


When the switch is opened after having been closed for a while, the capacitor is fully charged. It will stay that way in the short term, keeping the relay on. Eventually the capacitor will discharge enough thru R6 to no longer keep enough voltage across R6, which causes insufficient current thru R6 to keep Q1 on. That turns off Q2, which turns off the relay.


However, that turnoff will happen slowly. R5 is a little positive feedback to make it "snap" off. When the Q2 first starts to turn off, its collector voltage will rise. Due to R5, this makes the base voltage of Q1 rise just a little, which turns it off more, which turns Q2 off more, which makes the Q2 collector voltage go higher, etc. This type of positive feedback is also called hysteresis, and provides a fast transition from the on to off state once turning off starts.


The off delay timing is mostly a function of C1 and R6. The exact delay is a bit hard to predict because it depends on the gain of the transistors, particularly of Q1. The easiest way to get the desired delay is to try a value of C1, then adjust up or down by experimentation. The 47 µF I show is as good a starting value as any.


For a more predictable delay, a resistor can be added across C1. There are of course various ways this circuit can be tweaked to get even more features, but it gets silly at some point.


In the real world, especially when delay accuracy matters, this would be done with a microcontroller like the PIC 10F200. The switch would be connected between ground and one of the input pins configured with a internal passive pullup. The firmware would do the debouncing of the switch, and produce a digital signal that would transition effectively instantaneously between high and low. This would be connected to the base of Q2 via a resistor that allows about 2 mA to flow when high. R3, R4, Q1, R5, R6, R2, and C1 would all be eliminated.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...