You are on page 1of 18

UniCA 61850 Conformance Test Set

The UniCA 61850 conformance test set enables you to perform conformance tests of a IEC 61850
server, fully compliant with the IEC 61850-10 Conformance testing. The test set enables you to
create, send/receive, analyze and store correct and incorrect(!) IEC 61850-8-1 communication
messages. The UniCA test set is the tool for communication interface development and
conformance testing.

The test set consists of:


UniCA 61850 protocol analyzer
UniCAsim 61850 conformance test client simulator
UniCAsim 61850 conformance test GOOSE simulator (optional)

UniCAsim 61850 simulator with


reference test suite & Test master

Ethernet 100BaseFX Switch & SNTP Time Master

Protection / UniCA 61850


Control Analyzer

Omicron CMC Test Set

www.kema.com UniCAsim 61850 conformance test simulator


Simulator user interface

<Test suite> <Data model> < Test report & log>

Scripts
To be both flexible and reproducible the test simulator is controlled by UniCAsim Basic scripts.
UniCAsim Basic enables you to construct and send messages, to check received messages,
access the data model and report errors or other text. To create or change scripts one should have
a detailed knowledge of the IEC 61850 protocol. Scripts are grouped together in a test group, test
groups are grouped together in one test suite. The test simulator is shipped with a ready-to-use
reference test suite that simulates a client to test any IEC 61850-8-1 server. KEMA uses the same
test set to perform its own conformance tests.

Simulator Features
Build in test script editor
Easy configuration of the test suite
Reference test suite according to IEC 61850-10

www.kema.com UniCAsim 61850 conformance test simulator


Automatic test report generation (summary of test results of data available in the simulator and
analyzer)
Flexible auto configuring IEC 61850 data model browser
Compare browsed data model with reference or other browsed data models
OLE automation interface to exchange data with
o Omicron CMC test set
o UniCA Analyzer (running on the same PC or on another PC)
o UniCAsim simulator
Test master and reference test suite to support automatic conformance testing of IEC 61850-8-
1 server implementations according to IEC 61850 part 10: Conformance Testing. This includes
testing of:
- ICD/SCD configuration description file; IEC 61850 part 6
- Data model; IEC 61850 part 7-3 and 7-4
- Communication services; IEC 61850 part 7-2 and 8-1
o Association model
o Server / Logical device / Logical node / Data model
o Data set model
o Substitution model
o Setting group model
o Reporting model
o Log model
o Generic substation events model
o Control model
o File transfer model
(See Annex for detailed test capabilities.)
Scheduled simulator features
- Automatic testing of ICD/SCD configuration description file (part-6)

System requirements
PC or laptop with Windows operating system with at least 256 MB RAM
Parallel or USB port for copy protection key
Ethernet network interface card

Support Contact
6 month service included in license KEMA Nederland B.V.
Software and reference test suite updates via e-mail P.O. box 9035, 6800 ET
Issue change request and problem reports ARNHEM, the Netherlands
Service renewal available for one year Tel: +31 26 356 6043
Fax: +31 26 351 5456
email : sales@kema.com
www.kema.com

www.kema.com UniCAsim 61850 conformance test simulator


Detailed test capabilities of the test set

The test set enables you to perform the following tests (extract from IEC 61850-10). Some test
scripts cant be performed automatically and do need additional support form the test engineer.
Because the reference test suite can be copied and edited its easy for the end-user to
adjust/create user/device specific test cases when necessary.

Configuration file test cases (under construction)


Test if the ICD configuration file conforms to the SCL document type definition (part 6).
Check if the ICD configuration file corresponds with the actual data, data types and services
exposed by the DUT on the network
Change end-user configurable parameters in the SCD configuration file, configure the DUT
using the SCD configuration file (using the supplied configuration tool) and check the
configuration using online services corresponds with the SCD file. Restore the original SCD file
and re-configure the DUT to its original state.

Data model test cases


Verify presence of mandatory objects for each LN (presence M or conditional presence true).
Verify data type of all objects for each LN.
Verify data attribute values from the device are in specified range (this is a continuous effort
during the whole conformance test)
Verify non-presence of conditional presence false objects
Check if manufacturer specific extensions are implemented according to the standard
Verify data model mapping (names, control blocks)

