+ All Categories
Home > Documents > © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B...

© 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B...

Date post: 29-Dec-2015
Category:
Upload: giles-bridges
View: 221 times
Download: 4 times
Share this document with a friend
34
© 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008
Transcript
Page 1: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

© 2007 Eaton Corporation. All rights reserved.

Foreseer® Derived Channels

FE Level II, Rev. B June 17, 2008

Page 2: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Derived Channels - Agenda

• Derived Channels – What and Why• Transfer Equation Variables• Transfer Equation Functions• Working with bits• Control Functions• Transfer Equation Samples• Exercise

Page 3: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Derived Channels – What and Why

• Ability to apply any mathematical or logical equation to a combination of channels or data

• Run Time Hours – From On/Off Status• Total Flow – From GPM• Rate of Change Alarms• Generator Run Time Remaining – From Fuel Monitoring• kWh, Peak Demand – From kW• UPS, PDU, Generator, etc. % Capacity or Power Density – From kVA or

kW

DATA INFORMATION KNOWLEDGE

Page 4: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Variables

Variables

Variables are used to hold a value within a transfer equationThey can be descriptive in name and be used to make an equation easier to read such as:

on = 1;off = 0;

Or they can contain the results of an equation such as:total_current = [phase a] + [phase b] + [phase c];

Variables can be declared 3 different ways dependent on the scope of their use.

• Local Variables: Created by assignment, local to channel they are declared in only

x = 3; // creates a variable ‘x’ and assigns it the value of 3

• Global Variables: Created by assignment, must be declared in each channel where used, set to assigned value each time the server is launched.global my_global_var = 30; // creates a variable ‘my_global_var’ and assigns it the value of 30 on every server boot.global my_global_var; // declares the variable ‘my_global_var’ for use in designated channel.

• Persistent Global Variables: Created by assignment, must be declared in each channel where used, set to last calculated value each time the server is launched.persistent global my_persistent_var = 30; // creates a variable ‘my_persistent_var’ and initializes it the value of 30 one time only. persistent global my_persistent_var; // declares the variable ‘my_persistent_var’ for use in designated channel.

Page 5: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Functionsif, else

Function: ‘if’, ‘else’

Description: Conditionals

Example:if( voltage < 450 )

alarm = true;

else

alarm = false:

Note: ‘else’ is optional

Page 6: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsNormal Math / Math Operators

• Function: ‘+’, ‘-‘, ‘*’, ‘/’Description: Normal MathExample:

x = 2 + 2; (result 4)x = 12 – 2; (result 10)x = 3 * 2; (result 6)x = 22 / 2; (result 11)

• Function: ‘+=’, ‘-=’, ‘*=’, ‘/=’Description: Math OperatorExample: (assumes x = 3 prior to equation)

x += 2; shorthand for ‘x = x + 2;’ (result 5)x -= 2; shorthand for ‘x = x - 2;’ (result 1)x *= 2; shorthand for ‘x = x * 2;’ (result 6)x /= 2; shorthand for ‘x = x / 2;’ (result 1.5)

Page 7: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsLogical OR, Logical AND

• Function: ‘||’Description: Logical ORExample:

x = true || false (result true)x = false || false (result false)

x = true || true (result true)

• Function: ‘&&’Description: Logical ANDExample:

x = true && false (result false)x = false && false (result false)x = true && true (result true)

Page 8: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsComparisons

• Function: ‘>’, ‘<’, ‘>=’, ‘<=’, ‘==’, ‘!=’

Description: Comparison

Example:

x = 2 > 1; (result 1 or true, greater than)

x = 2 < 1; (result 0 or false, less than)

x = 2 >= 1; (result 1 or true, greater than or equal to)

x = 2 <= 1; (result 0 or false, less than or equal to)

x = 2 = = 1; (result 0 or false, equal to)

x = 2 != 1; (result 1 or true, not equal to)

Page 9: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsIncrement, Decrement, Logical NOT

• Function: ‘++’, ‘--‘Description: Increment, DecrementExample: (assumes x = 3 prior to equation)

x++ (result 4)x -- (result 2)

• Function: ‘!‘Description: Logical NotExample:

x = !false (result true)x = !true (result false)

Page 10: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsModulus

• Function: ‘%’

Description: Modulus (remainder of a division)

Example:

x = 45%8 (result 5)

x = 40%8 (result 0)

• Function: ‘%=’

Description: Modulus applied to left value using right value

Example: (assumes x = 45 prior to equation)

x %= 8 shorthand for ‘x = x%8;’ (result 5)

x %= 9 shorthand for ‘x = x%9;’ (result 0)

Page 11: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsInteger, Absolute Value

• Function: ‘int’

Description: Integer (Truncation)

Example:

