LOGIC(2.3) LOOP // 1. USE SWITCH WITH TIMEOUT AFTER 5 // note that switch 1501 needs to be programmed with a timeout IF SWITCH 101 ON AND TIME > 17:30 THEN SWITCH 1501 ON ENDIF // 2. A-B-C Ballroom IF (SWITCH 102 OFF AND SWITCH 0103 OFF) AND SWITCH 0201 ON THEN RELAY 105 ON ENDIF IF (SWITCH 102 OFF AND SWITCH 0103 OFF) AND SWITCH 0201 OFF THEN RELAY 105 OFF ENDIF IF (SWITCH 102 ON AND SWITCH 0103 OFF) AND SWITCH 0201 ON THEN RELAY 106 ON ENDIF IF (SWITCH 102 ON AND SWITCH 0103 OFF) AND SWITCH 0201 OFF THEN RELAY 106 OFF ENDIF IF (SWITCH 102 OFF AND SWITCH 0103 ON) AND SWITCH 0201 ON THEN RELAY 107 ON ENDIF IF (SWITCH 102 OFF AND SWITCH 0103 ON) AND SWITCH 0201 OFF THEN RELAY 107 OFF ENDIF IF (SWITCH 102 ON AND SWITCH 0103 ON) AND SWITCH 0201 ON THEN RELAY 105 ON RELAY 106 ON RELAY 107 ON ENDIF IF (SWITCH 102 ON AND SWITCH 0103 ON) AND SWITCH 0201 OFF THEN RELAY 105 OFF RELAY 106 OFF RELAY 107 OFF ENDIF // 3. Disable an input IF TIME > 9:00 AND TIME < 17:00 THEN SWITCH 0101 DISABLE OFF ELSE SWITCH 0101 ENABLE ENDIF // 4. TRIPLEXING DEMO IF SWITCH 104 ON THEN COUNTER 104 INC 1 ENDIF IF COUNTER 104 = 1 THEN RELAY 101 ON DIMMER 201 = 33 ENDIF IF COUNTER 104 = 2 THEN RELAY 102 ON DIMMER 201 = 66 ENDIF IF COUNTER 104 = 3 THEN RELAY 103 ON DIMMER 201 = 100 ENDIF IF COUNTER 104 > 3 THEN RELAY 101 OFF RELAY 102 OFF RELAY 103 OFF DIMMER 201 = 0 COUNTER 104 RESET 0 ENDIF // 5. disable during weekend IF DAY = SUN OR DAY = SAT THEN GROUP 108 DISABLE ON ELSE GROUP 108 ENABLE ENDIF // 6. disable sensor during the day IF TIME > DAWN-30 AND TIME < DUSK+15 THEN ANALOG 101 DISABLE ON ELSE ANALOG 101 ENABLE ENDIF // 7. KEEPING A HALLWAY LIT WHEN OTHER LIGHTS ARE ON IF RELAY 104 ON OR RELAY 102 ON OR RELAY 103 ON THEN RELAY 101 ON ENDIF IF RELAY 104 OFF AND RELAY 102 OFF AND RELAY 103 OFF THEN SWITCH 1501 ON //starts timeout, controls relay ENDIF // 8. Another virtual switch for timeout IF PHONE 101 > 85 AND TIME > 17:30 THEN SWITCH 1501 ON ENDIF // 9. Using a timer and warn IF SWITCH 108 ON AND TIME > 17:30 THEN TIMER 108 RESET TIMER 108 START GROUP 108 ON ENDIF IF TIMER 108 = 00:01:00 THEN GROUP 108 WARN ENDIF IF TIMER 108 = 00:02:00 THEN GROUP 108 OFF ENDIF // 10. Dynamic Schedule IF MONTH = JUN AND DAY = MON THEN SCHEDULE 2 ENDIF // 11. Lamp Lumen Depreciation - use dimmer to compensate IF GROUP 101 ON AND RELAY 101 HOURS >= 2 THEN GROUP 201 = 95 ENDIF IF GROUP 101 ON AND RELAY 101 HOURS < 2 THEN GROUP 201 = 90 ENDIF IF GROUP 101 ON AND RELAY 101 HOURS < 1 THEN GROUP 201 = 85 ENDIF IF GROUP 101 OFF THEN GROUP 201 OFF ENDIF // 12. User Interface Message for lamp change IF RELAY 101 STARTS > 50 OR RELAY 101 HOURS > 50 THEN MESSAGE "RELAMP RELAY 101" RELAY 101 RESET STARTS ENDIF IF SWITCH 108 ON THEN MESSAGE CLEAR ENDIF if time > 6:00 then switch 101 disable warn endif