UniCAsim enables you to compare the data model with the reference data model or with any other
data model of another IED. The test result is a list of data values with type and an OK, unknown,
missing or mismatch indication.

www.kema.com UniCAsim 61850 conformance test simulator


ACSI service models test cases

For each ACSI service model test cases are defined in the following categories:
positive = verification of normal conditions, typically resulting in positive response+
negative = verification of abnormal conditions, typically resulting in negative response (-)

Application association model

Positive
o Associate and release a TPAA association (7-2 7.4)
o Associate and server-abort TPAA association (7-2 7.4)
o Associate and client-abort TPAA association (7-2 7.4)
o Associate with maximum number of clients simultaneously

Negative
o Check that with incorrect authentication parameters and authentication turned on at server
the association fails, and with authentication turned off the server associates (7-2 7.4)
o Check that with incorrect association parameters at server or client the association fails (7-2
7.4)
o Set up maximum+1 associations, verify the last associate is refused
o Disconnect the communication interface, the DUT should detect link lost within a specified
period
o Interrupt and restore the power supply, the DUT should accept an association request when
ready

Server / Logical Device / Logical Node / Data model

Positive
o Request GetServerDirectory(LOGICAL-DEVICE) and check response (7-2 6.2.2)
o For each GetServerDirectory(LOGICAL-DEVICE) response issue a
GetLogicalDeviceDirectory request and check response (7-2 8.2.1)
o For each GetLogicalDeviceDirectory response issue a GetLogicalNodeDirectory(DATA)
request and check response (7-2 9.2.2)
o For each GetLogicalNodeDirectory(DATA) response issue a
o GetDataDirectory request and check response (7-2 10.4.4)
o GetDataDefinition request and check response (7-2 10.4.5)
o GetDataValues request and check response (7-2 10.4.2)

www.kema.com UniCAsim 61850 conformance test simulator


o Issue one GetDataValues request with the maximum number of data values and check
response
o For each writable DATA issue a SetDataValues request and check response (7-2 10.4.2)
o Issue one SetDataValues request with the maximum number of data values and check
response
o Request GetAllDataValues for each functional constraint and check response (7-2 9.2.3)
o Evaluate the semantic of selected (volt/amp) analogue measurements:
o Verify analogue value (plausibility check)
o Verify quality bits, force situations to set specific quality bits
o Verify (UTC) timestamp value and quality
o Verify scaling, range and units, change a setting and verify resulting value
o Verify deadbanding, change dead band and verify result
o Verify limit indications
o Evaluate the semantic of selected status points:
o Verify status value
o Verify quality bits, force situations to set specific quality bits
o Verify (UTC) timestamp value and quality

Negative
o Request following data services with wrong parameters (unknown object, name case
mismatch, wrong logical device or wrong logical node) and verify response- service error
o ServerDirectory(LOGICAL-DEVICE) (7-2 6.2.2)
o GetLogicalDeviceDirectory (7-2 8.2.1)
o GetLogicalNodeDirectory(DATA) (7-2 9.2.2)
o GetAllDataValues (7-2 9.2.3)
o GetDataValues (7-2 10.4.2)
o SetDataValues (7-2 10.4.3)
o GetDataDirectory (7-2 10.4.4)
o GetDataDefinition (7-2 10.4.5)
o Request SetDataValues of CODED ENUM data with out-of-range value and verify
response- service error (7-2 10.4.2)
o Request SetDataValues with mismatching data type (e.g. int-float) and verify response-
service error (7-2 10.4.2)
o Request SetDataValues for read-only data values and verify response- service error (7-2
10.4.2)

Data Set model

Positive
o Request GetLogicalNodeDirectory(DATA-SET) and check response (7-2 9.2.2)

www.kema.com UniCAsim 61850 conformance test simulator


o For each GetLogicalNodeDirectory(DATA-SET) response issue a
o GetDataSetValues request and check response (7-2 11.3.2)
o GetDataSetDirectory request and check response (7-2 11.3.6)
o Request a persistent / non-persistent CreateDataSet with null, one, maximum number of
elements and check response (7-2 11.3.4) and verify that only the persistent data set is
visible for all clients
o Create and delete a dataset, create the dataset again with the same name with one extra
data value / re-ordered element and check the elements
o Create a non-persistent dataset, release/abort the association, associate again and check
the dataset has been deleted (7-2 11.1)
o Create a persistent dataset, release/abort the association, associate again and check the
dataset is still present (7-2 11.1)

