Quantcast
Channel: OSIsoft Users Community
Viewing all 1120 articles
Browse latest View live

PI ProcessBook 2012 SP2 v3.3.2.2076 Time scale changing between hours and minutes

$
0
0

Hello All,

 

I just recently upgraded to PI ProcessBook 2012 SP2 version 3.3.2.2076. Since then, I have noticed that some of my ProcessBook trends that I created in the previous version are constantly changing the grid lines on the time scale (x axis) between hours and minutes. I have defined the "Plot Time" in build mode as Start: *-60m and End: *. For some reason, every minute or so as the trend refreshes with new data, the grid will change from "60.00 Minutes" to "1.00 Hour." This causes the time grid lines to change from ~5 minute intervals to ~30 minute intervals.

 

Is there a way to force the units to stay in minutes and force the time axis grid lines to stay in 5 minute intervals?

 

Any assistance is appreciated.


New PI Tag showing as Pt Created for static alarm limit value after days

$
0
0

Hi,

I know that when you create a tag for the first time its value will show as Pt Created until a change in tag value occurs, right? What if that tag is an alarm limit that will never change?

Lets say I have a tag that is reading 20 and it is showing in Value field Pt Created. The value will always be Pt Created because there is no update. The source value is always 20. Is there a way of configuring the point so that it has the 20 as its value instead of saying Pt Created?

I want to use that limit to setup a PI Notification based on it but after 3 days of configuring the tag it still says Pt Created. Not sure how to refresh or how to configure it to get refreshed at least once. I was planning on going to DeltaV and on purpose do a change in value and then set it back to 20 but I will have to do this tons of times because it is not just one tag. Not sure what else to try to get the value in.

Thanks,
Janette

Check whether PI Installed or Not

$
0
0

Hi Folks!

 

I had developed an PISDK application and now preparing setup file for it. In my setup file, i would like to check the PI is installed in the system or not, so that I can prompt the user to Install PI first.

 

So what I am looking is, a script example to check the PI system installed or not!

 

Thanks

Shaji

Find number of temperture cycles

$
0
0

Hi All,

 

I need a bit of help. I've been asked to create a way of working out how many times a temperature has cycled from 100 to 800 DegC. The cycles can be of varying durations, and must be counted only when the temperature started at 100 degC and then reached 800DegC. If the temperature starts at 100 then sits at 500, goes back to 250, then rises to 800, then this is 1 cycle. Make sense?

 

I've tried to look at using excel to return when the value was >= 800 and the previous value wasn't, but this doesn't take account of the value reaching 800, dropping to 700, then going back to 800. That is not 2 cycles, only 1 cycle. The temperature must drop to 100 for the cycle to be counted.

 

Anyone got any bright ideas how I could do this (Without trawling through PI trends!)?

 

Thanks

 

Col

How do I check what PI Server version I'm running?

$
0
0

Hello everyone,

 

I'd like to know the PI Server version installed, so that I know whether it supports some of the features mentioned in the OSIsoft documentation.

 

Thank you in advance :)

AFSDK Library Reference

$
0
0

Hello team,

 

I am looking for AFSDK Library reference

I want to use as 'help' during .net application development

 

Can you help me?

 

Thx

PI Data Link - Invalid Expression Syntax

$
0
0

Hello there,

 

I am having trouble using PIAdvCalcExpVal thru PI Data Link.

 

The real problema is this:

 

Here is my Excel Formula

=PIAdvCalcExpVal("('CP_30100C_T71_AT_1148'*'CP_30100C_T75_FT_6301_VALUE')";$D$4;$E$4;"total";"time-weighted";"compressed";"10m";0;144;0;)/PIAdvCalcExpVal("('CP_30100C_T75_FT_6301_VALUE')";$D$4;$E$4;"total";"time-weighted";"compressed";"10m";0;144;2;)

Where D4 is my initial date and E4 final date.

