Example: Simulating an IEC 61850 Substation
This example shows a simulation of multiple bay controllers, protection devices, and an HMI in an IEC 61850 based automated substation. The station bus has MMS based Client/Server connections with Reports, Controls, and Logs. The process bus has broadcast GOOSE messages and Sampled Values streams which are subscribed to by different components. The Object Models, Data Sets, Control Blocks, and subscription configurations need to be verified to ensure that the right information is available to different devices across the substation.
DTM is simulating the communications and Object Models of the Bay Controllers and protection IEDs. The simulation can be run on a single PC or distributed across multiple hosts to test the communication configuration of the substation with a real station bus and process bus. IED configurations are loaded from SCL files (.ICD or .SCD) including the Object Models, services, and communications. The HMI is a simulated IEC 61850 Client which subscribes to Control Blocks in the IEDs and issues controls to the IEDs.
Test cases can be built on top of these simulated devices to test specific substation automation processes. In this example, GOOSE message publishing and subscribing configurations are tested by generating specific data changes which test GOOSE signals all the way through the Publisher's Object Model, Data Set, and Control Block to the Subscriber's External Reference. Also in this example, the IEC 61850 Client is testing the Report Control Blocks that are configured in the IEDs.
IED behavior can be modeled with scripting capability in DTM which is highly configurable. Variables in scripts can be driven by the transition of specific Data Attributes in the Object Model. Scripts can also directly set Data Attributes in the Object Model. GOOSE publishing and subscribing can tie directly into scripting functions based on configuration of Control Blocks and Data Sets in SCL Files. In this way, scripts can be created to monitor and verify entire data paths in the system. Data changes can be driven by playing back captured CSV files from real systems. Data change time steps can be configured to a specific number of seconds or follow the captured time steps from the CSV file.