int(2.35) (result 2)

int(2.98) (result 2)

• Function: ‘abs’

Description: Absolute Value

Example:

abs(2.35) (result 2.35)

abs(-2.35) (result 2.35)

Page 12: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsChannel Color Checks

• Function: ‘red(chan)’Description: Tests for the critical alarm condition of a channelExample:

red([\\Local\Derived Channels\Alarm Test Channel])Note: If the channel is in a red alarm (critical) or red alarm-acknowledged state this function will return true

• Function: ‘yellow(chan)’Description – Tests for the cautionary alarm condition of a channelExample:

yellow([\\Local\Derived Channels\Alarm Test Channel])Note: If the channel is in a yellow alarm (cautionary) or yellow alarm-acknowledged state this function will return true

• Function: ‘blue(chan)’Description – Tests for the acknowledged condition of a channelExample:

blue([\\Local\Derived Channels\Alarm Test Channel])Note: The result will be true only when the channel is in a blue-acknowledged state.

• Function: ‘green(chan)’Description: Tests for the normal condition of a channelExample:

green([\\Local\Derived Channels\Alarm Test Channel])Note: The result will be true only when the channel is in a green-normal state. If it’s disarmed or disabled or no-value the result will be

false.

Page 13: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsDevice Color Checks

• Function: ‘red(device)’Description: Tests for the critical alarm condition of any channel within a deviceExample:

red([\\Local\Liebert AC 1])Note: If any channel in the device is in a red alarm (critical) this function will return true. Unlike the color check for a channel this function will only return true when the alarm is red, once acknowledged or disarmed it will change to false.

• Function: ‘yellow(device)’Description: Tests for the cautionary alarm condition of any channel within a deviceExample:

yellow([\\Local\Liebert AC 1])Note: If any channel in the device is in a yellow alarm (cautionary) this function will return true. Unlike the color check for a channel this function will only return true when the alarm is yellow, once acknowledged or disarmed it will change to false.

• Function: ‘blue(device)’Description: Tests for the acknowledged alarm condition of any channel within a deviceExample:

blue([\\Local\Liebert AC 1])Note: If any channel in the device is in a Blue acknowledged state this function will return true.

• Function: ‘green(device)’Description: Tests for the normal condition of all channels within a deviceExample:

green([\\Local\Liebert AC 1])Note: If all channels in the device are in a green, cyan, purple or grey state this function will return true. Unlike the color check for a channel this function will return true when there are no channels in an alarm or acknowledged state.

Page 14: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsChannel Color Counts

• Function: ‘red_count’Description: Returns number of channels in critical alarm for the entire serverExample:

red_count()

• Function: ‘yellow_count’Description: Returns number of channels in cautionary alarm for the entire serverExample:

yellow_count()

• Function: ‘blue_count’Description: Returns number of channels acknowledged for the entire serverExample:

blue_count()

• Function: ‘green_count’Description: Returns number of channels in normal state for the entire serverExample:

green_count()

Page 15: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Functionsprev and pulse

• Function: ‘prev(chan)’

Description: returns the value of a channel from the previous scan

Example:

prev([\\Local\Liebert System 3 AC\Temperature High])

• Function: ‘pulse(n)’Description: pulses, goes true for one scan every n minutes

Example:

pulse(15)

Page 16: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Functionsmin and max

• Function: ‘min( [chan], reset )’

Description: returns the minimum value of a channel with reset

Example:

min([\\Local\Liebert System 3 AC\Humidity], monthly_reset)

Note: monthly_reset can be a variable or channel

• Function: ‘max( [chan], reset )’Description: returns the maximum value of a channel with reset

Example:

max([\\Local\Power Meter\kW], pulse(15))

Page 17: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Functionsintegrate and random

• Function: ‘intg([chan], reset)’

Description: integrates the channel (or variable) value with reset

Example:

intg([\\Local\Generator 1\Running], false) / 60

Note: This example would provide a run time for Generator 1 in hours with no reset.

• Function: ‘rand(min, max)’

Description: generates a random number between the value of min and max

Example:

rand(68, 70)

Page 18: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Functionsrtime

• Function: ‘rtime(n)’Description: Date and time values for ‘n’ =

0 - Century (19, 20) 1 - Year (00…99) 2 - Year (1980… 2038) 3 - Month (1…12) 4 - Day of Month (1…31) 5 - Day of Year (1…366) 6 - Hour (0…23) 7 - Minute (0…59) 8 - Second (0…59) 9 - Days since 1/1/197010 - Hours since 1/1/197011 - Minutes since 1/1/197012 - Day of Week (1…7)

Example:x = rtime(2);

Note: This example would set the variable ‘x’ to a value of 2006 (today’s date is 9/12/2006).

Page 19: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsRate of Change

