FIGURE shows the graphic simulation of the Elevator.
The object of this assignment is to write a program that will drive the Elevator from one floor to the other.
The list of inputs and outputs are as follows.
IP0 External Elevator call button OP0 Elevator motor UP
IP1 Elevator on level 2 sensor OP1 Elevator motor DOWN
IP2 Elevator on level 1 sensor OP2 Elevator door motor OPEN
IP3 Internal Elevator button OP3 Elevator door motor CLOSE
IP4 Door obstruction sensor OP4 Alarm
IP5 Lift door closed sensor
IP6 Lift stuck alarm button
The operation of the elevator is as follows: Assuming that the elevator is at level 1, (IP2 energised), there are two options;
1. The elevator could be called from level 2 by the external call button IP0 being pressed. The elevator doors should then close via OP3, once closed IP5 (doors closed sensor) should energise. At this point the elevator should start to move up via OP0 (elevator motor UP). Once the elevator reaches level 2, IP1 would energise and this should stop the elevator motor. After a short pause the elevator doors should open via OP2.
2. The elevator could also be operated from level 1 via the internal button IP3. The elevator doors would then close (OP3) energising IP5 (doors closed sensor). The elevator should then move up to level 2 via OP0. Once level 2 sensor IP1 energises, the elevator doors can then open via OP2.
Note: When the elevator is on level 2 it will be necessary to drive the elevator down to level 1 using OP1 (elevator motor DOWN).
Other facilities: (a) Alarm: Should the elevator get stuck between floors or the doors not open, then by pressing IP6 the alarm OP4
should operate.
(b) Door Obstruction: If the doors are obstructed the elevator motors OP0 and OP1 should be disabled. You can test this by clicking on the box and obstructing the doors.
When writing the program use the inputs and outputs as listed, use any flags, timers, and counters as required. As usual use the comments facilities to document your program.