Negative
o Request following data set services with wrong parameters (unknown object, name case
mismatch, wrong logical device or wrong logical node) and verify response- service error
o GetDataSetValues (7-2 11.3.2)
o SetDataSetValues (7-2 11.3.3)
o CreateDataSet (7-2 11.3.4)
o DeleteDataSet (7-2 11.3.5)
o GetDataSetDirectory (7-2 11.3.6)
o Create a dataset with the same name twice, and verify response- service error
o Create more then maximum number of datasets and verify response- service error
o Create a dataset with more then maximum number of elements and verify response- service
error
o Create a dataset with one unknown data value, and verify response- service error
o Create a dataset with no data values, and verify response- service error
o Delete a (pre-defined) non-deletable dataset, and verify response- service error
o Delete a dataset twice, and verify response- service error
o Delete a dataset referenced by a (report) control block, and verify response- service error
(7-2 11.1)
o Request SetDataSetValue with a dataset with one or more read-only elements, and verify
response- service error

Substitution model

Positive
o Disable subEna and set subVal, subMag, subCMag, subQ and verify the substituted values
are not transmitted when subEna is disabled and are transmitted when subEna enabled (7-
2 12)

www.kema.com UniCAsim 61850 conformance test simulator


o Verify that in case the association fails, the substituted values shall remain unchanged

Negative
o Verify setting subVal, subMag, subCMag, subQ and subID response- service error when
subEna is already enabled (12)

Setting group control model

Positive
o Request GetLogicalNodeDirectory(SGCB) and check response+
o Verify all setting group state machine paths (7-2 13 figure 18)
o Verify active setting group values are effective

Negative
o Request following setting group services with wrong parameters (out of range values, or
non existent setting group) and verify response- service error
o SelectActiveSG (7-2 13.3.2)
o SelectEditSGValues (7-2 13.3.3)
o SetSGValues (7-2 13.3.4)
o ConfirmEditSgValues (7-2 13.3.5)
o GetSGValues (7-2 13.3.6)
o GetSGCBValues (7-2 13.3.7)
o Request SetSGValues on an active setting group (FC=SG), verify response- service error
o Request SetSGValues (FC=SE) and then SelectEditSGValues another setting group, verify
changes will be lost

Reporting model

Positive
o Request GetLogicalNodeDirectory(BRCB) and check response
o Request GetBRCBValues of all responded BRCBs
o Request GetLogicalNodeDirectory(URCB) and check response
o Request GetURCBValues of all responded URCBs
o Configure and enable a BRCB and a URCB and check the information reports are
transmitted as configured and contain the enabled optional fields (7-2 14.2.1)
o Optional fields: sequence-number, report-time-stamp, reason-for-inclusion, data-set-
name, data-reference, buffer-overflow, and/or entryID (7-2 14.2.3.2.2.1)
o Verify following trigger conditions

www.kema.com UniCAsim 61850 conformance test simulator


on integrity
on update (dupd)
on update with integrity
on data change (dchg)
on quality change (qchg)
on data and quality change
on data and quality change with integrity period
on data and quality change with integrity period and BufTime (integrity
reports should be transmitted immediately)
o Verify the validity of the ReasonCode (7-2 14.2.3.2.2.9)
o Verify that when more trigger conditions are met preferably only one report is
generated (7-2 14.2.3.2.3.2)
o Verify that reports can only be sent when RptEna is set to True. (7-2 14.2.2.5),
when reporting is disabled no reports should be transmitted
o When enable verify all data elements are transmitted in the first report (sequence number 0,
7-2 14.2.2.10), and following reports contain only the changed elements (when GI false
and no integrity triggered)
o Verify that if a long report does not fit in one message, the report is split into sub-reports.
Enable sequence-number and report-time-stamp and check validity of: (7-2 14.2.3.2.2.5)
o SeqNum (not changed)
o SubSeqNum (0 for first report, incrementing, roll-over)
o MoreSeqmentsFollow
o TimeOfEntry (not changed as SeqNum is not altered) (7-2 14.2.3.2.2.9)
o Verify that an update of a data value during sending of a long report caused by an integrity
or general-interrogation trigger can be interrupted by a report with change of one of the data
values with a new sequence number. (7-2 14.2.3.2.3.5)
o General interrogation:
o Setting the GI attribute shall start the general-interrogation process. One report with
the current data values will be sent. After initiation of the general-interrogation, the
GI attribute is reset to False. (7-2 14.2.2.13)
o A new request for general-interrogation shall stop the sending of remaining
segments of the GI-report that is still going on. A new GI-report shall start with a
new sequence number and the sub-sequence number shall be 0 (7-2 14.2.3.2.3.4)
o Configuration revision (7-2 14.2.2.7)
o Verify that ConfRev represents a count of the number of times the configuration of
the data set referenced by DatSet has been changed. Changes that are counted
are:
deletion of a member of the data-set
re-ordering of members in the data-set
ConfRev should never be 0 (zero).
o Verify that after a restart of the server, the value of ConfRev remains unchanged (7-
2 14.2.2.7)

