SOYAL provides a variety of multi-door interlock solutions suitable for controlled environments such as clean rooms and laboratories. This article offers tutorials on both simple interlocking methods (through wiring) and PLC setup methods. It explains how to achieve multi-door interlocking, fire door opening, and alarm output, as well as indicator light output. Additionally, it can be integrated with 701ClientSQL SCADA software for remote monitoring and alarm notifications, meeting on-site management needs.
Q: How to achieve multi-door interlocking using SOYAL WEB PLC (AR-401-PLC series)?
STEP1. Before setting up the action logic, we need to confirm at least the following two conditions to plan the usage of DI/DO points:
Condition A. Standby/Open Door Status provided by Electric Lock or Magnetic Reed Switch
When in standby, the contact provided by the electric lock/magnetic reed switch is closed, and the circuit is completed.
When the door is open, the contact provided by the electric lock/magnetic reed switch is open, and the circuit is broken.
When in standby, the contact provided by the electric lock/magnetic reed switch is open, and the circuit is broken.
When the door is open, the contact provided by the electric lock/magnetic reed switch is closed, and the circuit is completed.
These conditions need to be confirmed as they determine the logic conditions for the DI input points in the PLC.
Condition B. Electric lock standby status: locked or unlocked
When personnel need to pass through, they must swipe a card or press the door release button, triggering the PLC. The PLC then activates the relay to unlock the electric lock, allowing personnel to pass through. The PLC will monitor the door status signal and other relay outputs to determine the logic conditions for other doors.
In a four-door interlock scenario, after pushing open door A, the status of door A's door position detector changes. Doors B, C, and D cannot be opened using card swipe or button press until door A's position returns to normal.
When personnel need to pass through, they do not need to swipe a card or press the door release button. They can directly push the door open. After the door is pushed open, the PLC will lock the remaining electric locks.
In a four-door interlock scenario, after personnel push open door A, the door position sensor of door A triggers, locking doors B, C, and D. They cannot be pushed open until door A's position returns to normal.
Other conditions:
There are usually several necessary restrictions and additional conditions for personnel to pass through:
Necessary conditions:
1. BCD door position sensor closed circuit.
2. BCD locks locked/unlocked status.
3. Door lock opening time in seconds.
Additional conditions (optional):
4. Automatic locking when doors are closed.
5. All doors open in case of fire / specific doors open.
6. Door open timeout alarm / door closing alarm reset.
7. Forced door open alarm.
8. Alarm reset button.
STEP 2: Establish Input/Output Point Table (DI/DO Table)
WEB PLC DI/DO Point Table | |||||
Item | DI | Point Status | Item | DO | Point Status |
X0 | Push Button A | NO | Y0 | Electric Lock A | NC |
X1 | Door Sensor A | NC | Y1 | Alarm A | NO |
X2 | Push Button B | NO | Y2 | Electric Lock B | NC |
X3 | Door Sensor B | NC | Y3 | Alarm B | NO |
X4 | Push Button C | NO | Y4 | Electric Lock C | NC |
X5 | Door Sensor C | NC | Y5 | Alarm C | NO |
X6 | Relay D | NO | Y6 | Electric Lock D | NC |
X7 | Door Sensor D | NC | Y7 | Alarm D | NO |
※Common examples include ➔ Magnetic sensor closed circuit when door is closed / Magnetic sensor open circuit when door is open
※ There are two common examples ➔
1. Lock normally locked, contact closed (swipe card / door open button) to open door.
2. Lock normally unlocked, when a door is opened, other locks lock, no need to press door open button for normal passage, just push the door open.
STEP 3. Establish Point Trigger Table
DI Point Trigger Table | ||
Item | DI | Action |
X0 | Push Button A | Output Y0 for five seconds |
X1 | Door Sensor A | Lock Y2 Y4 Y6 do not open |
X2 | Push Button B | Output Y2 for five seconds |
X3 | Door Sensor B | Lock Y0 Y4 Y6 do not open |
X4 | Push Button C | Output Y4 for five seconds |
X5 | Door Sensor C | Lock Y0 Y2 Y6 do not open |
X6 | Push Button D | Output Y6 for five seconds |
X7 | Door Sensor D | Lock Y0 Y2 Y4 do not open |
DO Point Trigger Table | ||
Item | DO | Action |
Y0 | Electric Lock A | Lock Y2 Y4 Y6 do not open |
Y1 | Alarm A | -- |
Y2 | Electric Lock B | Lock Y0 Y4 Y6 do not open |
Y3 | Alarm B | -- |
Y4 | Electric Lock C | Lock Y0 Y2 Y6 do not open |
Y5 | Alarm C | -- |
Y6 | Electric Lock D | Lock Y0 Y2 Y4 do not open |
Y7 | Alarm D | -- |
STEP4. Draw the ladder diagram and input the logic into the WEB PLC
In the above process, we have clearly listed the triggering action flow of all DI/DO points. Before formally setting these actions into the PLC, it is recommended to first draw the ladder diagram to facilitate quick and accurate configuration. Currently, the WEB PLC and the official website provide many PLC examples, including multiple door interlocking cases and output time control, which can be used as a reference for drawing the ladder diagram.
Multi-door Interlock Application Cases :
Conditions:
4 Doors Interlock: When one of the doors is unlocked, other 3 doors could not be unlocked until that door is closed
Feature:
Contact Description:
Door | DI Address PB | DI Address Door Sensor | DO Address Door Relay | DO Address Alarm |
Door A | DIX0 | DIX1 | DOY0 | DOY1 |
Door B | DIX2 | DIX3 | DOY2 | DOY3 |
Door C | DIX4 | DIX5 | DOY4 | DOY5 |
Door D | DIX6 | DIX7 | DOY6 | DOY7 |
Fire DI | DIX16 |
Case Explanation :
We will use Door A as example to explain the program logic:
1. When the door sensor DIX3/DX5/DIX7 and the door lock relay DOY2/DOY4/DOY6 of door B/door C/door D are closed, press Door A push button DIX0 , the door lock relay DOY0 can be trigger on 6 seconds.
2. When the fire alarm input DIX16 is closed, the door lock relay of door A/door B/door C/door D can be released on;
3. When the door sensor DIX1 of door A is closed, the door lock relay of door A can be automatically relocked;
4. When the door sensor DIX1 of door A is forced to open and the door relay DOY0 of door A is off, the alarm relay DOY1 of door A will be turned on;
5. When the door sensor DIX1 of door A is open, the timer TMR0 is triggered. When TMR0 is more than 8 seconds, the door open too long alarm relay DOY1 is triggered.
6. When the door sensor DIX1 of door A is closed, the alarm relay DOY1 can be stopped.
WEB Setting:
Ladder Programming:
701ClientSQL Graphic Control Configuration Steps:
Conditions:
A. There are five rooms, with a total of eight interlocking doors in this case. If one door of Room1-5 is opened, all other doors in that room will be locked. As an illustration, when door B is open, doors A, C, and D will be closed.
B. In Rooms 1-5 and relevant places, there are a total of 8 emergency buttons. Pressing each of emergency button will unlock all connected doors of that room for 60 seconds.
C. All emergency buttons will trigger the same alarm for 60 seconds.
Contact Description:
*Text in red indicates AR-401-IO1608 expansion contacts.
*Text in blue indicates firmware configuration points. Installers, please ignore.
AR-401-IO-0808R / *AR-401-IO1608 Contacts | |||
DI | Contacts | DO | Contacts |
DIX0 | Emergency Button 1 | DOY0 | Electric Lock A |
DIX1 | Door Sensor A | DOY1 | Electric Lock B |
DIX2 | Emergency Button 2 | DOY2 | Electric Lock C |
DIX3 | Door Sensor B | DOY3 | Electric Lock D |
DIX4 | Emergency Button 3 | DOY4 | Electric Lock E |
DIX5 | Door Sensor C | DOY5 | Electric Lock F |
DIX6 | Emergency Button 4 | DOY6 | Electric Lock G |
DIX7 | Door Sensor D | DOY7 | Electric Lock H |
DIX0 (DIX16) | Emergency Button 5 | DOY0 (DOY16) | Alarm Output (For all of Emergency Buttons) |
DIX1 (DIX17) | Door Sensor E | ||
DIX2 (DIX18) | Emergency Button 6 | ||
DIX3 (DIX19) | Door Sensor F | ||
DIX4 (DIX20) | Emergency Button 7 | ||
DIX5 (DIX21) | Door Sensor G | ||
DIX6 (DIX22) | Emergency Button 8 | ||
DIX7 (DIX23) | Door Sensor H |
Door Sensor Trigger Table
DI (Door Open) | DO (Door Locked) | Contacts | Relay |
Door A (DIX1) | Door B | DOY1 | K2 |
Door B (DIX3) | Door A C D | DOY0 DOY2 DOY3 | K1 K3 K4 |
Door C (DIX5) | Door B D E | DOY1 DOY3 DOY4 | K2 K4 K5 |
Door D (DIX7) | Door B C F | DOY1 DOY2 DOY5 | K2 K3 K6 |
Door E (DIX1) (DIX17) | Door C F G H | DOY2 DOY5 DOY6 DOY7 | K3 K6 K7 K8 |
Door F (DIX3) (DIX19) | Door D E G H | DOY3 DOY4 DOY6 DOY7 | K4 K5 K7 K8 |
Door G (DIX5) (DIX21) | Door E F H | DOY4 DOY5 DOY7 | K5 K6 K8 |
Door H (DIX7) (DIX23) | Door E F G | DOY4 DOY5 DOY6 | K5 K6 K7 |
Emergency Button Trigger Table
DI | DO | Relay | Output-1 | Output-2 |
Emergency Button 1 (DIX0) | DOY0 (DOY16) | K1 | Central Alarm with 60 seconds | Unlock Door A |
Emergency Button 2 (DIX2) | DOY0 (DOY16) | K1 | Central Alarm with 60 seconds | Unlock Door A B |
Emergency Button 3 (DIX4) | DOY0 (DOY16) | K1 | Central Alarm with 60 seconds | Unlock Door B C D |
Emergency Button 4 (DIX6) | DOY0 (DOY16) | K1 | Central Alarm with 60 seconds | Unlock Door C E |
Emergency Button 5 (DIX0) (DI16) | DOY0 (DOY16) | K1 | Central Alarm with 60 seconds | Unlock Door E F G H |
Emergency Button 6 (DIX2) (DI18) | DOY0 (DOY16) | K1 | Central Alarm with 60 seconds | Unlock Door D F |
Emergency Button 7 (DIX4) (DI20) | DOY0 (DOY16) | K1 | Central Alarm with 60 seconds | Unlock Door G |
Emergency Button 8 (DIX6) (DI22) | DOY0 (DOY16) | K1 | Central Alarm with 60 seconds | Unlock Door H |
WEB Setting:
Ladder Programming:
701ClientSQL Graphic Animation:
*The scenario described involves the opening of door B by personnel, followed by the locking of doors A, C, and D. At this point, the individual presses the emergency button in Room 2. Subsequently, doors B, C, and D are unlocked, and the central alarm is triggered.
Conditions:
There are two rooms on site, each with two doors. A/B doors are interlocked, and C/D doors are interlocked。
Point Description
DI / DO Table | |||||
DI | Device | Status | DO | Device | Status |
X0 | Push Button A | NO | Y0 | Alarm A | NO |
X1 | Door Sensor A | NC | Y1 | Electric Lock A | NO |
X2 | Push Button B | NO | Y2 | Alarm B | NO |
X3 | Door Sensor B | NC | Y3 | Electric Lock B | NO |
X4 | Push Button C | NO | Y4 | Alarm C | NO |
X5 | Door Sensor C | NC | Y5 | Electric Lock C | NO |
X6 | Push Button D | NO | Y6 | Alarm D | NO |
X7 | Door Sensor D | NC | Y7 | Electric Lock D | NO |
Logical Action Table - Door Sensor | |
X1 | Y2 Latch Output |
X3 | Y1 Latch Output |
X5 | Y4 Latch Output |
X7 | Y3 Latch Output |
Logical Action Table - Push Button | |||
Item | Action 1 | Action 2 | Action 3 |
X0 | Y0 Output for 60 seconds | Y1 Stop Output for 60 seconds | |
X2 | Y2 Output for 60 seconds | Y1 Stop Output for 60 seconds | Y3 Stop Output for 60 seconds |
X4 | Y4 Output for 60 seconds | Y5 Stop Output for 60 seconds | |
X6 | Y6 Output for 60 seconds | Y5 Stop Output for 60 seconds | Y3 Stop Output for 60 seconds |
Parameter Settings:
Ladder Programming:
Referenced Commands:
Pulse Output / Rising Edge Trigger / Level Trigger
Example Download:
Conditions:
There are two rooms on site, each with two doors. A/B double doors are interlocked, and B/C double doors are interlocked.
Point Description
DI / DO Table | |||||
DI | Device | Status | DO | Device | Status |
X0 | Controller A | NO | Y0 | Alarm A | NO |
X1 | Push Button A | NO | Y1 | Electric Lock A | NO |
X2 | Door Sensor A | NC | Y2 | Alarm B | NO |
X3 | Push Button B | NO | Y3 | Electric Lock B | NO |
X4 | Door Sensor B | NC | Y4 | Alarm C | NO |
X5 | Push Button C | NO | Y5 | Electric Lock C | NO |
X6 | Door Sensor C | NC | Y6 | Alarm D | NO |
X7 | Y7 |
Logical Action Table - Door Sensor | ||
Item | Action 1 | Action 2 |
X1 | Y2 Latch Output | -- |
X3 | Y1 Latch Output | Y3 Latch Output |
X5 | Y2 Latch Output | -- |
Logical Action Table - Push Button | |||
Item | Action 1 | Action 2 | Action 3 |
X0 | Y0 Output for 60 seconds | Y1 Stop Output for 60 seconds | -- |
X2 | Y2 Output for 60 seconds | Y1 Stop Output for 60 seconds | Y3 Stop Output for 60 seconds |
X4 | Y4 Output for 60 seconds | Y5 Stop Output for 60 seconds | -- |
Parameter Settings:
Ladder Programming:
Referenced Commands:
Pulse Output / Rising Edge Trigger / Level Trigger
Example Download:
Conditions:
The site is divided into three rooms. The first room has A/B/C three doors interlocked, the second room has C/D double doors interlocked, and the third room has D/E double doors interlocked.
Point Description:
PLC Mainboard (AR-401-PLC-0808R) DI / DO Correspondence Table | |||||
DI | Device | Status | DO | Device | Status |
X0 | Controller A | NO | Y0 | Alarm A | NO |
X1 | Push Button A | NO | Y1 | Electric Lock A | NO |
X2 | Door Sensor A | NC | Y2 | Alarm B | NO |
X3 | Push Button B | NO | Y3 | Electric Lock B | NO |
X4 | Door Sensor B | NC | Y4 | Alarm C | NO |
X5 | Push Button C | NO | Y5 | Door Closer D | NO |
X6 | Door Sensor C | NC | Y6 | Indicator Light D | NO |
X7 | Y7 |
AR-401-IO-1608R DI / DO Correspondence Table | |||||
DI | Device | Status | DO | Device | Status |
X0 | Controller D | NO | Y0 | Alarm D | NO |
X1 | Push Button D | NO | Y1 | Electric Lock D | NO |
X2 | Door Sensor D | NC | Y2 | Alarm E | NO |
X3 | Push Button E | NO | Y3 | Electric Lock E | NO |
X4 | Door Sensor E | NC | Y4 | ||
X5 | Y5 | ||||
X6 | Y6 | ||||
X7 | Y7 |
Logic Action Table - Door Sensor | |||
Item | Action 1 | Action 2 | Action 3 |
X2 | Y3 Latch Output | Y5 Latch Output | -- |
X4 | Y1 Latch Output | Y5 Latch Output | Y7 Latch Output |
X6 | Y1 Latch Output | Y3 Latch Output | -- |
X18 | Y5 Latch Output | Y19 Latch Output | |
X20 | Y17 Latch Output |
Logic Action Table - Push Button | ||
Item | Action 1 | Action 2 |
X0 | Y1 Output for 5 seconds | -- |
X1 | Y0 Output for 60 seconds | Y1/ Y3/Y5 Stop Output for 60 seconds |
X3 | Y2 Output for 60 seconds | Y3 Stop Output for 60 seconds |
X5 | Y4 Output for 60 seconds | Y5/ Y17 Stop Output for 60 seconds |
X16 | Y17 Output for 5 seconds | -- |
X17 | Y16 Output for 60 seconds | Y17/ Y19 Stop Output for 60 seconds |
X19 | Y16 Output for 60 seconds | Y19 Stop Output for 60 seconds |
Parameter Settings:
Ladder Programming:
Referenced Commands:
Pulse Output / Rising Edge Trigger / Level Trigger
Example Download:
Conditions:
There are two rooms on site, each with two doors. A/B double doors are interlocked, and C/D double doors are interlocked.
Point Description:
DI / DO Correspondence Table | |||||
DI | Device | Status | DO | Device | Status |
X0 | Push Button A | NO | Y0 | Electric Lock A | NO |
X1 | Door Sensor A | NC | Y1 | Electric Lock B | NO |
X2 | Push Button B | NO | -- | -- | -- |
X3 | Door Sensor B | NC | -- | -- | -- |
X4 | -- | -- | -- | -- | -- |
X5 | -- | -- | -- | -- | -- |
X6 | -- | -- | -- | -- | -- |
X7 | 火警接點 | NO | -- | -- | -- |
Logic Action Table - Door Sensor | |
Item | Action 1 |
X1 | Y1 Latch Output |
X3 | Y0 Latch Output |
Logic Action Table - Push Button | |||
Item | Action 1 | Action 2 | Action 3 |
X0 | Y0 Output for 5 seconds | -- | -- |
X2 | Y2 Output for 5 seconds | -- | -- |
X7 | Y0 Latch Output | Y1 Latch Output | -- |
Parameter Settings:
Ladder Programming:
Referenced Commands:
Pulse Output / Rising Edge Trigger / Level Trigger
Example Download:
Conditions:
There is one room on site with three doors, A/B and C are three-door interlocked.
Point Description:
DI / DO Correspondence Table | |||||
DI | Device | Status | DO | Device | Status |
X0 | Push Button A | NO | Y0 | Electric Lock A | NO |
X1 | Door Sensor A | NC | Y1 | Electric Lock B | NO |
X2 | Push Button B | NO | -- | -- | -- |
X3 | Door Sensor B | NC | -- | -- | -- |
X4 | -- | -- | -- | -- | -- |
X5 | -- | -- | -- | -- | -- |
X6 | -- | -- | -- | -- | -- |
X7 | Fire Alarm Contact | NO | -- | -- | -- |
Logic Action Table - Door Sensor | |
Item | Action 1 |
X1 | Y1 Latch Output |
X3 | Y0 Latch Output |
Logic Action Table - Push Button | |||
Item | Action 1 | Action 2 | Action 3 |
X0 | Y0 Output for 5 seconds | -- | -- |
X2 | Y2 Output for 5 seconds | -- | -- |
X7 | Y0 Latch Output | Y1 Latch Output | -- |
Parameter Settings:
Ladder Programming:
Referenced Commands:
Pulse Output / Rising Edge Trigger / Level Trigger
Example Download: