8 Replies Latest reply on Mar 31, 2014 9:41 PM by mhamel

    Storage Tank Increases

    Darren.Metcalfe

      Hi

       

      I have a requirement to display increase in stock levels of chemicals at plants my company maintains.  I have various ideas but wanted to check  with the community to see if there are more, which I'm sure there are!

       

      Basically at regular intervals throughout the month we have a delivery of chemicals and the trend which I am displaying in Processbook obviously spikes up at a very quick rate. I'd like to record this spike so that I can either present the data somehow in the very same PDI or utilise datalink to show the data. It's imperative that the date and the increase in stock level are recorded  ( ie before delivery tank level = 10 tonnes, after delivery tank level = 40 tonnes, delivery = 30 tonnes). This function is required so that we have instantanous visibility of deliveries and so that we have confidence in that we are paying for the correct amount of chemical delivered. I've looked into Performance Equations which use the range function and also tried a PE using prevent with mixed results. I would like to know if anybody else has utilised a similar process.

       

      Many Thanks in advance.

        • Re: Storage Tank Increases
          flost

          Hi Darren,

           

          I think without more information from the process it would be hard to solve. One possible solution would be that you check if the difference between two values is positive or negative. If it is positive you have to summ all values till the level of the tank is sinking. But there are some problems with this approach. There are circumstances that change the level of a tank (e.g. temperature, measurement inaccuracy etc.) So this method is not very acurate.

           

          My second approatch would be an signal that indicates that a tank is being filled. If this signal is on, you can easily summ the values over the filling period.

           

          Regards

           

          Florian

            • Re: Storage Tank Increases

              What measurements do you have on the tank?

               

              Level?  Temperature?  Flow (in) delivery and Flow (out) consumption?

                • Re: Storage Tank Increases
                  Darren.Metcalfe

                  Hi Gopal

                   

                  The measurement in the tank is level only. The chemical is used on a regualr basis so there is a steady decline as it is used. Any sharp increase is a delivery (barring intstrumentation issues).

                   

                  Many Thanks

                    • Re: Storage Tank Increases

                      Usually, for tanks, there is a strapping table that gives you a level to weight via table lookup - do you have the strapping table?   Otherwise, all you can do is display the change in level.

                       

                      Can you clarify the "mixed results" - what have you attempted and is not to your satisfaction?:

                       

                      <= =

                       

                      I've looked into Performance Equations which use the range function and also tried a PE using prevent with mixed results.

                       

                      = = >

                        • Re: Storage Tank Increases
                          Darren.Metcalfe

                          Hi Gopal

                           

                          Sorry I'll try to add more information. The range function is not suitable because I'm unable to add any specific date / time to the sharp increase. I do apologise about being quite vague, I'm a newbie to PI and not fully conversnat with many of the built in functionality. I do not have a strapping table and basically I do only want to display the sharp change in level as it increases. Typically the duration of added to the chem tank takes approx 1 hour so the trend shows a sharp increase. It is this increase value with a date and time that I wish to record and present via PI Datalink.

                           

                          Many Thanks

                            • Re: Storage Tank Increases
                              mhamel

                              @Darren: Have you thought to use maybe PI ACE to detect a negative slope over a short period of time? This could be the trigger that you want to start displaying it on a PB display or having a report showing information about the process.

                               

                              I utilized a similar technique in the past to keep in memory an internal cache (covering the last hour for example) for my calculation and as the module receives a new value I was calculating a slope of consumption or reload. You could define within that module that having a negative slope of x would indicate that a load of chemicals in that tank is occurring.

                               

                              Let me know if that helps

                                • Re: Storage Tank Increases
                                  Paurav Joshi

                                  Hi Darren,

                                   

                                  From your query I understood that you wanted to show when those spikes in level happened and the value of the level  at that time also. If I am correct to understand the question, then I think you can also use Event Frames in this case. But to show them in Process-Book you have to wait till new Process-Book update is available by OSISoft which supports EventFrames.

                                   

                                  @Mathieu what's your opinion about using EventFrames in this case  , is it good way?

                                    • Re: Storage Tank Increases
                                      mhamel

                                      @Paurav: Event Frames could help to better identify when the loading occurred and for how long. I would see that this negative slope detection mechanism could be your trigger to create an Event Frame and the return to zero or near is when it ends.

                                       

                                      Event Frame for this use case eases the creation of report regarding the loading task for example.