Lift problem

Ladyscarlet99

Guest
L
Currently, I'm developing a ladder diagram for the lift problem using Mitsubishi PLC Training Kit. The lift has 3 floors.

I'm having problems with double coils and reusing the subroutines in my program.Also, I don't know how to indicate which floor the lift is. Is there any examples of ladder diagram for this lift problem? Or anybody can give me guidelines to develop the ladder diagram so that the lift is working correctly?
Thank you for your helps.
 
I'm having problems with double coils

Generally, double coil usage creates problems. The simple solution is not to use the same address in more than one coil instruction in a program. The exception is if you use Set coils, then you also need to program Reset coils. I've never used the Mitsubishi model you name, so I don't know whether they chain Set and Reset coils together. Some PLCs do. Unlike a statement language, RLL does not execute each line before moving on to the next rung of the program. RLL stores the commanded state of the coils in the output image table and transfers the contents of the table to the output modules at the end of the program scan. You need to keep an understanding of that operational model in your head as you create your program.

Is there any examples of ladder diagram for this lift problem?

I hope not. This sounds like a student exercise. How much will you learn about PLC programming if you simply copy someone else's work?

Or anybody can give me guidelines to develop the ladder diagram so that the lift is working correctly?

Make a list of your inputs (sensors and pushbuttons) and outputs (motor controls, solenoids, lamps, etc). Write a functional description of the operation of the lift, perhaps in the form of a flowchart. When you completely understand how the lift is supposed to react to changes of state of the inputs, you're ready to begin creating a program to make those actions happen.

If you get stuck, post your work here and ask for advice on how to improve it.
 
Do everything that Steve said!

Then, consider the following... (I just found it to be an interesting point in "relativity".)

Have you ever been on a Ferris Wheel? Have you ever noticed how the operator runs the controls? He does it by "eyeball".

A little forward, a little backward, whatever it takes to align the gondola to the stationary loading platform.

In that case, the platform is the reference point. That is, position adjustments are made relative to the platform. You make the necessary adjustments to bring the Gondolas TO the Platform.

Now... let's switch our frame-of-reference. Instead of bringing the free-moving gondolas to the stationary platform, envision that the gondolas are stationary and the platform is free to move. In this case, you make the necessary adjustments to bring the Platform TO the Gondolas!

You might be able to see that this is kinda like a continuous un-ending elevator. It doesn't suit our purposes. So, open the Wheel and lay it flat. Now, the operator can move the platform from one gondola to another as he SEES fit.

The whole point of this is to get you to SEE how the operator can SEE all of the gondolas and the platform.

So... Let's turn the whole thing on-end and rename it...

The gondolas represent floors in a building. The platform is the elevator. The operator can SEE the whole thing!

The operator can respond as he sees fit according to hand signal that passengers present.

A wave of the hand gets the operators attention, while showing two fingers indicates the desired destination.

Since YOU are the operator, you can see all of the passengers and their signals. In YOUR mind, it's not such a hard thing to handle. You should try to keep the operation effecient. Once you start in one direction (up or down) maintain that direction until there is not a need to maintain that direction. be sure to let the passengers know which way you are going before they get on.

Simple.

Now, put yourself and the controls in a shed with no view of the elevator. What do you need in order to operate?

This is not so simple, but ain't so tough either!
 
For this ladder diagram, I'm using the STL program since I noticed the lift operation works in sequences. Since the lift move up and down all the time, and the door open and close at each level, so I try to use subroutines for each process. I'm creating 3 subroutines for opening/closing lift door at each level and 3 other subroutines for the levels indicators.But I'm having troubles when I'm trying to REUSE/RECALL the same subroutines for other lift situations such as; the lift location is set at level 1, want to go to level 2. When arriving at level 2, want to go back to level 1 again, but the lift got stuck there, can't move to level 1. I've tried to RESET the subroutines, but it still can't work.

below is part of my work.

INPUTS:
X1 - LEVEL 1
X2 - LEVEL 2
X3 - LEVEL 3
M0 – DOWN BUTTON AT LEVEL 3
M1 – UP BUTTON AT LEVEL 2
M2 – DOWN BUTTON AT LEVEL 2
M3 – UP BUTTON AT LEVEL 1
M5 – OPEN DOOR
M6- CLOSE DOOR
M10 – LEVEL 3 BUTTON
M12 – LEVEL 2 BUTTON
M13 – LEVEL 1 BUTTON

