• Not Answered

How to Write to a SGCR Block Curve Array

I need to allow Operations to Write to a few of the Curve_X and Curve_Y values in a SGCR block from DeltaV Operate. Is this possible?

I also thought to use a SCRL block to achieve a similar result but the same problem occurs, how to write to the "IN_SCALE" or OUT_SCALE"

ant help would be greatly appreciated

2 Replies

  • Yes, this can be done. You would have to expose the parameters in some way.  I created a "tuning Table" GEM for the SGCR block and placed this in the Detail Display for the module.  

    I also created a curve GEM to show the shape of the SGCR curve.  The curve GEM is still a work in progress and has some limitations, but it helps to see the curve. If an incorrect value is entered, the Operator can see the anomaly and correct it in the table.

    This can be done in Operate as well.  

    The table is set up based on the Module and FB name of the SGCR block.  In this case, there were three such blocks in the module so I created a drop down selector to list the block names.  The GEM's update based on the selected block. 

    The Operator can select the x or y value of interest and enter values.  Each of these is a datalink to the respective MODNAME/SGCRName/CURVE_X[#][1].CV or /CURVE_Y[#][1].CV.  

    For a smoother curve, you want to place more values around inflection points and use fewer points for straight sections.  So on this type of curve, the X and Y values are typically modified.  If you have set this up with fixed X values (0, 5,10,15 etc..) and you only want the operator to manipulate Y values, you can remove the Write ability on the datalink and limit changes to just Y.

    I decided to place this in the Detail Display since there is quite a bit of math in the Curve GEM to convert the X,Y values in EU units to positional values.  The Tuning Table is just 42 datalinks.  

    Andre Dicaire

  • In reply to Andre Dicaire:

    Thank you Andre, i am working with your answer,
    I can browse to this in my expression builder for datalink "DVSYS.FIC128_TEST/SGCR1/CURVE_X.F_CV"
    to this i added "[#][1]"
    to make it
    DVSYS.FIC128_TEST/SGCR1/CURVE_X[#][1].F_CV
    now i can write to it!
    At this point i dont need a full fledged tuning table as you has shown.
    Thank you so much for your help.
    Regards
    Peter