Turn on 3 relays in sequence - Page 1
Forum section: electronics / beginners

author: digik
author_rank: Regular Contributor
timestamp: October 03, 2025, 07:01:27 am
content: I need a way to turn on 3 motors but not at the same time to avoid line overload, spikes, ecc.I would need a circuit that turns on 3 relay in this way, as soon as the 12v is applied:1st relay turn on immediately2nd relay turn on after 1-2 sec after the first3rd relay turn on after 1-2 sec after the secondwhen 12V power is disconnected:3rd relay must turn off immediately2nd relay must turn of after 1-2 sec after the third relay1st relay must turn off after 1-2 sec after the second relayso, basically in reversed orderI'm searching for the simplest way (no microcontrolle, arduino,ecc) possibly only with transistors and 555Is there any chances to achieves that?

author: RoGeorge
author_rank: Super Contributor
timestamp: October 03, 2025, 07:21:36 am
content: Yes, use 3 of 555 configured as a monostable.If by any chance this automation is for a PC desktop, the motherboard's BIOS already does this. Usually the hard-disks are turned on one after another, in a sequence, not all at once.

author: digik
author_rank: Regular Contributor
timestamp: October 03, 2025, 07:30:21 am
content: googling around I found this schematic that apparently allow you to indipendently set on and off time. What do you think? The author didn't even provided a diode for the relay...

author: Ian.M
author_rank: Super Contributor
timestamp: October 03, 2025, 07:38:22 am
content: You require a 2 - 4 second hold on for the third relay after 12V power is removed. This will be tricky unless there is a maintained supply to power the off delay circuit. Simple 555 timer circuits wont give you both on and off delays, though a 555 could be used as a comparator with hysteresis to implement it with a RC delay, however as a 555 can only implement an inverting comparator it would be a poor choice for this application.

author: Zero999
author_rank: Super Contributor
timestamp: October 03, 2025, 07:46:30 am
content: Yes, backup power is required to keep the relays on.The original post is contradictory: simplist way, yet no microcontroller, which would be the simplist way.Perhaps a thermal solution is the answer. Rather than using a relay, use a resistor to heat up some bimetalic switches, with different temperature thresholds, in the order you require them to turn on and off.

author: digik
author_rank: Regular Contributor
timestamp: October 03, 2025, 07:54:10 am
content: microcontroller are scary

author: nali
author_rank: Frequent Contributor
timestamp: October 03, 2025, 08:04:42 am
content: Thesimplestway would be just to use some off-the-shelf DIN mount timer relays and wire them in sequence. Probably won't be any more expensive either; once you've built your 555 circuits, power supply, enclosure, relays and terminal blocks.Here's a random example off the 'nethttps://uk.rs-online.com/web/p/timer-relays/0119800

author: xvr
author_rank: Frequent Contributor
timestamp: October 03, 2025, 12:09:48 pm
content: The LM3881 can generate the required power-on/power-off sequence. It initially provides a delay of about 10 ms, so the timing capacitor should be increased (I'm not sure if it will work with this capacitor—the datasheet doesn't specify the maximum value).

author: Zero999
author_rank: Super Contributor
timestamp: October 03, 2025, 12:37:56 pm
content: Quote from: nali on October 03, 2025, 08:04:42 amA small PLC would be even simpler, but either way, a backup i.e. battery/capacitor is required, if there's no continuous 12V available.Quote from: digik on October 03, 2025, 07:54:10 amWhat are you talking about? The programmers are cheap, just get one. I hardly had any experiance with one and wrote a simple timer program, in less than a day, with the help of a search engine and people here.https://www.eevblog.com/forum/beginners/my-first-c-program/msg4119433/#msg4119433

author: themadhippy
author_rank: Super Contributor
timestamp: October 03, 2025, 12:57:20 pm
content: loads of ways to skin the cat,but the traditional way is a ramp generator feeding into 3 comparators, so chuck the 555's away and get some op amps.

author: voltsandjolts
author_rank: Unknown
timestamp: October 03, 2025, 01:07:18 pm
content: Don't forget the signal from the emergency stop button.You do have an emergency stop button, right?

author: digik
author_rank: Regular Contributor
timestamp: October 03, 2025, 03:11:23 pm
content: LM3881 is best approach, i think.Can the "flags" drive the base of a transistor or mosfet?

author: xvr
author_rank: Frequent Contributor
timestamp: October 03, 2025, 04:49:34 pm
content: QuoteYes, it could. But it is 'open drain' type of output, so directly it can drive P Channel MOSFET or PNP BJT only.

author: 5U4GB
author_rank: Super Contributor
timestamp: October 03, 2025, 05:01:01 pm
content: Quote from: nali on October 03, 2025, 08:04:42 amThe OP was kinda vague on details, e.g. whether they're AC or DC loads, voltage and current, form factor, etc, but if it's low-power stuff then I'd agree with your solution, there are a ton of different timer and/or relay timer modules available from Ali for a few dollars.