In several computers in my company, this formula works well, but there is one specific computer where the formula returns an Excel error (#VALUE).

 

In order to try to find the root of the problem, I performed a test with this formula:

=PIAdvCalcExpVal("'CP_30100C_T71_AT_1148'";$D$4;$E$4;"total";"time-weighted";"compressed";"10m";0;144;0;)

and this one

=PIAdvCalcExpVal("(('CP_30100C_T75_FT_6301_VALUE')*1)";$D$4;$E$4;"total";"time-weighted";"compressed";"10m";0;144;0;)

 

On that specif computer, it returns "Invalid Expression Syntax". On every other computer I tested, it works perfectly.

 

In the same sheet I have several formulas using PIArcVal and PIExpVal, like this:

=IF(PIExpVal("badval('" &  H63 & "')";$P$7;0;);"PI ERROR";PIArcVal($H$63;$P$7; 0;"PIserver";"auto")*1,0197162)

where H63 is the PI TAG and P7 is the date.

 

All these PIArcVal and PIExpVal works fine on the computer I mentioned, it returns correctly the value I want. But the PIAdvCalcExpVal does not work at all.

 

What am I missing?

 

I am attaching an test sheet I developed. All these functions work well on every computer, except the one with problems.

 

ps.: I am using Excel in portuguese, that why I use ";" to separate the arguments of PI functions instead of ",". I think that in the english version the correct is to use ",". I am not sure.

Attached Files

Cant insert a new value in a tag using Archive Editor

$
0
0

Hi!

 

I'm using the Archive Editor (SMT) and trying to insert a new value on a tag. When I do this I receive the following error message:

 

PI-AE> Error 0: Server returned write error: : [-11414] Buffered point does not accept new events (Data.UpdateValues)

 

Why can't I insert the value?


Button Shapes in ProcessBook

$
0
0

Probably a dumb question, but I am trying to determine if we are stuck with the square or rectangle button shapes?  For the life of me I cannot find a way to change button shapes- maybe it isn't possible? Or does this require vba code?  Also- is it possible to make them multi -states?

 

Thanks,

Scott

Universal File Loader (UFL) - How to get Pi Archive to store a "No Data" point?

$
0
0

Flat files are sent to an interface node for UFL to process and send to Pi Data Archive.

 

Sometimes a sensor stops sending data for a short period.  How do I get a "No Data" or "Interface Down" state to be recorded for the relevant points?   Currently, the Pi Data Archive will simply extrapolate between the last point before the gap to the first point after the gap, even if the gap is hours or days.

 

I would like to be able configure UFL to load a "No Data" point if no data has been received for a point after a configurable number seconds or minutes.

 

Thanks,

Chris Hsu

UC Berkeley - CREST

Adding Tagtot

$
0
0

Hello,

 

I currently have an equation where I totalize the tonnage from a conveyor for the previous day and the equation is written as:
tagtot('TAG', '-1d','*')*24

The tag has units of tph which is where the 24 stems from. This calculation is performed once a day at 6 AM.

 

I'm looking to split this calculation into two parts, one for dayshift and one for nightshift. 
I wrote the tags as:
D/S : tagtot('TAG', 't-24h', 't-12h')*12 
N/S : tagtot('TAG', 't-12h', '*')*12

These are calculated at 6AM once per day. 

 

Both equations above are valid... but when I sum them together I get a different result (sometimes higher, sometimes lower) than the actual first equation. Could someone please indicate why the two are not adding up?

 

 

Thanks!

Ignore bad data while PI Notifications trigger is True

$
0
0

Is there a method completely within the PI Notifications Trigger for not issuing a Notification Closed when an input changes to a bad state?  Here is what is happening:

 

Rule                 Configuration

Comparison     InputTag < Threshold

 

1)  InputTag falls below Threshold and a Notification is issued.

2)  InputTag changes to a bad state and a Notification Closed is issued. 

3)  InputTag returns to a good value which is still below the Threshold and a new Notification is issued.

 

 

