most efficient/simple RSLogix variable pulse length

hunterdg

Member
Join Date
Feb 2019
Location
Oklahoma
Posts
6
Hello,
I have a modicon background where there is a "Pulse" function that accepts an input for the deisred pulse time length.

I effectively want to initiate a 5 second pulse (not ONS every 5 seconds). In modicon I'd just assign t#5s to the pulse instruction and whenever the "Enable" bit is set (or triggered with a ONS), the output is a one-time 5-second pulse.

I'm struggling to find the simplest way to do this in L5K.

for the moment I have the following but it seems unnecessarily complex. Is there a simpler way?

BST XIC Enable NXB XIC Timer.TT BND TON Timer ? ? XIC Timer.TT OTE Pulse
 
Last edited:
XIC Enable ONS Ons_00 TOF Timer 5000 0

XIC Timer.DN OTE Pulse



The above is what I usually put. I would use the Timer.DN in the code rather than have the extra line. I think the error on this is one or two scan cycles.
 
I wonder how that Modicon Pulse instruction behaves when the enable input turns off and then back on again while the pulse output is on. Ignore any overlapped enables? Extend the pulse by the base duration?
 
XIC Enable ONS Ons_00 TOF Timer 5000 0

XIC Timer.DN OTE Pulse



The above is what I usually put. I would use the Timer.DN in the code rather than have the extra line. I think the error on this is one or two scan cycles.

Thanks for this. Interesting that the pulse can be extended if the Enable is toggled while timer is timing.
 
I wonder how that Modicon Pulse instruction behaves when the enable input turns off and then back on again while the pulse output is on. Ignore any overlapped enables? Extend the pulse by the base duration?

Good question. I assume it limits the pulse to the initial duration (most conservative action i'm guessing). But I'll have to check.
 
I just looked up the TP instruction in the unity pro standard block library document number 33002519.01.

It does indeed ignore any subsequent rising edges of the input signal once it has started timing.

Can you think of a situation where you would prefer the TP to the ONS-TOF?
 
I just looked up the TP instruction in the unity pro standard block library document number 33002519.01.

It does indeed ignore any subsequent rising edges of the input signal once it has started timing.

Can you think of a situation where you would prefer the TP to the ONS-TOF?

Well I started with/am most familar with Modicon, so I'd say I prefer it in every scenario - fewer instructions the better IMO. I'll use a TON/TOF if I NEED one.

I've learned there's lots to love about Modicon (Function Block) now that i've dug in hard to RSlogix.
 
...
Can you think of a situation where you would prefer the TP to the ONS-TOF?

One type of application where the TP-style would be more appropriate is where the digital output pulse duration is critical for machine or process control, and the enable signal is unreliable. An example is the start signal for a metering pump that dispenses a volume of liquid proportional to the output pulse. Say that the start signal comes from a push button on an HMI. If an operator can tap that button multiple times to start the dosing operation, the controller should only react to the first button push, and not extend the dose time when the operator repeatedly taps the button. I watch people do this all the time (tap-tap-tap-tap...), especially with HMI push buttons.

When the pulse duration is less critical, such as to activate a visual indicator, it might not matter, or may be desirable to extend the pulse based on the last input signal.
 

Similar Topics

i want a pc based HMI which shall be easy to configure and efficient. the PLC is SIEMENS s7-300. i have tried SIMATIC WINCC 08 but am not...
Replies
3
Views
3,403
Hello, I have to deal with iFix again and am looking at the most efficient way to create alarms to display in iFix, i.e. not creating an...
Replies
0
Views
138
Hey all, I'm doing a more standardize version of one of my programs and organizing things into UDTs and whatever else I can do to shrink the...
Replies
0
Views
409
Hello All, I’m working on a project that requires filling/discharging from 30 batch tanks that are the exact same. Simplifying things some here...
Replies
7
Views
1,848
RSLogix5000 I have an application where I would like to be able to ADD the values of multiple arrays, or even "all" the arrays, in a given data...
Replies
11
Views
4,027
Back
Top Bottom