• Function: ‘roc([chan])’

Description: rate of change over a minute, calculated per second

Example:

roc(rtime(8)); (result = 60)

roc(rtime(8)/2); (result = 30)

Page 20: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsPercent Difference

• Function: ‘absoluteDifference(value1, value2, deltamin)’Description: computes the percent absolute difference between the two values.Example:

x = absoluteDifference( 8, 10, 0.01); (result for x would be 25.00%)y = absoluteDifference(10, 8, 0.01); (result for x would be 20.00%)

Note: This function returns the absolute value of the delta divided by value1 times 100.

• Function: ‘relativeDifference(value1, value2, deltamin)’Description: computes the percent relative difference between the two values.Example:

x = relativeDifference( 8, 10, 0.01); (result for x would be 22.22%)y = relativeDifference(10, 8, 0.01); (result for x would be 22.22%)

Note: This function returns the absolute value of the delta divided by the average of value1 and value2 times 100.

Page 21: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Functionshotkey functions

• Function: ‘hotkeyBool(n)’Description: Allows for Foreseer Server keyboard boolean input to a transfer equation.Example:

hotkeyBool(1); (value toggles between 0 and 1 when <ctrl>1 is pressed on the keyboard)Note: ‘n’ can be 0-9 to represent the numerical keys on a keyboard, used in conjunction with <ctrl>.

• Function: ‘hotkeyAna(n)’Description: Allows for Foreseer Server keyboard numerical input to a transfer equation.Example:

hotkeyAna(1); (user is prompted to enter a value when <alt>1 is pressed on the keyboard)Note: ‘n’ can be 0-9 to represent the numerical keys on a keyboard, used in conjunction with <alt>.

Prompt from pressing <alt>n

Page 22: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Functionsarchive

• Function: ‘archivePoint([chan])’Description: Forces a digital point to archiveExample:

if( pulse(60) ) archivePoint([\\Local\Generator 1\Running])

Note: This example would force an archive of this point only once per hour.

• Function: ‘archiveDevice([device])’Description: Forces an archive for all digital points of a deviceExample:

if( pulse(300) ) archivePoint([\\Local\Generator 1])

Note: This example would force an archive of all digital points for this device once every 5 hours.

• Function: ‘archiveAll()’Description: Forces an archive for all digital points of a server.Example:

if( (rtime(6)= =0) && (rtime(7)= =0) && pulse(1) ) archiveAll()

Note: This example would force an archive of all digital points once per day at midnight, the pulse(1) holds reset true for one scan rather than one minute.

Page 23: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Functionsdisable/enable device

• Function: ‘disableDevice([device])’, ‘enableDevice([device])’

Description: Disables or Enables a Foreseer Device.

Example:

if( [\\Local\JCI\AC 1 Control] = = off )

disableDevice([\\Local\AC 1]);

else

enableDevice([\\Local\AC 1]);

Note: This example would disable the device as long as the control system has it turned off.

Page 24: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation Functionsdisarm/rearm device

• Function: ‘disarmDevice([device])’, ‘rearmDevice([device])’Description: Disarms or Rearms a Foreseer Device.Example:

if( [\\Local\Generator 1\Voltage Phase A-B] < 400 ) disarmDevice([\\Local\Generator 1]);

else rearmDevice([\\Local\Generator 1]);

Note: This example would disarm the generator as long as the generator is not running. The device would still be monitored and data would continue to archive.

Page 25: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsHandling Channel No Value states

• Function: ‘handleNoValue([?chanVal], defaultVal )’Description: Assigns a fixed value to a channel that equates to no value.Example:

UIE_1_Fault = handleNoValue([?\\Local\UIE Module 1\Device Communications], true);UIE_2_Fault = handleNoValue([?\\Local\UIE Module 2\Device Communications], true);UIE_3_Fault = handleNoValue([?\\Local\UIE Module 3\Device Communications], true);

if( UIE_1_Fault || UIE_2_Fault || UIE_3_Fault) true;else false;

Note: This example would set the value of the channel to true if any of the UIE modules have a Device Communications alarm or if they are disabled.

• Function: ‘abortWithNoValue()’Description: Aborts processing of a User Defined Equation and assigns ‘No Value’ to the channel.Example:

voltage = handleNoValue([?\\Local\Generator 1\Voltage Phase A-B], 999999);

if( voltage = = 999999)abortWithNoValue();

if( [\\Local\Generator 1\Voltage Phase A-B] < 400 ) disarmDevice([\\Local\AC 1]);else rearmDevice([\\Local\AC 1]);

Note: This example would abort the equation if the Voltage Phase A-B channel has no value.

Page 26: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsBit Manipulation

Bits within a variable or analog channel are often used to store multiple pieces of information that may or may not be related.

