Hades logo    Hades applet banner

TAMS / Java / Hades / applets (print version): contents | previous | next

Animated Elevator (2 of 5 floors)

Animated Elevator (2 of 5 floors) screenshot


This applet demonstrates the 5 floor elevator controller, used as an example for state-machine design in many textbooks. To motivate and illustrate the elevator controller design, the applet contains a special simulation component that visualizes the elevator and its floor button. The FSM control only 2 floors in this example. Try to manage three up to five floors by using the state machine editor. Please, you have to add more inputs on FSM, and connect to elevator sensors and buttons.

Use the popup-menu ('edit') on the elevator component to open the window with the elevator visualization. Press any floor button and watch the behavior of the elevator controller. You can also open the state-machine editor to watch and edit the controller. The following image shows a screenshot of the applet with both the elevator animation and the state-machine editor open at the same time:

Elevator has five buttons, one on each floor. In addition, there are floor level sensors. When the elevator is on the ground floor, the ground sensor is ON. If the elevator moves up, the ground sensor is OFF, and the K level sensor will be switched ON when the elevator arrives on the K floor. The engine and direction are elevator inputs.


engine: ON and OFF

direction: move up (ON), move down (OFF)


Sensor: 5-bit vector, where the bit K will be ONE if the elevator is on K floor, otherwise OFF

Button: 5-bit vector, Switch the bitk ON if pressed, and stay ON until the elevator arrives at K floor.

Component written by André Bigonha, Ulisses Chippe, Giliardo Freitas and Ricardo Ferreira, DPI, Universidade Federal Vicosa, Brazil, cacau@dpi.ufv.br

To edit the state-machine, activate the popup-menu on the FSM symbol and select the edit menu item. This opens the editor window for the FSM, which uses a mode-oriented user-interface.

Run the applet | Run the editor (via Webstart)

Impressum | 24.11.06