<< 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 |
Below there is an example of COMTRADE dynamic configuration:
1 – The driver shall have all IED´s already declared, and shall be set with the option Disable checked (value = 1). This is to avoid the communication to start with incorrect parameters.
2 – The driver shall also have the option “Define Parameters Per IED” checked.
3 – At AfterStart event, it is necessary to have a script that changes the device parameters, using an IOKIT special tag. The parameter names are informed below, where %u shall be changed by the IED index at the driver, starting with 0. These parameters and index can also be seen at a driver log, if they are not 0.
"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 parameters ComtradePath e FileTransferRootName are text strings, and if their individual value (per IED) is not set, the default value set at the Dialog will be considered. The default value for other properties is 0 (FALSE).
5 – After writing the desired parameters, you should enable the IED by writing 0 at the parameter "IEC61850.Device[%u].Disable".
6 – FInal step, ask the driver to start communication by writing 1 at the special tag “ServerInitialBuild”. This tag starts the device communication that are enabled and which haven't been created yet.
Script Example:
‘ Exemple considering an 8-element Array. The empty indexes are ignored
Dim Arr(8)
Arr(1) = Array(“IEC61850.Device[0].SaveComtrade”,1) ‘ This IED will transfer Comtrades
Arr(2) = Array(“IEC61850.Device[1].SaveComtrade”,0) ‘ This IED will NOT transfer Comtrades
Arr(3) = Array(“IEC61850.Device[2].SaveComtrade”,1) ‘ This IED will transfer Comtrades
Arr(4) = Array(“IEC61850.Device[2].NameAndIndexFileTransfer”,1) ‘ This IED will transfer Comtrades using the RootName + Index method
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 ‘ Write parametros
Driver.Item(“ServerInitialBuild”).WriteEx 1 ‘Considering a tag callled ServerInitialBuild with the Item parameter = ServerInitialBuild, upon wiriting 1 it will start communication with all enabled IED´s
7 – When stopping a driver, these parameters are not saved, so the AfterStart script shall be kept, so at every driver startup, the IED´s will be correctly configured.