The DNP3 and DNP3 Emerson device template files include sections specific only to DNP3 devices.
The dnp3Suppport section of the device template file provides information on DNP3-related features. Point types supported by the device are grouped in this section.
The following table lists and describes the items found in the dnp3Support section.
| Property | Description |
|---|---|
|
fragmentSizeToDev |
Indicates the maximum size of the fragment sent from CygNet to the device.
|
|
fragmentSizeFromDev |
Indicates the maximum size of the fragment sent from the device to CygNet.
|
|
autoTimeSync |
If autoTimeSync is true, a time sync will be performed automatically whenever requested by the device via the internal indicators (IIN). See Best Practices for more information. |
|
autoPollClass<#> |
When set to true, triggers automatic polling of events by class (1-3) if the IIN flags indicate there are events. |
|
ptTypes |
The ptTypes element contains an entry for each point type supported by the device. In CygNet Explorer, the Single Point and Event parameters dialogs will only include point types listed in ptTypes. The attribute hasEvents indicates whether or not events are supported for the point type. Default is true. |
|
canGetRange |
Indicates whether the device will accept messages formatted to have a range of points when requesting data. The flags can be set at the parent (ptTypes) node and inherited for each point type. Default is false. |
|
canGetDiscrete |
Indicates whether the device will accept messages formatted to have a discrete set of points when requesting data. The flags can be set at the parent (ptTypes) node and inherited for each point type. Default is false. |
|
canSetRange |
Indicates whether the device will accept messages formatted to have a range of points when sending data. The flags can be set at the parent (ptTypes) node and inherited for each point type. Default is false. |
|
canSetDiscrete |
Indicates whether the device will accept messages formatted to have a discrete set of points when sending data. The flags can be set at the parent (ptTypes) node and inherited for each point type. Default is false. |
|
dataTypes |
The dataTypes element enumerates which data types are supported for the point type. If none are listed, all are supported. |
|
write |
The write element contains attributes pertaining to sending binary output and analog output values to the device:
|
The following example displays a sample dnp3Support structure:
|
<dnp3Support fragmentSizeToDev="2048" fragmentSizeFromDev="2048" autoTimeSync="true" autoPollClass1="false" autoPollClass2="false" autoPollClass3="false"> <ptTypes canGetRange="true" canGetDiscrete="true"> <!--funcCode for write operations: SelectOperate, DirectOperate--> <AI> <dataTypes> <i2/> <i4/> <r4/> </dataTypes> </AI> <AO hasEvents="false"> <dataTypes> <i2/> <i4/> <r4/> </dataTypes> <write funcCode="SelectOperate" maxPts="1"/> </AO> <BI/> <BO hasEvents="false"> <write funcCode="SelectOperate" maxPts="1"/> </BO> <CT/> <CTF hasEvents="false"/> </ptTypes> </dnp3Support> |
The statusFlags section of DNP3 device template files is an optional section that indicates how to map flags from the device to point status bits in the PNT. If omitted, none of the flags from the device will be mapped to CygNet status bits. This section contains a node for each flag set by the device. Only the flags that the user is interested in mapping need to be included in the device template file.
The state attribute indicates whether to perform the defined actions when the bit is set (true) or cleared (false). Each flag may include the following attributes that map to CygNet point status bits in the PNT:
See Point Status Bits for a description of CygNet status bits that can be mapped.
The following table describes the DNP3 flags. For more information, see the DNP3 documentation.
| Property | Description |
|---|---|
|
online |
A bit value of 1 indicates the point is active; a bit value of 0 indicates the point is inactive, unavailable, or out-of-service. |
|
restart |
When true, indicates the point has not been updated from the field since device reset. |
|
commLost |
If true, there is a communication failure in the path between the device where the data originates and the reporting device and that the value reported may be stale. |
|
remoteForced |
If true, the value is overridden in a downstream reporting device. |
|
localForced |
If set, indicates the value is overridden by the device that reports this flag as set. |
|
chatterFilter |
When set, indicates the value is presently changing values rapidly; applies to binary input and double-bit binary input point types. |
|
overRange |
If set, indicates that a point’s value exceeds the valid measurement range of the point; applies to analog input point types. |
|
discontinuity |
If true, the reported counter value cannot be compared against a prior value to obtain the correct count difference; applies to counter point types. |
|
referenceErr |
If set, the measurement process determined that the point’s value might not be accurate; applies to analog input point types. |
The following example displays a sample statusFlags structure.
|
<statusFlags> <online state="false" setUnreliable="true"/> <restart state="true" setUnreliable="true"/> <commLost state="true" setUnreliable="true"/> <remoteForced state="true" setUser13="true"/> <localForced state="true" setUser13="true" setUser14="true"/> <chatterFilter state="true" setUnreliable="true"/> <overRange state="true" setUnreliable="true" setUser15="true"/> <discontinuity state="true" setUser16="true"/> <referenceErr state="true" setUnreliable="true"/> </statusFlags> |