User Guide
Table Of Contents
- Table of Contents
- How to Use This Manual
- Chapter 1–Program Methodology
- Overview
- Introduction to PPCL
- PPCL Rules
- PPCL Program Design Guidelines
- Relational Operators
- Logical Operators
- Arithmetic Operators
- Arithmetic Functions
- Special Functions
- Order of Precedence
- Resident Points
- Local Variables
- Point Priority Overview
- At (@) Priority Status Indicators
- Point Status Indicators
- Converting a Sequence of Operation intoProgram Code
- Chapter 2–Control OptionComparisons
- Chapter 3–Command Syntax
- Overview
- ACT (Activate lines)
- ADAPTM (Adaptive control, multiple)
- ADAPTS (Adaptive control, single)
- ALARM (Alarm state)
- AUTO (Auto status)
- DAY (Day mode)
- DBSWIT (Dead band switch)
- DC (Duty cycle)
- DCR (Duty cycle routine)
- DEACT (Deactivate lines)
- DEFINE (Define abbreviation)
- DISABL (Disable lines)
- DISALM (Disable alarm)
- DISCOV (Disable COV)
- DPHONE (Disable phone)
- EMAUTO (Emergency, Auto status)
- EMFAST (Emergency, Fast status)
- EMOFF (Emergency, Off status)
- EMON (Emergency, On status)
- EMSET (Emergency, set value)
- EMSLOW (Emergency, Slow status)
- ENABLE (Enable lines)
- ENALM (Enable alarm)
- ENCOV (Enable COV)
- EPHONE (Enable phone)
- FAST (Fast status)
- GOSUB (Go to subroutine)
- GOTO (Go to line)
- HLIMIT (High limit)
- HOLIDA (Holiday)
- IF/THEN and IF/THEN/ELSE (Conditional control)
- INITTO (Initialize totalized value)
- LLIMIT (Low limit)
- LOCAL (Local variable)
- LOOP (Loop control)
- MAX (Maximum value)
- MIN (Minimum value)
- NIGHT (Night mode)
- NORMAL (Normal operating mode)
- OFF (Off status)
- OIP (Operator interface program)
- ON (On status)
- ONPWRT (On after power return)
- PDL (Peak demand limiting)
- PDLDAT (PDL, define load attributes)
- PDLDPG (PDL, digital point group)
- PDLMTR (PDL, meter monitor)
- PDLSET (PDL, setpoints)
- RELEAS (Release)
- RETURN (Return/end subroutine)
- SAMPLE (Sample a statement)
- SET (Set point value)
- SLOW (Slow status)
- SSTO (Start/stop time optimization)
- SSTOCO (SSTO coefficients)
- STATE (State text command)
- TABLE (Table of coordinates)
- TIMAVG (Average over time)
- TOD (Time of day, digital points)
- TODMOD (TOD modes)
- TODSET (Time of day, analog points)
- WAIT (Wait time)
- Overview
- Glossary
- Appendix A—PPCL Reserved WordList
- Index
Program Methodology—PPCL Program Design Guidelines
Siemens Building Technologies, Inc. 1-9
• Whenever possible, re-use blocks of program code in other
devices that require the same control. Reusing program code
helps reduce testing time and minimizes the number of errors in
program logic.
NOTE: Since PPCL requires a unique point database, you must
modify the point names in the reused program code to
reflect the database for that device.
Designing a Program that Operates Efficiently
• The number of FLN devices connected to the field panel has the
greatest influence on program code evaluation speed.
• The number of program lines defined in a device affects the line
evaluation rate.
• When using time-based commands, be aware that different
versions of the same device may execute the same program
code at different rates.
For example, Version 3.0 controller boards are capable of
evaluating an average of 350 lines of program code per second.
Field panels using Version 4.0 controller boards are capable of
evaluating an average of 500 lines of program code per second.
• When multiple PPCL programs are installed in an APOGEE field
panel, try to create programs that are roughly the same number
of lines per program. Since the computer sequentially executes
one line of each enabled program, the program with the fewest
lines will be executed more often the program with the most lines.
For example, a field panel contains two programs: one with 10
lines and the other with 50 lines. The shorter program will be
executed five times before the longer program is executed once.
APOGEE PPCL User’s Manual
1-10 Siemens Building Technologies, Inc.
Relational Operators
Both relational operators and logical operators compare two values
and produce a result that is called a condition. With relational
operators, a related action is taken only if the condition is true. No
action is taken if the condition is false. For information on the order in
which relational operators are evaluated, see the Order of
Precedence section in this chapter.
The following example describes the function of the relational
operator.
Example
You are reading the newspaper one morning and find that it is
going to be a beautiful day. You say to yourself, "If it gets
warmer than 80°F, I will go to the beach. If not, then I will stay
home."
You have just used a relational operator to determine your
actions for the day. Your condition is the temperature. If the
temperature is greater than 80°F (the condition is true), then you
will go to the beach. If the temperature is 80°F or less (the
condition is false), then you will stay home.
PPCL supports the following relational operators:
• Equal to (.EQ.)
• Greater than or equal to (.GE.)
• Greater than (.GT.)
• Less than or equal to (.LE.)
• Less than (.LT.)
• Not equal to (.NE.)
Each relational operator is described in more detail on the following
pages.