Scope rules – Echelon Neuron C User Manual

Page 121

Advertising
background image

Neuron C Programmer’s Guide

109

fb_properties {

cpGain,
static

cpUpdateRate,

global

cpBypassTime

};

fblock SFPTopenLoopSensor {

nvoVolt[0] implements nvoValue;

} fbVoltMeter[NUM_PHASES] external_name("AmpereMeter")

fb_properties {

cpGain,
static

cpUpdateRate,

global

cpBypassTime

};

Scope Rules

When adding implementation-specific network variables or configuration
properties to a standard or user functional profile, you must ensure that the

scope of the resource definition for the additional item is numerically less than or

equal to the scope of the functional profile.

For example, if you add an implementation-specific network variable or

configuration property to a standard functional block (SFPT, scope 0), you must

define that configuration property with a standard type (SCPT), and use a
standard network variable type (SNVT) for the implementation-specific network

variable.
A second example: if you implement a functional block based on a manufacturer
scope (scope 3) resource file, you can add an implementation-specific network

variable or configuration property that is defined in the same scope 3 resource

file, and you can also add an implementation-specific network variable or
configuration property defined by a SNVT or SCPT.
You can add implementation-specific members to standard functional profiles
using inheritance by performing the following steps:
1

Use the NodeBuilder Resource Editor to create a user functional profile

with the same functional profile key as the standard functional profile
you wish to inherit from.

2 Set

Inherit Members from Scope 0 in the functional profile definition.

This setting makes all members of the standard functional profile part of
your user functional profile.

3

Declare a functional block based on the new user functional profile.

4

Add implementation-specific members to the functional block. These
members can be implemented using user-defined UNVT or UCPT types,

themselves defined at the same scope as the inheriting functional profile.

Important: Implementation-specific network variable or configuration properties

are no longer acceptable according to the rules of the interoperability application

layer guidelines, starting with version 3.4.

Alternatively, you can create a functional profile that inherits members from a

standard functional profile, and add your own profile-specific members to the

functional profile, by performing the following steps:

Advertising