OUTPUTS:
Y0 – DOOR AT LEVEL 3 OPEN
Y1 – DOOR AT LEVEL 2 OPEN
Y2 – DOOR AT LEVEL 1 OPEN
Y10 – LEVEL 3 LIGHT INDICATOR ON
Y12 – LEVEL 2 LIGHT INDICATOR ON
Y13 – LEVEL 1 LIGHT INDICATOR ON


SUBROUTINE FOR OPENING DOOR AT LEVEL 1.

|X1|----------------------(Y13)

|Y13|--|M12| -------------[SET S10]
|S10| --------------------(Y2)
|Y2|----------------------(T1 K20)
|T1|----------------------[RESET Y2]
|T1|----------------------[RESET S10]

How to reuse this subroutines, if lift from level 3 and level 2 arrive at level 1, and lift from level 1 want to go other floors? (that's mean this subroutine is used 3 times in the ladder diagram). I've tried resetting everything but still I fail to reuse it.
hopefully you all can help me since I'm still new in PLC programming, thanks alot for your assistants..
 
I have done a lot of STL with mitsubishi but never done a lift. There are some special unique rules with mitsi STL (STL means STep Ladder not Statement LisT) To set the first state You would use eg SET S10, then to go to S20 you would SET S20 within the S10. (S20 will automatically reset without using RST) If you wish to reset the present step you have to do it outside the state logic. (there are other ways but too long to explain here)

You can double coil as long as all the double coils are inside the states, as inactive states are not scanned. Beware though, using the same coil inside states and outside will count as double coiling.
Before programming you have to decide which coils will be in states and which will be outside.

eg

--]X0[----------(Y0)
--]Y0[----------SET S10
-----------------STL S10
--]S10[-----------(Y0)
etc

is not allowed as when X0 is released, Y0 is off but in state S10 Y0 is on.

STL is a great method of programming but it has short-comings and certain things to watch out for. I think it would be a good method for a lift control as long as the states are well thought out.

Off the top of my head something like this

STATE 1; DECIDE WHICH FLOOR TO GO TO
STATE 2; FLOOR 1
STATE 3; FLOOR 2
STATE 4; FLOOR 3

Start in state 1, then depending on which button is pressed set the appropriare state. When the lift has reached the floor, the doors have opened and closed, set STATE 1 again.
 
Dear goody,
I've tried to separate the lift problem into modules using the states..but each time I want to reset the states, it doesn't reset the coils inside the states, for examples:

|S10|----------(T1 K20)
|T1|-----------(Y0)
(Y0)-----------(T2 K10)
|T2|-----------[RST S10]

when I set the S10, output Y10 is activated for time=10 and S10 is reset after the time's up. But when I want to set it again for the second time, the output Y10 is not activated. When i tried the monitor mode, i found out that for the first time run, this logic works but for the next run, the timer, T1 is not resetted to 0 again after it reach 20.
i've tried to reset the timer inside and outside the states, but the timer end up looping itself. Thus the output Y0 is always on. how to reset the whole thing, so that the states can be reuse any time?
 
You are finding out some of the perculiarities of Mitsi STL programing.
Instead of resetting the state, try setting an initial state like the one in my example 'decide which floor to go to'
It is probably better to leave one state always active by using SET to jump around them. (Even if it is a dummy state)
Make sure you do not have the same timers or counters in different states.

Read the FX programming manual about STL. The states S0 to S9 have special functions.
 
lift problem

:cool:

ladyscarlet99

I do not know anything about Mit PLC I use Siemens PLC,

I am form Elevator industries. Hope this can help you

First, Lets decide the floor position as what you done,
Second, use this floor positin and the calling button input to decide the running direction.
Then, when there is a direction , create a closing door signal. when the lift arrival at floor reset the closing door signal and create opening door signal. If you need a lift that park with door close then use a timer for reclosing the door after the door is fully open.

best of luck
 
uuhhumm... Ladyscarlet99,

using the word "lift" i have to assume your from somewhere in the Commenwealth. So you might have to interprete my terminoligy a bit.

Anyway.

3 floors = 4 hall call buttons and 3 car call buttons. You will need 7 inputs for your call buttons. You will also need 7 outputs to light your call buttons showing that a call has been SET.

Generally we count floors. Two sensors (STU & STD) mounted on top of the elevator pass stepping vanes as the elevator moves up or down. The vane is longer than the switches are apart so this will produce a bi-directional signal. The counting vanes are placed so that the up/down count happens between the floors. 3 floors = 2 vanes.

If the elevator is moving up from 1 to answer a call at 2 the counting circuit will also initates a slowdwon (IF floor=2 AND Call=2 then GOTO the slowdown routine).

In the slowdown routine the elevator will stop on another vane placed at the floor level. Two other sensors on the cartop (UL & DL) will stop the elevator at the floor level. For example if the car is stopping in the up direction, UL will come on the vane and set up a stopping circuit; then UL will drop from the top of the vane and the elevator will stop. Incedently if the elevator creeps down a bit due to loading UL will come on agan to push the elevator back up to floor level.

Also after the elevator has initally stopped, (When UL drops) a circuit will initate the doors to open. The doors have limits so the elevator controller knows if the doors are full open, or full closed. As the door opens, the door open limit contact opens and stops the door open cycle. When that happens a timer counts to about 10 seconds, then another circuit will cause the doors to close until the door hits a door closed limit. Please note. On passenger elevators the door power unit is mounted on the elevator car, and a mechanical device called a clutch engages the landing door. The landing doors have no motor.

Back to the buttons:

The elevator call buttons set up a Direction Preference. (Call Above (CA) & Call Below (CB))

For example: IF the elevator is at 1 AND you have a call at 2 THEN you will have a Call Above (CA). CA & CB are interlocked to give the elevator its direction (UP or DOWN). Remember if you have a car at 3,
and a down hall call at 2 you will bypass the down hall call at 2 and go to 3 before reversing direction. We call this collective-sellective operation. You will collect all the UP calls going up, then collect all the DOWN calls going down.

Small low-rise elevators usually only have two speeds (high and low) When initally taking off the elevator will go right into high speed, you will only use low speed to approch a floor or to re-level, but not on initial take off.

Please note: I will not give you actual elevator code for copyright, and liability reasons, However I check this thread and provide further guidence. If you need clarification as what I posted here, please feel free to ask.

Hopefully this will give you a good start on setting up your project.

Have fun! Mike.
 
Last edited:
Finally, after all these years of trying to help students with the infamous 'lift program' assignment, we actually have an in-house authority on elevators available... :cool:

Don't 'advise' yourself out of your current job, Mike!... ;)

Now we just have to find a traffic light programmer... :unsure:

beerchug

-Eric
 
Eric,

20 years ago I got this assingment too. But I had to do it on a Z80 in assembly..My father was an elevator guy also (keep it in the family), but all the help he would offer was to show me the operation of an elevator. So I called one of the techs at home to ask for help. The tech told me that he was warned that I would call, and the answer was NO! (It's that cheating thing). (n)
 
In menu software Mitsubishi , have config compile. Set dont permit doubles outputs

The project elevator : I talk, possible system for 6 levels and one call button level + swicth level

Sometime: 5 inputs + 3 outputs (if necessariy more outputs for doors) It's possible...think
 
Last edited:

Similar Topics

You all were very helpful when i asked about a VFD / dynamic brake problem so i had to ask the forum about this. I understand that this is a plc...
Replies
10
Views
6,383
Hi to all, I¡¦m a student who's given a lift project to do and I need help. This project is concerned with a simple goods lift operating between...
Replies
4
Views
3,598
Has anyone setup communications with Red Lion 3.0 MODBUS to Baker Hughes Centrilift GCS VFD? Thanks
Replies
0
Views
70
I am in the begining stages of a project and I was just looking for some opinions. The gist of the operation is 1-Bricks are pushed down a long...
Replies
18
Views
5,744
Has anyone seen anything remotely like this? Apparently it is a door lock on a lift with some contacts to indicate to a control system. This is on...
Replies
7
Views
2,521
Back
Top Bottom