Relay logic simulation

Hi all,

We've been asked to design a number of control / protection schemes lately which are increasing in complexity. Can anyone point us towards a simple software tool to model the relay logic we can use to sense-check the design (after a manual check of course) and highlight any faux pas before things get built? Really just to look at checking relays in series/parallel etc are doing the right thing, not a full-on circuit emulation, i.e., with these inputs changing to this state, we get these outputs live with that happening after the programmed delay and so on.

In an ideal world it would be able to read a design straight out of our CAD (ACE), but I suspect that's too much to ask!



  • Shame no-one's answered this, it would be a nice thing to have. Probably a bit too niche though. I occasionally find myself having to get my head around ancient (and not so ancient) relay logic designs for railway signalling systems, and although it isn't rocket science it can really fry the brain...and use every pen colour available to try to capture all the combinations!

  • Definitely not my field but I wonder if someone in one of  's Technical Networks could help? 

  • Control and Automation is one of  's networks - hopefully she can get some answers?

  • At least it's not just me! (c:

    I've been thinking about coding something as a toy project but a) That simply puts it nth on the list of Things To Do When I've Spare Time and b) It needs to be rigorous so it'd need to catch all sorts of sillies, and not-so-sillies, so not a small endeavour to do properly.

    Thanks all for bumping it. It must exist somewhere surely?

  • You mean you're also looking for someone to get you one of these: 

    I've been waiting for someone to get me a bucket load.... Pensive Blush

  • Joy

  • Multi-sim or a free equivalent should do simple relay logic. 

    Heck I reckon even tinkercad could do that to be honest. 

    If you're looking for something you can demo hardware wise easily, grab an arduino and some switches, and you could code all that, their coding side is really simple.

  • It must exist somewhere surely?

    Just found this - people have been making relay models for LTspice:

    LTspice is free and not too difficult to use, although it's really over the top for what you want (and might not have a delay element):

    I use it about once every 5 years, just for home use these days as I'm not allowed to do real engineering any more in the day job Wink , and it always takes me a while to remember how to actually get it to simulate anything. But it is really good for a free package once you get your head around it. You just need to remember that it's based on Pspice, which dates back to the days when we used DOS and had to do things the hard way!

    I had a quick look earlier as I thought someone might have designed a specific relay simulator for rail signalling applications, and I found a few that had been done as student projects, but only conference / journal papers about them, sadly not something actually available - their supervisors were probably hoping someone would take an interest and give the universities money for it. Because of the gap in the market I do know of a serious one that's in development, but that's huge and complex (and very clever) and I'd imagine people will be charged a lot of money to use it - and it's very specifically dedicated to our strange world. A world where instead of NO and NC contacts we have front contacts and back contacts, and a "miniature" relay is the size (and weight) of a hardback book...

  • They could get me some marbles at the same time to replace the ones I've lost... 

    Oh dear, cold dark Friday at the end of a long week, time to turn the computer off I think!!

  • If you're looking for something you can demo hardware wise easily, grab an arduino and some switches, and you could code all that, their coding side is really simple.

    The problem is that (unless you do something clever) you're likely to code it in series. So each relay is a simple IF statement, but what you mustn't do is simply have them all happening one after another, because as soon as you get relays in parallel and branching off in all directions and rejoining the sequence of events becomes critical, and hard to predict - and is exactly what you want to find out. You effectively need parallel processing. So you could use several arduinos, or you could use several relays...which takes you back to where you started! There probably is a way of doing it, by putting each relay branch in a subroutine, and possible nesting them, but personally I'd then be getting concerned that my software would have more bugs in than the design I was trying to emulate Smile

    But yes absolutely it ought to be possible to use the free simulators that are around, provided they include simulating the delays.