The ProSim
The ProSim
From the Simulations Menu at the top of the screen, Select the Door Simulation.
Take the time to familiarize yourself with the components used in the Door system, and take particular
note of the current state of the limit switches. When the door is in the closed position, both limit switches
are in their activated state (Not Normal). Run your mouse over each switch, and you should see a tool-tip
text box appear, which denotes that the selected switch is wired using a set of Normally Open contacts.
With the door fully closed, what signal level would you expect to see at the limit switch inputs I:1/03 and
I:1/04?
To confirm your assessment of the current limit switch states, place the PLC into the RUN mode which will
initiate scanning. Now open the Data Table display by clicking on the Data Table icon located on the
toolbar (3rd from right) at the top of the screen.
When you have the Data Table showing, select the "Input Table" from the drop down Table list box. You
should now be able to see the current state of each bit associated with input card I:1. You should also
note that bit I:1/02 is also in a High or True state. Use your mouse to press the Stop switch on the Control
Panel a few times, and note the results. Don't continue on with the exercise until you are confident that
you understand the rational of the observed results.
In this exercise the Open and Close pushbuttons will be used to control the movement of the
door. Movement will not be maintained when either switch is released, and therefore the Stop
switch is neither required nor used in this exercise. However, all other available Inputs and
Outputs are employed in this exercise.
Pressing the Open Switch will cause the door to move upwards (open) if not already fully open.
The opening operation will continue as long as the switch is held down. If the switch is released,
or if limit switch LS1 opens, the door movement will halt immediately.
Pressing the Close Switch will cause the door to move down (close) if not already fully closed.
The closing operation will continue as long as the switch is held down. If the switch is released, or
if limit switch LS2 closes, the door movement will halt immediately.
If the Door is already fully opened, Pressing the Open Switch will Not energize the motor.
If the Door is already fully closed, Pressing the Close Switch will Not energize the motor.
Under no circumstance will both motor windings be energized at the same time.
The Open Lamp will be illuminated if the door is in the Fully Open position.
The Shut Lamp will be illuminated if the door is in the Fully Closed position.
It is your responsibility to fully design, document, debug, and test your Program. Avoid the use of OTL or
OTU latching instructions, and make a concerted effort to minimize the number of rungs employed.
Ensure that you have made effective use of both instruction and rung comments to clearly document your
program. All I/O components referenced within your program should be clearly labeled, and rung
comments should be employed to add additional clarity as required.
Door movement will halt immediately when the Stop Switch is initially pressed, and will remain
halted if the switch is released.
Pressing the Open Switch will cause the door to Open if not already fully open. The opening
operation will continue to completion even if the switch is released.
Pressing the Close Switch will cause the door to Close if not already fully shut. The closing
operation will continue to completion even if the Switch is released.
If the Door is already fully opened, Pressing the Open Switch will Not energize the motor.
If the Door is already fully closed, Pressing the Close Switch will Not energize the motor.
Under no circumstance will both motor windings be energized at the same time.
The Ajar Lamp will be illuminated if the door is NOT in either the fully closed or fully opened
position.
The Open Lamp will be illuminated if the door is in the Fully Open position.
The Shut Lamp will be illuminated if the door is in the Fully Closed position.
It is your responsibility to fully design, document, debug, and test your Program. Avoid the use of OTL or
OTU latching instructions, and make a concerted effort to minimize the number of rungs employed.
As before, ensure that you have made effective use of both instruction and rung comments to clearly
document your program.
If the Door is fully open, the Open lamp will be energized but not flashing as was the case before.
If the Door is opening, the Open lamp will flash while the door is in motion.
If the Door is fully closed, the Shut lamp will be energized but not flashing as was the case
before.
If the Door is closing, the Shut lamp will flash while the door is in motion.
The Ajar Lamp will flash if the door is stationary, and is not in the fully open or fully closed
position. The Ajar Lamp will flash at a slower rate (1/4) then the other lamps.
The Ajar Lamp will be illuminated in a steady state if the door is in motion.
As before, ensure that you have made effective use of both instruction and rung comments to clearly
document your program.
In this exercise we want you to add one final touch which will possibly extend the life of the door
hardware. Starting and stopping the door motion obviously puts a strain on the door hardware, but
reversing the direction of the door without giving it a chance to fully stop causes an even greater strain.
We want you to modify your program to prevent the possibility of immediate reversal. As we don't need
much of a delay, the following additional criteria should suffice:
If the door is currently opening, pressing the Close Switch will immediately halt movement. Door
movement will remain halted when the switch is released.
If the door is currently closing, pressing the Open Switch will immediately halt movement. Door
movement will remain halted when the switch is released.
Once movement is halted, and all push buttons have been released, then door motion in either
direction can once again be initiated by pressing the appropriate Open or Close button.
The utilization of Binary or Integer Table bits to Flag specific conditions within your program would
be appropriate. Also, the retentive OTL and OTU instructions may be utilized freely at your
discretion.
Hint: If you review the foregoing criteria carefully, you should note the the motor should only be permitted
to start after a specific set of conditions have been met. The conditions being that the motor is stopped,
and all switches are released.. Since this same set of conditions will apply to both the door opening, and
door closing operations, this may be the ideal time to use flagging.... By flagging, I mean that you will use
a bit in the PLC memory (such as B3:0/0) to indicate that a specific condition, or set of conditions exist.
Example: You might add a new rung to the beginning of your program, and insert instructions to test that
the motor is stopped, and all switches are released... Latch bit B3:0/0 True (ON) if so, and name it
something like "Ready-To-Start".... Now you can add an XIC instruction addressed to this "Ready-ToStart" bit to both your existing Motor UP, and Motor Down control rungs, and this will confirm that the
motor may be started.. Of course you will need to unlatch the "Ready-To-Start bit once the motor is
started.
BTW: Almost any unused bit may be used as a flag, but since RSLogix has set aside the B3: memory
area, and this memory area displays in binary format by default, it's commonly used for this purpose..
N7:1/12 would work however, but the N7 area is normally used as place for storing integers as this
memory area is displayed in decimal by default... Additionally, it is sometimes possible to use an Operator
Panel lamp as flag if the conditions suit.
The above truth table may offend one's sense of logic, and many might argue that it would be worthwhile
to rewire the upper limit switch so that it is N.C. rather then N.O. The result would be that this switched
input would then go True rather then False when the position it is detecting (door open) is reached. This
in-turn should make one's final program easier to read, understand, and even troubleshoot.
Upper Limit switch rewired N.C., Lower limit switch wired N.O. resulting in:
Upper limit switch (door open) goes True(1) when Door reaches the fully open position.
Lower limit switch (door closed) goes True(1) when door reaches the fully closed position.
Sensible!....But!.....
Although rewiring the upper switch to N.C. does appear to make greater "logical" sense, it may actually
result in an inferior installation. Rewiring one of the limit switches may still be worthwhile, but it's the lower
limit switch that we should be concerned with.
Upper Limit switch wired N.O., Lower limit switch rewired N.C. resulting in:
Upper limit switch (door open) goes False(0) when Door reaches the fully open position.
Lower limit switch (door closed) goes False(0) when door reaches the fully closed position.
Task> Explain why this last rewiring option should result in a safer, more fault tolerant installation.
Hint: All types of control circuits should ideally be designed to be fail-safe. In electrical circuits we must
take into account how our installation will react to common electrical faults (short or open) and determine
whether the resulting action is the This is of particular concern in Motor Control Stop circuits Which
common electrical fault (short or open) is the more likely to go un-noticed, and how should this influence
our selection of switch type (N.O. or N.C.) when designing/wiring Motor Control Stop Circuits?
The sequence can be stopped and re-started at any time using the panel mounted Stop and Start
switches.
The RUN light will remain energized as long as the system is operating automatically.
The RUN light, Conveyor Motor and Solenoid will de-energize whenever the system is halted via
the STOP switch.
The FULL light will energize when the box is full and will remain that way until the box has moved
clear of the prox-sensor.
Stop the conveyor when the right edge of the box is first sensed by the prox-sensor.
With the box in position and the conveyor stopped, open the solenoid valve and allow the box to
fill. Filling should stop when the Level sensor goes true.
The FULL light will energize when the box is full and will remain that way until the box has moved
clear of the prox-sensor.
Once the box is full, momentarily pressing the Start Switch will move the box off the conveyor and
bring a new box into position. Forcing the operator to hold the Start button down until the box
clears the prox-sensor is not acceptable.
When the selector switch is in position "A", the system shall operate in the "Continuous" mode of
operation. This is the mode of operation which was used in Exercise #1.
When the selector switch is in position "B", the system shall operate in the "Manual Restart"
mode of operation. This is the mode of operation which was used in Exercise #2.
When the selector switch is in position "C", the system shall operate in the "Fill Bypass" mode of
operation. In this mode, the boxes will simply move down the conveyor continuously and bypass
the fill operation. As in the other modes, the Start and Stop pushbuttons will control the conveyor
motion and the Run Lamp will operate as expected.
Using your knowledge of cascading timers, develop a ladder logic program which will sequence a set of
green, amber and red lights in the following manner:
Sequence of Operation:
1. Light O:2/00 (Red) = 12 seconds ON
2. Light O:2/02 (Green) = 8 seconds ON
3. Light O:2/01 (Amber) = 4 seconds ON
4. The sequence now repeats with Red = ON.
RED
GREEN
AMBER
12 Sec.
8 Sec.
4 Sec.
Red = O:2/00
Green = O:2/02
Green = O:2/06
Amber = O:2/05
8 Sec.
4 Sec.
Amber = O:2/01
Red = O:2/04
8 Sec.
4 Sec.
Amber = O:2/05
8 sec.
4 sec.
Green = O:2/02
Amber = O:2/01
Red = O:2/04
1s
8 sec.
4 sec.
1s
Using your knowledge of PLC counters, design a program to meet the following requirements:
o
When the Start switch (I:1/0) is pressed, pump P1 will be energized and the tank will start
to fill. The pulses generated by Flowmeter 1 should be used to increment a counter.
When the count reaches a value where the tank is approximately 90% full, the pump is to
be shut-off and and the control panels FULL light is to be energized.
While testing, utilize the "Reset Simulation" and the "Reset Timers and Counters" entries
in the Simulations menu to re-start your program.
To make it a little easier to see what is happening with the counter, you might want to add the
following rung to the end of your program.
If correctly entered, the TOD (To BCD) instruction will take the integer value in the counters
accumulator, convert it to Binary Coded Decimal, and then move (copy) this BCD value to the
control panel LED display (O:4). The TOD instruction can be located in the Compute/Math group
of instructions in the Edit Panel. Be sure to alter the Source entry to match the counter number
you are using.
The mixer will run for 8 seconds once the tank is full.
When the mixing is complete, drain pump P3 is to be started and the tank is to be
drained. Flowmeter 3 will be employed to decrement the existing counter, and draining
will be allowed to continue till the counters accumulator reaches zero.
Once the tank is empty again, pressing the Start switch will cause the sequence to
repeat.
Ensure that the RUN light is energized when the mixer or either pump is running.
The STANDBY light should light and the process should halt when the Stop button is
pressed.
The process should restart where it left off if the the Start button is pressed following a
Stop.