YetAnotherForum
Welcome Guest Search | Active Topics | Log In | Register

New tag performance equations Options · View
briggs1535
#1 Posted : Saturday, December 18, 2010 6:54:26 PM
Rank: Newbie
Groups: Member

Joined: 12/18/2010
Posts: 5
Hi all

I am trying to create a new environmental monitoring screen for our process. We have tags for continuous data from our air emission monitors; but I need to include displays for the following parameters:

Average - current half hour
Average - last half hour
Avergae - current day
Average - previous day

Our compliance is based on daily averages from 12:00 to 12:00; which itself is calculated from half-hourly averages (12:00-12:30; 12:30-13:00 etc).

I am guessing I need to use performance equations to create some new tags (TagAVg etc) but I need some assistance on the formatting.

I also need to create a tag that will take the average for the current day and predict what the emission level could be for the rest of the day to meet a set limit value. I am not sure where to start with this one so any help will be much appreciated.

Thanks
Sponsor  
 

OSIsoft vCampus is a subscription-based, online offering that consists of providing everything people need to develop applications on the PI System.
We invite you to take a "tour" of the OSIsoft Virtual Campus - also feel free to consult the FAQ  or contact OSIsoft vCampus for more details.
RJK Solutions
#2 Posted : Monday, December 20, 2010 10:45:46 PM
Rank: Administration

Groups: Administration

Joined: 6/20/2008
Posts: 617
Location: Cheshire, United Kingdom.
Hello,

Welcome to the forum.
Well it turns out that I have done exactly this for an energy recovery plant for a refinery where various components (SO2, NOX, DUST...) were tracked/calculated against strict emissions limits - all in real time. Guess what, it was based on 30 minutes periods, that roll up to daily averages. BigGrin

I actually ended up writing a windows service with PISDK to handle this because I wanted algorithms and a whole host of checks/safety precautions to be performed because of the regulations. Plus, it generates report files that must be filled out and archived if there are 30 minute or daily breaches.

Are you just concerned with Performance Equations as a solution or are there other aspects to your requirements? e.g. Regulations & limits?

Principal Consultant
Real-Time Data Management @ Wipro Technologies
briggs1535
#3 Posted : Tuesday, January 04, 2011 2:44:56 PM
Rank: Newbie
Groups: Member

Joined: 12/18/2010
Posts: 5
Thanks for the quick reply and welcome. I hope you had a good Christmas break. It sounds like your experience with the energy plant is very similar to our requirements.

I currently use Datalink in excel to process the PI data and calculate all the averages I require. Excel is also used to generate all the reports we need to cover the regulatory requirements. This approach requires a lot of manual work and is not very efficient and I realise that PI can do a lot more of the work and make the whole thing more efficient and slicker.

There are two parts to my review I guess. One is to develop a control room display screen which shows all the environmental data referenced in my first post and which will provide a one-stop look up screen for the control operators. This would include alarms and warning for approaches to and breaches of emission limit values etc. The idea would be that we could also adapt such a screen to display in public areas and on the web making our environmental performance more transparent. This aspect is currently covered by a basic excel spreadsheet and datalink. I have a template for a control screen I would like to use but am missing a lot of the Tags required. In order to create these I thought that perf eq could be used to get the required averages etc.

The second part is to understand how I can automate the recording and tracking of data (averages, breaches and monitor interupptions etc) within PI to aid better reporting.

Anyway, thanks for the initial response. Any further advice you cuold give drawing on your experience would be great.

Cheers

John

RJK Solutions
#4 Posted : Tuesday, January 04, 2011 10:41:22 PM
Rank: Administration

Groups: Administration

Joined: 6/20/2008
Posts: 617
Location: Cheshire, United Kingdom.
Hi John,

Christmas break was wonderful thanks, back to reality with a bump today though BigGrin

Well for the project I mentioned earlier I ended up building a state of the art monitoring display in ProcessBook; I say state of the art because it can't currently be replicated it in the control system Tongue Anyway...

I can't show you the actual display but I will certainly give you some information on the way I did it, you can pick what best fits for your situation. For me, ProcessBook was a must.

1. The display could be used in two modes - daily (trends show only the situation since midnight by default) and half hourly (show last 16 periods i.e. last 8 hours). All trends show the limits, average and current value of the component. You can toggle between daily/half hourly and because of the strong naming convention for the tags, it was a matter of changing the tags and everything else self adjusted (you can use ERD in the latest ProcessBook). For example, current value PI tag "Emissions.Component", half hourly average "Emissions.Component.Average.HalfHourly" (daily="Emissions.Component.Average.Daily"), halfhourly limit "Emissions.Component.Limit.HalfHourly", daily limit "Emissions.Component.Limit.Daily" etc...hopefully you get the idea. Then you could simply just change all the halfhourly tags for daily and the bar symbols (see next section) alter accordingly.

