_IP21-Adding a recipe ingredient (input)

Scenario

A Plant Focus client who imports IP21 data has a new recipe input and needed it added to some existing recipes.  In order accomplish this, we had 3 steps:

  1. Create new PLCs for each recipe
  2. Configure the PLCs
  3. Confirm the data is being collected
  4. Confirm the product type references in Plant Focus are configured the same in IP21

We will take one recipe input from start to finish. You can then apply the same method (create, configure, confirm) to include new inputs for any recipe.

Solution

1. Create the new input PLC


The new input was created by duplicating an existing recipe input from an existing recipe.

When building cement mixtures in Plant Focus with data from IP21, it is common to use the ‘main recipe’ PLC as the lookup for existing inputs. 

In this case the main recipe type is PLC #63, so any input would reference the main recipe PLC by adding ‘=r63’ in the ‘Input Formula’ as displayed in the screenshot below.

You can use the filter selection and it should return all inputs for PLC #63. 

If you hit ‘Select’ on one of the PLC lines, it will open up another window and you can scroll down to ‘Duplicate’ that input and a new PLC with all of the same metadata will be generated by Plant Focus. 





 2. Configure the new PLC

Once the new PLC has been created, you need to modify 3 fields to correctly configure the new input.  In this scenario, we need to update:

  • PLC Tag Name = "426_5FM785_FQ11"
  • PLC Description = "FM? <Recipe> CKD Consumed"
  • PLC Formula = "r<Production PLCid>" (63 in the example above)

For this particular client, it is OK that the other PLC details will inherit the same applicable settings as the input you duplicated without changing anything else.  


3. Confirm the data is being collected

For the last step, we need to confirm that the data for these new PLCids are transferring accurately from their historian.  The connection(s) for data transfer from the historian is dependent upon a few factors, including architecture of the environment, as well as, when the client took Plant Focus live.  For instance, some clients talk directly to the same server as the historian, so data transfer is near real-time and not dependent on 'interconnected' databases.  Some clients have a centralized model, where we channel through a ‘collector’ service that is hosted on a remote server either across networks or separate from the historian.

**It is also noteworthy that this particular client had configured their tag naming structure to indicate certain features of the particular PLC.  For example, they end this tag with FQ11 which is their nomenclature for a daily totalizer (one value per day) from IP21.  Hence, whenever they see FQ11 in the tagID in Plant Focus, they know it is a daily totalizer from IP21.  Additionally, they also use KQ11 at the end of some tags, which is their nomenclature reference for a totalizer that collects data hourly, each day.  Some of the recent Plant Focus implementations will transfer data every minute.

To confirm if real-time or near real-time data is transferring accurately, you can use the Daily Data Graphing tool inside Plant Focus.  If the transfer of data is done in batches or across secure networks, you should consult your IT support team if you do not see proper data appear in the graph.

This tool is usually located in the Reports submenu or at:  

 ~ /DOR/Reports/DataMultiGraph.aspx


4. Confirm the product type references in Plant Focus are configured the same in IP21

In typical installations a Product Type change happens infrequently.  When that change occurs, the daily totalizer tags store a data at the exact timestamp of the change. (See Totalizers - IP21)

12-SEP-17 00:00:00.0  Finish Mill 1 is producing Type I.

12-SEP-17 02:43:50.3  FM1 changed to producing Type II.

The raw data stored in the totalizer would have timestamps for 12-SEP-17 at 0:00:00 for data between 0:00:00 and 02:43:50.3.  Then another timestamp of data at 02:43:50.3 for data between 02:43:50.3 at 24:00:00.


Depending on the installation configuration of Plant Focus at the site, it may lookup the type detection by text or by integer.

IP21 query

Select ip_trend_time, cast(ip_trend_value as int), ip_trend_value from "FM2.Cement_Type"  where ip_trend_time >= '01-SEP-17'

results in:

ip_trend_time        CAST(ip_trend_value AS INTEGER) ip_trend_value

-------------------- ------------------------------- --------------

12-SEP-17 02:43:50.3                               8        Type II

04-SEP-17 20:08:53.4                               2        Type I


The reason for using integer based information instead of the more informative text is that the text when using ODBC data source it limits the number of characters returned. So when we have long descriptions of Types they could be truncated and therefore appear to us as duplicates when in fact they are different.

Manually changed values in the PLC:

How to detect if a value was manually changed at the PLC, query for the IP_Tren_QLEVEL. If it was manually changed the value will be Good/M vs Good for values that were unchanged at any point from there first reading.



Confirm data for a IP_21 "Totalizer" PLC in PlantFocus:

Confirm PLC's PLC_Communication_Type is 13. and Summary type is 2 or 3.

Use the SummaryTypeSecondaryType and Query IP_21

Select ip_trend_time, cast(ip_trend_value as int), ip_trend_value from "430_ProdType"  where ip_trend_time >= '01-SEP-17'