Jump to content
 

PASSIM Interlocking Project


OldTokener
 Share

Recommended Posts

Just wanted to flag up this project on which I am working. The intention is to develop an interlocking program for an Arduino single-board computer. The first phase of the project is to develop a Windows program with which to prove the interlocking logic for a simple station layout. If anyone is interested in trying out the software and commenting (good or bad!) on whether I have the interlocking right or wrong, it woulc be appreciated. There are also opportunities to be involved in the later stages of the work. The PASSIM program is now available, in its first iteration, on our website. Comments welcome!

 

  • Interesting/Thought-provoking 1
Link to post
Share on other sites

Hi,

 

Which type of Mechanical Locking are you trying to replicate? There’s a huge amount of subtle variation in different companies interlocking principles. What is your source material?

 

Are you replicating token / block / electrical locking that is ‘behind’ a mechanical frame?

 

Simon 

Link to post
Share on other sites

  • RMweb Premium

Interesting project. I've done something very similar for my Moretonhampstead Project.  https://www.rmweb.co.uk/topic/150296-moretonhampstead-signalling/

 

On your website under Phase 3 - Interlocked switches you mention using solenoids for the locking. When I start on the Locking Frame it is my intention to use Servos to drive the 'Locks'.

  • Like 1
Link to post
Share on other sites

Following the links on Pannier Tank's post, I was pleased to see that, contrary to my earlier research, you have already done substantially what I was planning to do.  With regard to using solenoids for the locking, that was my simple approach, but as you say, servos are much better, and quite easy to control using an Arduino.  The puzzle is to get the servo hardware within the footprint of the lever, so that you can push them all together.  Sub-miniature servos, perhaps?

Regards

Tony

Link to post
Share on other sites

  • RMweb Premium
2 hours ago, OldTokener said:

Aha! I see now how you are going to use the servos.  That's really impressive if it works! More sophisticated than my approach, certainly.

 

I originally intended using Solenoids to drive a pin in/out of the underside of the Brass Slide Bars but I think using two slide bars driven by the Scalefour Lever Frame and Servos with an omega loop would be cheaper and easier to build. 

 

The beauty of this arrangement is that the Interlocking can be changed (Software) without too much fuss. If it was purely mechanical then any alterations to the interlocking would require stripping down the locking frame.

 

  • Agree 1
Link to post
Share on other sites

Interesting approach.  I was wondering how one might generalise this to suit any lever frame.

 

Ideally the software would be generalised.  That is to say as long as you program it in such a way that locking data is not hard-coded but rather expressed in the form of a locking table which is read in as a data file.  I have no knowledge of Arduino, so I don't know how practicable that would be with that particular hardware.  But if you can do that, you could then use the same program for any additional signal boxes and all that changes is the locking table. 

 

The other issue is scalability.  I assume the Arduino has a limit on the number of devices.  In real life big mechanical frames have a few locking trays at different levels, but it doesn't look very practicable to do anything similar with these servos.  Where a real mechanical frame has electrical locks, as you are replicating here, their locks are no wider than the lever spacing, and they can be placed behind the frame or down underneath in the locking room, so the size of the lock isn't a problem. 

 

I see that the length of  your tappets increases indefinitely for every extra lever that you add.  With this design, the length would increase to an unreasonable degree If it were a much bigger box with a lot more levers, so like Tony I was considering what one might do to minimise the size of the thing. 

 

I'm thinking here of applicability to an O gauge layout I know which has over a dozen miniature frames, half of which are about 40 levers and the largest runs to 86 levers.  It lacks interlocking although I wasn't seriously thinking it could be fitted to that layout where operation is genuinely mechanical using fishing line cords, with counterweights or springs to return points or signals to normal.

 

My first thought was that if you put half of your servos on the other end of the frame, you could reduce the length of the tappets so the total footprint should be smaller.  But that still wouldn't solve the problem of space for a very big frame. 

The length of  your tappet is as drawn is uniform, ie longer than it need be on the tappets with low numbers.  So the area where the tappets overlap the servo rods (to the right of the diagonal where the pins are) is dead space.  So if both the tappets and servo cnnecting rods were only of sufficient length, the servos could be staggered diagonally.  There would then come a number of levers after which the tappets could start short again.

 

 


 


 

Link to post
Share on other sites

  • RMweb Premium

Hello Michael,

 

Arduino
 

The Signal Interlocking System consists of an Arduino MEGA which is ok for up to 25 Levers (Inputs) and 25 Locks (Outputs) beyond that you would be looking at expansion modules. I use a MCP2515 CANBUS Module which communicates with the MERG CBUS System to control Signals and Points.

 

I no expert on programming Arduino's, I've learnt by modifying the code of RMweb Member ffayolle (Fabrice).
https://www.rmweb.co.uk/community/index.php?/topic/82978-arduino-applications-and-programs/page/4/&tab=comments#comment-2276967

 

The Arduino Sketch I am using doesn't support reading data from say an SD Card although it should be possible to add this facility.

 

Lever Frame
 

The drawing I posted was really just to show the principle of my idea. I just wanted to produce something quickly so I made use of 'cut and paste'. I need to re-visit it and produce an update.

 

Just concentrating on Moretonhampstead with 12 Levers I hadn't considered if you substantially increased the number of Lever & Locks, the length of the Brass Slide Bars would be unreasonable.

 

It is my intention to mount half of the servos either side of the Lever Frame and as you say the lengths of the tappets can also be reduced to suit each Lever. 

 

  • Agree 1
Link to post
Share on other sites

  • 1 year later...
  • RMweb Premium

Looking at your Lockable Levers page where you describe five lever states:

 

1: Lever Unlocked

2: Lever Locked Normal

3: Lever Locked Normal, but moveable from Reverse

4: Lever Locked Reverse

5: Lever Locked Reverse, but moveable from Normal

 

I would say that a Lever should either be Locked  or Unlocked and as such options 3 & 5 are un-prototypical.

Edited by Pannier Tank
See further comments below.
Link to post
Share on other sites

  • RMweb Premium
2 hours ago, Pannier Tank said:

Looking at your Lockable Levers page where you describe five lever states:

 

1: Lever Unlocked

2: Lever Locked Normal

3: Lever Locked Normal, but moveable from Reverse

4: Lever Locked Reverse

5: Lever Locked Reverse, but moveable from Normal

 

I would say that a Lever should either be Locked  or Unlocked and as such options 3 & 5 are un-prototypical.

3 was surely very common, since it is used in Line Clear Release to prevent the starter being cleared a second time from a single Line Clear. I have only a vague idea of how this was implemented in the prototype, but I imagine it was a backlock in the Normal position.

 

As a way of modelling this, "Lever Locked Normal, but Moveable from Reverse" sounds a sensible way of implementing it. Upon Line Clear, the starter is given "Lever Unlocked". When it is pulled, its status is changed to "Lever Locked Normal, but movable from Reverse".

 

Having said this, I am not sure why you need to distinguish between 2 and 4, unless they require physically different mechanisms.

Edited by Jeremy Cumberland
Looked at the linked page
Link to post
Share on other sites

  • RMweb Premium
20 hours ago, Jeremy Cumberland said:

3 was surely very common, since it is used in Line Clear Release to prevent the starter being cleared a second time from a single Line Clear. I have only a vague idea of how this was implemented in the prototype, but I imagine it was a backlock in the Normal position.

 

I should have realised this as I've implemented a "Lock / Release" for the "Section Signal" on  my single line BR(W) BLT which uses "Tokenless Block Instruments" to provide the "Section Signal Locking".

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...