Thanks, Todd

PctGood, just the % good of a pi tag.

$
0
0

What is the easiest way to show just the percent good data of a pi tag in PI DataLink? When I use the check box I get an array and can’t make changes to the array, like dragging the cell down to cover different days. 

Returning a timestamp as a result

$
0
0

I am having trouble condensing down a spreadsheet into a single PI Datalink formula or AF Analytic that can be written back to a tag. It seems like some combination of event frames and/or AF analytics should accomplish my need, but I'm stumped

 

I need to average a tag over the last 365 days that a particular expression is evaluated as true . . . not the last 365 days filtering out when the expression was false, the last 365 days worth of when it was true.

 

So far I have it condensed to this (which also illustrates what I am trying to accomplish)

 

Solving for 'x' in 365=PITimeFilterVal("'tag1'>5",’x’,*,"days",0,\\server)

Then evaluating PIAdvCalcExpVal("IF ('tag1' > 5 THEN ('tag2') ELSE nooutput()",’x’,"*","average","time-weighted","compressed","10m",0,1,0,\\server)

 

How do I determine 'x' without using an entire spreadsheet, excel solver, or excel macros?

Retrieve AFAnnotation Values - Visual Basic

$
0
0

Hello My Fellow PI in they eye geeks:

I am facing a surprising challenge. In an ASP.net application (coded using Visual Basic) I have a loop to output an AF Element's temperature attribute's values, timestamps and annotations.

================== Here is my code that throws no errors ========================

     Dim values As AFValues = selectedAttribute.GetValues(timeRange, 0, desiredUOM)
        Dim desiredAnno As Object

        '# Build a table of values and timestamps:
        Response.Write("<table>")
        For Each tempValue As AFValue In values
            desiredAnno = tempValue.GetAnnotation
            If (desiredAnno Is Nothing) Then
                Response.Write("<tr><td>" + tempValue.ToString + "°C</td><td>" + tempValue.Timestamp.ToString + "</td><td> </td></tr>" & vbCrLf) '~ hard coded UOM abbreviation
            Else
                Response.Write("<tr><td>" + tempValue.ToString + "°C</td><td>" + tempValue.Timestamp.ToString + "</td><td>" + desiredAnno.ToString + "</td></tr>" & vbCrLf)
            End If
        Next
        'Response.Write("</table>" & vbCrLf)

========================= End Code ============================================

I get this output using 'Object' data type for the variable 'desiredAnno':
18.63791847229°C 7/9/2014 4:41:34 PM OSIsoft.AF.Data.AFAnnotations
18.6298904418945°C 7/9/2014 4:42:04 PM OSIsoft.AF.Data.AFAnnotations
18.6219100952148°C 7/9/2014 4:42:34 PM OSIsoft.AF.Data.AFAnnotations
18.6139793395996°C 7/9/2014 4:43:04 PM OSIsoft.AF.Data.AFAnnotations
18.6061000823975°C 7/9/2014 4:43:34 PM OSIsoft.AF.Data.AFAnnotations


I want to see:
18.63791847229°C 7/9/2014 4:41:34 PM The Annotation Here
18.6298904418945°C 7/9/2014 4:42:04 PM Another Annotation Here
18.6219100952148°C 7/9/2014 4:42:34 PM The Third Annotation
18.6139793395996°C 7/9/2014 4:43:04 PM The Fourth Annotation
18.6061000823975°C 7/9/2014 4:43:34 PM The Fifth Annotation


I get a big fat error and variations of errors when I use the 'AFAnnotation' data type

I know there is a way to get the value of the annotations using PISDK, but I can't seem to get the values using AFSDK. After hours of testing variations of the code I am open to suggestions for how to retrieve the values of the annotations.

 

¡Muchas Gracias!


Play “Name the OSIsoft Community” Today and win $200.

$
0
0

