1 / 23

Elevator Control System

Elevator Control System. Pontificia Universidad Javeriana Javier Mena 2008. The Elevator Problem. There is a building of several floors and several elevators. There are also users that want to use the elevators. User interaction.

john-ross
Download Presentation

Elevator Control System

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Elevator Control System Pontificia Universidad Javeriana Javier Mena 2008

  2. The Elevator Problem • There is a building of several floors and several elevators. • There are also users that want to use the elevators.

  3. User interaction • The user can be outside the elevator and waits for the elevator to arrive.

  4. User interaction • OR the user can be inside the elevator and tells the elevator where he/she wants to go.

  5. General View

  6. Component View User call Floor F The user in the floor F, presses a button to call the elevator

  7. Component View User call(F) arrive(Ack) Act=unit call step(D) at(F) Floor F Elevator L Controller startTimer(Millis Ack) Act=unit Floor F Doors

  8. Component View User call(F) Elevator L The user, inside the elevator L, user presses button to go to Floor F

  9. Component View (Complete) User User call(F) arrive(Ack) Ack=unit call call(F) step(D) at(F) Floor F Elevator L Controller startTimer(Millis Ack) Ack=unit Floor F Doors

  10. Component View (Complete) User User call(F) arrive(Ack) Ack=unit call call(F) step(D) at(F) Floor F Elevator L Controller startTimer(Millis Ack) Ack=unit The controller can handle 2 messages types. Floor F Doors

  11. Design of the controller The controller represents the logic that controls the movement of the elevators through floors. The operations of the controller are very basic, it can only turn the engines on/off to move the elevator up or down, just one floor each time. Each time it arrives to a floor, it notifies the Elevator, which decides what to do.

  12. Design of the controller • The controller can send 2 messages: • starttimer(5000 Tid), tells the engines to turn on during 5 seconds. • at(F) tells the elevator the current location its current location. • Which are the possible states of the controller?

  13. Design of the controller • The controller can send 2 messages: • starttimer(5000 Tid), tells the engines to turn on during 5 seconds. • at(F) tells the elevator the current location its current location. • Which are the possible states of the controller? Answer: 2 • The controller has the engines turned on • The controller has the engines turned off

  14. Design of the controller • In our design the controller can receive 2 messages: • stoptimer: when the engines has been turned off • step(Dest): when the elevator wants to go towards a floor • What should we do in each case? • Each controller must know the current floor (in real life, through a sensor), and the Elevator related to the controller.

  15. State diagram for the controller

  16. Design of Floor (1) User User call(F) arrive(Ack) Ack=unit call call(F) step(D) at(F) Floor F Elevator L Controller startTimer(Millis Ack) Ack=unit • The floor have can receive one message type, but it can have • 3 internal states: • Doors being opened • Doing nothing at all • Handling a the call of a User Floor F Doors

  17. Design of Floor (1) • The floor have can receive 2 message types, but it can have • 3 internal states: • Doors operating (opening and closing) • Doing nothing at all • Handling a the call of a User • The messages that the floor can receive are: • arrive(Ack): an elevator has arrive. The Floor must open the doors, and then notify through Ack=unit • call: is received when the User wants that an elevator goes to the current floor. • stoptimer: when the doors have been opened (and closed)

  18. Design of Floor (2) • Also the floor can send messages to the elevator: • call(F), then wait for the elevator to arrive to the floor. • And the floor can send messages to the doors of the floor: • starttimer(5000 Fid): open and close the doors in 5 seconds (it may take more time).

  19. Design of Floor (3) Analyze the possible states and messages that the Floor can receive/send in each state. Follow the Main Component diagram.

  20. State Diagram of a Floor

  21. Component View (Complete) User User call(F) arrive(Ack) Ack=unit call call(F) step(D) at(F) Floor F Elevator L Controller startTimer(Millis Ack) Ack=unit Floor F Doors

  22. Design of Elevator Analyze the possible states and messages that the Floor can receive/send in each state. Follow the Main Component diagram.

  23. Elevator State Diagram

More Related