www.kema.com UniCAsim 61850 conformance test simulator


o Verify that configuration changes data sets due to processing of services are not
allowed, changes to be taken into account for the ConfRev are those made by local
means like system configuration (7-2 14.2.2.7. note 1)
o Buffer Time (7-2 14.2.2.9)
o In the case where a second internal notification of the same member of a DATA-SET
has occurred prior to the expiration of BufTim, the server: (7-2 14.2.2.9)
shall for status information behave as if BufTim has expired and immediately
send the report, restart the timer with value BufTim and process the second
notification or
may for analogue information behave as if BufTim has expired and
immediately transmit the report for transmission, restart the timer with value
BufTim and process the second notification or
may for analogue information substitute the current value in the pending
report with the new one.
o Configure Buffer Time to 1000 milliseconds and force multiple data value changes
within buffer time. Server should send not more then one report per buffer time.
o Verify that the value 0 for buffer time indicates that the buffer time attribute is not
used. (7-2 14.2.2.9)
o Verify that the BufTim value can contain at least the value 3600000 (= one hour in
milliseconds) (7-2 14.2.2.9)
o Buffered reporting (BRCB) state machine (7-2 14.2.2.5 figure 20)
o Verify events are buffered after the association is released
o Verify reporting is disabled after the association is lost
o Verify that not received reports while not associated are received now in the correct
order (SOE) (7-2 14.2.1, 7-2 14.2.2.5)
o Do the same but now set PurgeBuf to True before enabling the reporting. No
reports should be send (7-2 14.2.2.14)
o Verify that all buffered events are sent before an integrity or general-interrogation
report can be sent. (7-2 14.2.3.2.3.3, 7-2 14.2.3.2.3.4)
o Verify that after changing DatSet, the report buffer is purged. (7-2 14.2.2.5)
o Force buffer overflow, the OptFlds buffer-overflow should be set in the first report
that is sent with events that occurred after the overflow. (7-2 14 2.3.2.2.8)
o Exclusive use of RCBs
o Configure a BRCB and enable it. Using another client it should not be possible to
set attributes value in this BRCB. (7-2 14.2.1)
o Configure a URCB and set the Resv attribute and enable it. Verify another client
shall not be allowed to set any attribute of that URCB (7-2 14.2.4.5)

Negative
o Request GetxRCBValues with wrong parameters and verify response- service error (7-2
14.2.3.3.2)

www.kema.com UniCAsim 61850 conformance test simulator