author: Swake
author_rank: Frequent Contributor
timestamp: October 04, 2025, 10:38:32 am
content: The moment you connect 12 V to that LM3881 you convert it to a one time smoke generator.Edit: If you're scared of a µC I guess you'll be scared of the 8pin VSSOP package the LM3881 comes too.

author: MariuszD
author_rank: Regular Contributor
timestamp: October 04, 2025, 12:24:52 pm
content: To delay both slopes you can use RC circuits and Schmitt triggers.The 40106 has six Schmitt-Trigger inverters and can be powered directly from 12V.Transistors are needed to drive relays, but you can also switch motors with MOSFET transistors.

author: Swake
author_rank: Frequent Contributor
timestamp: October 04, 2025, 12:39:58 pm
content: You are right Mariusz, an RC circuit is the good old way of doing things.Here some more examples:https://www.talkingelectronics.com/projects/BasicElectronics-1A/BasicElectronics-1A_Page4b.htmlAn RC is also the way to solve the power off delay. But one should configure a big enough capacitor and experiment to find the good values.Eventually adding a small battery to keep the circuit powered after 12v is disconnected can help too.

author: Andy Chee
author_rank: Super Contributor
timestamp: October 05, 2025, 05:49:24 am
content: Relay sequencing upon power fail seems unusual. What is your application?The obvious concern is that the sequencer must either be passive (requires no power), or that backup power to the sequencer is maintained until the power down sequence is completed.

author: nali
author_rank: Frequent Contributor
timestamp: October 05, 2025, 08:09:45 am
content: What is expected to happen if the control signal is cycled off then back on within the sequence?Still don't understand the reticence to go the microcontroller route, especially if it's a hobby or one-off which this seems to be. It's such a simple task I'd expect GPT or whatever could code it and would make tweaking so much easier e.g. if you need to alter one of the time periods or add a criteria previously not thought about.

author: Swake
author_rank: Frequent Contributor
timestamp: October 05, 2025, 08:37:45 am
content: Also less components making it cheaper and easier to build.Don't even have to solder things together with an off the shelf classic arduino and a 'shield' board with a couple relays.

author: 5U4GB
author_rank: Super Contributor
timestamp: October 05, 2025, 08:47:29 am
content: What about using a stepper switch? Just step through for each relay on or off (or use the stepper switch itself instead of relays), and it remembers its last position on power loss.

author: geggi1
author_rank: Frequent Contributor
timestamp: October 05, 2025, 10:32:44 am
content: Here is a simpel code I asked MC copilot to make for Arduino.What you need is a start button and stop button, one arduino with USB and a relay card with at least 3 relays or 3 single realy cards for arduino.The code has comments included to guide you throh the instructionsCode:// Pin assignmentsconst int startButtonPin = 2; // Start button inputconst int stopButtonPin = 3; // Stop button inputconst int output1Pin = 8; // Output 1const int output2Pin = 9; // Output 2const int output3Pin = 10; // Output 3// State variablesbool sequenceRunning = false;unsigned long sequenceStartTime = 0;bool output2On = false;bool output3On = false;bool stopPressed = false;unsigned long stopTime = 0;void setup() {// Configure pinspinMode(startButtonPin, INPUT_PULLUP);pinMode(stopButtonPin, INPUT_PULLUP);pinMode(output1Pin, OUTPUT);pinMode(output2Pin, OUTPUT);pinMode(output3Pin, OUTPUT);// Initialize outputs to LOWdigitalWrite(output1Pin, LOW);digitalWrite(output2Pin, LOW);digitalWrite(output3Pin, LOW);}void loop() {// Read button states (active LOW)bool startPressed = digitalRead(startButtonPin) == LOW;bool stopButtonPressed = digitalRead(stopButtonPin) == LOW;// Start sequenceif (startPressed && !sequenceRunning) {sequenceRunning = true;sequenceStartTime = millis();digitalWrite(output1Pin, HIGH); // Turn on Output 1 immediatelyoutput2On = false;output3On = false;stopPressed = false;}// Handle sequence timingif (sequenceRunning && !stopPressed) {unsigned long elapsed = millis() - sequenceStartTime;if (elapsed >= 2000 && !output2On) {digitalWrite(output2Pin, HIGH); // Turn on Output 2 after 2 secondsoutput2On = true;}if (elapsed >= 4000 && !output3On) {digitalWrite(output3Pin, HIGH); // Turn on Output 3 after 4 secondsoutput3On = true;}}// Handle stop buttonif (stopButtonPressed && sequenceRunning && !stopPressed) {digitalWrite(output1Pin, LOW); // Turn off Output 1digitalWrite(output2Pin, LOW); // Turn off Output 2stopTime = millis();stopPressed = true;}// Turn off Output 3 after 3 seconds from stopif (stopPressed && (millis() - stopTime >= 3000)) {digitalWrite(output3Pin, LOW); // Turn off Output 3sequenceRunning = false; // Reset sequencestopPressed = false;}}

