LD UDFB Guided Learning Q05: – Difference Between Edge-Triggered and Level-Sensitive UDFB

This article is part of a guided learning series on building and analyzing User-Defined Function Blocks (UDFBs).

:pushpin: Canonical Article: Building a User-Defined Function Block (UDFB) Using Siemens TIA Portal
:blue_book: Learning Companion (Q&A): Explore All Questions

You are reading: Question 5

What is the difference between an edge-triggered and a level-sensitive UDFB?

Answer

For learners who completed digital logic, this is like the difference between an edge-triggered flip flop and a transparent latch.

Edge sensitive

The edge sensitive UDFB is typically activated by a rising edge of a signal. This trigger signal may be long or as short as a one-shot (high for one program scan). With regards to UDFB naming conventions this input signal is given the descriptive name xtrigger and is often accompanied by an xAbort signal. The UDFB will often include a xDone indicating that the UDFB has completed its mission.

Level-sensitive

The level-sensitive UDFB has simpler construction. The UDFB has an enable signal that controls the block. The block will typically run while the enable line is TRUE. It will stop when it is FALSE. An xValid output is typically included to indicate that the block has transitioned into the associated state. This output was included in the featured program to indicate that the motor star had transitioned. This reflects the real world where it takes time for the motor starter contactor’s armature to change position.

Tech Tip: A disabled level-sensitive UDFB does not imply that the outputs will be zero. Recall that the UDFB has static memory that will hold value unless explicitly cleared by the programmer.

:writing_hand: Article by Aaron Dahlen, LCDR USCG (Ret.), Application Engineer at DigiKey