Examples:• In a communications protocol alarm or status states are often bit packed into a value

because it’s a more efficient method for storage and transmission of the information. • Foreseer AC Control uses a bit packed variable for each AC Zone to determine which

AC’s are to be on or off. These variables are manipulated based on conditions of the AC’s and the control scheme.

Each bit has a position and a weight. • The position or bit number starts at zero and increments one counting from the right. • The ‘weight’ is the binary value of the bit 1, 2, 4 etc. By adding together all of the ‘1’

bits you reach the value of the variable. In the example below the decimal value is 105.

Page 27: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionssetBit, clearBit, checkBit

• Function: ‘setBit(n)’Description: Sets Bit ‘n’ of a channel or variableExample: (assumes x = 2 prior to equation)

a = setBit(3) (result = 8)x += setBit(3) (result = 10)

• Function: ‘clearBit(n, var)’Description: Clears Bit ‘n’ of a channel or variableExample: (assumes x = 10 prior to equation)

clearBit(1, x) (result = 8)

• Function: ‘checkBit(n, var)’Description: Returns the status of bit ‘n’ of a channel or variableExample: (assumes x = 2 prior to equation)

a = checkBit(3, x) (result = false)a = checkBit(1, x) (result = true)

Page 28: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsControl Functions

• Control interface • Currently only available with thick client • Supports three types of control points:

• tri-state control, digital (two-state), set-point control.

• User permissions• Added to protect the controls from unauthorized users

• Change User Defined Equations

• Change Control Points

Page 29: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsControl Functions – Setpoint Control

Setpoint: Used to manipulate the value of an analog channel between a pre-defined minimum and maximum value. Example usage would be to control the temperature setpoint of an Air Conditioner.

• Variable name:_SETPOINT_ the current setpoint value

• Comment fields:_CAPTION_ a single line of text to be displayed at the top of the dialog_MIN_ the minimum allowed set-point value_MAX_ the maximum allowed set-point value_FLOAT_ the set-point value is a floating point number

• Example:_SETPOINT_ = 72;////_CAPTION_=”AC 1 Temperature Setpoint”//_MIN_=66//_MAX_=80//[Sales Demo\Liebert AC 1\M_Temperature Setpoint] = _SETPOINT__SETPOINT_

• As shown on the thick Client -

Page 30: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsControl Functions – Digital Control

Digital: Used to manipulate the value of a digital channel between true and false. Example uses would be on/off (direct device control), enable/disable (enable or disable a control function or process), reset/idle (used to reset a process to a known state).

• Variable name:_TWOSTATE_ the current control point state (0 or 1)

• Comment fields:_CAPTION_ a single line of text to be displayed at the top of the dialog_TITLE0_ the label of the radio button for state 0_TITLE1_ the label of the radio button for state 1

• Example:_TWOSTATE_ = 1;////_CAPTION_=”Rotation Enabled”//_TITLE0_=”No”//_TITLE1_=”Yes”//_TWOSTATE_

• As shown on the thick Client -

Page 31: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsControl Functions – Tri-State Control

Tri-State: Used to manipulate the value of an analog channel between 0, 1, and 2. Example use would be On-Off-Auto for manual override of a device normally controlled by a process (auto).

• Variable name:_TRISTATE_ the current control point state (0, 1 or 2)

• Comment fields:_CAPTION_ a single line of text to be displayed at the top of the dialog_TITLE0_ the label of the radio button for state 0_TITLE1_ the label of the radio button for state 1_TITLE2_ the label of the radio button for state 2

• Example:_TRISTATE_ = 1;////_CAPTION_=”AC 1 Override Control”//_TITLE0_=”Manual Override: Off”//_TITLE1_=”Auto”//_TITLE2_=”Manual Override: On”//_TRISTATE_

• As shown on the thick Client -

Page 32: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsControl Functions – Tri-State Control

A format option has been implemented on the channel value object (thick client only) that allows some fixed strings to be used for the values of a tri-state control.

• Off, On, Auto• Disabled, Enabled, Auto• Stop, Start, Auto• Off, Low, High• Off, Auto, On• Disabled, Auto, Enabled• Stop, Auto, Start• Closed, Open, Auto• Closed, Auto, Open• Off, Standby, On

Page 33: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

Transfer Equation FunctionsExercises

1. kWH with monthly reset

2. % Out of spec with weekly reset

3. Decode bits to a text channel

4. Disarm meter when generator not running

5. Current Imbalance

6. Run time remaining

7. Debugging

Page 34: © 2007 Eaton Corporation. All rights reserved. Foreseer ® Derived Channels FE Level II, Rev. B June 17, 2008.

© 2007 Eaton Corporation. All rights reserved.

Questions??


Recommended