====Timer Node==== This node acts as a //timer//. It's often used to give your measurements time to stabilise after a change in how your machinery is operating. This node is used in all [[analytic_modules|modules]] and is one of the [[folder_timing|timing nodes]]. {{timing_timer.png}} The way this node operates has a lot to do with its options - a more detailed explaination of how you can use Timer nodes is shown further below. ===Inputs=== **Run (Input #1)** is a //boolean// value that is used to start the timer. It's behaviour is changed by the //activation// option. \\ **Reset (Input #2)** is a //boolean// that is used to reset/stop the timer. ===Outputs=== **Finished (Output #1)** is **true** if the time chosen in the **seconds** option has elapsed.\\ **Counting (Output #2)** is **true** if the timer has //started//, but not yet //elapsed//. ===Options=== **Seconds** determines how many seconds the timer should run for before the ''Finished" output turns on. ----- **Activation** determines how the clock is started. If Activation is //Instant//, the 'run' input needs to remain **true** for the entire amount of time. If the option is //Latched//, the input only needs to be on for a moment - the timer will continue to count even if the run input them drops back to **false**. ----- **Reset** determines how the timer is reset back to its starting state, ready to count down again. If Reset is //manual//, the **Finished** output will remain on until the **Reset** input is triggered. If the mode is //auto//, the **Finished** output will only be true for one second, after which the timer will automatically reset. Note that timers are **cumulative until reset**, which means that if you have a 10 second timer and do the following... * Turn 'run' on for 4 seconds * Turn 'run' off for 1 minute * Turn 'run' on back on Then the timer will trigger //six seconds after you turn it back on//, unless you've told it to reset. This is because it already counted the 4 seconds from the earlier, cancelled attempt. An easy way to ensure you could 10 seconds every time is to connect the **reset** input to the [[logic_not|Not]] of the **run** input. ===Examples=== {{timer_badfortime.png}} This logic will trigger something if the //Paint Line Actual Speed// has been different from the //Paint Line Target Speed// for more than 10 seconds. {{pivot_ignore_timing.png}} This logic will ignore events that happen in the ten seconds after //the thickness of the product changes//. {{timer_badbatch.png}} This logic will flag any batches you've produced where the //actual line speed// and the //target line speed// were different for more than 10 seconds in total.