158 Practical Modern SCADA Protocols: DNP3, 60870.5 andRelatedSystems 6.3.11 Flags in objects Slave devices may ignore whether a master calls for data with or without flags, and may send the requested data with or without a flag at the choice of the slave. The rules are: 6.3.12 16- and 32-bit variations • Slave may decide when to provide flag • Slave may ignore whether master asks for flag or not • If slave does not provide flag, point may be assumed to be normal, ie no fault bits set • A master must be able to process object variations with or without flags • A slave must have a default configuration for object variation responses to non-specific requests • These are class or variation 0 requests • Slave responds with default variation • Slave must respond with specific variation if requested 6.3.13 Over-range analog objects • If a hardware device is over-range, over-range flag is set • But hardware data is reported unaltered • This could be +2047 or –2048 for a 12-bit DAC for example If a hardware device is over-range: • Over-range bit in flag field is set • Data is reported as is from device If a measured value is within range of the hardware, but exceeds that which can be represented by the data object variation requested, then a maximum positive or negative value is returned. 6.3.14 Counter roll-over There is a problem in interpretation of the roll-over flag for counter objects. This arises from the flexibility provided by object variations which means a master will not know whether a counter rolled over at 16 bits or 32 bits. • Slaves may choose not to set the roll-over flag • Roll-over point must be specified in device profile • A slave must have a default configuration for object variation responses to non-specific requests. This will specify the default counter object size • A slave must provide at least 16 bits of a 32-bit counter if polled for 16-bit counter object • Master must poll frequently enough to avoid roll-over in polled systems It is recommended that roll-over flags are not set by slave devices and are ignored by masters.
6.3.15 Time-tagged binary input events 6.3.16 Freeze operations 6.3.17 Time synchronization Advanced considerations of distributed network protocol 159 • Event sequence must be preserved • Non-specific event object requests, ie for class or variation 0 data return: • Time-tagged event object, or • Non-time-tagged event object, or • Both. In this case device must be configurable to limit reporting to one or the other • A master must request freeze operations on binary counter objects only (object 20), not on frozen counter objects (object 21) • Level 2 or 3 devices must support freeze operations on binary counter objects, if they have them • They are not required to support reads of frozen counter objects A slave device does not need to support delay measurement or write operations on time and date if it never sets the time synchronization required internal indication bit. It is recommended that if relative time event objects are used, an unsynchronized CTO object should be used if the slave’s time has not been set by the master. 6.4 Conformance testing 6.4.1 General One of the recognized strengths of DNP3 is the existence of detailed compliance certification test procedures. These are produced and maintained by the DNP3 User Group. Currently the certification test procedures specify the test requirements and procedures for conformance testing of IEDs to DNP3 levels 1 and 2. The documents also contain some clarifications and extensions to Basic Four documents. It is important to note that the certification procedures are focussed on the minimum requirements, as implemented in IEDs rather than at the level of SCADA master stations. This shows that although conformance and interoperability can be assured for systems featuring equipment certified to level 1 or level 2, there is no assurance for features and functions above these levels. Thus, if a system is to incorporate a diverse range of equipment with extended specifications (IEDs with many functions above the level 2 implementation sub-set), then specific assurance testing may be appropriate. 6.4.2 Specification The protocol specification is clarified by the certification procedure as being made up of the following documents: • Basic Four: • DNP Version 3.00 Data Link Layer • DNP Version 3.00 Transport Functions