1 devnet unplugged 2002 “express your innovations” build a strong foundation pi server...
TRANSCRIPT
DevNet Unplugged 2002 “Express Your Innovations” 1
Build a Strong Foundation
PI Server Applications
Martin Jetté, [email protected]
OSI Developers Network
Copyright © 2002 OSI Software, Inc. All rights reserved.
DevNet Unplugged 2002 “Express Your Innovations” 2
PI UDS Server Side Calculation Applications
• PI Performance Equations
• PI Totalizer
• PI Alarm
• PI Real Time SQC
• PI Batch
DevNet Unplugged 2002 “Express Your Innovations” 3
Why use server Apps for Calculations
• Keeps a history of calculations and alarms• Calculation are centrally maintained• Everybody can make decisions based on the same
metrics• Calculated data is available to all PI client tools and
other systems (example: maintenance system)• Possibility to do Event based calculations rather than
Time based (Computations based on grade and products)
• Reduce calculation and network load => Calculate once and archive rather than recalculate every time a user opens a spreadsheet or dataset
DevNet Unplugged 2002 “Express Your Innovations” 4
PI Totalizer Subsystem• PI includes a powerful and flexible post-processor
engine that you can use to create totalizations and other simple calculations.
• The PI Totalizer subsystem calculates the following types of summaries: total, average, minimum, maximum, range, standard deviation and median.
• PI Totalizer can also calculate time that a condition is true and it can counts events.
• Many options are available for sampling, filtering and reporting (sending data) to PI.
• The PI Totalizer subsystem aggregates data from the PI Snapshot table rather than the archives (like PI PE). This can results in more precise calculations.
DevNet Unplugged 2002 “Express Your Innovations” 5
PI Totalizer vs PI Performance Equations
R egions tha t a re includedand excluded fo r a tim e-we igh ted ca lcu la tion usingP I T ota lizer
E vents tha t fa il com pression test
E vents tha t pass com pression test
R egion considered inT im e-W eigh ted ca lcu la tionusing C om pressed V a lues
DevNet Unplugged 2002 “Express Your Innovations” 6
PI Compression Test
-0.1
0.1
0.3
0.5
0.7
0.9
1.1
-1 0 1 2 3 4 5 6 7 8 9 10 11Time
Parameters: Parameters: CompDev = 0.06CompDev = 0.06 OO
CC, ,
CompMax = 28800 sec, Compmin = 60 CompMax = 28800 sec, Compmin = 60 secsec
0.120.12
DevNet Unplugged 2002 “Express Your Innovations” 7
Compression(Result)
-0.1
0.1
0.3
0.5
0.7
0.9
1.1
-1 0 1 2 3 4 5 6 7 8 9 10 11
Time Back
DevNet Unplugged 2002 “Express Your Innovations” 8
Configuration properties of a PI Totalizer Tag
Function/CalcMode- Determ inesthe type ofca lcu lation thatis done for theaccum ulation
TotalCloseM ode- Schedules the tim e for thereset of the accum ulation andwhen the value is set to P ISnapshot
ReportMode- Determ inesthe m anner inwhich the resultis sent to P ISnapshot
TotalizerTag
SourceTag
Filter Expression- F ilters out the valuessent to the accum ulation
RateSampleMode- Determ inesthe type ofsam pling
DevNet Unplugged 2002 “Express Your Innovations” 9
ReportModeRunning
Identical to Ramping except the timestamp of the totalized tag stays at second after the start of the totalization period. (Stair Case)
RampingBehaves like an accumulator that increases its value every time a new Snapshot value is read from the SourceTag. (Saw Tooth)
PeriodEndNo output reported until the end of the period
RunEstimateThe value is an estimate of the result if the rate point were to hold steady at its current value.
RunEst2The value is an estimate of the result if the rate point were to hold steady at the current average since the beginning of the accumulation interval.
DevNet Unplugged 2002 “Express Your Innovations” 10
Totalizer – Running and Ramping
CurrentPeriod
Period -1Period -2
Snapshot Values
Archived Values
CurrentPeriod
Period = 5m
DevNet Unplugged 2002 “Express Your Innovations” 11
Totalizer – RunEstimate and RunEst2
Period -1
CurrentPeriod
Period -2
Period -1
CurrentPeriod
Period -2
Period = 5m
Period = 5m
RunEstimate => Estimated result at Period End if the value is maintainedRunEst2 => Estimated result of Totalization at Period End if the current average is maintained
Period -1Period -2
Period -1 Current PeriodPeriod -2
Period = 5m
Period = 5m
Current Period
Estimate in time
Estimate in time
33
DevNet Unplugged 2002 “Express Your Innovations” 12
Totalizer - PeriodEnd
Period -1Period -2 CurrentPeriod
Keeps the sameValue until the End of the period
Period = 5m
DevNet Unplugged 2002 “Express Your Innovations” 13
Time and Event CountingEventEQ and EventNE make comparisons to the value of the CompValue field.
Use CalcMode of TimeTrue to count the number of seconds the SourceTag has the value specified in the Function field (i.e., EventEQ, EventNE etc.).
DevNet Unplugged 2002 “Express Your Innovations” 14
PI Performance Equations
• Allows for the configuration of server based calculations– Access to all PI tags
– Access to Snapshot and archived data
– Advanced math and archive functions
– Access PI Steam tables
– Calculation can be event based and scan based
15
Calculation expressions• Mathematical Operators:
+ - * / ('sinusoid')/2 + ('flow.pv'-100)
• Functions:abs(), atn() BoD(), BoM()
cos(), sin(), tan() exp(), e (2.71828...), log()
int(), sgn(), sqr()concat(), mid(), Ltrim()
• Relational Operators<, >, =, <>, <=, >=
• Logical OperatorsAnd, Or, Not : ('sinusoid' > 50 and 'flow.pv' > 90)
• AdvancedIf …Then …Else, curve(), arma()
TimeGT, FindLT, TagMax, TagAvg, String management …
DevNet Unplugged 2002 “Express Your Innovations” 16
PI PE ReCalculator• PI Recalc module can update the calculations when historical data is
modified, added, deleted or delayed to the PI archive
• Example – Scan based calculation => Tagavg('Sinusoid','*-30m','*',0)
11h30 12h00
1- Archive event is inserted
2- Average value is affected
3- Average value is recalculated
DevNet Unplugged 2002 “Express Your Innovations” 17
PI PE Recalc• Example – Events based calculation => ('PointA' + 'PointB')
1- New value added to the
archive
2- A new value is calculated
3- Dependent values are also recalcultated
Source 1 (Point A)
Source 2 (Point B)
Calculation result
DevNet Unplugged 2002 “Express Your Innovations” 18
PI Alarm Subsystem• The alarm subsystem provides the ability to generate and
manage alarms for PI points. PI Alarm is designed to supplement, not replace, the alarm capabilities available from plant control systems. Because PI is frequently used to integrate data from different sources, PI is often used to perform calculations using variables from multiple physical locations or systems.
• Types of alarms supported– Above or below alarm limits (4 levels)
– Equal or different to a certain digital state or string
– Rate of change
• Keeps historical alarm information in PI tags (Alarm conditions, acknowledgment and alarm statistics)
DevNet Unplugged 2002 “Express Your Innovations” 19
PI Alarm Subsystem Features• Alarm Priorities: Alarms can be organized and prioritized
via 3 priority levels– 1=Alert, 2=Important, 3=Most Urgent
• Acknowledgement status: Alarms can be in one of 3 states:– New, Acknowledged, NotAcknowledged (Missed)
• Alarm Deadband: It is possible to set a threshold for an alarm to go back to Normal state – Example: HI alarm set 80, Deadband=2 => The value of a PI tag
must be 78 or below to remove a high alarm condition
• Alarm Delay: It is possible to set an Alarm delay– Example: HI Alarm set to 80, delay set to 10 min => The value of
the source tag must be above 80 for a period of 10 minutes in order to become in Alarm
DevNet Unplugged 2002 “Express Your Innovations” 20
PI Alarm Dataflow
Action1
Alarm DigitalState Set
CombinerLogic
Alarmpoint
Sourcepoint Test1
Action4Test4
Action3Test3
Action2Test2
ReferenceTag
DevNet Unplugged 2002 “Express Your Innovations” 21
PI Alarm View client
PI AlarmView exposes Activex controls that can be used in otherApplications for example PI ProcessBook.