author: stretchyman
author_rank: Regular Contributor
timestamp: October 05, 2025, 10:37:29 am
content: 3 N Fets with diff R/C on gates.Simple as.Str.

author: tooki
author_rank: Super Contributor
timestamp: October 05, 2025, 06:37:17 pm
content: Quote from: digik on October 03, 2025, 07:01:27 amI concur with everyone else who says that a microcontrolleristhe easiest way.Quote from: digik on October 03, 2025, 07:54:10 amNo they aren’t. I am NOT a talented programmer and I learned it, so you can too!I also have to ask the same question others have asked: do you really need shutdownsequencing?? That complicates things a lot, especially if the 12V in question is the supply voltage to the sequencing circuit, and not just a control signal.

author: Seekonk
author_rank: Super Contributor
timestamp: October 05, 2025, 10:25:25 pm
content: Don't want to use a micro, maybe you shouldn't be in electronics. I see forums like bar talk about a sports team, maybe they should get this player and get rid of this guy. Just casual suggestions of no consequence. You don't seem like someone who could run with an idea. This looks a lot like charging up a capacitor and then discharging it while monitoring with comparators to sequence the relays. Lots of pitfalls in making the ramping and very time consuming to set up. And of course you want someone to do it for free.

author: BillyO
author_rank: Super Contributor
timestamp: October 05, 2025, 10:50:19 pm
content: A microcontroller is, hands down, the easiest way to do this. This is literally the sort of thing they were developed for.If something programmed in C++ is freaking you out, you can look into the PICAXE. An 08M2 would do the job for about $3.

author: RoGeorge
author_rank: Super Contributor
timestamp: October 05, 2025, 11:00:23 pm
content: Quote from: Seekonk on October 05, 2025, 10:25:25 pmPlease keep the talk about projects, not about the forum's users.

author: vk6zgo
author_rank: Super Contributor
timestamp: October 05, 2025, 11:31:14 pm
content: Back in the day, we would use large capacitors across the coils of the relays to use the resistance of the coil as the "R" of a CR network.With multi-contact relays it was possible to not have a delay on release.For shorter delays, there were special "slow operate" relays.Neither of these could offer the accuracy of more "high tech" methods, but they made it possible to rapidly slap a delay circuit together from "stock parts".

author: Smokey
author_rank: Super Contributor
timestamp: October 06, 2025, 05:37:35 am
content: How about just using a relay with a programmable delay?https://www.digikey.com/en/products/detail/selec-controls-usa-inc/600XU-A-1-CU-ROHS/15954474

author: Zero999
author_rank: Super Contributor
timestamp: October 06, 2025, 07:17:35 am
content: Quote from: RoGeorge on October 05, 2025, 11:00:23 pmHe was using sports in the metaphorical sense.Quote from: vk6zgo on October 05, 2025, 11:31:14 pmI did have a brief look into that and you'd need pretty big capacitors, certainly for the kind of relays used to drive a motor.

author: ME
author_rank: Frequent Contributor
timestamp: October 07, 2025, 01:18:44 pm
content: I did the same thing to actuate some solenoid valves in a beer dispener unit a few years ago , I used an arduino uno and changed the timings of the blink sketch , It worked fine.

author: Brumby
author_rank: Unknown
timestamp: October 08, 2025, 05:29:29 am
content: Quote from: digik on October 03, 2025, 07:54:10 amUsually, things are only scary because you aren't familiar with them.My suggestion is to grab a microcontroller - any microcontroller - and dive in head first. Go exploring with some pre-written programs to see something work and then change some lines of code to do something different. You don't have to be a good programmer at the outset. That will come with experience - but just have a crack at it.You will be amazed at what these things can do!!

author: vk6zgo
author_rank: Super Contributor
timestamp: October 08, 2025, 10:26:33 am
content: Quote from: Zero999 on October 06, 2025, 07:17:35 amYou can use relays with a higher coil resistance (hence requiring smaller capacitance values) to turn on larger relays.Back in the day we used APO relays out of exchanges, which were relatively large and had 2000coils.

author: Zero999
author_rank: Super Contributor
timestamp: October 08, 2025, 10:46:56 am
content: Quote from: vk6zgo on October 08, 2025, 10:26:33 amThen a higher voltage is required than 12V.

author: vk6zgo
author_rank: Super Contributor
timestamp: October 08, 2025, 11:02:06 pm
content: Quote from: Zero999 on October 08, 2025, 10:46:56 amWe did use 24volts, but they will operate reliably on 12 volts.Back in the "dear, dead days beyond recall" when not all cars had intermittent wipers, I used a APO relay & an electrolytic to build a device to do that.Back in such days, for work projects, you had to specially order microprocessors through "Supply Branch" or on "Petty Cash" plus learn how to program them & active discrete circuitry was time consuming, but we had a lot of relays "just lying around" so they were often the obvious choice.