o Configure reporting on dchg and disable all reporting. Generate events. No reports should
be sent. (7-1 14.2.1)
o Configure reporting but omit setting one of the trigger options (dchg, qchg, dupd, integrity,
no reports should be send when generating events (7-2 14.2.3.2.2.9)
o Configure and enable reporting with no trigger options, check only one report is transmitted
(the GI). On a data change or integrity expiration no report is transmitted
o Setting the integrity period to 0 with TrgOpEna = integrity will result in no integrity reports
will be sent (7-2 14.2.2.12)
o Enable reporting, verify that no data in the RCB can be set except for RptEna and GI
o Disable reporting, verify setting of ConfRev and SeqNum response- service error
o Configure reporting with unknown DatSet, verify response- service error (7-2 14.2.2.6)
o Not supporting specific options as defined in the PIXIT or ICD shall result in negative
responses:
o dupd, dchg, qchg, integrity, general-interrogation: when enabling, negative response
of SetxRCBValues (7-2 14.2.2.11)
o integrity period: when setting IntgPd to a value > 0, negative. response of
SetxRCBValues. (7-2 14.2.2.12)
o general-interrogation: when setting GI to TRUE, negative response of the
SetxRCBValues service. (7-2 14.2.2.13)
o sequence numbering: setting sequence-number of OptFlds to TRUE causes a
negative response of the SetxRCBValues service. (7-2 14.2.3.2.2.5)
o TimeOfEntry: setting the report-time-stamp of the OptFlds attribute to TRUE causes
negative response of the SetxRCBValues service. (7-2 14.2.3.2.2.9)
o buffer time: setting the BufTim attribute to a value greater than zero shall cause a
negative response of the SetxRCBValues service. (7-2 14.2.2.8)

Log model (under construction)

Positive
o Request GetLogicalNodeDirectory(LOG) and check response+
o Request GetLogicalNodeDirectory(LCB) and check response+
o Request GetLCBValues with functional constraint LG of all responded LCBs
o Request SetLCBValues with functional constraint LG when LCB is disabled
o Verify only one Log per LD shall be allowed (7-2 $14.3.3.2.2) with reference
LDName/LDName
o Verify logging is independent of external application associations or other communication
transactions
o Verify a transition of LogEna from disable to enabled or from enabled to disabled shall
cause a log entry to be placed into the log
o Configure and enable logging and check the following logging trigger conditions place a
correct entry in the log with the correct members of the data set

www.kema.com UniCAsim 61850 conformance test simulator


o on integrity
o on update (dupd)
o on update with integrity
o on data change (dchg)
o on quality change (qchg)
o on data and quality change
o on data and quality change with integrity period
o Request QueryLogByTime and check response+
o Request QueryLogByEntry and check response+
o Request GetLogStatusValues and check response+, verify the responded entrys indicate
the oldest/newest entry ID/time available in the log

Negative
o Request following log services with wrong parameters (out of range entrys, or non existent
Dataset, LCB or Log) and verify response- service error
o GetLCBValues (7-2 13.2.4)
o SetLCBValues (7-2 13.2.5)
o QueryLogByTime (7-2 14.3.5.2)
o QueryLogByEntry (7-2 14.3.5.3)
o GetLogStatusValues (7-2 14.3.5.4)
o Request SetLCBValues with functional constraint LG when LCB is enabled and verify
response- service error

Generic substation events model

Positive (DUT publish)


o Request GetLogicalNodeDirectory(GoCB) and check response+
o Request GetLogicalNodeDirectory(GsCB) and check response+
o GOOSE messages are publish periodically, check the GOOSE data with configured data;
sqNum is incremented, stNum isnt changed. (7-2 15.2.3.5, 7-2 15.2.3.6)
o Verify for GOOSE and GSSE that sqNum and stNum have the initial value one (1) (7-2
15.2.3.5 & 6, 7-2 15.3.4.3 & 4)
o Force data change of a data value in the GSE dataset, DUT should publish GOOSE
messages as specified/configured, stNum is incremented
o Verify GOOSE services: request service with legal parameters and check respond (7-2
15.2.2)
o GetReference (7-2 15.2.2.3)
o GetGOOSEElementNumber (7-2 15.2.2.4)
o GetGoCBValues (7-2 15.2.2.5)
o SetGoCBValues (7-2 15.2.2.6)

www.kema.com UniCAsim 61850 conformance test simulator


o Verify GSSE services: request service with legal parameters and check respond (7-2
15.2.2)
o GetReference (7-2 15.3.3.3)
o GetGSSEElementNumber (7-2 15.3.3.4)
o GetGsCBValues (7-2 15.3.3.5)
o SetGsCBValues (7-2 15.3.3.6)
o Disable GSE, verify that changing parameters with SetGo/GsCBValues are active (7-2
15.2.2.5, 7-2 15.2.2.6)
o Verify the sending of current data as initial GOOSE message on device power-up (7-2 5.1)
o Verify GoEna enables and disables the sending of Gooses (7.2 15.2.1.3)
o Configuration revision (7-2 15.2.1.6)
o Verify that ConfRev represents a count of the number of times the configuration of the data
set referenced by DatSet has been changed. Changes that are counted are:
o deletion of a member of the data-set
o re-ordering of members in the data-set
o changing the value of the attribute DatSet
ConfRev should never be 0 (zero).
o Verify that after a restart of the server, the value of ConfRev remains unchanged
o Verify that attribute NdsCom is True if DatSet is not yet configured (is NULL) (7-2 15.2.1.7)

Negative (DUT publish)


o Services: request GOOSE/GSSE service with illegal parameters and verify response-
service error (7-2 15.2.2)
o Verify that NULL for MemberReference in GetGOOSEElementNumber indicates that no
member of the referenced data set is defined. (7-2 15.2.2.4.2.2)
o Verify that NULL for Datalabel in GSSE GetReference indicates that no member is defined
for the respective DataOffset. (7-2 15.3.3.3.3.2)
o GOOSE: Verify that if Gooses are enabled (GoEna = True), no attributes of the GoCB
control block can be set except for GoEna. (7-2 15.2.1.3)
o GSSE: Verify that if Gooses are enabled (GsEnable = True), no attributes of the GsCB
control block can be set except for GsEnable. (7-2 15.3.3.6.3)
o Verify that if the number or size of values being conveyed by the elements in the dataset
exceeds the SCSM determined maximum number, NdsCom is set to True. (7-2 15.2.1.7)

Positive (DUT subscribe)


o Send single GOOSE message with new data and check if the message is received and the
data has the new value by e.g. check binary output, event list, logging or MMI
o Send single GOOSE message with the Test parameter set. Check behavior as specified in
PIXIT

Negative (DUT subscribe)

www.kema.com UniCAsim 61850 conformance test simulator


o Check behavior of DUT as specified in PIXIT on
o Missing GOOSE message
o Double GOOSE message
o Delayed GOOSE message
o Out of order GOOSE message
o Check behavior of DUT when the data set configuration mismatches: to many elements, to
less element, out of order elements, element with wrong type

Control model

Positive
o Force and check each path in control state machine for an control object with one of the
following control modes (compare Figure 1 and state machine test cases)
o Direct-operate with normal security (7-2 17.2.1)
o SBO-control with normal security (operate once/many) (7-2 17.2.2)
o Direct-operate with enhanced security (7-2 17.3.2)
o SBO-control with enhanced security (operate once/many) (7-2 17.3.3)
o Verify that with test mode set no operations to the process are performed.
o Verify that ctlVal and operTime are effective
o Select all SBO control objects and cancel them in opposite order

Negative
o Operate (without select) for a SBO control object and verify the response- AddCause (7.2
17.2.2)
o Select twice, second select should fail and verify the response- AddCause (7.2 17.2.2)
o Operate value is the same as the actual value (On-On, or Off-Off) and verify the response-
AddCause (7.2 17.2.2)
o Select the same control object from 2 different clients, verify the response- AddCause (7.2
17.2.2)
o Force and verify situations to set specific other applicable AddCause values (7-2 17.5.2.6)
o Select / Operate a unknown control object and verify the response- AddCause (7.2
17.2.2)
o Mismatch control mode behaviour
o Out-of-range operate value and verify the response- AddCause

www.kema.com UniCAsim 61850 conformance test simulator


Control model SBO enhanced security state machine test cases
Below figure shows the state machine for SBO with enhance security control mode. Test cases are defined to
check each path. For other control modes similar test case are defined.

Unselected
1) SelVal_req[Test not ok]^client.SelVal_rsp-

