Routine Logic Blocks

Routine Logic Blocks

Read Blocks

Read blocks are how you bring in point data into your FDD Routine or FTT Workflow.

Field

To assign a field to one of these blocks, click inside the "Field" input box and you will be presented with a dialog box where you can make a selection.  Points/fields available are scoped based on the entities you choose, so if you are not seeing a point you need, make sure that the entities selected contain that field.

Name

This is a free-form input where you can assign whatever name to this block you want. It is recommended, for easy reference, to set the name similar to the point name.

Primary or Supporting

For any FDD Routine, it can have only have one Read block designated as the primary reference point ("Master").  What this means is when an event is generated for this routine, it  will use that point as the reference to other modules within KODE OS.  All other points that are not the primary, are supporting points ("Slave").

Read Arrays

What is a "Read Array"?

Within a device, it is possible to have two distinct fields/points that are of the same name.  In these cases, the field/point should be appended using an identifying number.  As a status of that field is an aggregate of these number-appended ones, FDD will identify their array potential and allow you to select that type.  


For example if you have two stages of compressor, determining if a compressor is running would look at both of these points and check if either of them was true. With arrays, instead of bringing both points into the routine to evaluate, you only have to bring in one read [array] block. This simplifies, not only the routine itself, but also the need to cover all variations of multiple stage compressors within a single routine.


Parameter Blocks

Parameters

Parameter blocks are a convenient way to customize parameters for projects used in workflows without having to edit the workflow itself. Values in parameter blocks are available when configuring a job using the workflow.

Input Fields

Name

When assigning this block its name, it's recommended to use a human readable name that can be understood by anybody. Doing this will help minimize confusion when accessed later to troubleshoot or understand the intent.

Hint

This field is a sting input that will appear when the information icon is hovered over when setting parameters. You are encouraged to use as many words as necessary to make sure the intent of the parameter is properly communicated.

Value

Aside from a few exceptions, every parameter assigned within a workflow will have a default value associated with it. When you edit the parameters when setting up a job, you are altering this input to the algorithm.


How do you edit parameters?

  • Please check out this Knowledge Base Article.

Block Details

Arithmetical Blocks

Arithmetical

Use these blocks to perform mathematical operations on numbers set as inputs.

Array Operation Blocks

Although not always the most obvious choice, array operations can be very useful. Use these to perform operations across a series of data from the same source.


Examples of usage:

  • "Tell me the difference between the highest and lowest values over a 5 min period."

    • Read Number -> Buffer Time (5min) -> Array Sort (Ascending) -> Array Delta

  • "Perform a 15min rolled up average of this data"

    • Read Number -> Buffer Time (15min) -> Array Mean

Block Details

Conditional & Switch Blocks

These blocks are used to direct next steps based on input data.

Conditional

Switches

Logical & Comparison Blocks

Logical

Timing & Buffering Blocks

Timing

Buffering

Alarm Blocks

Alarming

Every FDD must include and end in an Alarm Trigger. When the input is true, an event is generated.



    • Related Articles

    • Workflow Logic Blocks

      Write Blocks Write Blocks are how you can write (override) a point's value. A write action must be triggered by another block. Read Blocks Read blocks are how you bring in point data into your FDD Routine or FTT Workflow. Field To assign a field to ...
    • Routines Page

      KODE gives you a pre-configured library of FDD Routines that you can use to configure your own systems more quickly and easily eliminates the need to create new routines from scratch. To meet your use cases, the FDD Routines page allows you to view ...
    • FDD User Manual

      Understanding Fault Detection & Diagnostics What is a Fault? A fault is a period of time in which a specified condition is true on a specific device. For example, this is a fault: @8:00am AHU-1 Could not maintain discharge temperature within setpoint ...
    • FDD Batch Configuration

      The goal of FDD configuration is to establish monitoring and alarms on any of the integrated pieces of equipment to determine a system fault. Follow the below steps to configure FDDs of your choice. Go to KDOE OS and select a site. Navigate to the ...
    • FDD on Mobile App

      Introduction Fault Detection and Diagnostics (FDD) is a proactive approach for identifying and analyzing system failures or faults within a building's infrastructure at their earliest stages. Navigate through FDD Log into the Mobile App and you’ll ...