As those of you who attended our 2014 Users Conference may know already, we are creating a new comprehensive users community out of this community and the existing vCampus community. At around 15:40 in Ahmad Fattahi's presentation you can hear more details. 

 

Today we announced a contest to name the new community.  Here are the details you may have seen in an email we sent out this morning. (If you don't get our emails, you can sign up to receive them here.)

 

Hello,
 
Here at OSIsoft, we thrive on competition. We know our customers and developers do, too! It’s in that spirit that we are excited to present you with a unique opportunity.
 
We’re working to introduce you to a new, all-inclusive environment that encompasses all PI System professionals. This new and improved online community will welcome existing OSIsoft vCampus and Users Community members and will feature several major improvements for Partners and Learning. By integrating existing and new communities, our goal is to further your business success with OSIsoft and the PI System. It will be the one place for all PI System professionals to come together!
 
Today, we’re challenging you to participate in the “OSIsoft Community Naming Contest!” If we select your entry, we’ll reward you with an Amazon gift card. It’s that simple.
 
Do you think you’ve thought of the most creative name? Submit your entry today!
 
Here’s how you can participate:
 
Who: You!
What: Name That OSIsoft Community
When: Now until July 25, 2014
Contest Reward: $200 Amazon gift card
Name Announcement: On or after August 8, 2014
 
We look forward to reviewing your creative and original submissions!
 
Good luck one and all,
Ahmad Fattahi & Dirk Veenema

 

 

There's plenty of time to let us know what you would like to see in our community as we make changes going forward. Go to this thread to see some suggestions we've gotten over the years and to add your own.

 

PI SDK Utility displays an error says: Failed to register a server with pibufss!

$
0
0

Hello everyone,

 

When I launch PI SDK Utility, it displays an error in the important log messages screen that says:

 

"Failed to register a server with pibufss. [-30701] PIbufss unable to buffer due to internal problems. PIbufss cannot resolve the situation on its own: [-11446] Error retrieving buffered server configuration from the registry: [2] The system cannot find the file specified.. Not able to buffer SDK data."

 

Any insight?

ProcessBook and Element Relative Question

$
0
0

While using an element relative display for a distribution station, I would like the user to be able to push a button that takes them to a detailed display for a "bank" depending on the button they push, such as bank 1.  So for example, If the user is looking at a display for DS-1, and they want to see details for bank 1, and push the button for bank 1 details, it should open the element relative display, for details, on DS-1, bank 1.  It "almost" works, in that the details display opens, for DS-6 bank 1.  

 

What am I missing?

 

Thanks,

Scott

No value in pi datalink

$
0
0

Hi, I have a user who when the open a sheet in excel trough pi datalink, they get al #div/0! values. Any idea on how to fix this? Any help would be greatly appreciated.

 

Thanks

MDB Rename Error

$
0
0

Still old hat here and using the MDB. I am about to rename 800+ Alias' and my worksheet column headings are: Selected (x), Name & NewName - but when Exporting them, with Mode: = Edit, it returns this error:

 

"Alias Error setting Alias DataSource for alias xxxxx in module yyyyy. DataSource access failed. PIAlias"

 

I am logged in as an administrator with authority to change tags.

 

The odd thing is that the Alias Name is being changed but the error message is concerning me. Any ideas?

 

Miles

 

Module Database Builder
Version 1.3
    MDBBuilder.xla 1.3.0.0
    MDBTree.ocx 1.6.0.365
    PISDK.dll  1.4.0.416
    PISDKCommon.dll 1.4.0.416
    PISDKDlg.dll 1.8.0.412
    PISDKCtl.ocx 1.6.0.400
    PITimeServer.dll 
Copyright © 2004-2009, OSIsoft, Inc.
 

PS related help item: "To rename an existing PI-Module database item, the NewName field should be used and an export made in edit mode. This field can be used against a Module, Alias, or Property. When renaming, only the NewName field is required, in addition to the Name and Selected fields."

Viewing all 1120 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>