2) SelVal_req[Test
ok]^client.SelVal_rsp+
3a) Cancel_req^client.Cancel_rsp+
3b) Timeout
Ready 3c) TimOper_req[Test not ok]^client.TimOper_rsp-
3d) Oper_req[Test not ok]^client.Oper_rsp-

5) TimOper_req[Test ok]^client.TimOper_rsp+

4) Oper_req[Test ok]^client.Oper_rsp+

WaitForActivationTime 6) timer expired[Test not ok] ^client.TimOper_rsp-

entry / start timer

7) timer expired[Test ok] ^client.TimOper_rsp+

WaitForChange 8a) state(new_valid)[sboClass=OPERATE_ONCE]^client.Report_req,client.CmdTerm_req+


8b) timeout[state(old), sboClass=OPERATE_ONCE]^client.CmdTerm_req-
entry / activate output 8c) timeout[state(between), sboClass=OPERATE_ONCE]^client.Report_req,client.CmdTerm_req-
state (between) /
exit / deactivate output

9a) state(new_valid)[sboClass=OPERATE_MANY]^client.Report_req,client.CmdTerm_req+
9b) timeout[state(old), sboClass=OPERATE_MANY]^client.CmdTerm_req-
9d) timeout[state(between), sboClass=OPERATE_MANY]^client.Report_req,client.CmdTerm_req-

