Delay Timer

AGENTTINFOIL

Member
Join Date
Jul 2005
Location
Louisville, KY
Posts
222
In directsoft how can I use a delay timer to turn a motor off? for example I have a conveyor motor and a blower motor, at start up the blower is delayed from the conveyor by 3 sec to compensate for high startup amperage. Ok now I would like to do kind of the opposite of that when the machine stops I need my conveyor to run for atleast 2 sec so as to allow time for my product to leave the machine. I will post my program if any one would like to see it so maybe you can understand what I am trying to do.
 
We use a delay off to shut down the pump motor on hydrauic elevators. The control valve actually stops the elevator, but for a soft stop the system pressure must be retained untill the valve has compleatly closed and is bypassing. There are two ways of doing this. !) With the PLC timer, or 2)by an actual delay off timer used to piolet the motor starter.

Just to eliminate components from the panel we usually go the PLC timer route, (however there are backups to assure the motor cant run if a contact on the output welds or something like that happens).

The PLC code would look something like this:

run
--||---------------+----------(MOTOR)
MOTOR OFF TMR |
--||-------|\|-----+

RUN
--|\|------------------------[OFF TIMER]
? SEC

 
Thats it!! I was looking last night for the delay timer and I did notice there is not one in directsoft. was not sure how I could do it but now I do. Thanks Tom
 
Look at the actions in positive terms...

Starting the system...

System ON => Run Conveyor

Conveyor Aux ON => Run 3-sec Timer

System ON & 3-sec Timeout => Run Blower

- Process runs -

Stopping the system...

System OFF => Stop Blower

Blower Aux OFF => Run 2-sec Timer

System OFF & 2-sec Timeout => Stop Conveyor

Don't consider code yet...

You have two devices: the conveyor and the blower.

Under what condition(s) will each device run?

The Conveyor begins running whenever the System goes ON, and continues running until the System goes OFF -AND- the Blower has been OFF for 2-sec.

The Blower begins running after the Conveyor has been ON for 3-sec, and continues running until the System goes OFF.


Let's get on the merry-go-round...

"System ON" is a "positive-form" indication.
If "true" then the system is on.
If false then the system is off... NOT ON.

"System OFF" is a "positive-form" indication.
If "true" then the system is off.
If false then the system is on... NOT OFF.

NOT "System ON" is the "negative-form" indication of "System ON".
If NOT "System ON" is "true" then the system is off.
If NOT "System ON" is "false" then the system is on.

If it is true that the system is off... then, the system is NOT on.
System is NOT on.. => NOT "System ON".

If NOT "System ON" is "true" then the system is NOT on... the system is off.

OK... off the merry-go-round...

The point being... "System OFF" is exactly equivalent to NOT "System ON"


The Conveyor begins running whenever System ON, and continues running until the System goes OFF NOT "System ON" -AND- the Blower has been OFF for 2-sec.

The Blower begins running when System ON -AND- after the Conveyor has been ON for 3-sec, and continues running until the System goes OFF NOT "System ON".




Now, let's try some preliminary code...

System
ON
---| |-------------+-----( ) Conveyor
|
Blower |
OFF |
Conveyor 2-sec |
---| |-------|/|---+


Conveyor
System ON
ON 3-sec
---| |-------| |---------( ) Blower



.
Now, when turned on, System ON goes TRUE... the Conveyor runs immediately.
Since the system was off, the Blower has been off for some time(**)...
..."Blower OFF 2-sec" signal is ON...
...however, the Conveyor code is looking for the "Blower OFF 2-sec" to be OFF!
So... when the system is started, the "Blower OFF 2-sec" element in the Conveyor rung is FALSE. This means that, even though the Conveyor is on, it is NOT latched on... at least, not yet. At this point, the Conveyor is ON simply because the System is ON.

(**Note: If the PLC was just turned on... "Blower OFF 2-sec" will be off, thus latching the Conveyor immediately when the system goes on... however, because the Blower is not running at this point, the "Blower OFF 2-sec" signal will go on in 2-seconds. Since the Blower can not run until the Conveyor has been on for 3-seconds... the "Blower OFF 2-sec" signal will be on before the Conveyor starts.)

As soon as the Conveyor begins running, a "Conveyor ON 3-sec" Timer begins running.

When the system first goes on, the Conveyor is off...
...So, the "Conveyor ON 3-sec" signal is OFF...
...so, the Blower can not run until the Conveyor has been on for at least 3-sec...
As soon as the Conveyor has been on for 3-sec, the "Conveyor ON 3-sec" signal goes ON...
... and so, the Blower goes ON.

Now, since the Blower is ON... the "Blower OFF 2-sec" signal goes OFF.
Now the Conveyor is self-latched through the "Blower OFF 2-sec" element.

When the system is turned off... the Blower goes OFF immediately because there is no latching mechanism in place for the Blower.

