Timers library

Block DayOfWeek

License: Hobby, Industrial

This block has a digital output for every day of week. For example, the output Monday gets high level every Monday, between 0.0h and 23.59h. The output WorkDay is at high level for days between Monday and Friday, output WeekEnd is at high level at Saturday and Sunday. The block has no parameters.

 

Block TimeInterval

License: Hobby, Industrial

 

Describes time intervals, during which the output of the block to be at a high level.

Parameters:

Examples:

8:20..16:10 - output will be at a high level the in period 8.20 h to 16.10h every day;

22:00..6:00 - output will be at high level in period 22.00h of the first day until 6.00 h on the next day. This will happen every day;

 

 

Block TimeOut

License: Hobby, Industrial

The block is widely used in charts when a digital signal needs to be delayed or to turn on a device for a certain time.

Block's parameters:

Block's inputs:

Block's outputs:

Block TimeOutExt

License: Hobby, Industrial

The block is similar to the Timetable block, but has extended features.

Block's parameters:

 

Block's inputs:

Block's outputs:

 

Block DelaySignal

License: Hobby, Industrial

The block allows the input digital signal In to be delayed. The delay duration is specified in the parameter TimeOut. Time can be seconds, minutes, hours, determined by the parameter TypeTimeOut. TypeDelay parameter defines the front of the delay. Can be rising front - DelayOn, back front DelayOff, on both fronts DelayBoth. The input Clear stops the timeout process and clears to low level the output Out.

For example, if TimeOut parameter is 3, TypeTimeOut is seconds, TypeDelay is DelayOn, then 3 seconds after the input signal In become to hight level, the output Out will become to hight level too.

Block's Parameters:

 Block's inputs:

Block's outputs:

Example:

 Demo diagram: DelaySignal.nsm

 

Block SequenceTimer

License: Hobby, Industrial

With this block we can add many timers that work in sequence one after the other. For each timer can be set - delay and run times. When the sequence is started, all the timer's outputs are in a low level. The block first waits to expire the delay time of the first timer. Then begins runing time of first timer and it's output becomes to a high level. The first timer is then turned off and the second timer starts - first time delay, then running time, etc.

Block's parameters:

Every added timer to the Settings grid has the next elements:

Block's inputs:

Block's outputs:

 

Block SequenceGroupedTimer

License: Industrial

With this block we can add many group of timers, every group works in separate sequence. The timers in one group work in sequence one after the other. For each timer can be set - delay and run times. When the sequence of the group is started, all the timer's outputs are in a low level. First expired the delay time (TimeOff) of the first timer of the group. Then begins runing time (TimeOn) of the first timer of the group and it's output becomes to a high level. The first timer is then turned off and the second timer from the group starts - first TimeOff, then running time - TimeOn, etc. All the groups of timers are independent and there is influence between them.

Block's parameters:

When the button Add Group is pressed, a new interface is shown with Group name and Number of timers in the group. When the group is created (new row added to the grid), three timer columns will appear for each timer in the group: Timer(Name of the timer), TimeOff, TimeOn. Every column can be edited. Columns of the grid are:

For every timer from the sequence there will be three columns in the grid:

Block's inputs/outputs created for every Group of timers:
For example, if the Group name is Group1, new digital inputs/outputs will be created:

Block's inputs:

 

Block TimeOutMiliSec

License: Hobby, Industrial

The block is used for time periods with big accuracy.

Block's parameters:

Block's inputs:

Block MultiTimeOutMilliSec

License: Hobby, Industrial

If we have a large number of timers that need to work sequentially, they can be described in a database that can be loaded, for example, by an excel document. For this purpose, in one of the columns of the Excel Document on each row, we set the time of every timer. The loaded Excel document is submitted as a DataSet to the input InDataSet of the block MultiSimeOutMilliSec. The time of every timer is in Milliseconds.

Block's parameters:

Block's inputs: