Equipment Types, Hierarchy setup

we are just embarking on a new SCADA project using SCADA 2018 and considering the use of the equipment dbf etc. can someone explain the following:

  • what is the purpose of the equipment hierarchy in the equipment dbf? is a flat structure preferred as opposed to using ISA 95 architecture
  • In the variable dbf, there's an item name field. Can the field be used to specify an item name that does not associate with any equipment type?
  • In the equipment type setup screen, can we create variable tags without specifying the address? can that be populated within the variable.dbf itself after "update equipment" is used?

Thank you

  • Hi Ignatius,

    We've used equipment on 2 large projects (3,500 & 15,000 equipment instances, 180,000 and 450,000 variable tags) so far and can highly recommend it.

    In answer to your questions:

    • I would recommend an ISA 95 style of hierarchy as this is useful for the operator to filter alarms etc and conveys an understanding of the structure of the plant.
    • Yes you can add a tag to a piece of equipment.  It's not usually a great idea.
    • You can populate any non-specified field manually in the relevant database table editor, however I would not recommend this generally.  Presumably you have an address based protocol.  This won't be the greatest experience, as sometimes we find it preferable to delete all of the variables/alarms/trends and regenerate from scratch.  You could make a utility of your own to merge the addresses [back] in I suppose.  We have used "tag name based" addressing which we are able to embed in the templates.  Perhaps you could arrange your PLC addressing so that you can supply a base address as a parameter to the equipment and build up the rest of it based on the item's offset or something.

    A few other points:

    • Getting the hierarchy correct is one of the most important and least well understood steps in this process.  You should engage your customer early.
    • You will then need to decide whether to have your genies use the hierarchical name or the shorn name based on the tagprefix.  There are pro's and cons to both.  Wherever you need to get rolled up info from the alarm server, you will need the hierarchical name, however nobody refers to it by that name, so relating it back to a P&ID for example is a bit of a nightmare.
    • The tag generator has some hidden functionality which can be used if you edit the XML directly.  This includes the ability to conditionally generate items based on a parameter.  This may address your second question.

    Hope this helps

    Stuart

  • Hi Ignatius,

    Adding onto Stuarts reply, Equipment brings an object oriented design to SCADA. The equipment story is a focal point for our current and future releases and a number of the new features in 2018 will only work with equipment. For example, the SA Library Objects and Alarm Indicator are equipment only based.

    Using Equipment enables:

    • Creating templates for similar equipment to reduce maintenance (templates are optional)
    • Hierarchical Navigation
    • Hierarchical Alarm counting and Filtering
    • Alarm Indicators
    • SA Library Objects
    • Context Based Navigation in the new Workspace
    • Scheduler and State based configuration

    Cheers,

    bradley

  • Thanks for the response.
    when you say tag name based addressing, are you suggesting that the address use a function of sorts to indirectly reference the actual PLC tag? I did consider using PLC addressing with offsets as well but there is a high potential that the address might change in future, therefore not a viable option.
  • I am saying that the PLC address looks more like a mnemonic tag, for example:
    [PLCnn]YI12345_HMI.OPURng_Alm
    This is built up in the template like this:

    [{equipment.IODEVICE}]{equipment.TAGPREFIX}_HMI.OPURng_Alm

    The format will depend on your PLC or OPC server etc.
  • "conditionally generate items based on a parameter"

    Tell me more!
  • For each output section, you add condition(s), eg

    <output name="CfgElem_8_270" file="variable.dbf" filter="'{equipment.type}={type.name}' AND ( '{equipment.Drv[Type]}=Type1' OR '{equipment.Drv[Type]}=Type2' ) ">