2. I made heavy use of the Bar symbol so you have a bar as the background that showed: a) The upper range of the measuring instrument b) The limit for the component. Then overlaid was another 2 bar symbols that showed the current value and the average (daily or halfhourly). Playing around with the colours mean you end up with a neat looking bar representation of the data.

3. There were trends along side each bar to act as quick reference points for the past behaviour of the component.

4. I added some additional calculations to give "hints" as to the maximum value for a component for the remainder of the time period to ensure a limit is not breached. This went down very well, in fact we even talked about adding some complex calculations that would predict how other components would behave by adjusting others...

5. When a limit is breached then another set of tags record the number of limits for each average. These are displayed at all times for the current day. Once a limit is breached a report must be filled out (in an Excel built system) and if there are any outstanding reports then the display bugs the operators until a report is completed. Once a report is completed, the outstanding reports PI tags are reset.

There were a few other supporting displays that explained the calculated values and other associated measurements of interest.

With all this in mind, if you were looking to evaluate this approach with performance equations you could do something like:

Current Value PI Tag:
"Emissions.Component"

Daily Average PI Tag:
"Emissions.Component.Average.Daily"
Code:

TagAvg('Emissions.Component','t','*')


Half Hourly Average PI Tag:
"Emissions.Component.Average.HalfHourly"
Code:

TagAvg('Emissions.Component','*' - ((minute('*')*60)+Second('*')) +(if Minute('*') >= 30 then 1800 else 0),'*')


etc

Hope this helps.

Cheers.



Principal Consultant
Real-Time Data Management @ Wipro Technologies
bailesjm
#5 Posted : Tuesday, January 11, 2011 9:21:03 PM
Rank: Newbie
Groups: Member

Joined: 12/10/2010
Posts: 3
Evening,

Thanks for the great tips. I have used the advice and produced a basic screen showing the current level, this half hour, last half hour, day averages etc. And it is all working great. I currently have used some multistate symbols to act as visual alarms for approach to limits etc. The idea you had using the bars sounds interesting and I will make sure I try this on version 2.0 of the screen.

One thing I am struggling with is a prediction tag/equation for the current day. I have an equation in excel which calculated the level at which the emissions could run at to ensure the limit value is met, but I cannot translate this into PI. A colleague has suggested we may be able to do a true 'prediction' using something like Simpson's rule but this is mathematically beyond me. Is there a tool/trick in PI that could do the job?

On a separate note, I am keen to progress my understanding of Processbook, which is currently based on playing around with the software. Can you recommend any self-learning materials/courses out there that may do the job.

Thanks for the advice given so far, it is much appreciated.

Cheers
RJK Solutions
#6 Posted : Monday, January 17, 2011 2:33:48 PM
Rank: Administration

Groups: Administration

Joined: 6/20/2008
Posts: 617
Location: Cheshire, United Kingdom.
Not sure you need to over complicate the predictive value, just some simple maths should do the trick (I assume the same/similar equation that you have in Excel).
In PI you could plot a dataset (or PE) as: *assuming you are calculating every minute.

Daily max value to meet limit.
Code:

(('Emissions.Component.Limit.Daily'*1440)-('Emissions.Component.Average.Daily'*((Hour('*')*60)+Minute('*'))))/(1440-((Hour('*')*60)+Minute('*')))


You could simplify this by having a performance equation tag called "Minutes_Since_Midnight" as:
Code:

(Hour('*')*60)+Minute('*')


Then your calculation becomes:
Code:

(('Emissions.Component.Limit.Daily'*1440)-('Emissions.Component.Average.Daily'*'Minutes_Since_Midnight'))/(1440-'Minutes_Since_Midnight')


Hopes this helps.

For training related material, OSIsoft has some computer based training courses on ProcessBook. Also, if you have a OSIsoft vCampus account then you have some of those CBT courses included in the training section.

Don't forget to post any specific questions on here, will do our best to answer them! BigGrin
Principal Consultant
Real-Time Data Management @ Wipro Technologies
briggs1535
#7 Posted : Thursday, January 20, 2011 9:23:17 AM
Rank: Newbie
Groups: Member

Joined: 12/18/2010
Posts: 5
Thats great. As usual I was trying to complicate matters. The screen is nearly ready to deploy now.

Thanks for the advice on this. I can see this forum being a great help. In fact I have already posted another message! ThumbsUp

All the best.......
Users browsing this topic
Guest
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.