Figure 1 - State machine SBO with enhanced security

State machine paths for SBO with enhanced security returning the device to the Unselected state
are:
Path 1
Path 2+3a/b/c/d
Path 2+4+8a/b/c
Path 2+5+6
Path 2+5+7+8a/b/c
And paths setting the device to the Ready state:
Path 2+4+9a/b/c
Path 2+5+7+9a/b/c

www.kema.com UniCAsim 61850 conformance test simulator


Path 1 (returning to Unselected state)
o Select device using SelVal with improper access rights. Access should be denied (7-2
17.2.2)

Path 2+3a/b/c/d (returning to Unselected state)


o Select device correctly [SelVal]
o Verify each of these paths will return the device to the Unselected state:
o Client requests Cancel
o Conclude this tests by once sending an incorrect Operate request and the second
time sending an incorrect TimeActivatedOperate request

Path 2+4+8a/b/c (returning to Unselected state)


o Select device correctly SelVal]
o Verify each of these paths will return the device to the Unselected state:
o Perform a correct Operate Once request
o Perform a correct Operate Once request and force the output of the device such that
the output keeps its old state
o Perform a correct Operate Once request and force the output of the device such that
the output keeps reaches the ' between'state

Path 2+5+6 (returning to Unselected state)


o Select device correctly [SelVal]
o Send a TimeActivatedOperate request, thereby making sure the device will generate a '
test
not Ok'.

Path 2+5+7+8a/b/c (returning to Unselected state)


o Select device correctly [SelVal]
o Send a correct TimeActivatedOperate request
o After the timer has expired, verify each of these paths will return the device to the
Unselected state:
o Perform a correct Operate Once request
o Perform a correct Operate Once request and force the output of the device such that
the output keeps its old state
o Perform a correct Operate Once request and force the output of the device such that
the output keeps reaches the ' between'state

Path 2+4+9a/b/c (returning to the Ready state)


o Select device correctly [SelVal]
o Verify each of these paths will return the device to the Ready state:
o Perform a correct Operate Many request
o Perform a correct Operate Many request and force the output of the device such that
the output keeps its old state

www.kema.com UniCAsim 61850 conformance test simulator


o Perform a correct Operate Many request and force the output of the device such that
the output keeps reaches the '
between'state

Path 2+5+7+9a/b/c (returning to the Ready state)


o Select device correctly [SelVal]
o Send a correct TimeActivatedOperate request
o After the timer has expired, test each of these paths which will return the device to the
Ready State:
o Perform a correct Operate Many request
o Perform a correct Operate Many request and force the output of the device such that
the output keeps its old state
o Perform a correct Operate Many request and force the output of the device such that
the output keeps reaches the ' between'state

File transfer model

Positive
o Request a GetServerDirectory(FILE) with correct parameters and verify the response (7-2
6.2.2)
o For each responded file:
o request a GetFile with correct parameters and verify the response (7-2 20.2.1)
o request a GetFileAttributeValues with correct parameters and verify the response (7-
2 20.2.4)
o request a DeleteFile with correct parameters and verify the response (7-2 20.2.3)
o Verify the SetFile service with a small and large file and the maximum number of maximum
sized file (under construction)

Negative
o Request following file transfer services with an unknown file name and verify the appropriate
response- service error
o GetFile (7-2 20.2.1)
o GetFileAttributeValues (7-2 20.2.4)
o DeleteFile (7-2 20.2.3)

www.kema.com UniCAsim 61850 conformance test simulator


Combination test

Positive
o Test reporting and control services keep on working as specified while requesting other
services; combine server actions: Reporting, Logging, Goose subscribing/publishing, with
client initiated operations:
o enable reporting and force reports
o enable logging and force logs
o enable Goose publishing and force Goose messages
o send Goose messages
o request GetXXXX data/dataset/log/file services
o issue control commands

www.kema.com UniCAsim 61850 conformance test simulator

You might also like