PPCL
PPCL
Notice
For further information, contact your nearest Siemens Building Technologies, Inc.
representative.
Credits
Printed in U.S.A.
Comments
Your feedback is important to us. If you have comments about this manual,
please submit them to [email protected].
APOGEE PPCL User’s Manual
Multiplication ...........................................................................1-26
Table of Contents Subtraction ..............................................................................1-27
Arithmetic Functions ......................................................................1-28
Arc-Tangent (ATN)..................................................................1-29
Complement (COM) ................................................................1-30
How to Use This Manual.......................................................................VII
Cosine (COS)..........................................................................1-31
Introduction .......................................................................................VII
Natural Antilog (EXP) ..............................................................1-32
Manual Organization .......................................................................VIII
Natural Log (LOG)...................................................................1-33
Manual Conventions..........................................................................IX
Root (.ROOT.).........................................................................1-34
Syntax Page Example ........................................................................X
Sine (SIN)................................................................................1-35
Compatibility bar .........................................................................XI
Square Root (SQRT)...............................................................1-36
Syntax ........................................................................................XII
Tangent (TAN) ........................................................................1-37
Use .............................................................................................XII
Special Functions ..........................................................................1-38
Notes (if applicable) ..................................................................XIII
Alarm priority (ALMPRI) ..........................................................1-39
See also (if applicable)..............................................................XIII
Totalized value (TOTAL) .........................................................1-41
Where To Send Comments .............................................................XIII
Order of Precedence .....................................................................1-42
Chapter 1–Program Methodology ......................................................1-1 Changing Precedence Levels with Parentheses ....................1-43
Overview..........................................................................................1-1 Resident Points..............................................................................1-46
Introduction to PPCL .......................................................................1-3 Alarm count (ALMCNT)...........................................................1-47
PPCL Rules .....................................................................................1-4 Alarm count 2 (ALMCT2) ........................................................1-48
General PPCL Rules.................................................................1-4 Battery condition ($BATT).......................................................1-49
Defining Points in a PPCL Program..........................................1-6 Decimal time (CRTIME) ..........................................................1-50
Rules for Naming Points ...........................................................1-6 Day (DAY) ...............................................................................1-51
Rules for Naming a PPCL Program ..........................................1-7 Day of the month (DAYOFM)..................................................1-52
PPCL Program Design Guidelines ..................................................1-8 Communications link (LINK) ...................................................1-53
Designing a Program that is Easy to Maintain..........................1-8 Month (MONTH)......................................................................1-54
Designing a Program that Operates Efficiently.........................1-9 Node number (NODE0 through NODE99)..............................1-55
Relational Operators......................................................................1-10 PDL monitor ($PDL)................................................................1-56
Equal to (.EQ.) .......................................................................1-11 Seconds counter (SECNDS)...................................................1-57
Greater than or equal to (.GE.) ...............................................1-12 Seconds counters (SECND1 through SECND7) ....................1-58
Greater than (.GT.)..................................................................1-13 Military time (TIME) .................................................................1-59
Less than or equal to (.LE.).....................................................1-14 Local Variables ..............................................................................1-60
Less than (.LT.) .......................................................................1-15 $ARG1 through $ARG15 ........................................................1-61
Not equal to (.NE.) ..................................................................1-16 $LOC1 through $LOC15 .........................................................1-63
Logical Operators ..........................................................................1-17 Point Priority Overview ..................................................................1-64
And (.AND.).............................................................................1-18 APOGEE and pre-APOGEE Point Priority Levels ..................1-64
Not And (.NAND.)....................................................................1-19 BACnet Priority Array ..............................................................1-66
Or (.OR.) .................................................................................1-20 At (@) Priority Status Indicators ....................................................1-68
Exclusive Or (.XOR.)...............................................................1-21 Testing Point Priorities ............................................................1-68
Arithmetic Operators......................................................................1-22 Commanding Points to a Specific Priority...............................1-68
Addition ...................................................................................1-23 Pre-APOGEE Firmware ..........................................................1-69
Assignment .............................................................................1-24 At (@) Priority Status Indicators Supported............................1-71
Division....................................................................................1-25 Emergency (@EMER) ............................................................1-72
Siemens Building Technologies, Inc. I II Siemens Building Technologies, Inc.
Table of Contents APOGEE PPCL User’s Manual
• Reading user documentation for the APOGEE Automation • Chapter 3 – Syntax lists all control commands. This chapter
System describes the syntax, functionality, and special exceptions for
each command, as well as related commands.
If you have knowledge or experience with HVAC equipment, the task
of learning the programming language becomes easier. • The Glossary describes the terms and acronyms used in this
manual.
Siemens Building Technologies, Inc. VII VIII Siemens Building Technologies, Inc.
How to Use This Manual APOGEE PPCL User’s Manual
Syntax
Compatibility bar
The Syntax section provides the command format. You’ll also find a
The compatibility bar indicates if the command can be used with a description for each parameter in the command, as well as the valid
specific type of firmware. inputs and any calculations you may need.
Even though truth tables compare more complex items than apples
and oranges, the method for determining the result is always the
same.
Siemens Building Technologies, Inc. XIII XIV Siemens Building Technologies, Inc.
APOGEE PPCL User’s Manual
— Local Variables
Overview • Understanding the Relationship Between Point Priority and
Status
Chapter 1 contains information related to the design, coding, and
implementation of a program. The following concepts are discussed — Point Priority Overview
in this chapter: — At (@) Priority Status Indicators
• Introduction to PPCL — Point Status Indicators
• PPCL Rules • Converting a Sequence of Operation into Program Code
— General PPCL Rules — Guidelines
— Defining Points in a PPCL Program — Designing Programs Using a Modular Structure
— Rules for Naming Points — Subroutine Commands
— Rules for Naming a PPCL Program — Multiple Programs versus Subroutines
• PPCL Program Design Guidelines — Program Testing
— Designing a Program that is Easy to Maintain
— Program Documentation
— Designing a Program that Operates Efficiently
• Making Comparisons
— Relational Operators
— Logical Operators
— Arithmetic Operators
— Special Functions
• Order of Precedence
— Changing Precedence Levels with Parentheses
Siemens Building Technologies, Inc. 1-1 1-2 Siemens Building Technologies, Inc.
Program Methodology—Introduction to PPCL APOGEE PPCL User’s Manual
• For APOGEE firmware only, the last line of the program does not
need to be executed on every pass of the program. For Unitary
and pre-APOGEE firmware, the last line of the program must be
executed on every pass of the program.
• If you need to enter more characters, enter an ampersand (&) at Defining Points in a PPCL Program
the end of the line and continue entering characters on the next
line. • All physical and virtual points used in the program must be
defined in the point database.
• The maximum number of characters allowed on a total of three
lines of code is 198 characters (including the ampersands and • Point names that begin with numbers must be prefixed with the at
line numbers). (@) character.
Pre-APOGEE Firmware • Point names that are greater than 6 characters must be enclosed
in double quotes.
When entering program lines through a pre-APOGEE field panel
MMI port, the maximum number of characters per line is 72. • Point names that use characters other than A-Z or 0-9 must be
enclosed in double quotes.
• If you need to enter more characters, enter an ampersand (&) at
the end of the line and continue entering characters on the next Example
line. 560 ON(B2SFN,”BUILDING1.AHU01.SFAN”)
• The maximum number of characters allowed on both lines of • The first point (B2SFN) does not require quotes.
code is 144 characters (including the ampersand).
• The second point (BUILDING1. AHU01.SFAN) is greater than six
Maximum Number of Characters per Comment Line characters and requires quotes.
• The program can be archived for historical purposes. • Only use a colon (:) in a point name when working with subpoints.
Since a PPCL program that contains only comment lines is not BACnet Firmware
executed, it does not affect system performance.
• Valid names are from 1 to 30 characters.
NOTE: Only field panels containing Firmware Revision 2.6/2.6.1
and later support a notepad at the field panel with PPCL • Acceptable characters include: A-Z, a-z, 0-9, spaces ( ), periods
comment lines. (.), commas (,), dashes (-), underlines (_), and apostrophes (').
Pre-APOGEE Firmware
PPCL Program Design Guidelines
• Valid names are limited to 6 characters.
• Acceptable characters include: A-Z and 0-9. These guidelines will help you avoid common programming errors
and write programs that run faster and are easier to maintain. The
• Do not use the following characters in point names: & ? * [ ] { } % PPCL guidelines are as follows:
• Do not use the following characters in program names: • Number program lines in multiples of ten (10, 20, 30) or more so
&?*{}% that modifications can be made without renumbering the
program.
• Use point names that are meaningful and describe the function
for which they are being used. For example, a point name
monitoring outside air temperature could be named OATEMP.
Siemens Building Technologies, Inc. 1-7 1-8 Siemens Building Technologies, Inc.
Program Methodology—PPCL Program Design Guidelines APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 1-9 1-10 Siemens Building Technologies, Inc.
Program Methodology—Relational Operators APOGEE PPCL User’s Manual
Syntax Syntax
if (value1.EQ.value2) then... if (value1.GE.value2) then...
value1, These values are defined as analog or digital numbers, value1, These values are defined as analog or digital numbers,
value2 local variables, or point names. value2 local variables, or point names.
Use Use
Compares two values to determine if the first value (value1) is equal Compares two values to determine if the first value (value1) is
to the second value (value2). The comparison is true if value1 is greater than or equal to the second value (value2). The comparison
equal to value2. is true if value1 is greater than or equal to value2.
Example Example
500 C IF THE ROOM TEMP IS EQUAL TO 80, 700 C IF THE ROOM TEMP IS GREATER THAN
510 C THEN SET THE SET POINT TO 70. 710 C OR EQUAL TO 80, THEN SET THE SET
520 C 720 C POINT TO 70
530 IF (RMTEMP.EQ.80.0) THEN RMSET = 70.0 730 C
740 IF (RMTEMP.GE.80.0) THEN RMSET = 70.0
Notes
Check the point format and number of decimal places used before
comparing values with this relational operator. Certain points
(primarily analog input) may contain precise values. When
comparing a point value to a whole number, the result will be false if
the values are not identical.
Siemens Building Technologies, Inc. 1-11 1-12 Siemens Building Technologies, Inc.
Program Methodology—Relational Operators APOGEE PPCL User’s Manual
Syntax Syntax
if (value1.GT.value2) then... if (value1.LE.value2) then...
value1, These values are defined as analog or digital numbers, value1, These values are defined as analog or digital numbers,
value2 local variables, or point names. value2 local variables, or point names.
Use Use
Compares two values to determine if the first value (value1) is Compares two values to determine if the first value (value1) is less
greater than the second value (value2). The comparison is true if than or equal to the second value (value2). The comparison is true if
value1 is greater than value2. value1 is less than or equal to value2.
Example Example
250 C IF THE ROOM TEMP IS GREATER THAN 300 C IF THE ROOM TEMP IS LESS THAN OR
260 C 80, THEN SET THE SET POINT TO 70 310 C EQUAL TO 80, THEN SET THE SET POINT
270 C 320 C TO 70
280 IF (RMTEMP.GT.80.0) THEN RMSET = 70.0 330 C
340 IF (RMTEMP.LE.80.0) THEN RMSET = 70.0
Siemens Building Technologies, Inc. 1-13 1-14 Siemens Building Technologies, Inc.
Program Methodology—Relational Operators APOGEE PPCL User’s Manual
Syntax Syntax
if (value1.LT.value2) then... if (value1.NE.value2) then...
value1, These values are defined as analog or digital numbers, value1, These values are defined as analog or digital numbers,
value2 local variables, or point names. value2 local variables, or point names.
Use Use
Compares two values to determine if the first value (value1) is less Compares two values to determine if the first value (value1) is not
than the second value (value2). The comparison is true if value1 is equal to the second value (value2). The comparison is true if value1
less than value2. is not equal to value2.
Example Example
900 C IF THE ROOM TEMP IS LESS THAN 80, 600 C IF THE ROOM TEMP IS NOT EQUAL TO
910 C THEN SET THE SET POINT TO 70. 610 C 80, THEN SET THE SET POINT TO 70.
920 C 620 C
930 IF (RMTEMP.LT.80.0) THEN RMSET = 70.0 630 IF (RMTEMP.NE.80.0) THEN RMSET = 70.0
Siemens Building Technologies, Inc. 1-15 1-16 Siemens Building Technologies, Inc.
Program Methodology—Logical Operators APOGEE PPCL User’s Manual
PPCL supports the following logical operators: Condition 1 False Condition 1 True
• Exclusive Or (.XOR.)
Each logical operator is described in more detail on the following
pages.
Siemens Building Technologies, Inc. 1-17 1-18 Siemens Building Technologies, Inc.
Program Methodology—Logical Operators APOGEE PPCL User’s Manual
Syntax Syntax
if (cond1.NAND.cond2) then... if (cond1.OR.cond2) then...
cond1, Defines a condition that is the result of a comparison cond1, Defines a condition that is the result of a comparison
cond2 between two values. cond2 between two values.
Use Use
• Used to compare two logical conditions. • Used to compare two logical conditions.
• If both conditions are true, then the result of the .NAND. • If at least one of the conditions is true, the result of the statement
statement is false. is true.
• A single statement can incorporate a combined total of 16 • A single statement can incorporate a combined total of 16
relational and logical operators. relational and logical operators.
Example See Table 1-2 for a comparison of conditions used with the .OR.
100 IF (LDO1.EQ.ON.NAND.LDO2.EQ.ON) THEN ON(LDO3) logical operator:
ELSE OFF(LDO3)
Table 1-2. Truth Table for .OR. Logical Operator.
Condition 1 False Condition 1 True
LDO1 State LDO2 State LDO3 State NAND Result
Condition 2 False Result is False Result is True
OFF OFF ON TRUE
Condition 2 True Result is True Result is True
OFF ON ON TRUE
ON OFF ON TRUE Example
ON ON OFF FALSE 200 IF (TIME.LT.5:00.OR.TIME.GT.17:00) THEN ON(LIGHTS)
Notes
For APOGEE Firmware Revision 2.3 and earlier, AND statements
should be used instead of NAND. In this case, the above example
would be written as:
100 IF (LDO1.EQ.ON.AND.LDO2.EQ.ON) THEN OFF(LDO3)
ELSE ON(LDO3)
Siemens Building Technologies, Inc. 1-19 1-20 Siemens Building Technologies, Inc.
Program Methodology—Logical Operators APOGEE PPCL User’s Manual
Example
200 IF (PMP1.EQ.ON.XOR.PMP2.EQ.ON) THEN NORMAL(PMPALM)
Siemens Building Technologies, Inc. 1-21 1-22 Siemens Building Technologies, Inc.
Program Methodology—Arithmetic Operators APOGEE PPCL User’s Manual
Addition Assignment
Unitary pre-APOGEE APOGEE BACnet Unitary pre-APOGEE APOGEE BACnet
Syntax Syntax
pt1 = value1 + value2 pt1 = value1
pt1 A point name or local variable that receives the value of pt1 The point name or local variable that receives the value
the calculation. from value1.
value1, Point names, local variables, expressions, or numbers value1 A point name, local variable, expression, or number that is
value2 that are used in the calculation. assigned to pt1.
Use Use
Adds two or more values and stores the sum in a defined location as Assigns the value of value1 to the value of pt1.
pt1.
Example
Example 560 COUNT = COUNT + 1.0
560 COUNT = COUNT + 1.0
Notes
Do not to assign values to reserved words. See the Reserved Word
List in Appendix A.
Example
500 C = OATEMP
The code in this example would fail due to the “C” being used like a
variable, when instead the field panel interprets the line as a
comment.
Siemens Building Technologies, Inc. 1-23 1-24 Siemens Building Technologies, Inc.
Program Methodology—Arithmetic Operators APOGEE PPCL User’s Manual
Division Multiplication
Unitary pre-APOGEE APOGEE BACnet Unitary pre-APOGEE APOGEE BACnet
Syntax Syntax
pt1 = value1 / value2 pt1 = value1 * value2
pt1 A point name or local variable that receives the value of the pt1 A point name or local variable that receives the value of
calculation. the calculation.
value1 A point name, local variable, expression, or number used in value1, Point names, local variables, expressions, or numbers
the calculation. In PPCL, value1 represents the numerator. value2 used in the calculation.
value2 A point name, local variable, expression or number used in
the calculation. In PPCL, value2 represents the Use
denominator.
Multiplies two or more values (value1 and value2) and stores the
product in a defined location (pt1).
Use
Divides two values (value1 by value2) and stores the quotient in a Example
defined location (pt1). 300 SETPT = TEMP * 0.00438
Example
890 AVERAG = TOTAL / 5.0
Siemens Building Technologies, Inc. 1-25 1-26 Siemens Building Technologies, Inc.
Program Methodology—Arithmetic Operators APOGEE PPCL User’s Manual
• Tangent (TAN)
Each arithmetic operator is described in more detail on the following
pages.
Siemens Building Technologies, Inc. 1-27 1-28 Siemens Building Technologies, Inc.
Program Methodology—Arithmetic Functions APOGEE PPCL User’s Manual
Syntax Syntax
pt1 = ATN(value1) pt1 = COM(value1)
pt1 A point name or local variable that receives the value of the pt1 A point name or local variable that receives the value of the
calculation. calculation.
value1 A point name, local variable, or number from which the value1 A point name, local variable, or number from which the
value of the arc-tangent is calculated. complement is calculated.
Use Use
A trigonometric function that calculates the arc-tangent of a value A function that calculates a one's complement value for a point
(value1). The result of the calculation is then stored in a defined (value1). The one's complement function converts digital values (0 or
location (pt1). 1) to their opposite values. The result of the calculation is then stored
in a defined location (pt1).
All values used with this function are expressed in degrees.
Example
Example 500 LLSTAT = COM(PROF01)
500 THETA = ATN(VALUE1)
Siemens Building Technologies, Inc. 1-29 1-30 Siemens Building Technologies, Inc.
Program Methodology—Arithmetic Functions APOGEE PPCL User’s Manual
Syntax Syntax
pt1 = COS(value1) pt1 = EXP(value1)
pt1 A point name or local variable that receives the value of the pt1 A point name or local variable that receives the value of the
calculation. calculation.
value1 A point name, local variable, or number from which the value1 A point name, local variable, or number from which the
value of the cosine is calculated. value of the antilog is calculated.
Use Use
A trigonometric function that calculates the cosine of a value Calculates the natural antilog of a point (value1) and stores the result
(value1). The result of the calculation is then stored in a defined of the calculation in a defined location (pt1).
location (pt1).
Example
All values used with this function are expressed in degrees. 860 NATANT = EXP(VALUE1)
Example
700 C
701 C THIS FORMULA COMPUTES REAL POWER
702 C WHEN VOLTS, AMPS, AND PHASE ANGLE
703 C ARE KNOWN.
704 C
706 PWR = V * I * COS(THETA)
Siemens Building Technologies, Inc. 1-31 1-32 Siemens Building Technologies, Inc.
Program Methodology—Arithmetic Functions APOGEE PPCL User’s Manual
Syntax Syntax
pt1 = LOG(value1) pt1 = (value1.ROOT.value2)
pt1 A point name or local variable that receives the value of the pt1 A point name or local variable that receives the value of
calculation. the calculation.
value1 A point name, local variable, or number from which the value1, Point names, local variables, or numbers from which the
value of the log is calculated. value2 value of the root is calculated.
Use Use
Calculates the natural log of a point (value1) and stores the result of This function calculates the root of the defined points by raising the
the calculation in a defined location (pt1). value of value1 to the inverse power of value2. The result of the
calculation is then stored in a defined location (pt1). The
Example mathematical notation for the root is represented as follows:
200 ENTH = LOG(VALUE1)
3
TEMP
Example
310 RVAL = (TEMP.ROOT.3.0)
Siemens Building Technologies, Inc. 1-33 1-34 Siemens Building Technologies, Inc.
Program Methodology—Arithmetic Functions APOGEE PPCL User’s Manual
Syntax Syntax
pt1 = SIN(value1) pt1 = SQRT(value1)
pt1 A point name or local variable that receives the value of the pt1 A point name or local variable that receives the value of the
calculation. calculation.
value1 A point name, local variable, or number from which the value1 A point name, local variable, or number from which the value of
value of the sine is calculated. the square root is calculated.
Use Use
A trigonometric function that derives the sine of a value (value1). The Derives the square root of a value. The result of the calculation is
result of the calculation is then stored in a defined location (pt1). then stored in a defined location (pt1).
All values used with this function are expressed in degrees. Example
180 SRPT1 = SQRT(PT1)
Example
180 VAR = SIN(THETA)
Siemens Building Technologies, Inc. 1-35 1-36 Siemens Building Technologies, Inc.
Program Methodology—Arithmetic Functions APOGEE PPCL User’s Manual
Example
930 TANPT1 = TAN(PT1)
Siemens Building Technologies, Inc. 1-37 1-38 Siemens Building Technologies, Inc.
Program Methodology—Special Functions APOGEE PPCL User’s Manual
Example 1
230 C
232 C THIS LINE TESTS IF THE POINT CALLED
234 C RMTEMP IS AT ALARM PRIORITY LEVEL 1.
236 C
240 IF (ALMPRI(RMTEMP).EQ.1) THEN ON (OPBELL)
Example 2
330 C
332 C THIS LINE ASSIGNS THE ALARM PRIORITY LEVEL
334 C OF RMTEMP TO THE POINT CALLED TMPPRI.
336 C
340 TMPPRI = ALMPRI(RMTEMP)
Notes
ALMPRI must reside in the same field panel as the point on which
the function is being performed.
Siemens Building Technologies, Inc. 1-39 1-40 Siemens Building Technologies, Inc.
Program Methodology—Special Functions APOGEE PPCL User’s Manual
Example 2 After the first level of operators has been evaluated, the equation
800 C appears as follows:
801 C THIS LINE ASSIGNS THE TOTALIZED VALUE
10 - 5 + 6 = x
802 C OF FAN1 TO THE POINT CALLED FANRUN.
803 C 2. Since the remaining operators have the same precedence level,
810 FANRUN = TOTAL(FAN1) operators are now evaluated from left to right. The last step in
evaluating the equation is as follows:
Notes
10 - 5 = 5
TOTAL must reside in the same field panel as the point on which the
function is being performed. 5 + 6 = 11
Siemens Building Technologies, Inc. 1-41 1-42 Siemens Building Technologies, Inc.
Program Methodology—Order of Precedence APOGEE PPCL User’s Manual
Statements containing relational and logical operators are also When the computer evaluates multiple pairs of parentheses, each
assigned a precedence level. pair is evaluated according to how it is positioned in the formula.
Multiple parentheses are evaluated as follows:
Note that in problems comparing values using relational operators
(.EQ. and .NE.), the result of the comparison can change the output • For a pair of parentheses defined within another pair of
of the statement. parentheses, the computer always evaluates the innermost set
first.
Example 2
• For parentheses defined as individual pairs, each pair is
If (value1 .EQ. value2 .AND. value1 .NE. value3) then... evaluated from left to right.
This equation is solved as follows: The following example illustrates how parentheses change the way
the computer evaluates equations.
1. The relational operators (.EQ. and .NE.) have the highest
precedence level in the formula. Since these two operators have Example
the same precedence level, they are evaluated from left to right. 10 - 5 + 2 * 3 = x
In this example, assume that both comparisons (condition1 and
condition2) are true. This equation uses two levels of precedence: multiplication and
addition/subtraction. Following the order of precedence rules, the
value1 .EQ. value2 (condition1 = true) solution to this equation is 11.
value1 .NE. value3 (condition2 = true) When parentheses are inserted, the same equation produces a
different solution.
After the first level of operators has been evaluated, the equation
now looks like the following: (10 - 5 + 2) * 3 = x
If (condition1 .AND. condition2) then... The equation is now solved as follows:
2. The logical operator .AND. is then evaluated. 1. Parentheses give the information within the set of parentheses
the highest order of precedence. The operators within the
3. Since .AND. requires both conditions to be true, the solution to
parentheses are evaluated from left to right because they all
this problem will also be true.
have the same precedence. The first step in evaluating the
equation is as follows:
Changing Precedence Levels with Parentheses
(10 - 5 + 2) = 7
Parentheses can be used to override the normal order of
precedence. Placing parentheses around specific values or After the operators within parentheses have been evaluated, the
operations gives the information within the set of parentheses the equation appears as follows:
highest order of precedence. If all the operators within in the
7 * 3 = 21
parentheses have equivalent precedence levels, then the operators
are evaluated from left to right. 2. The standard precedence rules now apply to the remaining
operators. With only one operation left, the multiplication
operator is evaluated and produces a solution of 21.
Siemens Building Technologies, Inc. 1-43 1-44 Siemens Building Technologies, Inc.
Program Methodology—Order of Precedence APOGEE PPCL User’s Manual
• In all revisions of field panel firmware, the ALMCNT and ALMCT2 Notes
counters work the same with enhanced alarms as they do with
regular alarms. • A point must be defined as alarmable and enabled for ALMCT2 in
order to be counted when that point enters the ALARM state.*
• The level of alarm does not affect ALMCNT and ALMCT2. In
other words, the counters do not increment again when an • In all revisions of field panel firmware, the ALMCNT and ALMCT2
enhanced alarm point changes from one alarm level to another. counters work the same with enhanced alarms as with regular
alarms.
• If a point is disabled (*PDSB*) or operator disabled (*ODSB*),
ALMCNT will still increment and decrement accordingly. • The level of alarm does not affect ALMCNT and ALMCT2. In
other words, these counters do not increment again when an
See also enhanced alarm point changes from one alarm level to another.
ALMCT2, ENALM, DISALM *For pre-APOGEE, ALMCT2 can only be used with digital points.
See also
ALMCNT, ENALM, DISALM
Siemens Building Technologies, Inc. 1-47 1-48 Siemens Building Technologies, Inc.
Program Methodology—Resident Points APOGEE PPCL User’s Manual
• A $BATT value of 0 indicates the battery has discharged and 7:30 p.m. = 19.50
must be replaced. The values for this point can range from 0.00 to 23.999721.
• A $BATT value of 50 indicates the battery is about to discharge
and should be replaced to prevent any loss of data. Example
500 C
• A $BATT value of 100 indicates the battery does not need to be 501 C THIS CODE DEFINES A TIME PERIOD
replaced. 502 C FROM 6:45 A.M. TO 5:30 P.M. FOR
503 C SFAN TO OPERATE.
$BATT status indicators are LOW, DEAD, or OK. 504 C
510 IF (CRTIME.GE.6.75.AND.CRTIME.LE.17.50)
• If $BATT status is LOW or DEAD, then the battery has THEN ON(SFAN)ELSE OFF(SFAN)
discharged and must be replaced.
CRTIME can also be used to assign the current value of time to a
• If $BATT status is OK, then the battery does not need to be virtual LAO type point which allows you to read the current time on a
replaced. graphic, point log, etc. For example:
100 VTIME = CRTIME
Example 1
200 IF ($BATT.EQ.0) THEN ALARM(P26BAT)
Notes
CRTIME is updated every second.
Example 2
210 IF ($BATT.EQ.DEAD) THEN ALARM(P26BAT)
See also
LOW, DEAD, OK
Siemens Building Technologies, Inc. 1-49 1-50 Siemens Building Technologies, Inc.
Program Methodology—Resident Points APOGEE PPCL User’s Manual
Syntax Syntax
DAY DAYOFM
Use Use
This resident point specifies the current day of the week. The values This resident point specifies a particular day of any month.
used for the DAY point are as follows:
Valid values for DAYOFM are 1 through 31. The value corresponds
Number Day of the Week to the numerical calendar day of a month.
1 Monday
Example
2 Tuesday 160 C THIS SECTION OF CODE DETERMINES IF
162 C IT IS THE FIRST DAY OF THE MONTH.
3 Wednesday
164 C IF SO, SET TOTMON TO 0.
4 Thursday 166 C
180 IF (DAYOFM.EQ.1) THEN TOTMON = 0
5 Friday
6 Saturday Notes
7 Sunday This point is helpful when you have to perform certain operations on
a specific day (for example, generating a report on the first day in the
month).
Example
300 IF (DAY.EQ.1) THEN TOTRAN = 0
Notes
These values are not related to the modes used in the TODMOD
statement.
Siemens Building Technologies, Inc. 1-51 1-52 Siemens Building Technologies, Inc.
Program Methodology—Resident Points APOGEE PPCL User’s Manual
Syntax Syntax
LINK MONTH
Use Use
This resident point indicates the condition of communications. This resident point specifies the current month. The values used for
the MONTH point are as follows:
Depending on the status of the communications link, a point contains
the value 0 or 1. Number Month
1 January
• If the LINK value is 0, the node where the LINK point resides is
not communicating with the network. 2 February
• If the LINK value is 1, the node where the LINK point resides is 3 March
actively communicating with the network. 4 April
Example 5 May
300 IF (LINK.EQ.0) THEN ON(ALARM) 6 June
Example
950 IF (MONTH.GE.4.AND.MONTH.LE.10) THEN
SEASON = 1 ELSE SEASON = 0
Siemens Building Technologies, Inc. 1-53 1-54 Siemens Building Technologies, Inc.
Program Methodology—Resident Points APOGEE PPCL User’s Manual
Example
600 IF (NODE22.EQ.FAILED) THEN ON(ALARM)
Notes
NODE resident points cannot be used in field panels on an Ethernet
Automation Level Network (ALN). To use PPCL to monitor the failure
status of an Ethernet field panel, use the ADDRESS subpoint of the
field panel and equate it to FAILED.
Example
300 IF (“!EthernetMBC1:ADDRESS”.EQ.FAILED)
THEN ON(ALARM)
See also
Communications Link (LINK)
Siemens Building Technologies, Inc. 1-55 1-56 Siemens Building Technologies, Inc.
Program Methodology—Resident Points APOGEE PPCL User’s Manual
Syntax Syntax
SECNDS SECNDn
n The number that describes which SECNDn point is
Use referenced.
This resident point counts real time seconds and can be used as a • Valid values for SECNDn are 1 through 7.
timer. The computer adds one (1) to the SECNDS variable for every
one second of real time that passes. Use
These seven resident points count real time seconds and can be
• The initial value of the SECNDS point is set by a PPCL
used as timers. The computer adds one (1) to the SECNDn variable
command.
for every one second of real time that passes.
• The SECNDS point can be set to a maximum value of 9,999.
• The value of a SECNDn point can only be set by a PPCL
Example command.
890 IF (SFAN.NE.PRFON) THEN SECNDS = 0
• The maximum value a SECNDn point can be set to is 9,999.
Notes Example
For APOGEE field panels, each program has a unique SECNDS 600 IF(SECND1.GT.15) THEN ON(RF) ELSE OFF(RF)
point. This point can also be viewed in the interface using the
program name, system delimiter (:)SECNDS format. Notes
For APOGEE field panels, each program has unique SECNDSn
points. These points can also be viewed in the interface using the
program name, system delimiter (:)SECNDSn format.
Siemens Building Technologies, Inc. 1-57 1-58 Siemens Building Technologies, Inc.
Program Methodology—Resident Points APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 1-59 1-60 Siemens Building Technologies, Inc.
Program Methodology—Local Variables APOGEE PPCL User’s Manual
Notes
$ARGn points can only be used in subroutines.
Syntax
$ARGn See also
n The number that describes what $ARGn point is GOSUB
referenced.
• Valid values are 1 through 15.
Use
A $ARGn variable represents an actual point name used in a
subroutine. Instead of defining actual point names in a subroutine,
values are transferred to $ARGn variables. The $ARGn variables
represent their corresponding points as functions and calculations
are performed in the subroutine.
Example
1000 GOSUB 2000 OATEMP, RMTEMP, SETPT
...
2000 $ARG1 = $ARG1 + 1
2010 $ARG2 = $ARG2 + 1
2020 $ARG3 = $ARG3 + 1
The program branches to line number 2000. When $ARG1 is
encountered in line 2000, the computer assigns the value of the first
point name (OATEMP) to $ARG1. When the computer encounters
$ARG2, it assigns the value of the next point defined in the GOSUB
command (RMTEMP).
$LOCn BACnet firmware uses a priority array to perform the same function
as the APOGEE point priority. For BACnet firmware, the priority is
n The number that describes what $LOCn point is referenced. mapped to one of 16 slots defined using the Command Priority
• Valid values are 1 through 15. Table. Only one slot in the Priority Array is set for the point when
commanding points with the @priority operator. The value of the
Use point is set based on the highest slot in the Priority Array.
These points are used to store the results of calculations. NOTE: Unitary firmware does not support the use of priority
• $LOCn variables can store an analog or digital value. indicators and manual priority modifications.
Siemens Building Technologies, Inc. 1-63 1-64 Siemens Building Technologies, Inc.
Program Methodology—Point Priority Overview APOGEE PPCL User’s Manual
Table 1-6. APOGEE and pre-APOGEE Point Priorities. BACnet Priority Array
Command Description
APOGEE BACnet firmware uses the Priority Array to determine the
Highest OPER The highest priority level. OPER priority command order for a point. The array contains sixteen slots plus a
Priority (Operator) indicates the PPCL program is overridden Relinquish Default slot. BN01 is the highest position in the array, and
and an operator is responsible for Relinquish Default is the lowest.
commanding the point. A point in OPER
must be changed to a lower priority before Any level in the priority can be commanded at any time. If the
PPCL can resume control of the point. This Present Value of the point is at a higher priority slot, the command
change in priority is called releasing the will not be executed. Unlike the APOGEE Point Priority, the Priority
point. Array retains all commands made at lower priority slot levels. When
SMOKE A program that monitors smoke alarms is the Present Value drops to that slot level, the stored point command
commanding the point. Points in SMOKE is executed.
priority can be commanded by operations
with OPER or SMOKE priority. NOTE: The Insight workstation does not save or restore the
Priority Array. After a download from the Insight
EMER A program that controls the point during workstation, all points are at their Relinquish Default
(Emergency) emergencies is commanding the point. value.
Points in EMER priority can be commanded
by operations with OPER, SMOKE, or For more information on BACnet point priorities, see the APOGEE
EMER priority. Field Panel User’s Manual (125-3000).
PDL A Peak Demand Limiting (PDL) program Table 1-7 explains the BACnet command priorities and shows how
(Peak commands the point. Points in PDL priority they relate to the APOGEE point priority levels.
Demand can be commanded by operations with
Limiting) OPER, SMOKE, EMER, or PDL priority.
Table 1-6 explains the BACnet command priorities and shows how
they relate to the APOGEE point priority levels.
Siemens Building Technologies, Inc. 1-65 1-66 Siemens Building Technologies, Inc.
Program Methodology—Point Priority Overview APOGEE PPCL User’s Manual
Table 1-7. APOGEE to BACnet Point Priority Reference. At (@) Priority Status Indicators
BACnet
Priority At (@) priority indicators are used to monitor the priority status on
APOGEE Point Priority Slot BACnet Name points defined in a device. They can also be used to test if a point is
BN01 Manual Life Safety at a specific priority or to command a point to a specific priority.
BN02 Automatic Life Safety • The priority level defined in a statement occupies one of the
parameters.
BN03 Available
• Statements such as ON, OFF, RELEAS, and SET allow you to
BN04 Available define a total of 16 parameters in one statement.
BN05 Critical Equipment Control • When using an @ priority indicator within PPCL statements, the
@ priority indicator occupies the first parameter location. This
BN06 Minimum On/Off
decreases the total number of points you can define in a
BN07 Available statement to 15.
OPER (Operator) BN08 Manual Operator • When the @ priority is not used, the default priority is EMER.
BN09 Available
Testing Point Priorities
SMOK (Smoke) BN10 Available Programs sometimes fail because a command outside the operation
BN11 Available
being performed interferes with a point inside the operation. Testing
the priority of a point helps prevent this from happening.
EMER (Emergency) BN12 Available
If numerous tasks are being performed in the program, testing point
BN13 Available priority levels is one method of preventing those tasks from
interfering with each other.
PDL (Peak Demand Limiting) BN14 Available
Siemens Building Technologies, Inc. 1-67 1-68 Siemens Building Technologies, Inc.
Program Methodology—At (@) Priority Status Indicators APOGEE PPCL User’s Manual
When this command is executed, SFAN and RFAN are shut OFF EMER NONE
and their priorities are changed to OPER. An operator interface PDL NONE
command (such as OIP) is not needed to change the point priority.
OPER RELEAS(@SMOKE … ) OPER
or
Pre-APOGEE Firmware SMOKE RELEASE(@EMER … ) NONE
The RELEAS command quickly changes the priority of a point or EMER NONE
group of points. With pre-APOGEE firmware, you have two options PDL NONE
for changing point priorities with the RELEAS command:
OPER RELEAS(@PDL … ) OPER
• Release the point to NONE priority. SMOKE SMOKE
• Release the point from a specific priority to NONE priority EMER EMER
PDL NONE
Releasing the Point to NONE Priority
For a complete description of the RELEAS command, see Chapter 3
The first option allows you to release points to the NONE priority. In
– Syntax.
the following example, the points FAN1 and FAN2 are released to
NONE priority.
160 RELEAS(FAN1,FAN2)
Siemens Building Technologies, Inc. 1-69 1-70 Siemens Building Technologies, Inc.
Program Methodology—At (@) Priority Status Indicators APOGEE PPCL User’s Manual
• Operator (@OPER)
Notes
• For APOGEE and pre-APOGEE firmware, if the @ priority
indicator is not used, the field panel will release points from PDL
or EMER priority to NONE.
Siemens Building Technologies, Inc. 1-71 1-72 Siemens Building Technologies, Inc.
Program Methodology—At (@) Priority Status Indicators APOGEE PPCL User’s Manual
Syntax Syntax
@NONE @OPER
Use Use
This command identifies the PPCL priority level indicator. The This command identifies the operator priority level indicator. The
@NONE command can be used to test if a point currently is at PPCL @OPER command is typically used in one of the following situations:
priority.
• To test if a point is currently at operator priority, an
Example IF/THEN/ELSE statement would look like the following:
300 IF (SFAN.EQ.@OPER) THEN ON(HORN)
The IF/THEN/ELSE statement would look like the following:
300 IF (SFAN.EQ.@NONE) THEN OFF(HORN)
• To command a point to operator priority, an example of program
Notes code might look like the following:
500 ON(@OPER,SFAN)
For BACnet firmware, the field panel uses the slot corresponding to
the program's "Priority for Writing". The value of the point is set
based on the highest slot in the Command Priority Array; relinquish • To release a point from operator to PPCL priority, an example of
default is used if the Command Priority Array is now empty. program code might look like the following:
700 RELEAS(@OPER,SFAN)
Notes
• For APOGEE and pre-APOGEE firmware, the @ priority indicator
must be used to release points in any priority to NONE.
Siemens Building Technologies, Inc. 1-73 1-74 Siemens Building Technologies, Inc.
Program Methodology—At (@) Priority Status Indicators APOGEE PPCL User’s Manual
Syntax Syntax
@PDL @SMOKE
Use Use
This command identifies the peak demand limiting priority level This command identifies the smoke control priority level indicator.
indicator. The @PDL command is typically used in one of the The @SMOKE command is typically used in one of the following
following situations: situations:
• To test if a point is currently at PDL priority, an IF/THEN/ELSE • To test if a point is currently at smoke priority, an IF/THEN/ELSE
statement would look like the following: statement would look like the following:
300 IF (SFAN.EQ.@PDL) THEN ON(HORN) 300 IF (SFAN.EQ.@SMOKE) THEN ON(HORN)
• To release a point in the device from PDL to PPCL priority, an • To release a point in the device from smoke to PPCL priority, an
example of program code might look like the following: example of program code might look like the following:
700 RELEAS(@PDL,SFAN) 700 RELEAS(@SMOKE,SFAN)
NOTE: Using the @ priority indicator in this manner will not NOTE: Using the @ priority indicator in this manner will not
release the point if it has a higher priority (EMER, release the point if it has a higher priority (OPER).
SMOKE, and OPER).
Notes
Notes
• For APOGEE and pre-APOGEE firmware, the @ priority indicator
It is not recommended to release points from PDL priority unless must be used to release points from SMOKE, EMER, and PDL to
absolutely necessary. NONE priority.
• For APOGEE and pre-APOGEE firmware, if the @ priority • For BACnet firmware, the field panel releases the slot
indicator is not used, the field panel will release points from PDL corresponding to SMOKE in the Command Priority Table. The
to NONE. value of the point is set based on the highest slot in the
Command Priority Array; relinquish default is used if the
• For BACnet firmware, the field panel releases the slot Command Priority Array is now empty.
corresponding to PDL in the Command Priority Table. The value
of the point is set based on the highest slot in the Command
Priority Array; relinquish default is used if the Command Priority
Array is now empty.
Siemens Building Technologies, Inc. 1-75 1-76 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
To verify that the lights are ON in the conference room, you could
Point Status Indicators use the following test:
740 IF (LIGHTS.EQ.ON) THEN ...
Point status indicators are used to monitor the current status of
points defined in the device. Point status indicators can be used to When this line of code is executed, the status of LIGHTS is checked
test if a point is at a specific status, and then act accordingly. to see if it is ON. If the point status equals ON, then a particular
Firmware uses syntactical words (ON, OFF, AUTO...) to indicate the action occurs. If the point status does not equal ON, an alternate
status of a point. action occurs.
NOTE: Since these points are related specifically to the functions Commanding and evaluating the HAND status
of the device, point status indicators cannot be used over
the network. Some Point Termination Modules (PTMs), Modular Equipment
Controllers (MECs), and Point Expansion Modules (PXMs) have an
optional HAND-OFF-AUTO (HOA) manual override switch that
Failed Point Values enables you to control equipment at the field panel.
If a point in a PPCL statement fails, the statement continues to use
the point's last known value. For example: CAUTION:
MIN(RMMIN,RM1TMP,RM2TMP,RM3TMP) The HOA override switch is not to be used as a
safety device when performing maintenance. If the
If RM1TMP is a physical point that fails when it has the lowest value HOA switch is used as a safety device, it can result
of the three RMTMP points, the MIN statement will set RMMIN to the in serious injury to personnel or cause damage to
last known value for RM1TMP. property or equipment. Always follow safety
procedures when performing maintenance.
Determining Point Status The HAND status identifies a point being controlled by an HOA
Point status indicators can be used with IF/THEN/ELSE commands manual override switch and not the system. The HOA override
to determine the status of a point. When a point is at a specific switch is only method you can use to control whether a point is
status, a certain action is taken. placed into or taken out of HAND status.
The configuration for an L2SL point uses two addresses: Before attempting to command points that contain HOA override
switches, check the status of the PTM or MEC to ensure that the
• The first address controls an ON/OFF switch. point can be commanded.
• The second address monitors a proof condition. Use of this The HAND status appears as part of the overall point status. This
address is optional. status indicates that an HOA override switch is controlling a piece of
equipment. The equipment cannot be controlled through the operator
interface or PPCL until the HOA override is switched back to the
AUTO position.
Siemens Building Technologies, Inc. 1-77 1-78 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
HAND HOA switch Digital points: *ON* or *OFF* • Battery status - charged (OK)
• Off (OFF)
CAUTION:
• On (ON)
Be aware of how your system will react before
attempting to control equipment by using an HOA • Proof on (PRFON)
override switch. Manually controlling equipment can
cause the system to react in an unstable manner. • Slow (SLOW)
Once control is returned to the system, you may Each point status indicator is described in more detail on the
need to perform other functions before normal following pages.
operations can resume.
Pre-APOGEE Firmware Revisions 12.5/1.5 and 12.51/1.51
Pre-APOGEE Firmware Revisions 12.5/1.5 and 12.51/1.51 support
the following status indicators:
• ALARM
• AUTO
• DAYMOD
Siemens Building Technologies, Inc. 1-79 1-80 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
• FAST
• HAND Syntax
• LOW if (pt1.eq.ALARM) then...
• NGTMOD pt1 A point name whose operational status is compared to the
status indicator.
• OFF • This parameter can be a digital, analog, logical
controller, or pulsed accumulator point type.
• OK
• ON Use
This status indicator determines if a point (pt1) is in the ALARM
• PRFON
state. This comparison is true if the point status is ALARM.
• SLOW
Example
The three status indicators OK, LOW, and DEAD are used 200 IF (TEMP02.EQ.ALARM) THEN ON(FAN)
specifically to support the $BATT resident point.
Unitary Firmware
Unitary firmware supports the following status indicators:
• ALARM
• DAYMOD
• FAILED
• NGTMOD
• OFF
• ON
• PRFON
Siemens Building Technologies, Inc. 1-81 1-82 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
Example 1
In the following statement, FAN is an alarmable point with Normal
Acknowledge Required by Operator Enabled.
200 IF (FAN.EQ.ALMACK) THEN ON(PT1) ELSE OFF(PT1)
Example 2
In the following statement, FAN is an alarmable point with Normal
Acknowledge Required by Operator Disabled.
200 IF (FAN.EQ.ALMACK) THEN ON(PT1) ELSE OFF(PT1)
Siemens Building Technologies, Inc. 1-83 1-84 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
Syntax Syntax
if (pt1.eq.AUTO) then... if ($BATT.eq.DEAD) then...
pt1 A point name whose operational status is compared to the
status indicator. Use
• This parameter must be a LOOAP or LOOAL point This status indicator compares the value of the $BATT resident point
type. to determine if the backup battery is discharged. This comparison is
true if the battery is discharged.
Use
This status indicator determines if a point (pt1) is in the AUTO state. Example
This comparison is true if the point status is AUTO. 600 IF ($BATT.EQ.DEAD) THEN ALARM(P26BAT)
Example An alternate method to test the battery strength is to use the numeric
200 IF (HOAFAN.EQ.AUTO) THEN ON(LIGHT3) value (0) of DEAD.
600 IF ($BATT.EQ.0) THEN ALARM(P26BAT)
Notes
This function can only be used in field panels that have the ability to
monitor the strength of their backup battery.
See also
LOW, OK
Siemens Building Technologies, Inc. 1-85 1-86 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
Syntax Syntax
if ($BATT.eq.LOW) then... if ($BATT.eq.OK) then...
Use Use
This status indicator compares the value of the $BATT resident point This status indicator compares the value of the $BATT resident point
to determine if the backup battery is about to discharge. This to determine if the backup battery is operational. This comparison is
comparison is true if the battery is close to discharging. true if the battery is charged.
Example Example
600 IF ($BATT.EQ.LOW) THEN ALARM(P26BAT) 600 IF ($BATT.EQ.OK) THEN NORMAL(P26BAT)
An alternate method to test the battery strength is to use the numeric An alternate method to test the battery strength is to use the numeric
value (50) of LOW. value (100) of OK.
600 IF ($BATT.EQ.50) THEN ALARM(P26BAT) 600 IF ($BATT.EQ.100) THEN NORMAL (P26BAT)
Notes Notes
This function can only be used in field panels that have the ability to This function can only be used in field panels that have the ability to
monitor the strength of their backup battery. monitor the strength of their backup battery.
Siemens Building Technologies, Inc. 1-87 1-88 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
Syntax Syntax
if (pt1.eq.DAYMOD) then... if (pt1.eq.FAILED) then...
pt1 A point name whose operational status is compared to the pt1 A point name whose operational status is compared to the
status indicator. status indicator.
• For APOGEE firmware, use the TEC application • This parameter can be a digital, analog, logical
name. controller, or pulsed accumulator point type.
• For pre-APOGEE firmware, define the point as an
LCTLR point type. Use
This status indicator determines if a point (pt1) is in the FAILED
Use state. This comparison is true if the point status is FAILED.
This status indicator determines if an equipment controller is in DAY
mode. Example
200 IF (AHU2.EQ.FAILED) THEN ON(HORN)
For some equipment controllers, DAY mode is also referred to as
OCC (occupied) mode. If an equipment controller is in occupied
mode, PPCL recognizes this status as DAYMOD.
Example
200 IF (CTLR1.EQ.DAYMOD) THEN DAYSP = 75.0
Notes
This command is only valid for equipment controllers.
Siemens Building Technologies, Inc. 1-89 1-90 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
Syntax Syntax
if (pt1.eq.FAST) then... if (pt1.eq.HAND) then...
pt1 A point name whose operational status is compared to the pt1 A point name whose operational status is compared to the
status indicator. status indicator.
• This parameter must be defined as an LFSSL or
LFSSP point type.
Use
Use
This status indicator determines if a point (pt1) is in the HAND state.
This status indicator determines if a point (pt1) is in the FAST state. This comparison is true if the point is currently being controlled
This comparison is true if the point status is FAST. through a manual override switch.
Example Example
200 IF (FAN.EQ.FAST) THEN DAMPER = 8.0 200 IF (FAN.EQ.HAND) THEN OADAMP = 8.0
Notes
Points must be terminated on a Point Termination Module (PTM) or
field panel with a manual override switch.
Siemens Building Technologies, Inc. 1-91 1-92 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
Syntax Syntax
if (pt1.eq.NGTMOD) then... if (pt1.eq.OFF) then...
pt1 A point name whose operational status is compared to the pt1 A point name whose operational status is compared to the
status indicator. status indicator.
• This parameter must be defined as an LCTLR point • This parameter must be defined as an LDI, LDO,
type. L2SP, L2SL, LOOAL, LOOAP, LFSSL, or LFSSP
point type.
Use
Use
This status indicator determines if an equipment controller is in
NIGHT mode. This status indicator determines if a point (pt1) is in the OFF state.
This comparison is true if the point status is OFF.
For some equipment controllers, NIGHT mode is also referred to as
UNOCC (unoccupied) mode. If an equipment controller is in Example
unoccupied mode, PPCL recognizes this status as NGTMOD. 200 IF (FAN.EQ.OFF) THEN RTDAMP = 3.0
Example
200 IF (CNTRL1.EQ.NGTMOD) THEN NGTSP = 78.0
Notes
This point is only valid for equipment controllers and is only valid
when used with the LCTLR point type or LTCU (pre-APOGEE only)
point type.
Siemens Building Technologies, Inc. 1-93 1-94 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
Syntax Syntax
if (pt1.eq.ON) then... if (pt1.eq.PRFON) then...
pt1 A point name whose operational status is compared to the pt1 A point name whose operational status is compared to the
status indicator. status indicator.
• This point must be defined as any LDI, LDO, L2SP, • This point must be defined as any L2SP, L2SL,
L2SL, LOOAL, or LOOAP point type. LOOAL, or LOOAP point type.
Use Use
This status indicator determines if a point (pt1) is in the ON state. This status indicator compares the operational status of a point to
This comparison is true if the point status is ON. the PRFON status indicator. This comparison is true if the proof for
the point is in the ON state.
Example
200 IF (FAN.EQ.ON) THEN RTDAMP = 3.0 Example
200 IF (FAN.EQ.PRFON) THEN OADAMP = 8.5
Siemens Building Technologies, Inc. 1-95 1-96 Siemens Building Technologies, Inc.
Program Methodology—Point Status Indicators APOGEE PPCL User’s Manual
Use Guidelines
This status indicator determines if a point (pt1) is in the SLOW state. The following guidelines will help you design a well-organized
This comparison is true if the point status is SLOW. program that is easy to modify and maintain:
Example • Use point names that describe the function of the point.
200 IF (FAN.EQ.SLOW) THEN DAMPER = 13.0
• Organize the flow of the program logic from top to bottom so that
errors are easier to trace.
Siemens Building Technologies, Inc. 1-97 1-98 Siemens Building Technologies, Inc.
Program Methodology—Converting a Sequence of Operation into APOGEE PPCL User’s Manual
Program Code
Objectives of Modular Programming For example, if a specific operation is performed five different times
during one pass of the program, you have two programming options.
The objectives of modular programming are to reduce program code
and standardize program code. 1. The first option is to duplicate the code in five different places in
the program.
Reducing Program Code
• This option adds five times as much program code.
If a section of code is used many times during one pass of the
program, that code can be defined as a subroutine (also called a • When making a change to one segment, you must
module). When that routine is needed, control is transferred to that remember to change all occurrences of that code.
part of the program.
2. The second option is to use a subroutine. Every time the
Standardizing Program Code operation is needed, program control is transferred to the
subroutine.
Subroutines help set programming standards that define where
functionality is placed in the program. If you use an established block • This option reduces the amount of mainline program code.
of code and do not change the line numbers, then that subroutine
will always be placed in the same location in the program. • When making a change, there is only one section of code to
change.
Siemens Building Technologies, Inc. 1-99 1-100 Siemens Building Technologies, Inc.
Program Methodology—Converting a Sequence of Operation into APOGEE PPCL User’s Manual
Program Code
• Except for the last line of the program, all GOTO commands must
Use the following steps and Table 1-10 to determine when it transfer control to a sequentially higher line number.
becomes beneficial to use a subroutine:
• The GOTO command in the last line of the program is the only
1. Determine how many program lines a subroutine will contain command that transfers control to the top of the program.
(excluding the RETURN command).
• If no other program lines need to be read during a pass, transfer
2. Determine how many times the subroutine will be called through
program control to the GOTO command in the last line of the
one pass of the program.
program
• If the result is "NO," then it is more efficient to use straight-
line program code. • Use GOSUB and RETURN to transfer program control to and
from subroutines. Do not use the GOTO command.
• If the result is "EVEN," then there is no benefit for using
either method. Using GOSUB
• If the result is "YES," then it is more efficient to use a The GOSUB command transfers control to a subroutine. Variable
subroutine. arguments can be passed to the subroutine from the mainline code
using $ARG local variables (if applicable). The values in the $ARG
points replace their respective point values.
Siemens Building Technologies, Inc. 1-101 1-102 Siemens Building Technologies, Inc.
Program Methodology—Converting a Sequence of Operation into APOGEE PPCL User’s Manual
Program Code
• Simulate a sensor or fan motor failure and see how the program
reacts.
The precautions taken in programming and testing will show you
how the program processes errors and help prevent downtime when
the system encounters unusual operating conditions.
Siemens Building Technologies, Inc. 1-103 1-104 Siemens Building Technologies, Inc.
Program Methodology—Converting a Sequence of Operation into APOGEE PPCL User’s Manual
Program Code
• Comment lines are especially helpful for describing subroutines Table 1-11 provides an example of a decision table that defines six
and areas of program code that are difficult to understand. pieces of equipment and four modes of operation.
You must enter the letter C after the line number to prevent the Table 1-11. Example of a Decision Table.
program from interpreting your comments as program commands.
Modes of Operation
For example:
200 C THIS COMMAND WILL TURN ON SFAN01 Equipment type Shutdown Day mode Smoke Warm-up
210 C IF RMTEMP VALUE FALLS BELOW 68 OR Supply Fan Off On On On
220 C RISES ABOVE 78. SFAN01 WILL REMAIN
Return Fan Off On On On
230 C ON/OFF FOR AT LEAST 5 MINUTES.
CC Valve Closed Modulate Modulate Closed
NOTE: The device and software used to program PPCL
determines how comment lines must be entered. For Mixing Dampers Closed Modulate Modulate Closed
more information on using comment lines, see the user's Supply Fan Vol Modulate Modulate Open Modulate
manual for the device or software you are using. Return Fan Vol Modulate Modulate Open Modulate
Siemens Building Technologies, Inc. 1-105 1-106 Siemens Building Technologies, Inc.
Program Methodology—Converting a Sequence of Operation into APOGEE PPCL User’s Manual
Program Code
2. Check outside air temperatures Defining the modes of operation helps you design the code in a
highly organized manner.
3. Open/close dampers as needed
3. Identify specific controls and procedures that need program
4. Start/stop fans code. Look for key phrases, such as:
From this list, you would begin writing program code to accomplish "This system must control..."
these functions.
"Will perform..."
Solving a Programming Problem "Cycle..."
When you first start programming in PPCL, you should have a "Calculate..."
problem-solving method. The time you spend organizing your ideas
Each of these phrases becomes some type of control for which
in advance helps prevent program logic flaws.
you will write PPCL code.
The following problem-solving example begins with the sequence of 4. Classify each type of control as a mode of operation.
operation, continues through the testing, and ends with documenting
the final program code. 5. Use a decision table or pseudocode to determine the order in
which the tasks should be performed.
Either of these methods is acceptable, or you may find another
method to organize the tasks. Use the method that is the easiest
and most helpful for you.
Siemens Building Technologies, Inc. 1-107 1-108 Siemens Building Technologies, Inc.
Program Methodology—Converting a Sequence of Operation into APOGEE PPCL User’s Manual
Program Code
6. Create program modules and start writing code for each mode of
operation.
• Start with one mode and code the solution.
1. Before you actually use a PPCL program, run the program and
verify that it works.
Depending on your experience writing PPCL programs, you may
not write an error-free program every time. Getting programs to
work properly takes time and patience.
2. Simulate conditions that the program will encounter.
3. Test the program by entering information outside the defined
limits of the program.
4. Simulate an equipment failure and see how the program
responds.
Siemens Building Technologies, Inc. 1-109 1-110 Siemens Building Technologies, Inc.
APOGEE PPCL User’s Manual
Chapter 2 discusses the following topics: The duty cycling (DC) function coordinates the operation of all
available equipment to compensate for additional equipment
• Concepts behind some of the major control applications in the capacity that is not normally needed. During normal system
APOGEE Automation System, namely: operation, some equipment is cycled off for short periods of time to
distribute equipment wear and reduce operating costs.
— Duty Cycling (DC)
Applications that can use ON/OFF switching in hourly patterns work
— Enthalpy and Dry Bulb Economizer Control best with a duty cycling program.
— Peak Demand Limiting (PDL) CAUTION:
• Procedures the system uses to schedule operations and optimize Be careful when designing your programs so that
system use, namely: functions do not conflict. If points used for DC are
also commanded by another application, such as
— Start/Stop Time Optimization (SSTO) Time-of-Day (TOD), one program may interfere with
the operation of the other if both functions are trying
— Time-of-Day (TOD) to control a point during the same time period.
For specific information on using the PPCL commands identified in Example
this chapter, see Chapter 3–Syntax.
The following example uses duty cycling in a school building to
control a hall fan, called HFAN.
• In order to conserve energy, the fan will run only during the times
when students are in the hall.
• In this school, classes start on the hour and last for 50 minutes.
• Students are in the hall during a 10-minute period before the next
class.
• Since the hall that HFAN serves has good ventilation, the fan
should run for the last 15 minutes of the hour and for the first five
minutes of the next hour.
Siemens Building Technologies, Inc. 2-1 2-2 Siemens Building Technologies, Inc.
Control Option Comparisons—Duty Cycling (DC) APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 2-3 2-4 Siemens Building Technologies, Inc.
Control Option Comparisons—Enthalpy and Dry Bulb Economizer Control APOGEE PPCL User’s Manual
Example
PDL is monitoring an electrical meter that supplies power to three air
handling units and some auxiliary equipment. Two of the air handlers
are currently ON while the third air handler is about to be turned ON.
If all three air handlers and the auxiliary equipment are operating at
one time, PDL predicts that electrical demand will exceed the peak
setpoint of 500 kWh.
Siemens Building Technologies, Inc. 2-5 2-6 Siemens Building Technologies, Inc.
Control Option Comparisons—Peak Demand Limiting (PDL) APOGEE PPCL User’s Manual
Why Use PDL Instead of Duty Cycling? Distributed Peak Demand Limiting
Although duty cycling (DC) can also be used to reduce electrical With Distributed PDL, a field panel on the network monitors meter
demand, duty cycling only controls loads according to a time readings, forecasts the demand, and assigns shed targets to the
schedule. The PDL function can monitor the total electrical demand other field panels on the network.
and prevent the system from exceeding a demand setpoint.
NOTE: Distributed PDL can only work on Protocol 2 networks.
Siemens Building Technologies, Inc. 2-7 2-8 Siemens Building Technologies, Inc.
Control Option Comparisons—Peak Demand Limiting (PDL) APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 2-9 2-10 Siemens Building Technologies, Inc.
Control Option Comparisons—Start/Stop Time Optimization (SSTO) APOGEE PPCL User’s Manual
Defining SSTO An adjusted start time (ast) and adjusted stop time (asp) are added
to or subtracted from the times calculated by SSTO. If the ast or asp
Three PPCL commands are defined in the field panel for SSTO. They
value reaches a certain limit, SSTO is forced to start or stop at the
must be specified in the following order:
earliest (est) or latest (lst) time.
1. TODMOD – Defines the specific mode for each day of the week.
The variables ast and asp may change to help tune the times. If
This command is shared with the Time-Of-Day group of
allowed to reach a high number, it is possible for the following to
statements and is necessary for SSTO to work.
occur:
2. SSTOCO – Establishes the thermal characteristics of the
building based on how the building reacts to changes in • ast may adjust the calculated start time (cst) past the earliest start
temperature. time (est) or latest start time (lst).
3. SSTO – Calculates optimal start and stop times. • asp may adjust the calculated stop time (csp) past the latest start
All optimization calculations and equipment control are performed in time (lst) or latest stop time (lsp).
the field panel where the SSTO and SSTOCO commands are This means that the equipment always starts or stops at the earliest
defined. Each program within a field panel may also perform SSTO or latest start or stop time.
calculations for up to 5 zones.
Each day, the SSTO statement uses the heating auto-tune
CAUTION: coefficient (hceof4) and the cooling auto-tune coefficient (ccoef4)
Be careful when designing your programs so that defined in the SSTOCO statement to adjust the calculated start time
functions do not conflict. If points used for SSTO are (cst) and the calculated stop time (csp).
also commanded by another application, such as
Duty Cycling (DC), one program may interfere with Ast and Asp Initial Settings
the operation of the other if both functions are trying
Set the ast and asp variables to zero during initial setup of the SSTO
to control a point during the same time period.
statement. If the SSTO statement has been set up properly, these
values typically stay below 5 times the variables hcoef4 or ccoef4.
How SSTO Adjusts the Start and Stop Times
The following abbreviations are used in this section: If the ast or asp variables are continually incrementing or
decrementing the calculated times, then check the SSTO setup and
asp Adjusted stop time examine the SSTOCO coefficients.
ast Adjusted start time
Siemens Building Technologies, Inc. 2-11 2-12 Siemens Building Technologies, Inc.
Control Option Comparisons—Start/Stop Time Optimization (SSTO) APOGEE PPCL User’s Manual
SSTO Formulas
Cooling Season—Optimum Start Time
The following formulas, used for calculating the optimal start and stop
times during the heating and cooling seasons, are outlined on the If the indoor temperature is less than the desired temperature, then the
following pages: optimum start time is LB.
• Heating Season—Optimum Start Time If the indoor temperature is greater than or equal to the desired
temperature, then the optimum start time is:
• Heating Season—Optimum Stop Time
OB - (d * CC) - (d * f * (CT/10)) + AB
• Cooling Mode at Occupancy Begin
Where:
• Cooling Mode at Occupancy End
OB = Occupancy begin time from SSTO command.
• Heating Mode at Occupancy Begin
d = Indoor temperature minus the desired temperature.
• Heating Mode at Occupancy End CC = Cooling coefficient (ccoef1) from SSTOCO command.
NOTE: The example values for coefficients shown in this manual f = Outdoor temperature minus the desired temperature.
should not be used without first calculating what the
number should be. CT = Cooling transfer coefficient (ccoef3) from SSTOCO
command.
AB = Adjust begin time from SSTO command.
Siemens Building Technologies, Inc. 2-13 2-14 Siemens Building Technologies, Inc.
Control Option Comparisons—Start/Stop Time Optimization (SSTO) APOGEE PPCL User’s Manual
OE = Occupancy end time from SSTO command. OB = Occupancy begin time from SSTO command.
CR = Cooling retention coefficient in hours (ccoef2) from d = Indoor temperature minus the desired temperature.
SSTOCO command.
HC = Heating coefficient (hcoef1) from SSTOCO command.
d = Indoor temperature minus the desired temperature.
f = Outdoor temperature minus the desired temperature.
f = Outdoor temperature minus the desired temperature.
HT = Heating transfer coefficient (hcoef3) from SSTOCO
AE = Adjust end time from SSTO command. command.
AB = Adjust begin time from SSTO command.
If the indoor temperature is greater than or equal to the desired
temperature, the optimum stop time is LE:
If the indoor temperature is greater than or equal to the desired
Where: temperature, then the optimum stop time is LB:
Siemens Building Technologies, Inc. 2-15 2-16 Siemens Building Technologies, Inc.
Control Option Comparisons—Start/Stop Time Optimization (SSTO) APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 2-17 2-18 Siemens Building Technologies, Inc.
Control Option Comparisons—Start/Stop Time Optimization (SSTO) APOGEE PPCL User’s Manual
If the indoor temperature is less than desired the temperature minus one
If the indoor temperature is less than the desired temperature minus one
degree, then:
degree, then:
AB = AB - HA
AE = AE - CA
Where:
Where:
AB = Adjust begin time from SSTO command.
AE = Adjust end time from SSTO command.
HA = Heating auto-tune coefficient (hcoef4) from SSTOCO
CA = Cooling auto-tune coefficient (ccoef4) from SSTOCO
command.
command.
Siemens Building Technologies, Inc. 2-19 2-20 Siemens Building Technologies, Inc.
Control Option Comparisons—Start/Stop Time Optimization (SSTO) APOGEE PPCL User’s Manual
CAUTION:
If the indoor temperature is less than the desired temperature minus one Be careful when designing your programs so that
degree, then: functions do not conflict. If points used for TOD are
AE = AE + HA also commanded by another application, such as
Duty Cycling (DC), one program may interfere with
Where: the operation of the other if both functions are trying
AE = Adjust end time from SSTO command. to control a point during the same time period.
HA = Heating auto-tune coefficient (hcoef4) from SSTOCO
command.
Defining Time-Of-Day
The following PPCL commands are defined in the field panel for the
TOD function:
Siemens Building Technologies, Inc. 2-21 2-22 Siemens Building Technologies, Inc.
Control Option Comparisons—Time-of-Day (TOD) APOGEE PPCL User’s Manual
NOTE: Schedules can also be created using the Time-of-Day Example 2: Holidays defined in TOD calendar, but not in PPCL
(TOD) calendar that offers a menu-driven interface. For
The following example illustrates the results when defining holidays
complete information on defining and maintaining daily
using the TOD Calendar.
operating schedules using the TOD calendar, see the
APOGEE Field Panel User’s Manual (125-3000) or the The TOD calendar has the following entries:
Field Panel User’s Manual (125-1895) for pre-APOGEE
field panels. 03-May-1994 Holiday
08-Sep-1994 Holiday
Example 1: Holidays defined in PPCL, but not in the TOD calendar
The following example illustrates the results when defining holidays The program contains the following PPCL TOD commands:
using the PPCL HOLIDA command. 100 TODMOD(1,1,1,1,1,1,1)
50 HOLIDA(5,3,9,8) 110 TOD(1,1,18:00,07:00,LITE1)
120 TOD(1,1,18:00,19:00,FAN1)
The following TOD commands are defined in the TOD database:
130 TOD(16,1,17:00,10:30,LITE1)
Monday – Sunday
Based on this schedule, the following will occur:
07:00:00 OFF LITE1
Siemens Building Technologies, Inc. 2-23 2-24 Siemens Building Technologies, Inc.
Control Option Comparisons—Time-of-Day (TOD) APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 2-25 2-26 Siemens Building Technologies, Inc.
Control Option Comparisons—Time-of-Day (TOD) APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 2-27 2-28 Siemens Building Technologies, Inc.
APOGEE PPCL User’s Manual
Duty Cycling
Chapter 3–Command Syntax DC .............................................................................................. 29
DCR............................................................................................ 31
Enthalpy Optimization
Overview GOSUB ...................................................................................... 50
RETURN .................................................................................... 94
Chapter 3 describes the syntax, functionality, and special exceptions
for each command, as well as related commands. GOTO Statement
GOTO......................................................................................... 57
This chapter is arranged alphabetically by command. The following
table of contents groups the commands by control function: Local Variables
LOCAL........................................................................................ 65
Activate/Deactivate PPCL Lines
Operator Interface Program
ACT .............................................................................................. 4
DEACT ....................................................................................... 33 OIP ............................................................................................. 75
DISABL....................................................................................... 34
Peak Demand Limiting
ENABLE ..................................................................................... 45
PDL ............................................................................................ 80
Closed Loop Control PDLDAT ..................................................................................... 83
ADAPTM ...................................................................................... 5 PDLDPG .................................................................................... 85
ADAPTS ..................................................................................... 16 PDLMTR .................................................................................... 87
LOOP ......................................................................................... 66 PDLSET ..................................................................................... 90
Siemens Building Technologies, Inc. 3-1 3-2 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Time of Day • A maximum of 16 lines of PPCL code can be controlled with one
ACT command.
HOLIDA ...................................................................................... 59
TOD..........................................................................................110 Example
TODMOD .................................................................................112 100 IF (TIME.GT.8:00.AND.TIME.LT.17:00) THEN
TODSET...................................................................................114 ACT(120) ELSE DEACT(120)
Notes
The ACT and ENABLE commands can be used interchangeably.
See also
DEACT, DISABL, ENABLE
Siemens Building Technologies, Inc. 3-3 3-4 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 3-5 3-6 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
The ADAPTM damper time constant parameter entry (in tch Heating time constant (seconds).
seconds) is calculated using this formula: • This parameter can be a point name, local variable
tcd = Tdownstream coils + Tsensor + Tdamper actuator name, or decimal number.
• This value must be greater than or equal to 3 times the
st value.
Where:
• For applications with dampers and cooling only (no
tcd = ADAPTM damper time constant parameter entry (in
heating), set tch to the value of tcd.
seconds)
The time constant of the heating coil alone is calculated using
Tdownstream coils = time constants of coils alone downstream of the following formula:
dampers (between the dampers and the duct temperature
CFM max L / sair max
sensor).
Theating coil = 0.02 = 0.15
GPM max L / shot water max
Tsensor = time constant of the supply air sensor (usually about
30 seconds) Where:
CFMmax = Maximum or design airflow rate in cubic feet per
minute
Tdamper actuator = stroke time of the damper actuator (often 30
seconds) GPMmax = Maximum or design hot water flow rate in gallons per
minute
Example
The AHU has mixed air dampers, a heating coil, and a cooling l/s air max = Maximum or design air flow rate in liters per second
coil.
l/s hot water max = Maximum or design hot water flow rate in liters
per second
The heating coil alone has a 5 second time constant. The T downstream coils = time constants of other coils alone
cooling coil alone has a 20 second time constant. The supply downstream of heating coil (between heating coil and duct
air temperature sensor time constant is 30 seconds. The temperature sensor).
damper actuator stroke time is 30 seconds. Therefore, the
damper time constant is:
T sensor = time constant of the supply air sensor (usually about
30 seconds).
Heating coil time constant: 5 seconds
Cooling coil time constant: 20 T hc actuator = stroke time of the heating coil actuator (often 30
Supply air temp. sensor: 30 seconds).
Damper actuator: 30 Example
Total 85 seconds An AHU has a design CFM of 50000 and the design flow
through the heating coil is 465 gpm. The heating coil valve has
Siemens Building Technologies, Inc. 3-7 3-8 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
L/s air max = Maximum or design air flow rate in liters per second
her Heating end of range (in percent). This parameter tells
L/s chilled water max = Maximum or design chilled water flow rate in ADAPTM what percentage of its output is used for heating. It is
liters per second assumed that the beginning of the heating range is at 0%.
• This parameter can be a point name, local variable
Siemens Building Technologies, Inc. 3-9 3-10 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
If other PPCL code is used, dbr must still be the value of the
output of ADAPTM at which mixed air dampers begin to open
from minimum position.
Typically, the value for her will be the same as the second to
the last parameter for the TABLE statement controlling the If the value of dbr varies slightly due to the path taken in the
heating coil. For example, as shown in the line of code below, code, choose a nominal value for dbr. ADAPTM can handle
this value is 45. minor variations in the value of dbr.
05030 TABLE (%X%VRT,%X%HCO,0,100,45,0) der Damper end of range. This parameter, along with the Damper
Beginning of Range (dbr), tells ADAPTM what percentage of its
If the value of her varies slightly due to the path taken in the output is used for mixed air damper control (free cooling).
code, choose a nominal value for her. ADAPTM can handle Damper End of Range also tells ADAPTM what percentage of
minor variations in the value of her. its output is used for cooling since der defines the beginning of
the cooling coil range.
dbr Damper beginning of range. This parameter, along with the • This parameter can be a point name, local variable
Damper End of Range (der), tells ADAPTM what percentage of name, or decimal number.
its output is used for mixed air damper control (free cooling). • This value must be:
• This parameter can be a point name, local variable Greater than or equal to dbr, and
name, or decimal number. Less than or equal to 100.
• This value must be: • For applications with heating and dampers only (no
Greater than or equal to her, and cooling), set der to 100.
Less than der. • For applications with heating and cooling only (no
• For applications with heating and cooling only (no dampers), set der to the value of dbr.
dampers), set dbr to the value of der. • The end of the cooling range is assumed to be at the
• For applications with dampers and cooling only (no adaptive control output of 100%.
heating), set dbr to 0
The following figure shows the relationship of der to the
The following figure shows the relationship of dbr to the operation of the heating, dampers (for cooling), and cooling coil
operation of the heating, dampers and cooling outputs. outputs.
Siemens Building Technologies, Inc. 3-11 3-12 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 3-15 3-16 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Suggested Sample Times L/s chilled water max = Maximum or design chilled water rate in liters
Temperature Loops (single input, single output) per second.
• 5 seconds for fast loops;
Tsensor = time constant of the supply air sensor; typically about 30
• 10 seconds for slow loops.
seconds.
Humidity Loops
Tcc actuator = stroke time of the cooling coil actuator; typically 30
• 5 to 10 seconds for return air or space loop;
seconds.
• 1 or 2 seconds for a discharge air loop.
Heating Coils
Flow and Static Pressure Loops
• 1 or 2 seconds Use the following formula:
CFM max L / s air max
tc = 0 . 02 or 0 . 15 + T sensor + T hc actuator
kc Control gain. GPM max L / s hot water max
• This parameter can be a point name, local variable
name, or decimal number. Where:
• This value must be greater than 0. tc = ADAPTS heating time constant parameter entry (in
• Since ADAPTS will adapt to the process it is controlling, seconds).
set kc to 3.0 for both English and SI Unit applications.
CFMmax = Maximum or design airflow rate in cubic feet per
tc Time constant (in seconds). The Time Constant value is a minute.
rough estimate of the time constant of the process.
• This parameter can be a point name, local variable L/s air max = Maximum or design airflow rate in liters per second.
name, or decimal number.
• This value must be greater than or equal to 3 times the GPMmax = Maximum or design hot water flow rate in gallons per
st value. minute.
Note: Increasing the value of tc slows down the adaptation
process. l/s hot water max = Maximum or design hot water rate in liters per
second.
Cooling Coils
Use the following formula: Tsensor = time constant of the supply air sensor; typically about 30
seconds.
CFM max L / s air max
tc = 0 . 25 or 2 . 0 + T sensor + T cc actuator
GPM L / s chilled Thc actuator = stroke time of the heating coil actuator; typically 30
max water max
seconds.
Where:
tc = ADAPTS cooling time constant parameter entry (in Mixed Air Temperature
seconds). Use the following formula:
tc = T ma sensor + T damper actuator
CFMmax = Maximum or design airflow rate in cubic feet per
minute.
Where:
L/s air max = Maximum or design airflow rate in liters per second. tc = ADAPTS mixed air temperature time constant parameter
entry (in seconds); typically 40 seconds.
GPMmax = Maximum or design chilled water flow rate in gallons
per minute. Tma sensor = time constant of the mixed air temperature sensor;
typically about 30 seconds.
Siemens Building Technologies, Inc. 3-17 3-18 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Tdamper actuator = stroke time of the mixed air damper actuator; Example 1
typically 30 seconds. For static pressure control, enter a small negative value (-0.1) to
cover the possibility of a miscalibrated sensor or small negative
Duct Static Pressure air pressures when the fan is off.
• 6 seconds for small size systems,
• 10 seconds for medium size systems, and Example 2
• 20 seconds for large size systems. For supply air temperature control with mixed air dampers, use
30°F or 0°C. The mixed air dampers should prevent any lower
Airflow Control temperatures from entering the supply duct even if the heating
• 6 seconds for small size systems, coil is not operating or hot water is absent.
• 10 seconds for medium size systems, and
• 20 seconds for large size systems. hlpv High limit of process variable. The hlpv is typically the highest
value that the pv is expected to achieve. This value may differ
Duct Humidity Control from the sensor’s high range.
• This parameter can be a point name, local variable
• 50 seconds for small size systems, name, or decimal number.
• 100 seconds for medium size systems, and • This value must be greater than llpv.
• 200 seconds for large size systems.
Example 1
Cascade Control (setpoint reset)
For static pressure control, enter the highest pressure that will
For the return air/room air (outer/slow) temperature or humidity occur in the supply duct. The highest pressures occur on startup
loop: and when there are large upsets.
• 100 seconds for small size systems/rooms*,
• 250 seconds for medium size systems/rooms*, and Example 2
• 500 seconds for large size systems/rooms*. For supply air temperature control, use 130°F or 55°C.
* A full room should have a longer time constant than an empty room.
llcv Low limit of control variable. The llcv represents the low limit of
ra Reverse acting flag. This parameter defines the action of the
the ADAPTS output.
ADAPTS controller.
• This parameter can be a point name, local variable
• Reverse acting means cv (output) decreases as pv
name, or decimal number.
(input) increases.)
• This value must be less than hlcv.
• This parameter can be an integer, point name, or local
• For electric actuators, typically llcv is 0.0% or 0.0 volts.
variable name.
• For pneumatic actuators, typically llcv is the low end of
• Valid values are 0 and 1.
the actuator spring range.
1 = reverse acting
0 = direct acting hlcv High limit of control variable. The hlcv represents the high limit of
the ADAPTS output.
llpv Low limit of process variable. The llpv is typically the lowest • This parameter can be a point name, local variable
value that the pv is expected to achieve. This value may differ name, or decimal number.
from the sensor’s low range. • This value must be greater than llcv.
• This parameter can be a point name, local variable • For electric actuators, typically hlcv is 100.0% or 10.0
name, or decimal number. volts.
• This value must be less than hlpv. • For pneumatic actuators, typically hlcv is the high end of
the actuator spring range.
Siemens Building Technologies, Inc. 3-19 3-20 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
edb Error deadband. This parameter determines how much error err Error reporting point. ADAPTS writes to this point.
(process variable minus setpoint) must exist before ADAPTS • This parameter is entered as a point name or local
recalculates its output signal (control variable). variable name.
A zero indicates no error.
Noisy process variable signals can cause much actuator A non-zero indicates an error.
movement. Setting edb to a value equal to that of the noise will
eliminate unnecessary actuator movement. Thus, actuator
CAUTION:
repositioning, and actuator life, can be affected by the use of this
parameter. Each ADAPTS PPCL line of code must have its
• This parameter can be a point name, local variable own unique error point. Do not share one error
name, or decimal number. point among multiple ADAPTS lines.
• This value must be greater than or equal to 0.0.
• The drawback when setting edb to a non-zero value is ADAPTS Example
lack of control accuracy when near setpoint. The 2000 C ADAPTS CONTROL STATISTICS (LOGICAL
effective setpoint becomes the value of parameter sp +/-
2002 C FIRMWARE) STATIC PRESSURE CONTROL
edb.
2004 C DIRECT CONTROL LOOP
• Initially set edb to the loop’s maximum allowable
setpoint tolerance. 2006 C INPUT = %X%SSP
For temperature and humidity loops, edb can be 2008 C OUTPUT = %X%LP1
very low–even 0.0 is acceptable 2010 C SETPOINT = %X%SSS
For static pressure and flow loops, start with 1% to 2012 C SAMPLE TIME = 1 SECOND
3% of the maximum input value. 2014 C GAIN = %X%KC
• If small actuator oscillations are observed, edb can be 2016 C TIME CONSTANT = %X%TC
increased in value until the maximum setpoint tolerance 2018 C REVERSE ACTING FLAG = 1
is reached. 2020 C LOW LIMIT OF INPUT = -0.1
2022 C HIGH LIMIT OF INPUT = 5.0
npv Noisy process variable. Noisy means that the value of the
2024 C LOW LIMIT OF OUTPUT = 0.0
process variable jumps up or down abruptly from one sensor
scan to another. 2026 C HIGH LIMIT OF OUTPUT = 100.0
2028 C ERROR DEADBAND = %X%DB1
Some processes inherently create a noisy process variable 2030 C NOISY PROCESS VARIABLE = %X%NP1
signal. An airflow signal, for example, can be very noisy at the 2034 C ERROR REPORT POINT = %X%ERR
low end of its sensor range due to a lack of resolution. Other 2036 IF(%X%RP1.LT.%X%LP1) THEN GOTO 2042
processes can be noisy under certain conditions. For example, a 2038 ADAPTS(%X%SSP,%X%LP1,%X%SSS,1,%X%KC,
static pressure signal can be noisy at certain fan speeds and %X%TC,1,-0.1,5.0,0.0,100.0,%X%DB1,
with a certain sensor positioned too close to the fan.
%X%NP1,%X%ERR)
• This parameter can be an integer, point name, or local
variable name. 2040 C SUPPLY FAN RAMP
• In general, follow these rules: 2042 TABLE ($SPFRMP,%X%RP1,0,0,180,100)
npv = 1 (noisy) for a loop with a very noisy pv, such 2044 C SUPPLY FAN VFD SIGNAL
as airflow or static pressure control. Adaptation is 2046 MIN (%X%SVO,%X%LP1,%X%RP1)
slowed with npv = 1. ......
npv = 0 (not noisy) for a loop with a pv that is not
noisy or only a little noisy, such as temperature
control or humidity control.
Siemens Building Technologies, Inc. 3-21 3-22 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Use
ALARM (Alarm state)
Adaptive control technology is a closed loop control application,
which automatically adjusts the field panel operating parameters to Unitary pre-APOGEE APOGEE BACnet
compensate for changes that continuously occur during the normal
building control process. With adaptive control technology, tuning
and retuning are not required.
Syntax
Either the ADAPTM or ADAPTS control statement can be
implemented as a one-line replacement for an existing LOOP ALARM(pt1,...,pt16)
statement in PPCL. pt1 Name of a point to be placed into the ALARM state.
through • Local variables cannot be used.
ADAPTS is a general purpose single input, single output controller pt16
for both linear and non-linear processes. Example applications are
mixed air temperature, static pressure, return airflow, and humidity Use
control.
Forces the specified points into the ALARM state.
To be able to control, adaptive control requires that the loop be:
A maximum of 16 points can be changed with one ALARM
command.
• Controllable–this means that the sensor is in the right range and
the output is sufficient to bring the process variable to setpoint.
Example
• Open-loop Stable–this means that the process can achieve a 100 IF (ROOM.GT.80.0) THEN ALARM(ROOM25)
steady state for every position of the final output device. (All AHU
loops are open-loop stable.) Notes
• Direct or Reverse Acting–this means the process is either • Points must reside in the same device as the program.
always direct or always reverse acting. That is, the process does
• Do not use ALARM to command points over the network.
not change its action (direction or sign) within the control range.
• Points must be defined as alarmable and be enabled for alarming
• Modulating–this refers to the loop’s output device, such as a
in order to be placed into the alarm-by-command state.
cooling coil with a modulating water valve. For example, DX
cooling or step controlled electric heat, cannot be controlled by • The status *AC* is displayed when a point is commanded to the
the ADAPTM or ADAPTS statements in PPCL. ALARM state.
• Not Excessive in Dead Time–this means that the total delay in
the sensor and actuator signals should not exceed two times the See also
time constant of the process. DISALM, ENALM, HLIMIT, LLIMIT, NORMAL
NOTE: The Soft Controller does not support adaptive control
technology.
See also
ADAPTM, LOOP
Siemens Building Technologies, Inc. 3-23 3-24 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
AUTO(pt1,...,pt16) DAY(pt1,...,pt16)
pt1 Name of a point to be set to AUTO status. pt1 Name of a point to be set to DAY mode.
through • This parameter must be a LOOAL or LOOAP point through • This parameter must be a logical controller (LCTLR)
pt16 type. pt16 point type.
Use Use
Changes the operational status of an ON/OFF/AUTO point to AUTO. Changes a LCTLR point to DAY mode status.
A maximum of 16 points can be changed with one AUTO command. A maximum of 16 points can be changed with one DAY command.
Example Example
100 AUTO(EFAN1,EFAN2,EFAN3) 100 IF (TIME.LT.7:00.OR.TIME.GT.18:00) THEN
NIGHT(LCTLR2) ELSE DAY(LCTLR2)
See also
Notes
FAST, OFF, ON, SLOW
For some equipment controllers, DAY mode is also referred to as
OCC (occupied) mode. If an equipment controller is in OCC mode,
PPCL recognizes this status as DAY.
See also
NIGHT
Siemens Building Technologies, Inc. 3-25 3-26 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Example 2
Syntax 200 DBSWIT(1,RMTEMP,55,58,SFAN,RFAN)
DBSWIT(type,input,low,high,pt1,...,pt12)
type The type of dead band switch action.
• Valid values are 0 and 1.
Use
Provides the ON/OFF switching action of an output point. This is the
software equivalent of a thermostat.
Siemens Building Technologies, Inc. 3-27 3-28 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Use
DC (Duty cycle)
Coordinates the operation of all available equipment to compensate
Unitary pre-APOGEE APOGEE BACnet for additional equipment capacity that is not normally needed. During
normal system operation, some equipment is cycled off for short
periods of time to distribute equipment wear and reduce operating
costs.
Syntax
A maximum of 8 points can be controlled with one DC command.
DC(pt1,pat1,...,pt8,pat8)
pt1 Name of the output points to be duty cycled. Do the following to create a duty cycle pattern:
through • This parameter can be an LDO, LOOAL, LOOAP,
pt8 L2SL, or L2SP point type.
1. Divide one-hour into four 15-minute segments.
• Local, virtual, and physical points are valid for pt1, 2. Determine the ON/OFF state for each 5-minute increment of the
pt2, pt3, and pt4. segment.
pat1 Hourly pattern that describes how the point is duty cycled. 3. Using Table 3-1, assign a number to represent the ON/OFF
through • This parameter can be a local, physical, or virtual pattern for each 15-minute segment.
pat8 point, as well as an integer.
• This pattern is a four-digit code using the numbers 0 4. After the patterns are defined, enter the code numbers in reverse
through 7. order. The right-most digit defines the first 15-minute segment of
• Each digit represents the on/off pattern for one 15- the hour. The left-most digit defines the last 15-minute segment
minute segment of an hour. Table 3-1 lists the of the hour.
numeric codes and their ON/OFF patterns.
Example
Table 3-1. Duty Cycle Patterns and Numerical Codes. 1000 C THIS DC COMMAND DUTY CYCLES HFAN
Point Status During this Time 1010 C ACCORDING TO THE FOLLOWING SCHEDULE:
Code Number for
1020 C
First 5 Second 5 Third 5 this 15-minute
On/Off Pattern 1030 C FIRST 15 MINUTES – ON, OFF, OFF (1)
minutes minutes minutes 1040 C SECOND 15 MINUTES – OFF, OFF, OFF (0)
OFF OFF OFF 0 1050 C THIRD 15 MINUTES – OFF, OFF, OFF (0)
ON OFF OFF 1 1060 C FOURTH 15 MINUTES – ON, ON, ON (7)
1070 C
OFF ON OFF 2
1100 DC(HFAN,7001)
ON ON OFF 3
OFF OFF ON 4 Notes
ON OFF ON 5 The DC command has a priority of NONE. Therefore, the PPCL
OFF ON ON 6 program must be structured with IF/THEN/ELSE commands to
prevent conflicts between DC and other commands with the same
ON ON ON 7 priority.
See also
DCR
Siemens Building Technologies, Inc. 3-29 3-30 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Example
DCR (Duty cycle routine) 200 C THIS COMMAND WILL TURN ON IF
Unitary pre-APOGEE APOGEE BACnet 210 C SFAN'S VALUE FALLS BELOW 68 OR
220 C RISES ABOVE 78. THE POINT SFAN01
230 C WILL REMAIN ON/OFF FOR AT LEAST 5
240 C MINUTES ON EACH CYCLE.
Syntax 250 DCR(SFAN01,RM109,78.0,68.0)
DCR(pt1,temp1,high1,low1,...,pt4,temp4,high4,low4) Notes
pt1 Point names of the output points to be duty cycled. The DCR command has a priority of NONE. Therefore, the PPCL
through • This parameter can be an LDO, logical, physical, or program must be structured with IF/THEN/ELSE commands to
pt4 virtual point type. prevent conflicts between DCR and other commands with the same
priority.
temp1 Point names of the space temperature points.
through
temp4 See also
Use
Duty cycles an output point to keep a corresponding temperature
within the low and high values of a dead band.
Siemens Building Technologies, Inc. 3-31 3-32 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
DEACT(line1,...,line16) DEFINE(abbrev,string)
line1 Valid PPCL line numbers abbrev Abbreviation used in other PPCL statements. Represents the
through • Line numbers must be entered as integers ranging string parameter.
line16 from 1 to 32767.
• A range of PPCL lines cannot be defined using the string Actual text string that will be substituted where the
DEACT command. abbreviation is used. The string text usually contains a
significant portion of a long point name.
Use
Use
Disables lines of PPCL code to prevent them from being examined
or executed. Creates an abbreviated notation for a long point name. DEFINE
allows program logic to be easily duplicated provided your facility
• The DEACT command only affects the lines of PPCL program for uses a structured naming convention for point names.
the device where the program resides.
A percentage sign (%) must be placed before and after the
• DEACT only disables PPCL lines that are specifically defined in abbreviation when it is used in the program.
the command.
Example
• A maximum of 16 lines of PPCL code can be controlled with one 10 DEFINE(AHU,”BUILDING1.AHU01.”)
DEACT command. 20 ON(“%AHU%SFAN”)
Example If DEFINE is not used, this same line of code looks like the following:
100 IF (TIME.GT.8:00.AND.TIME.LE.17:00) THEN 20 ON(“BUILDING1.AHU01.SFAN”)
ACT(120,130) ELSE DEACT(120,130)
Notes
Notes
This statement is executed when added to the field panel and does
The DEACT and DISABL commands can be used interchangeably. not require enabling or execution in the normal program flow.
See also
ACT, DISABL, ENABLE
Siemens Building Technologies, Inc. 3-33 3-34 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
DISABL(line1,...,line16) DISALM(pt1,...,pt16)
line1 Valid PPCL line numbers. pt1 Point name that should not report alarms.
through • Line numbers must be entered as integers ranging through
line16 from 1 to 32767. pt16
• A range of PPCL lines cannot be defined using the
DISABL command. Use
Disables alarm reporting for the specified points.
Use
Disables lines of PPCL code to prevent them from being examined A maximum of 16 points can be controlled with one DISALM
or executed. command.
• The DISABL command only affects the lines of PPCL program for Example
the device where the program resides. 50 IF (SFAN.EQ.OFF) THEN DISALM(ROOM1) ELSE
ENALM(ROOM1)
• DISABL only disables PPCL lines that are specifically defined in
the command. Notes
• A maximum of 16 lines of PPCL code can be controlled with one • Points must reside in the same device as the program.
DISABL command.
• Do not use DISALM to disable alarm reporting over the network.
Example
• The status *PDSB* is displayed when a point is commanded to
100 IF (TIME.GT.8:00.AND.TIME.LE.17:00) THEN
the DISALM state.
ENABLE(120,130) ELSE DISABL (120,130)
• For BACnet firmware, all three alarm events are disabled; that is,
Notes OFFNORMAL, NORMAL, and FAULT.
The DEACT and DISABL commands can be used interchangeably.
See also
See also ALARM, ENALM, HLIMIT, LLIMIT, NORMAL
ACT, DEACT, ENABLE
Siemens Building Technologies, Inc. 3-35 3-36 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
2.1 only
Syntax Syntax
DISCOV(pt1,...,pt16) DPHONE(pn#1,...,pn#16)
pt1 Point name that should not report updated changes-of-value pn#1 Telephone ID numbers that are defined in the device.
through (COV). through
pt16 pn#16
Use Use
Stops devices from reporting updated values (COVs) to the Insight Disables telephone ID numbers. The telephone ID number is a
workstation. When this command is executed, all operations that use numeric code that represents the actual telephone number defined in
COVs to function will stop. the device.
Until the points defined in this command are enabled, updates to A maximum of 16 telephone number IDs can be disabled with one
graphics, archiving, COV printing, alarming, and in some cases DPHONE command.
evaluation of equations, will stop.
Example
A maximum of 16 points can be controlled with one DISCOV 532 DPHONE(1,2,3,5,6)
command.
Notes
Notes
Do not use the DPHONE command over the network.
Points defined in the statement must reside in the same device as
the DISCOV command. See also
Example EPHONE
50 IF (SFAN.EQ.OFF) THEN DISCOV(ROOM1, ROOM2)
ELSE ENCOV(ROOM1,ROOM2)
See also
ENCOV
Siemens Building Technologies, Inc. 3-37 3-38 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
EMAUTO(pt1,...,pt16) EMFAST(pt1,...,pt16)
pt1 Point name to be set to AUTO status with emergency priority. pt1 Point name to be set to FAST status with emergency priority.
through • This parameter can be a LOOAL or LOOAP point. through • This parameter can be a LFSSL or LFSSP point.
pt16 pt16
Use Use
Changes the operational status of an ON/OFF/AUTO point to AUTO Changes the operational status of a FAST/SLOW/ STOP point to
(local control) with emergency priority. FAST with emergency priority.
A maximum of 16 points can be changed with one EMAUTO A maximum of 16 points can be changed with one EMFAST
command. command.
Siemens Building Technologies, Inc. 3-39 3-40 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
EMOFF(pt1,...,pt16) EMON(pt1,...,pt16)
pt1 Point name to be set to OFF status with emergency priority. pt1 Point name to be set to ON status with emergency priority.
through • This parameter can be a LDI, LDO, LFSSL, LFSSP, through • This parameter can be a LDI, LDO, L2SL, L2SP,
pt16 LOOAL, LOOAP, L2SL, or L2SP point. pt16 LOOAL, or LOOAP point.
Use Use
Changes the operational status of the specified points to OFF with Changes the operational status of the specified points to ON with
emergency priority. emergency priority.
A maximum of 16 points can be changed with one EMOFF A maximum of 16 points can be changed with one EMON command.
command.
See also
See also
EMAUTO, EMFAST, EMOFF, EMSET, EMSLOW
EMAUTO, EMFAST, EMON, EMSET, EMSLOW
Siemens Building Technologies, Inc. 3-41 3-42 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
EMSET(value,pt1,...,pt15) EMSLOW(pt1,...,pt16)
value Value to which points are commanded. pt1 Point name to be set to SLOW status with emergency priority.
• This value can be a decimal, integer, point name, or through • This parameter can be a LFSSL or LFSSP point.
local variable. pt16
pt1 Point name to be set to the specified value with emergency Use
through priority.
pt15 • This parameter can be a LAI or LAO point.
Changes the operational status of a FAST/SLOW/ STOP point to
SLOW with emergency priority.
Use
A maximum of 16 points can be changed with one EMSLOW
Changes output points to a new value with emergency priority. command.
A maximum of 15 points can be changed with one EMSET
command. See also
EMAUTO, EMFAST, EMOFF, EMON, EMSET
See also
EMAUTO, EMFAST, EMOFF, EMON, EMSLOW
Siemens Building Technologies, Inc. 3-43 3-44 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
ENABLE(line1,...,line16) ENALM(pt1,...,pt16)
line1 Valid PPCL line numbers. pt1 Point name that should have alarm reporting enabled.
through • Line numbers must be entered as integers ranging through
line16 from 1 to 32767. pt16
• A range of PPCL lines cannot be defined using the
ENABLE command. Use
• Each PPCL line must be specified separately. Enables alarm reporting for the specified points.
Use A maximum of 16 points can be enabled for alarm reporting with one
Enables lines of PPCL so they can be examined or executed. ENALM command.
• The ENABLE command only affects the lines of PPCL program Example
for the device where the program resides. 50 IF (SFAN.EQ.ON) THEN ENALM(ROOM1) ELSE
DISALM(ROOM1)
• ENABLE only enables PPCL lines that are specifically defined in
the command. Notes
• A maximum of 16 lines of PPCL code can be controlled with one • Points must reside in the same device as the program.
ENABLE command.
• This command reverses the DISALM command.
Example
• Points must be set up for alarming and have the ability to report
100 IF (TIME.GT.8:00.AND.TIME.LT.17:00) THEN
alarms.
ENABLE(120) ELSE DISABL(120)
• This command does not override *ODSB*.
Notes
The ACT and ENABLE commands can be used interchangeably. • For BACnet firmware, all three alarm events are enabled; that is,
OFFNORMAL, NORMAL, and FAULT.
Siemens Building Technologies, Inc. 3-45 3-46 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
2.1 only
Syntax Syntax
ENCOV(pt1,...,pt16) EPHONE(pn#1,...,pn#16)
pt1 Point name that is enabled to report updated changes-of- pn#1 Telephone ID numbers that are defined in the device.
through value (COV). through
pt16 pn#16
Use Use
Enables devices to report change-of-value (COV) information to Enables telephone ID numbers. The telephone ID number is a
other nodes. When this command is executed, all operations that numeric code that represents the actual telephone number defined in
use COVs to function will start reporting. the device.
Unless the points defined in this command are disabled, updates to A maximum of 16 telephone number IDs can be enabled with one
graphics, archiving, COV printing, alarming, and in some cases EPHONE command.
evaluation of equations are reported.
Example
• Points defined in the statement must reside in the same device 530 EPHONE(1,2,3,5,6)
as the command.
Notes
• A maximum of 16 points can be controlled with one ENCOV
command. Do not use the EPHONE command over the network.
See also
DISCOV
Siemens Building Technologies, Inc. 3-47 3-48 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
FAST(pt1,...,pt16) GOSUB line# (pt1,...,pt15)
pt1 Point name to be set to FAST status. or parentheses are optional
through • This parameter can be a LFSSL or LFSSP point.
pt16 GOSUB line# pt1,...,pt15
line# Indicates which program command line number should be
FAST(@prior, pt1,...,pt15)
executed next (that is, where the subroutine starts).
@prior Defines a specific point priority. • Line numbers must be entered as integers ranging
from 1 to 32767.
pt1 Point name to be set to FAST status.
through • This parameter can be a LFSSL or LFSSP point pt1 Point name or local variables whose values are to be passed
pt15 through to the subroutine.
pt15 • This parameter can be omitted if the subroutine does
Use not use variable arguments.
Changes the operational status of a FAST/SLOW/STOP point to Use
FAST.
Subroutines are particularly useful for programs in which the same
• Acceptable point types are: LFSSL or LFSSP. calculation is carried out several times using different values.
• A maximum of 16 points can be changed with one FAST The main subroutine commands, GOSUB and RETURN are required
command. for all subroutines. When this command is executed, the line
specified in the GOSUB command is the next line evaluated. When
• A maximum of 15 points can be defined with one the computer encounters the RETURN command, the next line
FAST(@prior…) command. evaluated is the line following the GOSUB statement.
Example The variable parameters in a subroutine are designated by the local
10 IF (RMTEMP.GT.78.0)THEN FAST(@NONE, FAN1,FAN2) variables $ARG1 through $ARG15. These variables can be used by
PPCL code in the subroutine in the same way that point names and
See also constants are used.
AUTO, OFF, ON, SLOW
Multiple-Level Subroutines
A multiple-level subroutine is a block of program code that is called
from within another subroutine. Each call made within a subroutine
constitutes a level. You are limited to a total of eight levels.
Siemens Building Technologies, Inc. 3-49 3-50 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
When using multi-level subroutines, the rules that govern $ARGn The program flow through one complete pass is as follows:
variables and point name declarations for GOSUB commands
change as follows: 1. At line 130, the GOSUB command transfers control to line 1010.
2. At line 1010, the program assigns a value of 10 to PT1 and the
• $ARGn variables used in multi-level subroutines cannot be value of 20 to PT2. Line 1030 branches back to the line after the
shared between subroutine levels. That is, you cannot assign the GOSUB command (at line 130). After the program returns to the
value of PT1 to $ARG1 in the call to level one and then assign main line code, the values of the two points become:
the value of PT2 to $ARG1 in the call to level two.
PT1 = 10
• When defining a new level in a multi-level subroutine, list the PT2 = 20
previously-defined $ARGn variables in sequential order to
preserve their values. 3. The program continues to sequentially evaluate program lines
until it encounters the GOSUB command at line 300. The
Any new points declared in that level must be placed after the program branches to line 2010. This command also defines two
$ARGn variables. For example, in the third level of a multi-level values that are passed (PT1 and PT2).
subroutine, $ARG1 and $ARG2 would be redefined before the
defining the new value of PT3. 4. At line 2010, a $ARGn point is assigned a value. When the
program encounters a $ARGn point, it checks the calling
• If a previously-defined $ARGn variable is not redefined in the call GOSUB command for point names. The GOSUB command used
to a new level, any values introduced in the new level replace the to call this subroutine contains two point names. When the
values in $ARGn. program encounters the first $ARGn variable at line 2010, it
takes the first point name defined in the GOSUB command
Subroutine Examples (PT1) and stores that value in $ARG1 (10). Line 2010 also adds
one (1) to the value of $ARG1.
To explain the concept of subroutine program control, two examples
of program code are provided in this section: 5. When the program encounters the second $ARGn variable at
line 2020, it takes the second point name defined in the GOSUB
• Program flow sequence command (PT2) and stores that value in $ARG2 (20). Line 2020
also adds one (1) to the value of $ARG2.
• Multiple level subroutines Line 2030 returns control of the program to the line after the
GOSUB command (at line 300). At line 400, the program
Program Flow Sequence
executes the GOTO command to line 3000 that returns control
This example demonstrates how a number of PPCL commands are back to mainline code.
used in subroutines. Refer to Figure 3-1 as you follow the program
After one pass of the program, the values of the points after
flow sequence.
being updated by the $ARGn variables, will be as follows:
• The variables PT1 and PT2 demonstrate the passing of values PT1 = 11
between subroutines.
PT2 = 21
• The $ARG local variable demonstrates how values are passed
between subroutines.
Siemens Building Technologies, Inc. 3-53 3-54 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
• As the program branches from the second subroutine to the 3100 C VALUE CALLED PT3.
third subroutine, $ARG1 and $ARG2 continue to represent 3200 GOSUB 4020 $ARG1,$ARG2,PT3
PT1 and PT2 respectively. 3210 RETURN
Syntax Syntax
GOTO line# HLIMIT(value,pt1,...,pt15)
line# The next line number to which execution is directed. value New value to which the high limit is set.
• Line numbers must be entered as integers ranging • This value can be a decimal, a point name, or a local
from 1 to 32767. variable.
• Integers are not allowed.
Use
pt1 Logical names of analog points whose high limits are
This command is used to control program execution by branching to through changed to the new value.
a different section of the program. pt15
Example Use
10 IF (FANRUN.GE.1000) THEN GOTO 50
Sets a new high alarm limit for alarmable analog points.
Notes A maximum of 15 points can be set to the same high limit with one
HLIMIT command.
• A GOTO command should only transfer program control to a
sequentially higher line number.
Example
• If the line number indicated in the GOTO does not exist, 100 IF (OATEMP.GT.70.0) THEN HLIMIT(84.0,
execution is transferred to the next line after the line number ROOM16)ELSE HLIMIT(78.0,ROOM16)
specified in the GOTO command.
Notes
• A GOTO command should not transfer program control to a
comment line. • Points must reside in the same device as the program.
• Do not use the GOTO command to transfer control to the top of a • Points used in the HLIMIT command must be defined as
program. If the last program line is missed because of this, time- alarmable.
based commands (LOOP, WAIT, etc.) will not function properly.
See also
See also ALARM, DISALM, ENALM, LLIMIT, NORMAL
GOSUB, RETURN
Siemens Building Technologies, Inc. 3-57 3-58 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax
HOLIDA(month1,day1,...,month8,day8)
month1 Month of the designated holiday. (January = 1, June = 6,
through December = 12, etc.)
month8
day1 Day of the month for the designated holiday. The first day
through of the month is entered as 1.
day8
Use
Defines the dates of holidays up to a year in advance.
Example
630 HOLIDA(12,24,12,25,12,26,12,27)
Notes
• The HOLIDA and TODMOD commands must precede any TOD
or TODSET commands in order for the program to operate
correctly.
• If holidays are defined using both the HOLIDA command and the
TOD calendar, make sure that the holidays are defined as the
same day in both places. Otherwise, the equipment commanded
will operate in holiday mode on both the days defined in the
Siemens Building Technologies, Inc. 3-59 3-60 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Use
This conditional logic command is used to provide customized
decision logic.
Siemens Building Technologies, Inc. 3-61 3-62 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
INITTO(value,pt1,...,pt15) LLIMIT(value,pt1,...,pt15)
value The new value which replaces the current totalized values for value New value to which the low limit is set.
all specified points. • This value can be a decimal, point name, or local
• This value can be a decimal, point name, or local variable. Integers are not allowed.
variable. Integers are not allowed.
pt1 Logical names of analog points whose low limits are changed
pt1 Names of points that are defined for totalization. Points must through to the new value. Points must reside in the same device as
through reside in the same device as the control program. pt15 the command.
pt15
Use
Use
Sets a new low alarm limit for alarmable analog points.
Change the totalized value of a point to a new value (generally 0).
A maximum of 15 points can be set to the same low limit with one
A maximum of 15 point names can receive the new value through LLIMIT command.
one INITTO command.
Example
Example 100 IF (OATEMP.GT.68.0) THEN LLIMIT(76.0,
10 IF (DAYOFM.EQ.1.0) THEN INITTO(0.0, PMP1,PMP2) ROOM16) ELSE LLIMIT(68.0,ROOM16)
Notes Notes
• Points must reside in the same device as the command. • Points must reside in the same device as the program.
• The INITTO command cannot reset the value of LPACI point • Points used in the LLIMIT command must be defined as
types. alarmable.
• Only points that are defined to be totalized can be initialized by
See also
this command.
ALARM, DISALM, ENALM, HLIMIT, NORMAL
• When used in APOGEE field panels (which can totalize individual
states of a point), INITTO will reset all totalized states of a digital
point to zero.
Siemens Building Technologies, Inc. 3-63 3-64 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
LOCAL(pt1,... ,pt16) LOOP(type,pv,cv,sp,pg,ig,dg,st,bias,lo,hi,0)
pt1 Names of virtual points created for the program. type Designates the type of control action.
through • Valid values are 0 and 128.
pt16 0 = direct acting.
128 = reverse acting.
Use
pv Point name of the process variable which is being controlled
Creates virtual points for the program. or regulated.
• This parameter is usually an LAI point, but it can be
• The program can reference these points as $pt1 through $pt16. an LAO point, which represents a temperature, flow
rate, air velocity, etc.
• Other programs can reference these points by referencing the
program name, followed by the system delimiter (:), followed by cv Point name of the loop output (control variable).
the local point name. • This parameter is usually an LAO point that
represents an actuator signal such as pressure,
Example 1 current, or voltage.
• This value can be entered as a local variable.
The following is an example of commanding a local point contained
within a program: sp Setpoint for the loop against which the process variable is
100 LOCAL(FANPT) compared. The value of the setpoint should represent the
200 ON($FANPT) same engineering units as the process variable.
• This parameter can be entered as a point name or a
Example 2 decimal number.
• This value can be entered as a local variable.
The following is an example of a program using the value of a local
point in a different program (where PROG1 is the program name): pg Proportional gain determines the part of a PID control action
300 IF(“PROG1:FANPT”.EQ.ON)THEN ... that is directly proportional to the error between the setpoint
(sp) and the process variable (pv).
• This parameter can be entered as a point name, local
variable, integer, or decimal.
Siemens Building Technologies, Inc. 3-65 3-66 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
ig Integral gain. The contribution of integral control action to the lo Low limit of the loop output. The low limit should be set to
total control action of the loop. Integral action minimizes offset match the low end range of the controlled device.
(the difference between the process variable and the • This parameter is entered as a decimal, integer, point
setpoint). Adding integral gain can increase the time required name, or local variable.
to tune the loop.
hi High limit of the loop output. The high limit should be set to
When using integral gain, be sure to reduce the proportional match the high end range of the controlled device.
gain so that the total gain of the loop is not high enough to • This parameter is entered as a decimal, integer, point
cause instability and cycling. Begin with a low integral gain name, or local variable.
and increase it slowly, if required. A recommended starting
point is 2% of the proportional gain. 0 Not used. Enter zero.
• This parameter can be a point name, integer,
decimal, or local variable. Example
• If using an integral gain, use the following calculation: 2000 C CONTROL LOOP STATISTICS
ig = pg × .02 2002 C DIRECT CONTROL LOOP
• If not using an integral gain, set ig to 0. 2004 C INPUT = RM100 OUTPUT = HVALVE
2006 C SETPOINT = HSETPT
dg Derivative gain. The time rate of response of the control 2008 C PROPORTIONAL GAIN = PGAIN-NO I OR D GAINS
system. Derivative gain is usually applied to fast responding 2010 C SAMPLE TIME = 1 SECOND
systems. Adding derivative gain can increase the time
2012 C BIAS = 5.5
required to tune the loop.
2014 C LOW = 3.0
• This parameter is entered as an integer, decimal,
point name, or local variable. 2016 C HIGH = 9.0
• When derivative gain is not used, enter a zero. 2018 LOOP(0,RM100,HVALVE,HSETPT,PGAIN,0,0,1,5.5,3.0,
9.0,0)
st Sample time. How frequently (in seconds) the process
variable (pv) is sampled. Use
• The minimum sampling time allowed is 1 second.
• This parameter is entered as an integer, decimal,
This command performs closed loop control by using any
point name, or local variable. combination of proportional, integral, and derivative control actions in
either direct or reverse acting modes.
bias Bias is the value (in engineering units) of the control output
(cv), in a proportional only loop, when the measured variable LOOP monitors an input point (process variable), compares it with a
(pv) equals the setpoint (sp). desired value (the setpoint), and adjusts an output (control variable)
• This parameter entered as a decimal number, integer, to bring the input closer to the setpoint.
point name, or logical point.
• The bias value should always be between the high • The LOOP command is the software counterpart to a pneumatic
and low value. receiver controller.
Bias is calculated by adding 50% of the output control span to • Anti-windup is automatically prevented for the integral action
the low limit. For example, you would do the following to once the high or low limit is reached.
calculate the bias for a valve with a 3 to 8 psi spring range:
• Find one-half of the spring range. (5 psi spring range
See also
÷ 2 = 2.5)
• Add that value to the low limit of the valve (3 psi). ADAPTM, ADAPTS
• The bias for this device is 5.5 psi.
Siemens Building Technologies, Inc. 3-67 3-68 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
MAX(result,pt1,...,pt15) MIN(result,pt1,...,pt15)
result Point name where the largest value is stored. result Point name where the lowest value is stored.
• This parameter can be a virtual point name or a local • This parameter can be a virtual point name or local
variable. variable.
pt1 Values which are compared. pt1 Values which are compared.
through • The values can be any combination of point names, through • The values can be any combination of point names,
pt15 decimals, integers, and local variables. pt15 decimals, integers, and local variables.
Use Use
This command selects the largest value from 2 to 15 point names or This command selects the lowest value from 2 to 15 point names or
numbers, (numbers must be in decimal format), and stores that numbers (numbers must be in decimal format), and stores that value
value in the result point. in the result point.
Example Example
10 MAX(HOTZON,ZONE1,ZONE2,ZONE3, 9.0) 10 MIN(COOLZN,ZONE1,ZONE2,ZONE3,9.0)
Siemens Building Technologies, Inc. 3-69 3-70 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
NIGHT(pt1,...,pt16) NORMAL(pt1,...,pt16)
pt1 Name of a point to be set to NIGHT mode. pt1 Name of a point to be removed from the alarm-by-command
through • This parameter must be a logical controller (LCTLR) through state.
pt16 point type. pt16
Use Use
Changes a LCTLR point to NIGHT mode status. Removes the specified points from the alarm-by-command condition
and returns them to their normal operating mode.
A maximum of 16 points can be changed with one NIGHT command.
A maximum of 16 points can be changed with one NORMAL
Example command.
100 IF (TIME.LT.7:00.OR.TIME.GT.18:00) THEN
NIGHT(LCTLR2) ELSE DAY(LCTLR2) Example
100 IF (RM90T.GT.80.0) THEN ALARM(ROOM90)
Notes ELSE NORMAL(ROOM90)
Siemens Building Technologies, Inc. 3-71 3-72 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
See also
OFF (Off status)
AUTO, FAST, ON, SLOW
Unitary pre-APOGEE APOGEE BACnet
Syntax
OFF(pt1,...,pt16)
pt1 through Point names that are commanded to OFF.
pt16
OFF(@prior,pt1,...,pt15)
@prior Defines a specific point priority.
pt1 through Point names of LDI, LDO, L2SL, L2SP, LOOAL, LOOAP,
pt15 LFSSL, or LFSSP points.
NOTE: The OFF(@prior) command is not available in Unitary
firmware.
Use
Changes the operational status of an ON/OFF/AUTO point to OFF.
Example
20 IF (OATEMP.GE.63.0) THEN OFF(@NONE,PUMP1,PUMP2)
Notes
FAST/SLOW/STOP points (LFSSL, LFSSP) use the OFF command
for STOP.
Siemens Building Technologies, Inc. 3-73 3-74 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Example
OIP (Operator interface program) 100 C
Unitary pre-APOGEE APOGEE BACnet 102 C OIP COMMAND INFORMATION:
104 C OPERATOR SEQUENCE
106 C
108 C - POINT
Syntax 110 C - DISPLAY
112 C - PRINTER
OIP(trigger, ''seq'') 114 C - YES
trigger The trigger for the operator interface sequence. 116 C - VALUE
• This parameter can be an LDO or LDI point name or 118 C - ANY
a local variable. 120 C - NAME
seq This variable represents the sequence of keystrokes you 122 C - ALL NAMES
would enter if you were using a terminal. 124 C
• The sequence must not exceed 80 characters 130 C TRIGGER POINT - RPT7AM
(including slashes) in length. 150 OIP(RPT7AM,"P/D/P/Y/V/A/N/*")
• The sequence must be enclosed in double quotes
('' ''). Example to Dial Out Using a Modem—APOGEE Firmware
• For each level in the sequence that you advance, you 100 C APOGEE OIP COMMAND INFORMATION:
must enter a slash (/). 102 C DIAL-OUT TO MODEM
• If a pause is needed in a phone number, do the 110 OIP(TRIGGER,”S/H/P/I/C/P/<field panel
following: #>/<partner id>”)
For APOGEE firmware, enter a comma.
For pre-APOGEE firmware, enter a period. Example to Dial Out Using a Modem—pre-APOGEE Firmware
100 C PRE-APOGEE OIP COMMAND INFORMATION:
Use 102 C DIAL-OUT TO MODEM
Allows most operator functions to be executed from within a PPCL 110 OIP(TRIGGER,”S/D/<cabinet #>/O/C/<phone # id>/”)
program. This command is generally used for the following functions:
Notes
• Generating reports
• OIP commands used to generate messages, displays, and
• Changing point priorities reports should be staggered in time (that is, do not use the same
trigger point for all OIP commands). This allows one command to
• Sending messages complete before another begins.
• Triggering auto-dial • The OIP command will appear as FAILED if the operator
sequence was entered incorrectly and the control program
The OIP command uses a trigger point to determine the conditions
attempts to execute it.
for execution. When the trigger point is turned on, the operator
sequence is executed once. To execute the operator sequence • On return from power failure, after an enable command has been
again, the trigger point must be turned OFF, and then turned ON executed, or during the first execution of the control program after
again. a database load, the OIP command will not execute until the
trigger point toggles.
Siemens Building Technologies, Inc. 3-75 3-76 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
• After the OIP command has been executed, the trigger point
must be reset (commanded back to its original state) before the ON (On status)
OIP command can be executed again. Unitary pre-APOGEE APOGEE BACnet
• When using an OIP command with an LDO type subpoint, you
must command the point ON/OFF with the number 1 or 0. Using
any text other than 1 or 0 will cause the statement to fail.
Syntax
• If the trigger point name begins with a number, then the point ON(pt1,...,pt16)
name should be preceded by an @ sign. If a variable in the
keystroke sequence begins with a number, then the point name pt1 Point names that are commanded to ON.
should not be preceded by an @ sign. through
pt16
Correct
100 OIP(TRIG,"P/T/D/H///FAN/1FAN//60/") ON(@prior,pt1,...,pt15)
@prior Defines a specific point priority.
Incorrect
100 OIP(TRIG,"P/T/D/H///FAN/@1FAN//60/") pt1 Point names of LDO, L2SL, L2SP, LOOAL, or LOOAP points.
through
• The OIP command must be executed with every pass of the
pt15
program in order to see the trigger point change value.
Example
100 IF (OATEMP.LT.60.0)THEN ON(@NONE,
PUMP1,PUMP2)
See also
AUTO, FAST, OFF, SLOW
Siemens Building Technologies, Inc. 3-77 3-78 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
ONPWRT(line#) PDL(area,totkw,target,g1s,g1e,sh1,...,g4s,g4e,sh4)
line# Line number at which execution begins in the control area Meter area number.
program after returning from power failure. • Enter this number as an integer.
• Line numbers must be entered as integers ranging
from 1 to 32767. totkw Total amount of power consumed by the loads that are
• If the line number is invalid, this command is controlled by the PDL command.
ignored. • The same virtual LAO point must be used for both
the PDL totkw parameter and the kwtot parameter in
Use the owning PDLDPG command. The value of this
parameter is calculated by the PDL command.
This command is similar to a GOTO command and allows you to
select the first program line that is executed when power has A power-consuming load is controlled by a PDL command if
returned. The ONPWRT command is only executed once and is then the following criteria are met:
ignored as long as power stays ON. • The power-consuming load is defined in a PDLDAT
command that is associated with a PDL command.
Example • The load is currently in NONE or PDL priority.
10 ONPWRT(1800) • The PDL command is traced and is enabled.
• The PDLDPG command is enabled.
Notes • The PDLDAT command is enabled.
• The ONPWRT command should be the first command in a PPCL target Power consumption limit that is maintained by the PDL
program since program execution returns to the first line of a command.
PPCL program after a power failure. • The same virtual LAO point must be used for both
the PDL target parameter and the target parameter in
• If the database for a field panel is lost due to a power failure, the the corresponding PDLDPG command. The value of
this parameter is calculated by the PDLDPG
ONPWRT command is not executed when power is restored.
command.
g1s Start line for the group 1 load definition in the corresponding
PDLDAT commands. This is the first group to shed when
demand exceeds the setpoint.
g4s Start line for the group 4 load definition in the corresponding Example
PDLDAT commands. This is the last group to shed when 100 PDL(1,TOTKW1,TGT1,100,199,0,200,299,1,
demand exceeds the setpoint. 300,399,0,400,499,0)
g4e End line for the group 4 load definition.
Notes
sh4 Shedding sequence for group 4.
• PDL must control 10-20% of the building demand to be effective.
• Valid values are 0 and 1.
0 = Fixed shedding • When points are controlled by the PDL command, they are
1 = Round robin shedding
placed into PDL priority. Group 1 is shed first, while Group 4 is
Use shed last.
Maintains a defined level of kilowatt use (or target) for a group of • With APOGEE firmware, one meter can be defined in each
loads. program.
NOTE: For a detailed explanation of Peak Demand Limiting • With pre-APOGEE firmware, only one meter can be defined in a
(PDL), see Chapter 2–Control Option Comparisons. field panel.
A single PDL command is responsible for the direct control of a • The PDL statement fails if more than four shedding groups are
group of PDLDAT commands in a load-handling field panel. The defined.
PDL command control includes:
• Do one of the following if all four shedding groups are not used:
• Maintaining a target kilowatt (kW) value by shedding and — With Firmware Revision 2.6/2.6.1 and later, no entry is
restoring loads. The target value is passed to the PDL command required for unused groups.
through an LAO point value from the PDLDPG command.
— With Firmware Revision 2.5.2 and earlier, enter the integer 0
• Monitoring the total available kilowatts under its control. The PDL for the starting line, ending line, and shedding type for all the
command determines which of the loads defined in the unused groups.
associated PDLDAT command is available for peak demand
limiting control. The total kilowatts available to the PDL command
are placed in an LAO point. See also
PDLDAT, PDLDPG, PDLMTR, PDLSET
• Maintaining the timing as defined in the PDLDAT command for
minon, minoff, and maxoff.
• Defining how each load under PDL control fits into one of four
priority groups. This is accomplished by referring to the line
numbers of the PDLDAT commands.
Example
PDLDAT (PDL, define load attributes) 100 C
Unitary pre-APOGEE APOGEE BACnet 102 C PDLDAT COMMAND INFORMATION:
104 C
106 C - CONTROLLED POINT - FAN17
108 C - MINIMUM ON TIME - 10 MINUTES
Syntax 110 C - MINIMUM OFF TIME - 5 MINUTES
112 C - MAXIMUM OFF TIME - 180 MINUTES
PDLDAT(ptname,minon,minoff,maxoff,kwval) 114 C - KILOWATT RATING - 10KW
ptname Point name of the load. 116 C
118 PDLDAT(FAN17,10,5,180,10)
minon Minimum time (in minutes) that the load must remain ON
after PDL has restored it. Notes
• This parameter must be less than 546 and can be
defined as a decimal, integer, point name, or a local • In a network system, a load defined by a PDLDAT statement
variable. must reside in the same field panel as the PDL statement.
minoff Minimum time (in minutes) that the load must remain OFF • A PDLDAT statement is referenced by only one PDL statement.
before PDL can restore it. Using multiple references produces unpredictable results.
• This parameter must be less than 546 and can be
defined as a decimal, integer, point name, or a local • The PDLDAT statement should be in the same field panel as the
variable. load.
maxoff Maximum time (in minutes) that PDL can keep the load off See also
after shedding it.
• This parameter can be a decimal, integer, point PDL, PDLDPG, PDLMTR, PDLSET
name, or a local variable.
• The maximum allowable value of maxoff is
(minoff + 546).
Use
Defines the minimum on-time, minimum off-time, maximum off-time,
and kilowatt value for a specific load.
Siemens Building Technologies, Inc. 3-83 3-84 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Use
Syntax Keeps track of how many kilowatts worth of load are available in
PDLDPG(area,kwtot1,target1,...,kwtot7,target7) each load-handling field panel and how many kilowatts are to be
shed or restored at any time in each field panel.
area Meter area designation.
• In order for the program to operate correctly, the Sets the target value for each PDL command associated with a
same numeric value must be used for the meter area meter area.
parameter in the PDLDPG, PDLMTR, and PDLSET
statements. The PDLDPG statement proportionally distributes the target value to
each PDL statement according to the values of kwtot1 through
kwtot1 Total amount of power consumed by the loads that are
through controlled by the PDL command. kwtot7.
kwtot7 • The same virtual LAO point must be used for both
the PDL totkw parameter and the kwtot parameter in Example
the owning PDLDPG command. The value of this 100 PDLDPG(1,TOTKW1,TGT1,TOTKW2,TGT2)
parameter is calculated by the PDL command.
See also
A power-consuming load is controlled by a PDL command if
the following criteria are met: PDL, PDLDAT, PDLMTR, PDLSET
• The power-consuming load is defined in a PDLDAT
command that is associated with a PDL command.
• The load is currently in NONE or PDL priority.
• The PDL command is traced and is enabled.
• The PDLDPG command is enabled.
• The PDLDAT command is enabled.
Siemens Building Technologies, Inc. 3-85 3-86 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
window Predictions on the width of the sliding window interval (in • Making demand predictions that are used by the PDLDPG
minutes). command.
• This parameter is usually a decimal or integer, but
can be a point name or a local variable. • Updating report information pertaining to demand and
• Up to 30 samples can be stored per window. consumption.
plot Maximum value for the Time versus Demand plot section of • Deciding when warning messages should be issued.
the PDL Activity Report.
• This parameter can be a decimal, integer, point • Initializing a meter area.
name, or a local variable.
• This value should be greater than the highest • Defining default meter values.
setpoint used in PDLSET.
Siemens Building Technologies, Inc. 3-87 3-88 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Example
200 C PDLSET (PDL, setpoints)
202 C PDLMTR COMMAND INFORMATION: Unitary pre-APOGEE APOGEE BACnet
204 C
206 C - HISTORICAL WEIGHTING FACTOR - 30%
208 C - CALCULATION INTERVAL - 1 MINUTE
210 C - PREDICTION WINDOW - 15 MINUTES Syntax
212 C - THE TIME VERSUS DEMAND SECTION OF
214 C THE ACTIVITY REPORT PLOT HAS A PDLSET(area,exceed,set1,time1,...,set7,time7)
216 C FULL SCALE OF 500 KILOWATTS. area Meter area.
218 C - WARNING MESSAGES ARE ENABLED TO • In order for the program to operate correctly, the
220 C BE SENT TO ALARM DEVICES. same numeric value must be used for the meter area
222 C - THE DEFAULT VALUES OF THE TWO parameter in the PDLDPG, PDLMTR, and PDLSET
224 C METER POINTS (METER1 AND statements.
226 C METER2) ARE 100 KILOWATTS AND • This parameter is an integer.
228 C 50 KILOWATTS RESPECTIVELY.
230 C exceed DO point which is turned ON if the actual floating window
250 PDLMTR(1,30,1,15,500,1,METER1,100, peak exceeded the setpoint at any time during the preceding
interval. This point is reset to OFF at the end of each setpoint
METER2,50)
interval.
Notes set1 Demand setpoint (in kilowatts) that is not to be exceeded.
through • This parameter can be a decimal, integer, point
• Only one PDLMTR command can be defined per meter area. set7 name, or a local variable.
• For APOGEE field panels, one PDLMTR command can be
time1 The time at which the corresponding setpoint ends.
defined per program. through • This parameter is usually entered as a clock time in
time7 military format (7:30 p.m. = 19:30). It can also be
• With pre-APOGEE firmware, one meter area can be defined in a
entered as a decimal, integer, or a local variable.
field panel.
• Times must be in ascending order.
• If a LPACI point is used in a PDLMTR statement, then PDL
Use
should be restarted for that meter area after the LPACI is reset.
The PDLSET command designates the peak demand limiting (PDL)
See also levels and ensures that the PDL levels for a meter area are not
exceeded during the time those setpoints are in effect.
PDL, PDLDAT, PDLDPG, PDLSET
Demand predictions made by the PDLMTR command are compared
with the appropriate setpoints defined by the PDLSET command.
The PDLSET command then determines the number of kilowatts (if
any) that must be shed or restored for the meter area.
Siemens Building Technologies, Inc. 3-89 3-90 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Example
100 C RELEAS (Release)
101 C PDLSET COMMAND INFORMATION: Unitary pre-APOGEE APOGEE BACnet
102 C
103 C - THIS COMMAND CONTROLS METER AREA 1.
104 C - THE VIRTUAL LDO POINT WHICH WILL
105 C TOGGLE ON AND OFF AT THE END OF Syntax
106 C THE SET POINT INTERVALS WHEN THE
107 C SET POINT WAS EXCEEDED IS RELEAS(pt1,...,pt16)
108 C CALLED PEAKEX. pt1 Point name to be released to NONE priority.
109 C - PDLST1 SET POINT ENDS AT 11:00 A.M. through • This parameter can be a LFSSL or LFSSP point.
110 C - PDLST2 SET POINT ENDS AT 4:30 P.M. pt16 • This command only works for points in EMER or PDL
111 C priority. To release points in OPER or SMOKE
120 PDLSET(1,PEAKEX,PDLST1,11:00,PDLST2,16:30) priority, the RELEAS(@prior…) command must be
used.
Notes RELEAS(@prior, pt1,...,pt15)
The PDLSET command requires at least two setpoint/time definitions @prior Defines a specific point priority that the point is being
for each day in order to generate reports. released from.
Use
Changes the operational status of a point to NONE priority.
Example 1
110 IF(TEMP.NE.ALARM.AND.PT2.NE.@NONE)THEN
RELEAS(@EMER, PT2)
In this example, PT2 will only be released if its priority is not equal to
NONE and TEMP is not in alarm.
Siemens Building Technologies, Inc. 3-91 3-92 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Example 2
120 RELEAS(@SMOKE, PT1, PT2, PT3) RETURN (Return/end subroutine)
In this example, all three points will be released to NONE priority if Unitary pre-APOGEE APOGEE BACnet
they currently have a priority of SMOKE, EMER, or PDL. If any point
is in OPER priority, it will not be released.
Notes Syntax
RETURN
• With APOGEE and pre-APOGEE firmware, always use a priority
at least as high as the one that the point will be in to ensure
proper release. If the point has been commanded from the Use
keyboard, it will require an @OPER entry to release the priority of Marks the end of a subroutine.
the point to NONE.
RETURN must be the last command of any GOSUB subroutine.
• With BACnet firmware, the RELEAS(@prior, pt1,…,pt15) When a RETURN command is encountered, the program returns to
command releases the BACnet slot which is mapped to the the line following the GOSUB command
stated APOGEE priority, but it may not release all the way to
NONE priority. The BACnet Command Priority levels must be Example
emptied to allow lower priority levels to control the point. 100 GOSUB 310
110 ...
The standard BACnet Priority Array rules control the @prior 120 ...
release process as follows: 130 ...
— If a value exists in a higher priority slot than the slot mapped 290 ...GO TO 350
to @prior, the value is not released.
300 C THIS SUBROUTINE PERFORMS...
— If the slot mapped to @prior is the highest slot, the value is 310 ...
released. The new value is determined by the presence, in 320 ...
order from higher to lower priority levels, of values in the 330 ...
slots below. 340 RETURN
350 CONTINUE WITH REST OF PROGRAM
— If no values exist in the lower priority slots, the relinquished
default value is used. See also
GOSUB, GOTO
Siemens Building Technologies, Inc. 3-93 3-94 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
SAMPLE(sec) line SET(value,pt1,...,pt15)
sec Interval in seconds between evaluations of state. value Value to which points are commanded.
• This value must be entered as an integer ranging • This value can be a decimal, a logical point, or a local
from 1 to 32,767. variable. Integers are not allowed.
line Any PPCL statement that does not include its own timing pt1 Point names of logical points.
function. This includes: WAIT, PDL, TOD, TIMAVG, LOOP, through
SSTO, or another SAMPLE command. pt15
Siemens Building Technologies, Inc. 3-95 3-96 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Example 1
450 SET(75.0,RMSET1,RMSET2,RMSET3) SLOW (Slow status)
Unitary pre-APOGEE APOGEE BACnet
Example 2
550 SET(@EMER,75.0,RMSET1,RMSET2,RMSET3)
Notes
Syntax
Do not use resident points in either the SET or the TABLE
command. With both the SET and TABLE commands, the following SLOW(pt1,...,pt16)
should be used for resident points: pt1 Point names of LFSSL or LFSSP points that are commanded
Virtual point = Resident point through to SLOW.
pt16
SLOW(@prior, pt1,...,pt15)
@prior Defines a specific point priority.
Use
Changes the operational status of a FAST/SLOW/STOP point to
SLOW.
Example
20 IF (RMTEMP.LT.75.0)THEN SLOW(@NONE, FAN1,FAN2)
See also
AUTO, FAST, OFF, ON
Siemens Building Technologies, Inc. 3-97 3-98 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
NOTE: Valid mode values are described in the table following the osp Occupancy stop time.
parameter descriptions. • This parameter can be a military time (7:30 p.m. =
19:30), a decimal time (7:30 p.m. = 19.50), a logical
zone SSTO zone number.
point name, or a local variable.
• Valid values are 1 to 5.
ast Total adjustment to the calculated start time. This value is
mode Mode number. changed from day-to-day.
• Valid entries are any combination of 1, 2, 4, 8, or 16 • A decimal value or virtual LAO point type can be
as defined in the following table. defined to store the adjustment value.
• Mode numbers can be added together to create
customized schedules for the TOD program. See the asp Total adjustment to the calculated stop time. This value is
TODMOD command for more information. changed from day to day.
cst Calculated start time. • A decimal value or virtual LAO point type can be
• This parameter is a virtual LAO point name. defined to store the adjustment value.
• If SSTO is disabled (season = 0 in the SSTOCO
command), then cst is assigned to the latest start Valid SSTO Mode Values.
time.
Mode Schedule
csp Calculated stop time. 1 Normal schedule
• This parameter is a virtual LAO point name. 2 Extended schedule
• If SSTO is disabled (season = 0 in the SSTOCO 4 Shortened schedule
command), then csp is assigned the latest stop time. 8 Weekend schedule
16* Holiday schedule
est Earliest start time.
*Mode number 16 (Holiday) should only be used with the HOLIDA command.
• This parameter can be a military time (7:30 p.m. =
19:30), a decimal time (7:30 p.m. = 19.50), a logical
point name, or a local variable. Use
lst Latest start time. The SSTO command calculates the optimal start and stop times for
• This parameter can be a military time (7:30 p.m. = each zone based on information derived from the SSTOCO
19:30), a decimal time (7:30 p.m. = 19.50), a logical command (outside air temperature, zone temperature, desired zone
point name, or a local variable. temperature, etc.) as well as parameters for earliest, latest, and
ost Occupancy start time. occupancy start times provided in the SSTO command.
• This parameter can be a military time (7:30 p.m. =
19:30), a decimal time (7:30 p.m. = 19.50), a logical This command has the ability to tune itself by incrementing or
point name, or a local variable. decrementing the start time after calculating an adjust time (ast)
Siemens Building Technologies, Inc. 3-99 3-100 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 3-101 3-102 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Use
This command defines the thermal characteristics of a zone based
on the season, indoor temperature, outdoor temperature, and a
variety of heating and/or cooling coefficients that are necessary to
calculate optimal start and stop times.
Siemens Building Technologies, Inc. 3-103 3-104 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Syntax Syntax
STATE(statetext,pt1...pt15) TABLE(input,output,x1,y1,...,x7,y7)
pt1 Points that are commanded to a particular state. input Point name of the input (x) variable.
through • This parameter can be a local variable or virtual LAI
pt15 point type.
statetext State text that can be found in the associated state text table. x1,y1 Pairs of coordinates that define the x-y relationship. y1 is the
through value of the output when the input equals x1; y2 is the value
pt1 Points that are commanded to a particular state. x7,y7 of the output when the input is x2, etc.
through • The coordinates can be integers or decimals.
pt14
Use
Use This command allows you to define a general function of two
Commands points using a state text value. variables by specifying pairs of coordinates (x,y).
• A maximum of 14 points can be changed with one • The x points must be entered in ascending order (that is x3 must
STATE(@pri,statetext,…) command. be larger than x2, etc.).
• For inputs lower than x1, the output will always equal y1.
Example
500 STATE(NIGHT,TEC1,TEC2,TEC3,TEC4) • For inputs larger than the last x used, the output will equal the
last y value entered.
Siemens Building Technologies, Inc. 3-105 3-106 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
The average is always over the most recent sample count and all
previous values are discarded.
Example
In the following statement, RMAVG would change every 600
seconds (assuming RMTEMP is changing frequently). The average
value (RMAVG) will also be updated every sample time.
Siemens Building Technologies, Inc. 3-107 3-108 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Notes Syntax
Siemens Building Technologies, Inc. 3-109 3-110 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. 3-111 3-112 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Use
TODSET (Time of day, analog points)
This command defines specific modes (normal, weekend, etc.) for
each day of the week. Days that have the same schedule are Unitary pre-APOGEE APOGEE BACnet
assigned the same mode.
The mode assigned to a specific day of the week is used in
conjunction with the TOD and TODSET commands to command Syntax
points on that day.
TODSET(mode,recomd,time1,val1,time2,val2,pt1,..., pt10)
Example NOTE: Valid mode values are described in the table following the
110 TODMOD(1,1,1,1,2,4,8) parameter descriptions.
In this example, Monday through Thursday are assigned to a normal mode Mode number.
schedule, Friday is assigned to an extended schedule, Saturday is • Valid values are 1, 2, 4, 8, or 16.
assigned to the shortened schedule, and Sunday is assigned to the • Mode numbers can be added together to create
weekend schedule. customized schedules for the TOD program.
• Mode number 16 should only be used with the
Notes HOLIDA command.
• The HOLIDA and TODMOD commands must precede any TOD recomd Determines if the points defined will be commanded after a
or TODSET commands in order for the program to operate return from a power failure (fail-safe position). Recomd (re-
correctly. command) is sometimes necessary for field panel
warmstarts.
• A HOLIDA or TODMOD command in a field panel will only affect • Valid values are 0 and 1.
TOD and TODSET commands in that field panel.
0 = Does not re-command pt1 through pt10 on return
• When a holiday date occurs in a HOLIDA command, the system from power failure.
sets the TODMOD mode number for that day to 16.
1 = Re-commands pt1 through pt10 on return from
power failure.
See also
time1 Time at which the output points (pt1 through pt10) are
HOLIDA, SSTO, TOD, TODSET commanded to val1.
• This parameter can be a military time (7:30 p.m. =
19:30), a decimal time (7:30 p.m. = 19.50), a logical
point name, or a local variable.
val1 Analog value which the output points (pt1 through pt10)
assume at time1.
• This parameter can be a military time (7:30 p.m. =
19:30), a decimal time (7:30 p.m. = 19.50), a logical
point name, or a local variable.
Siemens Building Technologies, Inc. 3-113 3-114 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
time2 Time at which the output points (pt1 through pt10) are WAIT (Wait time)
commanded to val2.
• This parameter can be a military time (7:30 p.m. = Unitary pre-APOGEE APOGEE BACnet
19:30), a decimal time (7:30 p.m. = 19.50), a logical
point name, or a local variable.
val2 Analog value which the output points (pt1 through pt10) Syntax
assume at time2.
• This parameter can be a military time (7:30 p.m. = WAIT(time,pt1,pt2,mode)
19:30), a decimal time (7:30 p.m. = 19.50), a logical
point name, or a local variable. NOTE: Valid mode values are described in the table following the
parameter descriptions.
pt1 Names of analog output points that are commanded to a
through value. time Time delay in seconds.
pt10 • This parameter can be entered an integer (1 to 32,767),
a point name, or a local variable.
Valid TODSET Mode Values. pt1 Point name of a digital trigger point.
• This parameter can be a LDI, LDO, L2SL, L2SP,
Mode Schedule LOOAL, or LOOAP point.
1 Normal schedule • Local variables can also be used.
2 Extended schedule
4 Shortened schedule pt2 Point name of digital point to be commanded.
8 Weekend schedule • This parameter can be an LDI, LDO, L2SL, L2SP,
16* Holiday schedule LOOAL, or LOOAP point.
*Mode number 16 (Holiday) should only be used with the HOLIDA command.
• Local variables can also be used.
If the mode number in the TODSET command matches the mode Trigger Point After Wait (time)
Mode
(pt1) Action Seconds
number in the TODMOD command, then TODSET will command the
particular output points to val1 and val2 at the specified times. 11 Turns ON pt2 turns ON
Siemens Building Technologies, Inc. 3-115 3-116 Siemens Building Technologies, Inc.
Command Syntax APOGEE PPCL User’s Manual
Use
The WAIT command turns a point ON or OFF based on the trigger
point switching ON or OFF. Selection of trigger/result action is based
on the mode you enter.
Example
70 C WHEN CNPUMP IS TURNED ON,
72 C THE FIELD PANEL WAITS 60 SECONDS
74 C BEFORE TURNING CHPUMP ON.
75 WAIT(60,CNPUMP,CHPUMP,11)
76 ON(CNPUMP)
Notes
• The position of the WAIT statement in a program affects its
operation. The WAIT statement only works if it sees a change of
value (COV) through both states for the trigger point.
Siemens Building Technologies, Inc. 3-117 3-118 Siemens Building Technologies, Inc.
APOGEE PPCL User’s Manual
command
Glossary Instruction evaluated by the computer.
The glossary contains programming terminology you will encounter comment line
in this manual. Information that is written into the program but is not interpreted as a
program command. The compiler skips over the comment line during
APOGEE firmware compilation. Comment lines allow you to enter text information
describing the functionality of a specific section of code. Comment
Firmware used in APOGEE field panels; Firmware Revision 2.x and lines are especially helpful for describing subroutines and areas of
later. program code that are difficult to understand.
argument condition
Type of variable whose value is not a direct function of another Result of a comparison between two values.
variable. Arguments can represent the location of a number in a
mathematical operation, or the number with which a function works
to produce its result. debugging
Process by which the logic of the program is tested for errors. A
arithmetic function program is said to have “bugs” when it fails to function properly.
Siemens Building Technologies, Inc. Glossary-1 Glossary-2 Siemens Building Technologies, Inc.
Glossary APOGEE PPCL User’s Manual
integer pseudocode
Whole number (non-decimal number). Non-syntactical description of program logic.
Unitary firmware
Firmware for Unitary Controllers that uses a subset of the PPCL
commands found in pre-APOGEE firmware.
Siemens Building Technologies, Inc. Glossary-5 Glossary-6 Siemens Building Technologies, Inc.
APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. A-1 A-2 Siemens Building Technologies, Inc.
Appendix A—PPCL Reserved Word List APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. A-3 A-4 Siemens Building Technologies, Inc.
APOGEE PPCL User’s Manual
alarm
Index acknowledge (point status indicator)............................................... 1-83
commands
ALARM......................................................................................... 3-24
$ DISALM........................................................................................ 3-36
$LOC1 through $LOC15 (local variable) ............................................ 1-63 LLIMIT .......................................................................................... 3-64
@SMOKE (priority status indicator) .................................................... 1-76 ALMACK (point status indicator)......................................................... 1-83
ALMCNT (resident point) .................................................................... 1-47
A
ALMCT2 (resident point) ..................................................................... 1-48
abbreviating point names .................................................................... 3-34
ALMPRI (special function) .................................................................. 1-39
ACT (command).....................................................................................3-4
AND (logical operator)......................................................................... 1-18
activate/deactivate PPCL lines
ACT.....................................................................................................3-4 antilog, natural (arithmetic function).................................................... 1-32
DEACT............................................................................................. 3-33 APOGEE firmware
DISABL ............................................................................................ 3-35 commanding points to a priority ...................................................... 1-68
ENABLE........................................................................................... 3-45 defining a meter in a PDL command ............................................... 3-82
defining a meter in a PDLMTR command ....................................... 3-89
adaptive control............................................................................ 3-5, 3-16
dialing out to a modem .................................................................... 3-76
ADAPTM (command) .............................................................................3-5 maximum number of characters per line............................................1-4
ADAPTS (command)........................................................................... 3-16 point priority ..................................................................................... 1-64
addition (arithmetic operator) .............................................................. 1-23 point status indicators...................................................................... 1-80
RELEAS(@prior) ............................................................................. 3-93
DCR economizer
command......................................................................................... 3-31 GOSUB............................................................................................ 3-50
control option ......................................................................................2-2 GOTO .............................................................................................. 3-57
RETURN.......................................................................................... 3-94
DEACT (command)............................................................................. 3-33
EMAUTO (command).......................................................................... 3-39
DEAD (point status indicator).............................................................. 1-86
emergency (priority status indicator)................................................... 1-72
dead band switching (DBSWIT).......................................................... 3-27
emergency control
decimal time (resident point)............................................................... 1-50
EMAUTO ......................................................................................... 3-39
decision logic....................................................................................... 3-61 EMFAST .......................................................................................... 3-40
DEFINE (command)............................................................................ 3-34 EMOFF ............................................................................................ 3-41
defining points in a PPCL program ........................................................1-6 EMON .............................................................................................. 3-42
EMSET ............................................................................................ 3-43
Siemens Building Technologies, Inc. Index–5 Index–6 Siemens Building Technologies, Inc.
Index APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. Index–7 Index–8 Siemens Building Technologies, Inc.
Index APOGEE PPCL User’s Manual
Siemens Building Technologies, Inc. Index–9 Index–10 Siemens Building Technologies, Inc.
Index APOGEE PPCL User’s Manual
O P
Occupied mode (OCC) ................................................................See DAY PDL
command......................................................................................... 3-80
OFF
command......................................................................................... 3-73 control option ......................................................................................2-6
point status indicator........................................................................ 1-94 distributed peak demand limiting........................................................2-8
monitor (resident point) ................................................................... 1-56
OIP (command)................................................................................... 3-75
target peak demand limiting (TPDL)...................................................2-7
dialing out to a modem .................................................................... 3-76
PDLDAT (command)........................................................................... 3-83
OK (point status indicator) .................................................................. 1-88
PDLDPG (command) .......................................................................... 3-85
ON
command......................................................................................... 3-78 PDLMTR (command) .......................................................................... 3-87
point status indicator........................................................................ 1-95 PDLSET (command) ........................................................................... 3-90
ONPWRT (command) ......................................................................... 3-79 peak demand limiting
control option ......................................................................................2-6
operator (priority status indicator) ....................................................... 1-74
PDL.................................................................................................. 3-80
Operator Interface Program (OIP) ...................................................... 3-75
PDLDAT .......................................................................................... 3-83
optimizing system performance PDLDPG .......................................................................................... 3-85
DC.................................................................................................... 3-29
PDLMTR .......................................................................................... 3-87
DCR ................................................................................................. 3-31
PDLSET........................................................................................... 3-90
GOSUB............................................................................................ 3-50
priority status indicator .................................................................... 1-75
GOTO .............................................................................................. 3-57
PDL.................................................................................................. 3-80 point command
AUTO............................................................................................... 3-25
PDLDAT .......................................................................................... 3-83
DAY ................................................................................................. 3-26
PDLDPG .......................................................................................... 3-85
FAST................................................................................................ 3-49
PDLMTR .......................................................................................... 3-87
NIGHT.............................................................................................. 3-71
PDLSET........................................................................................... 3-90
OFF.................................................................................................. 3-73
RETURN.......................................................................................... 3-94
ON ................................................................................................... 3-78
SSTO ............................................................................................... 3-99
SET.................................................................................................. 3-96
SSTOCO ....................................................................................... 3-102
SLOW .............................................................................................. 3-98
OR (logical operator)........................................................................... 1-20 STATE ........................................................................................... 3-105
order of precedence ............................................................................ 1-42
point control
changing with parentheses.............................................................. 1-43
ALARM ............................................................................................ 3-24
dead band switching........................................................................ 3-27
DISALM ........................................................................................... 3-36
Siemens Building Technologies, Inc. Index–11 Index–12 Siemens Building Technologies, Inc.
Index APOGEE PPCL User’s Manual
Q scheduling
HOLIDA ........................................................................................... 3-59
quotes in programs ................................................................................1-6
TOD ............................................................................................... 3-110
R TODMOD....................................................................................... 3-112
TODSET ........................................................................................ 3-114
relational operators ............................................................................. 1-10
EQ.................................................................................................... 1-11 SECNDn (resident point) .................................................................... 1-58
GE.................................................................................................... 1-12
SECNDS (resident point) .................................................................... 1-57
GT.................................................................................................... 1-13
seconds counter (resident points)....................................................... 1-57
LE .................................................................................................... 1-14
LT..................................................................................................... 1-15 SET (command) .................................................................................. 3-96
NE.................................................................................................... 1-16 SIN (arithmetic function)...................................................................... 1-35
U
unitary firmware
point status indicators...................................................................... 1-81
V
variables, local .................................................................................... 3-65
W
WAIT (command) .............................................................................. 3-116
writing a program .............................................................................. 1-107
X
XOR (logical operator) ........................................................................ 1-21
Siemens Building Technologies, Inc. Index–19 Index–20 Siemens Building Technologies, Inc.