As soon as the Blower goes off, a "Blower OFF 2-sec" Timer begins running...

At this point, System ON is off, but the Conveyor is self-latched through the "Blower OFF 2-sec" element. The Conveyor continues running while the "Blower OFF 2-sec" signal is off. At the end of 2-seconds, the "Blower OFF 2-sec" signal goes ON, the Conveyor stops.

Let's complete the code... by the way... both timers are On-Delay.

System
ON
---| |-------------+-----( ) Conveyor
|
Blower |
OFF |
Conveyor 2-sec |
---| |-------|/|---+

Conveyor
Aux +-------+
---| |-----+ TIMER +-----( ) Conveyor ON 3-sec
| 3-sec |
+-------+

Conveyor
System ON
ON 3-sec
---| |-------| |---------( ) Blower


Blower
Aux +-------+
---|/|-----+ TIMER +-----( ) Blower OFF 2-sec
| 2-sec |
+-------+


.
 
Last edited:
Ok here is another question. I have been learning more about v registers so I can take my switches out and replace with HMI. I also have been converting m y program from constances to v memory. My question is how do you set the HMI to take the place of inputs or X if you will?
 
You use the HMI to control the state of a control relay. That control relay can then take the place of the input... or, if the real inputs still exist, the "start" control relay is used in parallel with the original START-PB input, and the "stop" control relay is used in series with the original STOP-PB input.

The HMI provides a variety of operational characteristics for a Control Relay:
SET, RESET, TOGGLE, and PULSE ON for X-sec then OFF.

Refer to the manual for the particular HMI to find out how to assign a Control Relay to the particular HMI Button or Screen Element. (They're all different to one degree or another.)
Physical HMI Button assignments are page-relative. That is, when Page-1 is displayed, PB-1 controls CR-A. When Page-2 is displayed, PB-1 controls CR-B.

The code below shows the "START CR" and "STOP CR" configured as PULSE ON.

START STOP STOP
PB PB CR
---| |---+---| |-------|/|-------( ) Run Motor
|
START |
CR |
---| |---+
|
RUN |
MOTOR |
---| |---+


.
When the HMI START-BUTTON is pressed, the START-CR is turned ON for a moment. If the real STOP-PB is NOT pressed then the Motor is started and self-latched through the STOP-PB and STOP-CR. After a moment, the START-CR goes OFF.

Once running, if the STOP-PB is pressed, turning OFF that signal, or if the STOP-CR is activated by the HMI PB, turning ON that signal for a moment... the Motor turns OFF and is unlatched.

Regarding V-Mem... those are used to pass data, variable information, such as timer values, speeds, target positions, etc., to the program.

Initially, the current value of the particular V-mem is displayed. Then, if the particular V-mem is allowed to be changed (as controlled by the HMI set-up, check the manual) then you can select the variable, and then change the value, and then do what is necessary (check the manual) to enter, save, and use the new value.
 
Regarding Constants...

I find that it is better to define constants dynamically rather than using the "CONSTANT" assignment scheme. It is usually the case that the "CONSTANT" assignment requires the PLC to be stopped.

I find it better to use normal code to establish the constant on the first scan.

FIRST +--------------------+
SCAN | Load Data Constant |
---| |-----+ "LDC" |
| V100 = 3000 |
+--------------------+


If you are trying to do an on-line edit to incorporate this constant...

FIRST +--------------------+
SCAN | Load Data Constant |
---| |---+-+ "LDC" +------(RST) LOAD CONSTANTS
| | V100 = 3000 |
| +--------------------+
LOAD |
CONSTANTS|
---| |---+


.
Use a control relay that you can set ON in your current status software. The rung will then, after loading the constant, turn the control relay OFF.
 
Here`s a link to some free software to program Optimate panels.Click Here
OM-WinEdit either version should work. The same company you got your plc from used to sell these panels and may still?? After downloading the software go to help choose index and then read.
It will show you how the HMI can be used with different plc systems and you can actually do what Terry is showing you.
 

Similar Topics

Build error occurs with TON ladder logic command. Time Input expected on block. Using Integer Tag under Control Local, and then hard number 19...
Replies
2
Views
733
Hi there, Quick question, I think I am thinking about this too much. I want to activate a timer for lets say 10 minutes when a contact produces...
Replies
22
Views
4,007
Hello guys, I am currently looking through some examples of how timers work, but this ladder logic diagram gets me really confused. Once I:1/0 is...
Replies
2
Views
1,819
Hey guys So this is one of those things that siemens really does better then AB. Im trying to find a work around for it. I want to use a...
Replies
13
Views
3,021
any hint how i can make a pext or pulse timer using on delay timer in ladder logic. on delay timer is said to be a universal timer, all other...
Replies
4
Views
2,327
Back
Top Bottom