You are in: "ARDS Controls", "Switches", "Switch Overview" page


Switch Overview


Switch Control is used to emulate Switches.
Switch Control has Body, Switch Points, Switch Point Entry, Main, Main Exit, Turnout, Turnout Exit, WAM (Warning Access Message) line, and Control name Label.




ARDS has two types of Switches:




Switch Control can be alone, or can have Power Lines, Train ID, and Switch Lock. Here stand alone Switch.




Here is Switch with Power Lines, Train ID, and Switch Lock.




Switch can be in Normal or Reverse positions.




Switch Control has two Conditions' types: single and double. Simple Conditions are "Not Initialized", "Not Occupied", "Occupied", "Route Request", etc.
Double Conditions are: "Occupied + Route Request", "Occupied + Locked in Route", etc.
We did not decide yet will we use double Conditions or not. If not, corresponded ARDS codes will be easy commented or completely deleted.
We did test tripple Conditions too, and them can be added easy, we need just uncomment some ARDS codes.


Here is a list of single Conditions:

  • "Not Initialized". This Condition is always used, and not required "attached" Variable.
  • "Not Occupied". This Condition is always used, and required "attached" Variable.
  • "Occupied". This Condition is always used, and required "attached" Variable.
    "Occupied" and "Not Occupied" Conditions are working together, i. e. Switch can be or occupied or not occupied.
  • "Route Request". This Condition is arbitrary (can be used, or can not be used). If "Route Request" Condition is used, "attached" Variable must be provided.
  • "Locked in Route". This Condition is arbitrary (can be used, or can not be used). If "Locked in Route" is used, "attached" Variable must be provided.
    If "Route Request" Condition is used, "Locked in Route" Condition must be used too.
  • "Cancel Route". This Condition is arbitrary (can be used, or can not be used). If "Locked in Route" is used, "attached" Variable must be provided.
    If "Route Request" Condition is used, "Cancel Route" Condition must be used too.
  • "Block Request". This Condition is arbitrary (can be used, or can not be used). If "Block Request" Condition is used, "attached" Variable must be provided.
  • "Blocked". This Condition is arbitrary (can be used, or can not be used). If "Blocked" Condition is used, "attached" Variable must be provided.
    If "Block Request" Condition is used, "Blocked" Condition must be used too.
  • "Unblock Request". This Condition is arbitrary (can be used, or can not be used). If "Unblock Request" Condition is used, "attached" Variable must be provided.
    If "Block Request" Condition is used, "Blocked" Condition must be used too.
  • "Throw in Normal". This Condition is arbitrary (can be used, or can not be used). If "Throw in Normal" Condition is used, "attached" Variable must be provided.
  • "Throw in Reverse". This Condition is arbitrary (can be used, or can not be used). If "Throw in Reverse" Condition is used, "attached" Variable must be provided.
  • "Switch In Normal". This Condition is arbitrary (can be used, or can not be used). If "Switch In Normal" Condition is used, "attached" Variable must be provided.
  • "Switch In Reverse". This Condition is arbitrary (can be used, or can not be used). If "Switch In Reverse" Condition is used, "attached" Variable must be provided.
  • "Out of Correspondence". This Condition is arbitrary (can be used, or can not be used). This Condition does not need "attached" Variable.
    Instead it used Variables from "Switch In Normal" and "Switch In Reverse" Conditions.
    If both "Switch In Normal" and "Switch In Reverse" are TRUE, or both "Switch In Normal" and "Switch In Reverse" are FALSE, "Out of Correspondence"
    is TRUE. Othervise, "Out of Correspondence" is FALSE.


  • Here is a list of double Conditions:

  • "Occupied + Route Request". This Condition is arbitrary (can be used, or can not be used). If "Occupied + Route Request" Condition is used, "attached" Variable must be provided.
  • "Occupied + Locked in Route". This Condition is arbitrary (can be used, or can not be used). If "Occupied + Locked in Route" Condition is used, "attached" Variable must be provided.
  • "Occupied + Cancel Route". This Condition is arbitrary (can be used, or can not be used). If "Occupied + Cancel Route" Condition is used, "attached" Variable must be provided.
  • "Occupied + Block Request". This Condition is arbitrary (can be used, or can not be used). If "Occupied + Block Request" Condition is used, "attached" Variable must be provided.
  • "Occupied + Blocked". This Condition is arbitrary (can be used, or can not be used). If "Occupied + Blocked" Condition is used, "attached" Variable must be provided.
  • "Occupied + Unblock Request". This Condition is arbitrary (can be used, or can not be used). If "Occupied + Unblock Request" Condition is used, "attached" Variable must be provided.


  • Please use menus on top of this page to find more information about ARDS.