|
<< Click to Display Table of Contents >>
Dynamic Configuration |
This Driver allows some configuration parameters to be informed at run time by script, by using a command for writing parameters from the IOKit library. These parameters are described on the next table.
Configuration parameters
Property |
Parameter |
Data Type |
|---|---|---|
Total Device Number |
IEC61850.DeviceCount |
DWORD |
Server |
IEC61850.Device[%u].Name |
STRING |
IP |
IEC61850.Device[%u].IP |
STRING |
Backup IP |
IEC61850.Device[%u].IPBackup |
STRING |
PSEL |
IEC61850.Device[%u].PSel |
DWORD |
SSEL |
IEC61850.Device[%u].SSel |
DWORD |
TSEL |
IEC61850.Device[%u].TSel |
DWORD |
Rem AE Qual |
IEC61850.Device[%u].AEQualifier |
DWORD |
Rem AP ID |
IEC61850.Device[%u].AppID |
STRING |
Disable |
IEC61850.Device[%u].Disable |
BYTE |
Use Backup IP |
IEC61850.Device[%u].UseIPBackup |
BYTE |
Save Comtrade (Per Device) |
IEC61850.Device[%u].SaveComtrade |
BYTE |
Delete Comtrade Files (Per Device) |
IEC61850.Device[%u].DeleteComtrade |
BYTE |
Browse Root Folder Only (Per Device) |
IEC61850.Device[%u].BrowseRootFolderOnly |
BYTE |
Comtrade Path (Per Device) |
IEC61850.Device[%u].ComtradePath |
STRING |
Use Fixed Comtrade Path On Device (Per Device) |
IEC61850.Device[%u].UseFixedPathOnDevice |
BYTE |
Name+Index File Transfer |
IEC61850.Device[%u].NameAndIndexFileTransfer |
BYTE |
File Root Name |
IEC61850.Device[%u].FileTransferRootName |
STRING |
Prefer Buffered Report Control Blocks |
IEC61850.UseReports |
BYTE |
User-Defined Report List |
IEC61850.UserReportList |
BYTE |
Poll Tags not found in any report |
IEC61850.PollTags |
BYTE |
Local P Selector |
IEC61850.LocalPSel |
DWORD |
Local S Selector |
IEC61850.LocalSSel |
DWORD |
Local T Selector |
IEC61850.LocalTSel |
DWORD |
Local AE Qualifier |
IEC61850.LocalAEQualifier |
DWORD |
Local App ID |
IEC61850.LocalAppID |
STRING |
RFC 1006 Source TSAP |
IEC61850.SourceTSAP |
DWORD |
App Category |
IEC61850.AppCategory |
STRING |
Polled Intg Rpt |
IEC61850.RptGI |
DWORD |
Auto Intg Prt |
IEC61850.IntgPd |
DWORD |
Use Quality change trigger |
IEC61850.UseQChgTrgOps |
|
Conformance Blocks (internal use) |
IEC61850.CBB |
STRING |
Services (internal use) |
IEC61850.Services |
STRING |
LD File Path |
IEC61850.LDPath |
STRING |
Comtrade Path |
IEC61850.ComtradePath |
STRING |
Comtrade Directory on Device (internal use) |
IEC61850.ComtradeDir |
STRING |
Msg Timeout |
IEC61850.Timeout |
DWORD |
Full Log Details |
IEC61850.DetailedLog |
BYTE |
Save Comtrade Files |
IEC61850.SaveComtrade |
BYTE |
Save Comtrade Per IED |
IEC61850.SaveComtradePerIED |
BYTE |
Delete Files after upload |
IEC61850.DeleteComtrade |
BYTE |
Comtrade Directory Check Interval |
IEC61850.CheckComtrade |
BYTE |
Comtrade Upload Interval |
IEC61850.UploadComtrade |
DWORD |
Check Report Time of Entry |
IEC61850.RedundantBRCB |
BYTE |
Status Check |
IEC61850.StatusCheck |
DWORD |
Asynchronous Write |
IEC61850.AsyncWrite |
BYTE |
Use Single Tag Command Alias |
IEC61850.SingleTagCmdAlias |
BYTE |
Apply Local Time Offset to Timestamps |
IEC61850.ApplyLocalTime |
BYTE |
Use Cmd Tag N1 as check condition |
IEC61850.SingleTagCmdN1 |
BYTE |
No LD Database Scan |
IEC61850.NoLDScan |
BYTE |
Browse Root Folder Only |
IEC61850.ComtradeBrowseRootFolderOnly |
BYTE |
Use Exclusive URCB |
IEC61850.ReserveURCB |
BYTE |
An example of dynamic COMTRADE configuration is described next:
1.This Driver must have all IEDs already declared, and they must have their Disable option configured with value 1 (one). This avoids that communication starts with wrong parameters.
2.This Driver must also have its Define Parameters Per IED option configured.
3.On the AfterStart event, there must have a script that changes the parameters of each IED. These parameters must be written via IOKit library. These parameters are informed on the next script, where %u must be changed by the index of the IED on this Driver, starting with 0 (zero). These parameters are available on this Driver's log.
"IEC61850.Device[%u].SaveComtrade"
"IEC61850.Device[%u].DeleteComtrade"
"IEC61850.Device[%u].BrowseRootFolderOnly"
"IEC61850.Device[%u].ComtradePath"
"IEC61850.Device[%u].UseFixedPathOnDevice"
"IEC61850.Device[%u].NameAndIndexFileTransfer"
"IEC61850.Device[%u].FileTransferRootName"
4.Consider that the ComtradePath and FileTransferRootName parameters are texts, and if their individual value, per IED, is not configured, the default value from the configuration window is considered. The default value for other properties is 0 (zero, False).
5.After writing the parameters, enable each IED by writing the value 0 (zero) in the "IEC61850.Device[%u].Disable" parameter.
6.Start communication with this Driver by writing the value 1 (one) to the special Tag ServerInitialBuild. This Tag creates the Hosts that are enabled and that have not been created yet.
' Exemple considering an 8-Element Array
' Empty indexes are ignored by this Driver
Dim Arr(8)
Arr(1) = Array("IEC61850.Device[0].SaveComtrade",1) ' This IED retrieves Comtrades
Arr(2) = Array("IEC61850.Device[1].SaveComtrade",0) ' This IED does not retrieve Comtrades
Arr(3) = Array("IEC61850.Device[2].SaveComtrade",1) ' This IED retrieves Comtrades
Arr(4) = Array("IEC61850.Device[2].NameAndIndexFileTransfer",1) ' This IED retrieves Comtrades using RootName + Index
Arr(5) = Array("IEC61850.Device[0].Disable",0) ' Enables IED
Arr(6) = Array("IEC61850.Device[1].Disable",0) ' Enables IED
Arr(7) = Array("IEC61850.Device[2].Disable",0) ' Enables IED
Driver.Write -1,0,0,3 Arr ' Writes parameters
Driver.Item("ServerInitialBuild").WriteEx 1 ' Considering the existence of this Tag with Item parameter = ServerInitialBuild,
'When writing 1 (one) it starts communication with all enabled IEDs
7.When stopping a Driver, these parameters are not saved, therefore the AfterStart event must be kept, so that when starting a Driver, IEDs are correctly configured.