- added SV subscriber and example
This commit is contained in:
parent
c3dace4150
commit
c0174f9f38
31 changed files with 1451 additions and 2150 deletions
|
@ -59,6 +59,7 @@ include_directories(
|
|||
${CMAKE_CURRENT_BINARY_DIR}/config
|
||||
src/common/inc
|
||||
src/goose
|
||||
src/sampled_values
|
||||
src/hal/inc
|
||||
src/iec61850/inc
|
||||
src/iec61850/inc_private
|
||||
|
@ -75,27 +76,28 @@ set(API_HEADERS
|
|||
src/common/inc/linked_list.h
|
||||
src/common/inc/byte_buffer.h
|
||||
src/common/inc/lib_memory.h
|
||||
src/iec61850/inc/iec61850_client.h
|
||||
src/iec61850/inc/iec61850_common.h
|
||||
src/iec61850/inc/iec61850_server.h
|
||||
src/iec61850/inc/iec61850_model.h
|
||||
src/iec61850/inc/iec61850_cdc.h
|
||||
src/iec61850/inc/iec61850_dynamic_model.h
|
||||
src/iec61850/inc/iec61850_config_file_parser.h
|
||||
src/mms/inc/mms_value.h
|
||||
src/mms/inc/mms_common.h
|
||||
src/mms/inc/mms_types.h
|
||||
src/mms/inc/mms_device_model.h
|
||||
src/mms/inc/mms_server.h
|
||||
src/mms/inc/mms_named_variable_list.h
|
||||
src/mms/inc/mms_type_spec.h
|
||||
src/mms/inc/mms_client_connection.h
|
||||
src/mms/inc/iso_connection_parameters.h
|
||||
src/mms/inc/iso_server.h
|
||||
src/mms/inc/ber_integer.h
|
||||
src/mms/inc/asn1_ber_primitive_value.h
|
||||
src/goose/goose_subscriber.h
|
||||
src/goose/goose_receiver.h
|
||||
src/iec61850/inc/iec61850_client.h
|
||||
src/iec61850/inc/iec61850_common.h
|
||||
src/iec61850/inc/iec61850_server.h
|
||||
src/iec61850/inc/iec61850_model.h
|
||||
src/iec61850/inc/iec61850_cdc.h
|
||||
src/iec61850/inc/iec61850_dynamic_model.h
|
||||
src/iec61850/inc/iec61850_config_file_parser.h
|
||||
src/mms/inc/mms_value.h
|
||||
src/mms/inc/mms_common.h
|
||||
src/mms/inc/mms_types.h
|
||||
src/mms/inc/mms_device_model.h
|
||||
src/mms/inc/mms_server.h
|
||||
src/mms/inc/mms_named_variable_list.h
|
||||
src/mms/inc/mms_type_spec.h
|
||||
src/mms/inc/mms_client_connection.h
|
||||
src/mms/inc/iso_connection_parameters.h
|
||||
src/mms/inc/iso_server.h
|
||||
src/mms/inc/ber_integer.h
|
||||
src/mms/inc/asn1_ber_primitive_value.h
|
||||
src/goose/goose_subscriber.h
|
||||
src/goose/goose_receiver.h
|
||||
src/sampled_values/sv_subscriber.h
|
||||
)
|
||||
|
||||
IF(WIN32)
|
||||
|
|
11
Makefile
11
Makefile
|
@ -19,6 +19,7 @@ LIB_SOURCE_DIRS += src/mms/iso_mms/asn1c
|
|||
LIB_SOURCE_DIRS += src/mms/iso_server
|
||||
ifndef EXCLUDE_ETHERNET_WINDOWS
|
||||
LIB_SOURCE_DIRS += src/goose
|
||||
LIB_SOURCE_DIRS += src/sampled_values
|
||||
endif
|
||||
LIB_SOURCE_DIRS += src/iec61850/client
|
||||
LIB_SOURCE_DIRS += src/iec61850/common
|
||||
|
@ -45,13 +46,14 @@ LIB_SOURCE_DIRS += src/hal/ethernet/bsd
|
|||
LIB_SOURCE_DIRS += src/hal/filesystem/linux
|
||||
LIB_SOURCE_DIRS += src/hal/time/unix
|
||||
endif
|
||||
LIB_INCLUDE_DIRS += config
|
||||
LIB_INCLUDE_DIRS += config
|
||||
LIB_INCLUDE_DIRS += src/common/inc
|
||||
LIB_INCLUDE_DIRS += src/mms/iso_mms/asn1c
|
||||
LIB_INCLUDE_DIRS += src/mms/inc
|
||||
LIB_INCLUDE_DIRS += src/mms/inc_private
|
||||
LIB_INCLUDE_DIRS += src/hal/inc
|
||||
LIB_INCLUDE_DIRS += src/goose
|
||||
LIB_INCLUDE_DIRS += src/mms/inc_private
|
||||
LIB_INCLUDE_DIRS += src/hal/inc
|
||||
LIB_INCLUDE_DIRS += src/goose
|
||||
LIB_INCLUDE_DIRS += src/sampled_values
|
||||
LIB_INCLUDE_DIRS += src/iec61850/inc
|
||||
LIB_INCLUDE_DIRS += src/iec61850/inc_private
|
||||
ifeq ($(HAL_IMPL), WIN32)
|
||||
|
@ -92,6 +94,7 @@ LIB_API_HEADER_FILES += src/mms/inc/ber_integer.h
|
|||
LIB_API_HEADER_FILES += src/mms/inc/asn1_ber_primitive_value.h
|
||||
LIB_API_HEADER_FILES += src/goose/goose_subscriber.h
|
||||
LIB_API_HEADER_FILES += src/goose/goose_receiver.h
|
||||
LIB_API_HEADER_FILES += src/sampled_values/sv_subscriber.h
|
||||
|
||||
get_sources_from_directory = $(wildcard $1/*.c)
|
||||
get_sources = $(foreach dir, $1, $(call get_sources_from_directory,$(dir)))
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
#define DEBUG_ISO_SERVER 0
|
||||
#define DEBUG_ISO_CLIENT 0
|
||||
#define DEBUG_IED_SERVER 0
|
||||
#define DEBUG_IED_CLIENT 0
|
||||
#define DEBUG_IED_CLIENT 1
|
||||
#define DEBUG_MMS_CLIENT 0
|
||||
#define DEBUG_MMS_SERVER 0
|
||||
#define DEBUG_GOOSE_SUBSCRIBER 0
|
||||
|
|
|
@ -18,8 +18,9 @@ add_subdirectory(iec61850_client_example4)
|
|||
add_subdirectory(iec61850_client_example5)
|
||||
add_subdirectory(iec61850_client_example_files)
|
||||
add_subdirectory(iec61850_client_example_reporting)
|
||||
add_subdirectory(goose_subscriber)
|
||||
add_subdirectory(mms_client_example1)
|
||||
add_subdirectory(mms_client_example2)
|
||||
add_subdirectory(mms_client_example3)
|
||||
add_subdirectory(mms_client_example4)
|
||||
add_subdirectory(goose_subscriber)
|
||||
add_subdirectory(sv_subscriber)
|
||||
|
|
|
@ -25,6 +25,7 @@ EXAMPLE_DIRS += server_example_threadless
|
|||
EXAMPLE_DIRS += server_example_setting_groups
|
||||
EXAMPLE_DIRS += goose_subscriber
|
||||
EXAMPLE_DIRS += goose_publisher
|
||||
EXAMPLE_DIRS += sv_subscriber
|
||||
EXAMPLE_DIRS += mms_utility
|
||||
|
||||
MODEL_DIRS += server_example1
|
||||
|
|
|
@ -11,6 +11,19 @@
|
|||
|
||||
#include "hal_thread.h"
|
||||
|
||||
static void
|
||||
printDstAddr(DstAddress dstAddress)
|
||||
{
|
||||
printf(" addr: ");
|
||||
|
||||
int i;
|
||||
for (i = 0; i < 6; i++)
|
||||
printf("%02x", dstAddress.addr[i]);
|
||||
|
||||
printf("\n prio: %u\n", dstAddress.priority);
|
||||
printf(" vid: %u\n", dstAddress.vid);
|
||||
printf(" appID: %u\n", dstAddress.appId);
|
||||
}
|
||||
|
||||
int main(int argc, char** argv) {
|
||||
|
||||
|
@ -85,6 +98,9 @@ int main(int argc, char** argv) {
|
|||
|
||||
printf("noASDU: %i\n", ClientSVControlBlock_getNoASDU(svcb));
|
||||
|
||||
DstAddress dstAddress = ClientSVControlBlock_getDstAddress(svcb);
|
||||
|
||||
printDstAddr(dstAddress);
|
||||
|
||||
}
|
||||
else {
|
||||
|
|
|
@ -3,171 +3,38 @@
|
|||
*
|
||||
* automatically generated from sampleModel_with_dataset.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_Device1;
|
||||
extern LogicalNode iedModel_Device1_LLN0;
|
||||
extern DataObject iedModel_Device1_LLN0_Mod;
|
||||
extern DataAttribute iedModel_Device1_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_Device1_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_Device1_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_Device1_LLN0_Beh;
|
||||
extern DataAttribute iedModel_Device1_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_Device1_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_Device1_LLN0_Beh_t;
|
||||
extern DataObject iedModel_Device1_LLN0_Health;
|
||||
extern DataAttribute iedModel_Device1_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_Device1_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_Device1_LLN0_Health_t;
|
||||
extern DataObject iedModel_Device1_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_Device1_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Device1_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Device1_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_Device1_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_Device1_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_Device1_LPHD1;
|
||||
extern DataObject iedModel_Device1_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_Device1_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_Device1_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_Device1_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_Device1_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_Device1_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_Device1_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_Device1_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_Device1_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_Device1_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_Device1_DGEN1;
|
||||
extern DataObject iedModel_Device1_DGEN1_Mod;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_Mod_q;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_Mod_t;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Device1_DGEN1_Beh;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_Beh_q;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_Beh_t;
|
||||
extern DataObject iedModel_Device1_DGEN1_Health;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_Health_stVal;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_Health_q;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_Health_t;
|
||||
extern DataObject iedModel_Device1_DGEN1_NamPlt;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_NamPlt_d;
|
||||
extern DataObject iedModel_Device1_DGEN1_OpTmh;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_OpTmh_stVal;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_OpTmh_q;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_OpTmh_t;
|
||||
extern DataObject iedModel_Device1_DGEN1_GnOpSt;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_GnOpSt_stVal;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_GnOpSt_q;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_GnOpSt_t;
|
||||
extern DataObject iedModel_Device1_DGEN1_OpTmsRs;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_OpTmsRs_stVal;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_OpTmsRs_q;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_OpTmsRs_t;
|
||||
extern DataObject iedModel_Device1_DGEN1_TotWh;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_TotWh_mag;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_TotWh_mag_f;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_TotWh_q;
|
||||
extern DataAttribute iedModel_Device1_DGEN1_TotWh_t;
|
||||
extern LogicalNode iedModel_Device1_DSCH1;
|
||||
extern DataObject iedModel_Device1_DSCH1_Mod;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_Mod_q;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_Mod_t;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Device1_DSCH1_Beh;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_Beh_q;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_Beh_t;
|
||||
extern DataObject iedModel_Device1_DSCH1_Health;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_Health_stVal;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_Health_q;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_Health_t;
|
||||
extern DataObject iedModel_Device1_DSCH1_NamPlt;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_NamPlt_d;
|
||||
extern DataObject iedModel_Device1_DSCH1_SchdSt;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_SchdSt_stVal;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_SchdSt_q;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_SchdSt_t;
|
||||
extern DataObject iedModel_Device1_DSCH1_SchdId;
|
||||
extern DataObject iedModel_Device1_DSCH1_SchdCat;
|
||||
extern DataObject iedModel_Device1_DSCH1_SchdTyp;
|
||||
extern DataObject iedModel_Device1_DSCH1_SchdAbsTm;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_SchdAbsTm_val;
|
||||
extern DataAttribute iedModel_Device1_DSCH1_SchdAbsTm_time;
|
||||
extern LogicalNode iedModel_Device1_MMXU1;
|
||||
extern DataObject iedModel_Device1_MMXU1_Mod;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_Mod_q;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_Mod_t;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Device1_MMXU1_Beh;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_Beh_q;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_Beh_t;
|
||||
extern DataObject iedModel_Device1_MMXU1_Health;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_Health_stVal;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_Health_q;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_Health_t;
|
||||
extern DataObject iedModel_Device1_MMXU1_NamPlt;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Device1_MMXU1_NamPlt_d;
|
||||
extern LogicalNode iedModel_Device1_MMXU2;
|
||||
extern DataObject iedModel_Device1_MMXU2_Mod;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_Mod_q;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_Mod_t;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_Mod_ctlModel;
|
||||
extern DataObject iedModel_Device1_MMXU2_Beh;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_Beh_stVal;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_Beh_q;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_Beh_t;
|
||||
extern DataObject iedModel_Device1_MMXU2_Health;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_Health_stVal;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_Health_q;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_Health_t;
|
||||
extern DataObject iedModel_Device1_MMXU2_NamPlt;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_NamPlt_d;
|
||||
extern DataObject iedModel_Device1_MMXU2_TotW;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_TotW_mag;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_TotW_mag_f;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_TotW_q;
|
||||
extern DataAttribute iedModel_Device1_MMXU2_TotW_t;
|
||||
|
||||
extern DataSet ds_Device1_LLN0_dataset1;
|
||||
extern DataSet iedModelds_Device1_LLN0_dataset1;
|
||||
|
||||
|
||||
extern DataSetEntry ds_Device1_LLN0_dataset1_fcda0;
|
||||
extern DataSetEntry ds_Device1_LLN0_dataset1_fcda1;
|
||||
extern DataSetEntry ds_Device1_LLN0_dataset1_fcda2;
|
||||
extern DataSetEntry iedModelds_Device1_LLN0_dataset1_fcda0;
|
||||
extern DataSetEntry iedModelds_Device1_LLN0_dataset1_fcda1;
|
||||
extern DataSetEntry iedModelds_Device1_LLN0_dataset1_fcda2;
|
||||
|
||||
DataSetEntry ds_Device1_LLN0_dataset1_fcda0 = {
|
||||
DataSetEntry iedModelds_Device1_LLN0_dataset1_fcda0 = {
|
||||
"Device1",
|
||||
false,
|
||||
"LLN0$ST$Mod$q",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Device1_LLN0_dataset1_fcda1
|
||||
&iedModelds_Device1_LLN0_dataset1_fcda1
|
||||
};
|
||||
|
||||
DataSetEntry ds_Device1_LLN0_dataset1_fcda1 = {
|
||||
DataSetEntry iedModelds_Device1_LLN0_dataset1_fcda1 = {
|
||||
"Device1",
|
||||
false,
|
||||
"MMXU1$ST$Mod$q",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Device1_LLN0_dataset1_fcda2
|
||||
&iedModelds_Device1_LLN0_dataset1_fcda2
|
||||
};
|
||||
|
||||
DataSetEntry ds_Device1_LLN0_dataset1_fcda2 = {
|
||||
DataSetEntry iedModelds_Device1_LLN0_dataset1_fcda2 = {
|
||||
"Device1",
|
||||
false,
|
||||
"MMXU1$CF$Mod$ctlModel",
|
||||
|
@ -177,11 +44,11 @@ DataSetEntry ds_Device1_LLN0_dataset1_fcda2 = {
|
|||
NULL
|
||||
};
|
||||
|
||||
DataSet ds_Device1_LLN0_dataset1 = {
|
||||
DataSet iedModelds_Device1_LLN0_dataset1 = {
|
||||
"Device1",
|
||||
"LLN0$dataset1",
|
||||
3,
|
||||
&ds_Device1_LLN0_dataset1_fcda0,
|
||||
&iedModelds_Device1_LLN0_dataset1_fcda0,
|
||||
NULL
|
||||
};
|
||||
|
||||
|
@ -1723,7 +1590,8 @@ DataAttribute iedModel_Device1_MMXU2_TotW_t = {
|
|||
|
||||
extern ReportControlBlock iedModel_Device1_LLN0_report0;
|
||||
|
||||
ReportControlBlock iedModel_Device1_LLN0_report0 = {&iedModel_Device1_LLN0, "LLN0_Events_BuffRep01", "LLN0$RP$brcbEV1", true, "dataset1", 1, 9, 239, 50, 900000, NULL};
|
||||
ReportControlBlock iedModel_Device1_LLN0_report0 = {&iedModel_Device1_LLN0, "LLN0_Events_BuffRep01", "LLN0$RP$brcbEV1", true, "dataset1", 1, 25, 239, 50, 900000, NULL};
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1731,10 +1599,11 @@ ReportControlBlock iedModel_Device1_LLN0_report0 = {&iedModel_Device1_LLN0, "LLN
|
|||
IedModel iedModel = {
|
||||
"SampleIED",
|
||||
&iedModel_Device1,
|
||||
&ds_Device1_LLN0_dataset1,
|
||||
&iedModelds_Device1_LLN0_dataset1,
|
||||
&iedModel_Device1_LLN0_report0,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
|
@ -3,357 +3,60 @@
|
|||
*
|
||||
* automatically generated from complexModel.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_Inverter;
|
||||
extern LogicalNode iedModel_Inverter_LLN0;
|
||||
extern DataObject iedModel_Inverter_LLN0_Mod;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_Inverter_LLN0_Beh;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Beh_t;
|
||||
extern DataObject iedModel_Inverter_LLN0_Health;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Health_t;
|
||||
extern DataObject iedModel_Inverter_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_Inverter_LPHD1;
|
||||
extern DataObject iedModel_Inverter_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_Inverter_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_Inverter_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_Inverter_ZINV1;
|
||||
extern DataObject iedModel_Inverter_ZINV1_Mod;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Mod_q;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Mod_t;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Inverter_ZINV1_Beh;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Beh_q;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Beh_t;
|
||||
extern DataObject iedModel_Inverter_ZINV1_Health;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Health_stVal;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Health_q;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Health_t;
|
||||
extern DataObject iedModel_Inverter_ZINV1_NamPlt;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_NamPlt_d;
|
||||
extern DataObject iedModel_Inverter_ZINV1_WRtg;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_WRtg_setMag;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_WRtg_setMag_f;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_WRtg_units;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_WRtg_units_SIUnit;
|
||||
extern DataObject iedModel_Inverter_ZINV1_VarRtg;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_VarRtg_setMag;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_VarRtg_setMag_f;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_VarRtg_units;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_VarRtg_units_SIUnit;
|
||||
extern DataObject iedModel_Inverter_ZINV1_ACTyp;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_ACTyp_setVal;
|
||||
extern DataObject iedModel_Inverter_ZINV1_OutWSet;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutWSet_setMag;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutWSet_setMag_f;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutWSet_units;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutWSet_units_SIUnit;
|
||||
extern DataObject iedModel_Inverter_ZINV1_OutVarSet;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutVarSet_setMag;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutVarSet_setMag_f;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutVarSet_units;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutVarSet_units_SIUnit;
|
||||
extern LogicalNode iedModel_Inverter_MMXU1;
|
||||
extern DataObject iedModel_Inverter_MMXU1_Mod;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Mod_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Mod_t;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Inverter_MMXU1_Beh;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Beh_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Beh_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_Health;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Health_stVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Health_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Health_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_NamPlt;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_NamPlt_d;
|
||||
extern DataObject iedModel_Inverter_MMXU1_TotW;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotW_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotW_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotW_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotW_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_TotVAr;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVAr_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVAr_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVAr_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVAr_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_TotVA;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVA_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVA_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVA_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVA_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_Hz;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Hz_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Hz_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Hz_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Hz_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV_phsA;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV_phsB;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV_phsC;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV_neut;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A_phsA;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A_phsB;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A_phsC;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A_neut;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_W;
|
||||
extern DataObject iedModel_Inverter_MMXU1_W_phsA;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_W_phsB;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_W_phsC;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_t;
|
||||
extern LogicalDevice iedModel_Battery;
|
||||
extern LogicalNode iedModel_Battery_LLN0;
|
||||
extern DataObject iedModel_Battery_LLN0_Mod;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_Battery_LLN0_Beh;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Beh_t;
|
||||
extern DataObject iedModel_Battery_LLN0_Health;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Health_t;
|
||||
extern DataObject iedModel_Battery_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_Battery_LPHD1;
|
||||
extern DataObject iedModel_Battery_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_Battery_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_Battery_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_Battery_ZBAT1;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Mod;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Mod_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Mod_t;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Beh;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Beh_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Beh_t;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Health;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Health_stVal;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Health_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Health_t;
|
||||
extern DataObject iedModel_Battery_ZBAT1_NamPlt;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_NamPlt_d;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Vol;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Vol_mag;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Vol_mag_f;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Vol_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Vol_t;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Amp;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Amp_mag;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Amp_mag_f;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Amp_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Amp_t;
|
||||
extern LogicalNode iedModel_Battery_ZBTC1;
|
||||
extern DataObject iedModel_Battery_ZBTC1_Mod;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Mod_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Mod_t;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Battery_ZBTC1_Beh;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Beh_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Beh_t;
|
||||
extern DataObject iedModel_Battery_ZBTC1_Health;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Health_stVal;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Health_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Health_t;
|
||||
extern DataObject iedModel_Battery_ZBTC1_NamPlt;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_NamPlt_d;
|
||||
extern DataObject iedModel_Battery_ZBTC1_BatChaSt;
|
||||
extern DataObject iedModel_Battery_ZBTC1_BatChaPwr;
|
||||
extern DataObject iedModel_Battery_ZBTC1_BatChaMod;
|
||||
extern DataObject iedModel_Battery_ZBTC1_ChaV;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaV_mag;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaV_mag_f;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaV_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaV_t;
|
||||
extern DataObject iedModel_Battery_ZBTC1_ChaA;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaA_mag;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaA_mag_f;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaA_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaA_t;
|
||||
extern LogicalDevice iedModel_Physical_Measurements;
|
||||
extern LogicalNode iedModel_Physical_Measurements_LLN0;
|
||||
extern DataObject iedModel_Physical_Measurements_LLN0_Mod;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_Physical_Measurements_LLN0_Beh;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Beh_t;
|
||||
extern DataObject iedModel_Physical_Measurements_LLN0_Health;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Health_t;
|
||||
extern DataObject iedModel_Physical_Measurements_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_Physical_Measurements_LPHD1;
|
||||
extern DataObject iedModel_Physical_Measurements_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_Physical_Measurements_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_Physical_Measurements_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_t;
|
||||
|
||||
extern DataSet ds_Inverter_LLN0_dataset1;
|
||||
extern DataSet iedModelds_Inverter_LLN0_dataset1;
|
||||
|
||||
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda0;
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda1;
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda2;
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda3;
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda4;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda0;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda1;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda2;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda3;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda4;
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda0 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda0 = {
|
||||
"Inverter",
|
||||
false,
|
||||
"LLN0$ST$Mod$q",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Inverter_LLN0_dataset1_fcda1
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda1
|
||||
};
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda1 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda1 = {
|
||||
"Battery",
|
||||
false,
|
||||
"LLN0$ST$Mod$q",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Inverter_LLN0_dataset1_fcda2
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda2
|
||||
};
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda2 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda2 = {
|
||||
"Inverter",
|
||||
false,
|
||||
"MMXU1$ST$Mod$q",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Inverter_LLN0_dataset1_fcda3
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda3
|
||||
};
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda3 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda3 = {
|
||||
"Inverter",
|
||||
false,
|
||||
"MMXU1$CF$Mod$ctlModel",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Inverter_LLN0_dataset1_fcda4
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda4
|
||||
};
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda4 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda4 = {
|
||||
"Inverter",
|
||||
false,
|
||||
"MMXU1$MX$TotW$mag",
|
||||
|
@ -363,11 +66,11 @@ DataSetEntry ds_Inverter_LLN0_dataset1_fcda4 = {
|
|||
NULL
|
||||
};
|
||||
|
||||
DataSet ds_Inverter_LLN0_dataset1 = {
|
||||
DataSet iedModelds_Inverter_LLN0_dataset1 = {
|
||||
"Inverter",
|
||||
"LLN0$dataset1",
|
||||
5,
|
||||
&ds_Inverter_LLN0_dataset1_fcda0,
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda0,
|
||||
NULL
|
||||
};
|
||||
|
||||
|
@ -3877,7 +3580,8 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_t = {
|
|||
|
||||
extern ReportControlBlock iedModel_Inverter_LLN0_report0;
|
||||
|
||||
ReportControlBlock iedModel_Inverter_LLN0_report0 = {&iedModel_Inverter_LLN0, "rcb101", "ID", false, "dataset1", 0, 3, 32, 0, 0, NULL};
|
||||
ReportControlBlock iedModel_Inverter_LLN0_report0 = {&iedModel_Inverter_LLN0, "rcb101", "ID", false, "dataset1", 0, 19, 32, 0, 0, NULL};
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -3885,10 +3589,11 @@ ReportControlBlock iedModel_Inverter_LLN0_report0 = {&iedModel_Inverter_LLN0, "r
|
|||
IedModel iedModel = {
|
||||
"ied1",
|
||||
&iedModel_Inverter,
|
||||
&ds_Inverter_LLN0_dataset1,
|
||||
&iedModelds_Inverter_LLN0_dataset1,
|
||||
&iedModel_Inverter_LLN0_report0,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
|
@ -1955,6 +1955,7 @@ ReportControlBlock iedModel_GenericIO_LLN0_report6 = {&iedModel_GenericIO_LLN0,
|
|||
|
||||
|
||||
|
||||
|
||||
IedModel iedModel = {
|
||||
"simpleIO",
|
||||
&iedModel_GenericIO,
|
||||
|
@ -1962,6 +1963,7 @@ IedModel iedModel = {
|
|||
&iedModel_GenericIO_LLN0_report0,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
|
@ -3,191 +3,49 @@
|
|||
*
|
||||
* automatically generated from simpleIO_direct_control.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_GenericIO;
|
||||
extern LogicalNode iedModel_GenericIO_LLN0;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Mod;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Beh;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_t;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Health;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_t;
|
||||
extern DataObject iedModel_GenericIO_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_GenericIO_LPHD1;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_GenericIO_GGIO1;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Mod;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Beh;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Health;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_NamPlt;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_t;
|
||||
|
||||
extern DataSet ds_GenericIO_LLN0_Events;
|
||||
extern DataSet iedModelds_GenericIO_LLN0_Events;
|
||||
|
||||
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda0;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda1;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda2;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda3;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda0;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda1;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda2;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda3;
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda0 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda0 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO1$stVal",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events_fcda1
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda1
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda1 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda1 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO2$stVal",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events_fcda2
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda2
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda2 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda2 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO3$stVal",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events_fcda3
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda3
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda3 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda3 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO4$stVal",
|
||||
|
@ -197,11 +55,11 @@ DataSetEntry ds_GenericIO_LLN0_Events_fcda3 = {
|
|||
NULL
|
||||
};
|
||||
|
||||
DataSet ds_GenericIO_LLN0_Events = {
|
||||
DataSet iedModelds_GenericIO_LLN0_Events = {
|
||||
"GenericIO",
|
||||
"LLN0$Events",
|
||||
4,
|
||||
&ds_GenericIO_LLN0_Events_fcda0,
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda0,
|
||||
NULL
|
||||
};
|
||||
|
||||
|
@ -1915,7 +1773,8 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_t = {
|
|||
|
||||
extern ReportControlBlock iedModel_GenericIO_LLN0_report0;
|
||||
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report0 = {&iedModel_GenericIO_LLN0, "EventsRCB01", "Events", false, "Events", 1, 8, 111, 50, 1000, NULL};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report0 = {&iedModel_GenericIO_LLN0, "EventsRCB01", "Events", false, "Events", 1, 24, 111, 50, 1000, NULL};
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1923,10 +1782,11 @@ ReportControlBlock iedModel_GenericIO_LLN0_report0 = {&iedModel_GenericIO_LLN0,
|
|||
IedModel iedModel = {
|
||||
"simpleIO",
|
||||
&iedModel_GenericIO,
|
||||
&ds_GenericIO_LLN0_Events,
|
||||
&iedModelds_GenericIO_LLN0_Events,
|
||||
&iedModel_GenericIO_LLN0_report0,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
|
@ -3,357 +3,60 @@
|
|||
*
|
||||
* automatically generated from complexModel.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_Inverter;
|
||||
extern LogicalNode iedModel_Inverter_LLN0;
|
||||
extern DataObject iedModel_Inverter_LLN0_Mod;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_Inverter_LLN0_Beh;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Beh_t;
|
||||
extern DataObject iedModel_Inverter_LLN0_Health;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_Health_t;
|
||||
extern DataObject iedModel_Inverter_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_Inverter_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_Inverter_LPHD1;
|
||||
extern DataObject iedModel_Inverter_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_Inverter_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_Inverter_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_Inverter_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_Inverter_ZINV1;
|
||||
extern DataObject iedModel_Inverter_ZINV1_Mod;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Mod_q;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Mod_t;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Inverter_ZINV1_Beh;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Beh_q;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Beh_t;
|
||||
extern DataObject iedModel_Inverter_ZINV1_Health;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Health_stVal;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Health_q;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_Health_t;
|
||||
extern DataObject iedModel_Inverter_ZINV1_NamPlt;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_NamPlt_d;
|
||||
extern DataObject iedModel_Inverter_ZINV1_WRtg;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_WRtg_setMag;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_WRtg_setMag_f;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_WRtg_units;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_WRtg_units_SIUnit;
|
||||
extern DataObject iedModel_Inverter_ZINV1_VarRtg;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_VarRtg_setMag;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_VarRtg_setMag_f;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_VarRtg_units;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_VarRtg_units_SIUnit;
|
||||
extern DataObject iedModel_Inverter_ZINV1_ACTyp;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_ACTyp_setVal;
|
||||
extern DataObject iedModel_Inverter_ZINV1_OutWSet;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutWSet_setMag;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutWSet_setMag_f;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutWSet_units;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutWSet_units_SIUnit;
|
||||
extern DataObject iedModel_Inverter_ZINV1_OutVarSet;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutVarSet_setMag;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutVarSet_setMag_f;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutVarSet_units;
|
||||
extern DataAttribute iedModel_Inverter_ZINV1_OutVarSet_units_SIUnit;
|
||||
extern LogicalNode iedModel_Inverter_MMXU1;
|
||||
extern DataObject iedModel_Inverter_MMXU1_Mod;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Mod_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Mod_t;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Inverter_MMXU1_Beh;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Beh_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Beh_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_Health;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Health_stVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Health_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Health_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_NamPlt;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_NamPlt_d;
|
||||
extern DataObject iedModel_Inverter_MMXU1_TotW;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotW_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotW_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotW_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotW_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_TotVAr;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVAr_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVAr_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVAr_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVAr_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_TotVA;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVA_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVA_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVA_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_TotVA_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_Hz;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Hz_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Hz_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Hz_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_Hz_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV_phsA;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV_phsB;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV_phsC;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_PhV_neut;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_PhV_neut_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A_phsA;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsA_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A_phsB;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsB_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A_phsC;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_phsC_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_A_neut;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_A_neut_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_W;
|
||||
extern DataObject iedModel_Inverter_MMXU1_W_phsA;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsA_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_W_phsB;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsB_t;
|
||||
extern DataObject iedModel_Inverter_MMXU1_W_phsC;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal_mag;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal_mag_f;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_q;
|
||||
extern DataAttribute iedModel_Inverter_MMXU1_W_phsC_t;
|
||||
extern LogicalDevice iedModel_Battery;
|
||||
extern LogicalNode iedModel_Battery_LLN0;
|
||||
extern DataObject iedModel_Battery_LLN0_Mod;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_Battery_LLN0_Beh;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Beh_t;
|
||||
extern DataObject iedModel_Battery_LLN0_Health;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_Battery_LLN0_Health_t;
|
||||
extern DataObject iedModel_Battery_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_Battery_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_Battery_LPHD1;
|
||||
extern DataObject iedModel_Battery_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_Battery_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_Battery_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_Battery_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_Battery_ZBAT1;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Mod;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Mod_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Mod_t;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Beh;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Beh_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Beh_t;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Health;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Health_stVal;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Health_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Health_t;
|
||||
extern DataObject iedModel_Battery_ZBAT1_NamPlt;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_NamPlt_d;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Vol;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Vol_mag;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Vol_mag_f;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Vol_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Vol_t;
|
||||
extern DataObject iedModel_Battery_ZBAT1_Amp;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Amp_mag;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Amp_mag_f;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Amp_q;
|
||||
extern DataAttribute iedModel_Battery_ZBAT1_Amp_t;
|
||||
extern LogicalNode iedModel_Battery_ZBTC1;
|
||||
extern DataObject iedModel_Battery_ZBTC1_Mod;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Mod_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Mod_t;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Mod_ctlModel;
|
||||
extern DataObject iedModel_Battery_ZBTC1_Beh;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Beh_stVal;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Beh_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Beh_t;
|
||||
extern DataObject iedModel_Battery_ZBTC1_Health;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Health_stVal;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Health_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_Health_t;
|
||||
extern DataObject iedModel_Battery_ZBTC1_NamPlt;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_NamPlt_d;
|
||||
extern DataObject iedModel_Battery_ZBTC1_BatChaSt;
|
||||
extern DataObject iedModel_Battery_ZBTC1_BatChaPwr;
|
||||
extern DataObject iedModel_Battery_ZBTC1_BatChaMod;
|
||||
extern DataObject iedModel_Battery_ZBTC1_ChaV;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaV_mag;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaV_mag_f;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaV_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaV_t;
|
||||
extern DataObject iedModel_Battery_ZBTC1_ChaA;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaA_mag;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaA_mag_f;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaA_q;
|
||||
extern DataAttribute iedModel_Battery_ZBTC1_ChaA_t;
|
||||
extern LogicalDevice iedModel_Physical_Measurements;
|
||||
extern LogicalNode iedModel_Physical_Measurements_LLN0;
|
||||
extern DataObject iedModel_Physical_Measurements_LLN0_Mod;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_Physical_Measurements_LLN0_Beh;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Beh_t;
|
||||
extern DataObject iedModel_Physical_Measurements_LLN0_Health;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_Health_t;
|
||||
extern DataObject iedModel_Physical_Measurements_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_Physical_Measurements_LPHD1;
|
||||
extern DataObject iedModel_Physical_Measurements_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_Physical_Measurements_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_Physical_Measurements_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_t;
|
||||
|
||||
extern DataSet ds_Inverter_LLN0_dataset1;
|
||||
extern DataSet iedModelds_Inverter_LLN0_dataset1;
|
||||
|
||||
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda0;
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda1;
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda2;
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda3;
|
||||
extern DataSetEntry ds_Inverter_LLN0_dataset1_fcda4;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda0;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda1;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda2;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda3;
|
||||
extern DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda4;
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda0 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda0 = {
|
||||
"Inverter",
|
||||
false,
|
||||
"LLN0$ST$Mod$q",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Inverter_LLN0_dataset1_fcda1
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda1
|
||||
};
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda1 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda1 = {
|
||||
"Battery",
|
||||
false,
|
||||
"LLN0$ST$Mod$q",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Inverter_LLN0_dataset1_fcda2
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda2
|
||||
};
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda2 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda2 = {
|
||||
"Inverter",
|
||||
false,
|
||||
"MMXU1$ST$Mod$q",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Inverter_LLN0_dataset1_fcda3
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda3
|
||||
};
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda3 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda3 = {
|
||||
"Inverter",
|
||||
false,
|
||||
"MMXU1$CF$Mod$ctlModel",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_Inverter_LLN0_dataset1_fcda4
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda4
|
||||
};
|
||||
|
||||
DataSetEntry ds_Inverter_LLN0_dataset1_fcda4 = {
|
||||
DataSetEntry iedModelds_Inverter_LLN0_dataset1_fcda4 = {
|
||||
"Inverter",
|
||||
false,
|
||||
"MMXU1$MX$TotW$mag",
|
||||
|
@ -363,11 +66,11 @@ DataSetEntry ds_Inverter_LLN0_dataset1_fcda4 = {
|
|||
NULL
|
||||
};
|
||||
|
||||
DataSet ds_Inverter_LLN0_dataset1 = {
|
||||
DataSet iedModelds_Inverter_LLN0_dataset1 = {
|
||||
"Inverter",
|
||||
"LLN0$dataset1",
|
||||
5,
|
||||
&ds_Inverter_LLN0_dataset1_fcda0,
|
||||
&iedModelds_Inverter_LLN0_dataset1_fcda0,
|
||||
NULL
|
||||
};
|
||||
|
||||
|
@ -3877,7 +3580,8 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_t = {
|
|||
|
||||
extern ReportControlBlock iedModel_Inverter_LLN0_report0;
|
||||
|
||||
ReportControlBlock iedModel_Inverter_LLN0_report0 = {&iedModel_Inverter_LLN0, "rcb101", "ID", false, "dataset1", 0, 3, 32, 0, 0, NULL};
|
||||
ReportControlBlock iedModel_Inverter_LLN0_report0 = {&iedModel_Inverter_LLN0, "rcb101", "ID", false, "dataset1", 0, 19, 32, 0, 0, NULL};
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -3885,10 +3589,11 @@ ReportControlBlock iedModel_Inverter_LLN0_report0 = {&iedModel_Inverter_LLN0, "r
|
|||
IedModel iedModel = {
|
||||
"ied1",
|
||||
&iedModel_Inverter,
|
||||
&ds_Inverter_LLN0_dataset1,
|
||||
&iedModelds_Inverter_LLN0_dataset1,
|
||||
&iedModel_Inverter_LLN0_report0,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
|
@ -3,342 +3,9 @@
|
|||
*
|
||||
* automatically generated from wtur.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_WTG;
|
||||
extern LogicalNode iedModel_WTG_LLN0;
|
||||
extern DataObject iedModel_WTG_LLN0_Mod;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_stVal;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_WTG_LLN0_Beh;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Beh_t;
|
||||
extern DataObject iedModel_WTG_LLN0_Health;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_WTG_LLN0_Health_t;
|
||||
extern DataObject iedModel_WTG_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_WTG_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_WTG_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_WTG_LLN0_NamPlt_configRev;
|
||||
extern LogicalNode iedModel_WTG_LPHD1;
|
||||
extern DataObject iedModel_WTG_LPHD1_NamPlt;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_NamPlt_configRev;
|
||||
extern DataObject iedModel_WTG_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_PhyNam_vendor;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_PhyNam_hwRev;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_PhyNam_swRev;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_PhyNam_serNum;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_PhyNam_model;
|
||||
extern DataObject iedModel_WTG_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_WTG_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_WTG_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_WTG_WTUR1;
|
||||
extern DataObject iedModel_WTG_WTUR1_NamPlt;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_NamPlt_configRev;
|
||||
extern DataObject iedModel_WTG_WTUR1_TotWh;
|
||||
extern DataObject iedModel_WTG_WTUR1_TotWh_manRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_ctlModel;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_sboTimeout;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_sboClass;
|
||||
extern DataObject iedModel_WTG_WTUR1_TotWh_hisRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_ctlModel;
|
||||
extern DataObject iedModel_WTG_WTUR1_TotWh_actCtVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_actCtVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_actCtVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_actCtVal_t;
|
||||
extern DataObject iedModel_WTG_WTUR1_TotWh_oldCtVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_oldCtVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_oldCtVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_oldCtVal_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_ctTot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_dly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_mly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_yly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_tot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TotWh_rsPer;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_actSt;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_actSt_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_actSt_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_actSt_t;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_oldSt;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_oldSt_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_oldSt_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_oldSt_t;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stTm;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stTm_manRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_ctlModel;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_sboTimeout;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_sboClass;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stTm_hisRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_ctlModel;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stTm_actTmVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_actTmVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_actTmVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_actTmVal_t;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stTm_oldTmVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_oldTmVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_oldTmVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_oldTmVal_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_tmTot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_dly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_mly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_yly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_tot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_rsPer;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stCt;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stCt_manRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_ctlModel;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_sboTimeout;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_sboClass;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stCt_hisRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_ctlModel;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stCt_actCtVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_actCtVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_actCtVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_actCtVal_t;
|
||||
extern DataObject iedModel_WTG_WTUR1_TurSt_stCt_oldCtVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_oldCtVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_oldCtVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_oldCtVal_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_ctTot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_dly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_mly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_yly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_tot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_rsPer;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_preTmms;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_pstTmms;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_smpTmms;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_TurSt_datSetMx;
|
||||
extern DataObject iedModel_WTG_WTUR1_W;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_W_instMag;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_W_instMag_i;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_W_instMag_f;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_W_mag;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_W_mag_i;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_W_mag_f;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_W_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_W_t;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_actSt;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_ctlModel;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_oldSt;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_oldSt_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_oldSt_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_oldSt_t;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmTm;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_ctlModel;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_sboTimeout;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_sboClass;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_ctlModel;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmTm_actTmVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_actTmVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_actTmVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_actTmVal_t;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmTm_oldTmVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_oldTmVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_oldTmVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_oldTmVal_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_tmTot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_dly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_mly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_yly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_tot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_rsPer;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmCt;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_ctlModel;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_sboTimeout;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_sboClass;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_operTm;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_origin;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_T;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_Test;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_Check;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_ctlModel;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmCt_actCtVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_actCtVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_actCtVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_actCtVal_t;
|
||||
extern DataObject iedModel_WTG_WTUR1_SetTurOp_cmCt_oldCtVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_oldCtVal_stVal;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_oldCtVal_q;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_oldCtVal_t;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_ctTot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_dly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_mly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_yly;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_tot;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_rsPer;
|
||||
extern DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmAcs;
|
||||
|
||||
|
||||
|
||||
|
@ -4466,6 +4133,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmAcs = {
|
|||
|
||||
|
||||
|
||||
|
||||
IedModel iedModel = {
|
||||
"WIND",
|
||||
&iedModel_WTG,
|
||||
|
@ -4473,6 +4141,7 @@ IedModel iedModel = {
|
|||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
|
@ -3,56 +3,9 @@
|
|||
*
|
||||
* automatically generated from mhai_array.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_ComplexArray;
|
||||
extern LogicalNode iedModel_ComplexArray_LLN0;
|
||||
extern DataObject iedModel_ComplexArray_LLN0_Mod;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_ComplexArray_LLN0_Beh;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_Beh_t;
|
||||
extern DataObject iedModel_ComplexArray_LLN0_Health;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_Health_t;
|
||||
extern DataObject iedModel_ComplexArray_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_ComplexArray_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_ComplexArray_LPHD1;
|
||||
extern DataObject iedModel_ComplexArray_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_ComplexArray_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_ComplexArray_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_ComplexArray_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_ComplexArray_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_ComplexArray_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_ComplexArray_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_ComplexArray_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_ComplexArray_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_ComplexArray_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_ComplexArray_MHAI1;
|
||||
extern DataObject iedModel_ComplexArray_MHAI1_HA;
|
||||
extern DataObject iedModel_ComplexArray_MHAI1_HA_phsAHar;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_mag;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_mag_f;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_ang;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_ang_f;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_q;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_t;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_numHar;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_numCyc;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_evalTm;
|
||||
extern DataAttribute iedModel_ComplexArray_MHAI1_HA_frequency;
|
||||
|
||||
|
||||
|
||||
|
@ -590,6 +543,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_frequency = {
|
|||
|
||||
|
||||
|
||||
|
||||
IedModel iedModel = {
|
||||
"test",
|
||||
&iedModel_ComplexArray,
|
||||
|
@ -597,6 +551,7 @@ IedModel iedModel = {
|
|||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
|
@ -40,13 +40,13 @@ DE(GGIO1$MX$AnIn2);
|
|||
DE(GGIO1$MX$AnIn3);
|
||||
DE(GGIO1$MX$AnIn4);
|
||||
}
|
||||
RC(EventsRCB01 Events 0 Events 1 8 111 50 1000);
|
||||
RC(AnalogValuesRCB01 AnalogValues 0 AnalogValues 1 8 111 50 1000);
|
||||
RC(EventsRCB01 Events 0 Events 1 24 111 50 1000);
|
||||
RC(AnalogValuesRCB01 AnalogValues 0 AnalogValues 1 24 111 50 1000);
|
||||
GC(gcbEvents events Events 2 0 -1 -1 ){
|
||||
PA(4 111 1000 010ccd010001);
|
||||
PA(4 273 4096 010ccd010001);
|
||||
}
|
||||
GC(gcbAnalogValues analog AnalogValues 2 0 -1 -1 ){
|
||||
PA(4 111 1000 010ccd010001);
|
||||
PA(4 273 4096 010ccd010001);
|
||||
}
|
||||
}
|
||||
LN(LPHD1){
|
||||
|
|
|
@ -3,318 +3,9 @@
|
|||
*
|
||||
* automatically generated from simpleIO_control_tests.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_GenericIO;
|
||||
extern LogicalNode iedModel_GenericIO_LLN0;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Mod;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Beh;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_t;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Health;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_t;
|
||||
extern DataObject iedModel_GenericIO_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_GenericIO_LPHD1;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_GenericIO_GGIO1;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Mod;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Beh;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Health;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_NamPlt;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_SBO;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_sboClass;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO5;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_operTm;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_Test;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO6;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_SBO;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_operTm;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_operTm;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO7;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_operTm;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_operTm;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO8;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_operTm;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_operTm;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_operTm;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO9;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_t;
|
||||
|
||||
|
||||
|
||||
|
@ -4182,6 +3873,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_t = {
|
|||
|
||||
|
||||
|
||||
|
||||
IedModel iedModel = {
|
||||
"simpleIO",
|
||||
&iedModel_GenericIO,
|
||||
|
@ -4189,6 +3881,7 @@ IedModel iedModel = {
|
|||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
|
@ -3,192 +3,51 @@
|
|||
*
|
||||
* automatically generated from simpleIO_direct_control_goose.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_GenericIO;
|
||||
extern LogicalNode iedModel_GenericIO_LLN0;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Mod;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Beh;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_t;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Health;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_t;
|
||||
extern DataObject iedModel_GenericIO_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_GenericIO_LPHD1;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_GenericIO_GGIO1;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Mod;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Beh;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Health;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_NamPlt;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_t;
|
||||
|
||||
extern DataSet ds_GenericIO_LLN0_Events;
|
||||
extern DataSet ds_GenericIO_LLN0_AnalogValues;
|
||||
extern DataSet iedModelds_GenericIO_LLN0_Events;
|
||||
extern DataSet iedModelds_GenericIO_LLN0_Events2;
|
||||
extern DataSet iedModelds_GenericIO_LLN0_AnalogValues;
|
||||
|
||||
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda0;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda1;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda2;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda3;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda0;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda1;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda2;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda3;
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda0 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda0 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO1$stVal",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events_fcda1
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda1
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda1 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda1 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO2$stVal",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events_fcda2
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda2
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda2 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda2 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO3$stVal",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events_fcda3
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda3
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda3 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda3 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO4$stVal",
|
||||
|
@ -198,50 +57,103 @@ DataSetEntry ds_GenericIO_LLN0_Events_fcda3 = {
|
|||
NULL
|
||||
};
|
||||
|
||||
DataSet ds_GenericIO_LLN0_Events = {
|
||||
DataSet iedModelds_GenericIO_LLN0_Events = {
|
||||
"GenericIO",
|
||||
"LLN0$Events",
|
||||
4,
|
||||
&ds_GenericIO_LLN0_Events_fcda0,
|
||||
&ds_GenericIO_LLN0_AnalogValues
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda0,
|
||||
&iedModelds_GenericIO_LLN0_Events2
|
||||
};
|
||||
|
||||
extern DataSetEntry ds_GenericIO_LLN0_AnalogValues_fcda0;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_AnalogValues_fcda1;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_AnalogValues_fcda2;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_AnalogValues_fcda3;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda0;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda1;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda2;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda3;
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_AnalogValues_fcda0 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda0 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO1",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&iedModelds_GenericIO_LLN0_Events2_fcda1
|
||||
};
|
||||
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda1 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO2",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&iedModelds_GenericIO_LLN0_Events2_fcda2
|
||||
};
|
||||
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda2 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO3",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&iedModelds_GenericIO_LLN0_Events2_fcda3
|
||||
};
|
||||
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda3 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO4",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
DataSet iedModelds_GenericIO_LLN0_Events2 = {
|
||||
"GenericIO",
|
||||
"LLN0$Events2",
|
||||
4,
|
||||
&iedModelds_GenericIO_LLN0_Events2_fcda0,
|
||||
&iedModelds_GenericIO_LLN0_AnalogValues
|
||||
};
|
||||
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_AnalogValues_fcda0;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_AnalogValues_fcda1;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_AnalogValues_fcda2;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_AnalogValues_fcda3;
|
||||
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_AnalogValues_fcda0 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$MX$AnIn1",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_AnalogValues_fcda1
|
||||
&iedModelds_GenericIO_LLN0_AnalogValues_fcda1
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_AnalogValues_fcda1 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_AnalogValues_fcda1 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$MX$AnIn2",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_AnalogValues_fcda2
|
||||
&iedModelds_GenericIO_LLN0_AnalogValues_fcda2
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_AnalogValues_fcda2 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_AnalogValues_fcda2 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$MX$AnIn3",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_AnalogValues_fcda3
|
||||
&iedModelds_GenericIO_LLN0_AnalogValues_fcda3
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_AnalogValues_fcda3 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_AnalogValues_fcda3 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$MX$AnIn4",
|
||||
|
@ -251,11 +163,11 @@ DataSetEntry ds_GenericIO_LLN0_AnalogValues_fcda3 = {
|
|||
NULL
|
||||
};
|
||||
|
||||
DataSet ds_GenericIO_LLN0_AnalogValues = {
|
||||
DataSet iedModelds_GenericIO_LLN0_AnalogValues = {
|
||||
"GenericIO",
|
||||
"LLN0$AnalogValues",
|
||||
4,
|
||||
&ds_GenericIO_LLN0_AnalogValues_fcda0,
|
||||
&iedModelds_GenericIO_LLN0_AnalogValues_fcda0,
|
||||
NULL
|
||||
};
|
||||
|
||||
|
@ -1970,8 +1882,9 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_t = {
|
|||
extern ReportControlBlock iedModel_GenericIO_LLN0_report0;
|
||||
extern ReportControlBlock iedModel_GenericIO_LLN0_report1;
|
||||
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report0 = {&iedModel_GenericIO_LLN0, "EventsRCB01", "Events", false, "Events", 1, 8, 111, 50, 1000, &iedModel_GenericIO_LLN0_report1};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report1 = {&iedModel_GenericIO_LLN0, "AnalogValuesRCB01", "AnalogValues", false, "AnalogValues", 1, 8, 111, 50, 1000, NULL};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report0 = {&iedModel_GenericIO_LLN0, "EventsRCB01", "Events", false, "Events", 1, 24, 111, 50, 1000, &iedModel_GenericIO_LLN0_report1};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report1 = {&iedModel_GenericIO_LLN0, "AnalogValuesRCB01", "AnalogValues", false, "AnalogValues", 1, 24, 111, 50, 1000, NULL};
|
||||
|
||||
|
||||
extern GSEControlBlock iedModel_GenericIO_LLN0_gse0;
|
||||
extern GSEControlBlock iedModel_GenericIO_LLN0_gse1;
|
||||
|
@ -1979,7 +1892,7 @@ extern GSEControlBlock iedModel_GenericIO_LLN0_gse1;
|
|||
static PhyComAddress iedModel_GenericIO_LLN0_gse0_address = {
|
||||
4,
|
||||
1,
|
||||
1000,
|
||||
4096,
|
||||
{0x1, 0xc, 0xcd, 0x1, 0x0, 0x1}
|
||||
};
|
||||
|
||||
|
@ -1988,7 +1901,7 @@ GSEControlBlock iedModel_GenericIO_LLN0_gse0 = {&iedModel_GenericIO_LLN0, "gcbEv
|
|||
static PhyComAddress iedModel_GenericIO_LLN0_gse1_address = {
|
||||
4,
|
||||
1,
|
||||
1000,
|
||||
4096,
|
||||
{0x1, 0xc, 0xcd, 0x1, 0x0, 0x1}
|
||||
};
|
||||
|
||||
|
@ -1999,10 +1912,11 @@ GSEControlBlock iedModel_GenericIO_LLN0_gse1 = {&iedModel_GenericIO_LLN0, "gcbAn
|
|||
IedModel iedModel = {
|
||||
"simpleIO",
|
||||
&iedModel_GenericIO,
|
||||
&ds_GenericIO_LLN0_Events,
|
||||
&iedModelds_GenericIO_LLN0_Events,
|
||||
&iedModel_GenericIO_LLN0_report0,
|
||||
&iedModel_GenericIO_LLN0_gse0,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
|
@ -122,7 +122,6 @@
|
|||
</DOType>
|
||||
|
||||
<DOType cdc="ASG" id="ASG_SE">
|
||||
<DA bType="Struct" fc="SG" name="setMag" type="AnalogueValue_1"/>
|
||||
<DA bType="Struct" fc="SE" name="setMag" type="AnalogueValue_1"/>
|
||||
</DOType>
|
||||
|
||||
|
@ -151,7 +150,6 @@
|
|||
</DOType>
|
||||
|
||||
<DOType id="ING_SE" cdc="ING">
|
||||
<DA name="setVal" bType="INT32" fc="SG" dchg="true" />
|
||||
<DA name="setVal" bType="INT32" fc="SE" dchg="true" />
|
||||
</DOType>
|
||||
|
||||
|
|
|
@ -3,101 +3,9 @@
|
|||
*
|
||||
* automatically generated from sg_demo.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_PROT;
|
||||
extern LogicalNode iedModel_PROT_LLN0;
|
||||
extern DataObject iedModel_PROT_LLN0_Mod;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper_operTm;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper_origin;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper_T;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper_Test;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_Oper_Check;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_stVal;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_PROT_LLN0_Beh;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Beh_t;
|
||||
extern DataObject iedModel_PROT_LLN0_Health;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_PROT_LLN0_Health_t;
|
||||
extern DataObject iedModel_PROT_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_PROT_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_PROT_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_PROT_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_PROT_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_PROT_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_PROT_LPHD1;
|
||||
extern DataObject iedModel_PROT_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_PhyNam_vendor;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_PhyNam_hwRev;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_PhyNam_swRev;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_PhyNam_serNum;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_PhyNam_model;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_PhyNam_location;
|
||||
extern DataObject iedModel_PROT_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_PROT_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_PROT_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_PROT_PTOC1;
|
||||
extern DataObject iedModel_PROT_PTOC1_Beh;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Beh_stVal;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Beh_q;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Beh_t;
|
||||
extern DataObject iedModel_PROT_PTOC1_Mod;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper_operTm;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper_origin;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper_T;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper_Test;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_Oper_Check;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_stVal;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_q;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_t;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Mod_ctlModel;
|
||||
extern DataObject iedModel_PROT_PTOC1_Str;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Str_general;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Str_dirGeneral;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Str_q;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Str_t;
|
||||
extern DataObject iedModel_PROT_PTOC1_Op;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Op_general;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Op_q;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_Op_t;
|
||||
extern DataObject iedModel_PROT_PTOC1_StrVal;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_StrVal_setMag;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_StrVal_setMag_f;
|
||||
extern DataAttribute iedModel_SE_PROT_PTOC1_StrVal_setMag;
|
||||
extern DataAttribute iedModel_SE_PROT_PTOC1_StrVal_setMag_f;
|
||||
extern DataObject iedModel_PROT_PTOC1_OpDlTmms;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_OpDlTmms_setVal;
|
||||
extern DataAttribute iedModel_SE_PROT_PTOC1_OpDlTmms_setVal;
|
||||
extern DataObject iedModel_PROT_PTOC1_RsDlTmms;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_RsDlTmms_setVal;
|
||||
extern DataAttribute iedModel_SE_PROT_PTOC1_RsDlTmms_setVal;
|
||||
extern DataObject iedModel_PROT_PTOC1_RstTms;
|
||||
extern DataAttribute iedModel_PROT_PTOC1_RstTms_setVal;
|
||||
extern DataAttribute iedModel_SE_PROT_PTOC1_RstTms_setVal;
|
||||
|
||||
|
||||
|
||||
|
@ -1194,6 +1102,7 @@ DataAttribute iedModel_SE_PROT_PTOC1_RstTms_setVal = {
|
|||
|
||||
|
||||
|
||||
|
||||
extern SettingGroupControlBlock iedModel_PROT_LLN0_sgcb;
|
||||
|
||||
SettingGroupControlBlock iedModel_PROT_LLN0_sgcb = {&iedModel_PROT_LLN0, 1, 5, 0, false, 0, 0, NULL};
|
||||
|
@ -1205,6 +1114,7 @@ IedModel iedModel = {
|
|||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
&iedModel_PROT_LLN0_sgcb,
|
||||
initializeValues
|
||||
};
|
||||
|
|
|
@ -3,193 +3,50 @@
|
|||
*
|
||||
* automatically generated from simpleIO_direct_control.icd
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "iec61850_model.h"
|
||||
#include "static_model.h"
|
||||
|
||||
extern IedModel iedModel;
|
||||
static void initializeValues();
|
||||
extern LogicalDevice iedModel_GenericIO;
|
||||
extern LogicalNode iedModel_GenericIO_LLN0;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Mod;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_t;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Beh;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Beh_t;
|
||||
extern DataObject iedModel_GenericIO_LLN0_Health;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_q;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_Health_t;
|
||||
extern DataObject iedModel_GenericIO_LLN0_NamPlt;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_d;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev;
|
||||
extern DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs;
|
||||
extern LogicalNode iedModel_GenericIO_LPHD1;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_PhyNam;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_PhyHealth;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t;
|
||||
extern DataObject iedModel_GenericIO_LPHD1_Proxy;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_q;
|
||||
extern DataAttribute iedModel_GenericIO_LPHD1_Proxy_t;
|
||||
extern LogicalNode iedModel_GenericIO_GGIO1;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Mod;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_t;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Beh;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Beh_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Health;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Health_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_NamPlt;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_AnIn4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_SPCSO4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_T;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_ctlModel;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind1;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind1_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind2;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind2_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind3;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind3_t;
|
||||
extern DataObject iedModel_GenericIO_GGIO1_Ind4;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_q;
|
||||
extern DataAttribute iedModel_GenericIO_GGIO1_Ind4_t;
|
||||
|
||||
extern DataSet ds_GenericIO_LLN0_Events;
|
||||
extern DataSet ds_GenericIO_LLN0_Events2;
|
||||
extern DataSet iedModelds_GenericIO_LLN0_Events;
|
||||
extern DataSet iedModelds_GenericIO_LLN0_Events2;
|
||||
|
||||
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda0;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda1;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda2;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events_fcda3;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda0;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda1;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda2;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda3;
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda0 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda0 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO1$stVal",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events_fcda1
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda1
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda1 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda1 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO2$stVal",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events_fcda2
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda2
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda2 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda2 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO3$stVal",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events_fcda3
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda3
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events_fcda3 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events_fcda3 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO4$stVal",
|
||||
|
@ -199,50 +56,50 @@ DataSetEntry ds_GenericIO_LLN0_Events_fcda3 = {
|
|||
NULL
|
||||
};
|
||||
|
||||
DataSet ds_GenericIO_LLN0_Events = {
|
||||
DataSet iedModelds_GenericIO_LLN0_Events = {
|
||||
"GenericIO",
|
||||
"LLN0$Events",
|
||||
4,
|
||||
&ds_GenericIO_LLN0_Events_fcda0,
|
||||
&ds_GenericIO_LLN0_Events2
|
||||
&iedModelds_GenericIO_LLN0_Events_fcda0,
|
||||
&iedModelds_GenericIO_LLN0_Events2
|
||||
};
|
||||
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events2_fcda0;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events2_fcda1;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events2_fcda2;
|
||||
extern DataSetEntry ds_GenericIO_LLN0_Events2_fcda3;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda0;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda1;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda2;
|
||||
extern DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda3;
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events2_fcda0 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda0 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO1",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events2_fcda1
|
||||
&iedModelds_GenericIO_LLN0_Events2_fcda1
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events2_fcda1 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda1 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO2",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events2_fcda2
|
||||
&iedModelds_GenericIO_LLN0_Events2_fcda2
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events2_fcda2 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda2 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO3",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
&ds_GenericIO_LLN0_Events2_fcda3
|
||||
&iedModelds_GenericIO_LLN0_Events2_fcda3
|
||||
};
|
||||
|
||||
DataSetEntry ds_GenericIO_LLN0_Events2_fcda3 = {
|
||||
DataSetEntry iedModelds_GenericIO_LLN0_Events2_fcda3 = {
|
||||
"GenericIO",
|
||||
false,
|
||||
"GGIO1$ST$SPCSO4",
|
||||
|
@ -252,11 +109,11 @@ DataSetEntry ds_GenericIO_LLN0_Events2_fcda3 = {
|
|||
NULL
|
||||
};
|
||||
|
||||
DataSet ds_GenericIO_LLN0_Events2 = {
|
||||
DataSet iedModelds_GenericIO_LLN0_Events2 = {
|
||||
"GenericIO",
|
||||
"LLN0$Events2",
|
||||
4,
|
||||
&ds_GenericIO_LLN0_Events2_fcda0,
|
||||
&iedModelds_GenericIO_LLN0_Events2_fcda0,
|
||||
NULL
|
||||
};
|
||||
|
||||
|
@ -1986,10 +1843,11 @@ extern ReportControlBlock iedModel_GenericIO_LLN0_report1;
|
|||
extern ReportControlBlock iedModel_GenericIO_LLN0_report2;
|
||||
extern ReportControlBlock iedModel_GenericIO_LLN0_report3;
|
||||
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report0 = {&iedModel_GenericIO_LLN0, "EventsRCB01", "Events1", false, "Events", 1, 8, 111, 50, 1000, &iedModel_GenericIO_LLN0_report1};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report1 = {&iedModel_GenericIO_LLN0, "EventsIndexed01", "Events2", false, "Events", 1, 8, 111, 50, 1000, &iedModel_GenericIO_LLN0_report2};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report2 = {&iedModel_GenericIO_LLN0, "EventsIndexed02", "Events2", false, "Events", 1, 8, 111, 50, 1000, &iedModel_GenericIO_LLN0_report3};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report3 = {&iedModel_GenericIO_LLN0, "EventsIndexed03", "Events2", false, "Events", 1, 8, 111, 50, 1000, NULL};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report0 = {&iedModel_GenericIO_LLN0, "EventsRCB01", "Events1", false, "Events", 1, 24, 111, 50, 1000, &iedModel_GenericIO_LLN0_report1};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report1 = {&iedModel_GenericIO_LLN0, "EventsIndexed01", "Events2", false, "Events", 1, 24, 111, 50, 1000, &iedModel_GenericIO_LLN0_report2};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report2 = {&iedModel_GenericIO_LLN0, "EventsIndexed02", "Events2", false, "Events", 1, 24, 111, 50, 1000, &iedModel_GenericIO_LLN0_report3};
|
||||
ReportControlBlock iedModel_GenericIO_LLN0_report3 = {&iedModel_GenericIO_LLN0, "EventsIndexed03", "Events2", false, "Events", 1, 24, 111, 50, 1000, NULL};
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1997,10 +1855,11 @@ ReportControlBlock iedModel_GenericIO_LLN0_report3 = {&iedModel_GenericIO_LLN0,
|
|||
IedModel iedModel = {
|
||||
"simpleIO",
|
||||
&iedModel_GenericIO,
|
||||
&ds_GenericIO_LLN0_Events,
|
||||
&iedModelds_GenericIO_LLN0_Events,
|
||||
&iedModel_GenericIO_LLN0_report0,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
initializeValues
|
||||
};
|
||||
|
||||
|
|
34
examples/sv_subscriber/CMakeLists.txt
Normal file
34
examples/sv_subscriber/CMakeLists.txt
Normal file
|
@ -0,0 +1,34 @@
|
|||
|
||||
set(sv_subscriber_example_SRCS
|
||||
sv_subscriber_example.c
|
||||
)
|
||||
|
||||
IF(WIN32)
|
||||
|
||||
IF(WITH_WPCAP)
|
||||
|
||||
set_source_files_properties(${sv_subscriber_example_SRCS}
|
||||
PROPERTIES LANGUAGE CXX)
|
||||
add_executable(sv_subscriber_example
|
||||
${sv_subscriber_example_SRCS}
|
||||
)
|
||||
|
||||
target_link_libraries(svsubscriber_example
|
||||
iec61850
|
||||
)
|
||||
|
||||
ENDIF(WITH_WPCAP)
|
||||
|
||||
ELSE(WIN32)
|
||||
|
||||
add_executable(sv_subscriber_example
|
||||
${sv_subscriber_example_SRCS}
|
||||
)
|
||||
|
||||
target_link_libraries(sv_subscriber_example
|
||||
iec61850
|
||||
)
|
||||
|
||||
ENDIF(WIN32)
|
||||
|
||||
|
21
examples/sv_subscriber/Makefile
Normal file
21
examples/sv_subscriber/Makefile
Normal file
|
@ -0,0 +1,21 @@
|
|||
LIBIEC_HOME=../../../libiec61850
|
||||
|
||||
PROJECT_BINARY_NAME = sv_subscriber
|
||||
PROJECT_SOURCES += sv_subscriber_example.c
|
||||
|
||||
INCLUDES += -I.
|
||||
|
||||
include $(LIBIEC_HOME)/make/target_system.mk
|
||||
include $(LIBIEC_HOME)/make/stack_includes.mk
|
||||
|
||||
all: $(PROJECT_BINARY_NAME)
|
||||
|
||||
include $(LIBIEC_HOME)/make/common_targets.mk
|
||||
|
||||
$(PROJECT_BINARY_NAME): $(PROJECT_SOURCES) $(LIB_NAME)
|
||||
$(CC) $(CFLAGS) $(LDFLAGS) -o $(PROJECT_BINARY_NAME) $(PROJECT_SOURCES) $(INCLUDES) $(LIB_NAME) $(LDLIBS)
|
||||
|
||||
clean:
|
||||
rm -f $(PROJECT_BINARY_NAME)
|
||||
|
||||
|
73
examples/sv_subscriber/sv_subscriber_example.c
Normal file
73
examples/sv_subscriber/sv_subscriber_example.c
Normal file
|
@ -0,0 +1,73 @@
|
|||
/*
|
||||
* subscriber_test.c
|
||||
*
|
||||
* Example program for Sampled Values (SV) subscriber
|
||||
*
|
||||
*/
|
||||
|
||||
#include "hal_thread.h"
|
||||
#include <signal.h>
|
||||
#include <stdio.h>
|
||||
#include "sv_subscriber.h"
|
||||
|
||||
|
||||
static bool running = true;
|
||||
|
||||
void sigint_handler(int signalId)
|
||||
{
|
||||
running = 0;
|
||||
}
|
||||
|
||||
|
||||
/* Callback handler for received SV messages */
|
||||
static void
|
||||
svUpdateListener (SVSubscriber subscriber, void* parameter, SVClientASDU asdu)
|
||||
{
|
||||
printf("svUpdateListener called\n");
|
||||
|
||||
const char* svID = SVClientASDU_getSvId(asdu);
|
||||
|
||||
if (svID != NULL)
|
||||
printf(" svID=(%s)\n", svID);
|
||||
|
||||
printf(" smpCnt: %i\n", SVClientASDU_getSmpCnt(asdu));
|
||||
printf(" confRev: %u\n", SVClientASDU_getConfRev(asdu));
|
||||
|
||||
if (SVClientASDU_getDataSize(asdu) >= 8) {
|
||||
printf(" DATA[0]: %f\n", SVClientASDU_getFLOAT32(asdu, 0));
|
||||
printf(" DATA[1]: %f\n", SVClientASDU_getFLOAT32(asdu, 4));
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
main(int argc, char** argv)
|
||||
{
|
||||
SVReceiver receiver = SVReceiver_create();
|
||||
|
||||
if (argc > 1) {
|
||||
printf("Set interface id: %s\n", argv[1]);
|
||||
SVReceiver_setInterfaceId(receiver, argv[1]);
|
||||
}
|
||||
else {
|
||||
printf("Using interface eth0\n");
|
||||
SVReceiver_setInterfaceId(receiver, "eth0");
|
||||
}
|
||||
|
||||
SVSubscriber subscriber = SVSubscriber_create(NULL, 0x4000);
|
||||
|
||||
SVSubscriber_setListener(subscriber, svUpdateListener, NULL);
|
||||
|
||||
SVReceiver_addSubscriber(receiver, subscriber);
|
||||
|
||||
SVReceiver_start(receiver);
|
||||
|
||||
signal(SIGINT, sigint_handler);
|
||||
|
||||
while (running) {
|
||||
Thread_sleep(1);
|
||||
}
|
||||
|
||||
SVReceiver_stop(receiver);
|
||||
|
||||
SVReceiver_destroy(receiver);
|
||||
}
|
|
@ -7,3 +7,4 @@ INCLUDES += -I$(LIBIEC_HOME)/src/iec61850/inc
|
|||
INCLUDES += -I$(LIBIEC_HOME)/src/iec61850/inc_private
|
||||
INCLUDES += -I$(LIBIEC_HOME)/src/hal/inc
|
||||
INCLUDES += -I$(LIBIEC_HOME)/src/goose
|
||||
INCLUDES += -I$(LIBIEC_HOME)/src/sampled_values
|
||||
|
|
|
@ -58,6 +58,7 @@ set (lib_common_SRCS
|
|||
./iec61850/client/client_control.c
|
||||
./iec61850/client/client_report_control.c
|
||||
./iec61850/client/client_goose_control.c
|
||||
./iec61850/client/client_sv_control.c
|
||||
./iec61850/client/client_report.c
|
||||
./iec61850/client/ied_connection.c
|
||||
./iec61850/common/iec61850_common.c
|
||||
|
@ -71,7 +72,7 @@ set (lib_common_SRCS
|
|||
./iec61850/server/mms_mapping/mms_mapping.c
|
||||
./iec61850/server/mms_mapping/reporting.c
|
||||
./iec61850/server/mms_mapping/mms_goose.c
|
||||
|
||||
./iec61850/server/mms_mapping/mms_sv.c
|
||||
)
|
||||
|
||||
set (lib_asn1c_SRCS
|
||||
|
@ -173,6 +174,10 @@ set (lib_goose_SRCS
|
|||
./goose/goose_publisher.c
|
||||
)
|
||||
|
||||
set (lib_sv_SRCS
|
||||
./sampled_values/sv_subscriber.c
|
||||
)
|
||||
|
||||
set (lib_linux_SRCS
|
||||
./hal/socket/linux/socket_linux.c
|
||||
./hal/ethernet/linux/ethernet_linux.c
|
||||
|
@ -213,6 +218,8 @@ set_source_files_properties(${lib_common_SRCS} ${lib_windows_SRCS}
|
|||
IF(WITH_WPCAP)
|
||||
set_source_files_properties(${lib_goose_SRCS}
|
||||
PROPERTIES LANGUAGE CXX)
|
||||
set_source_files_properties(${lib_sv_SRCS}
|
||||
PROPERTIES LANGUAGE CXX)
|
||||
ELSE()
|
||||
add_definitions(-DEXCLUDE_ETHERNET_WINDOWS)
|
||||
ENDIF()
|
||||
|
@ -225,16 +232,17 @@ include_directories(
|
|||
|
||||
IF(WITH_WPCAP)
|
||||
set (library_SRCS
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_goose_SRCS}
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_goose_SRCS}
|
||||
${lib_sv_SRCS}
|
||||
${lib_windows_SRCS}
|
||||
)
|
||||
|
||||
ELSE()
|
||||
set (library_SRCS
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_windows_SRCS}
|
||||
)
|
||||
|
||||
|
@ -243,23 +251,26 @@ ENDIF(WITH_WPCAP)
|
|||
ELSEIF(UNIX)
|
||||
IF(APPLE)
|
||||
set (library_SRCS
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_goose_SRCS}
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_goose_SRCS}
|
||||
${lib_sv_SRCS}
|
||||
${lib_bsd_SRCS}
|
||||
)
|
||||
ELSEIF(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
|
||||
set (library_SRCS
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_goose_SRCS}
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_goose_SRCS}
|
||||
${lib_sv_SRCS}
|
||||
${lib_bsd_SRCS}
|
||||
)
|
||||
ELSE()
|
||||
set (library_SRCS
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_goose_SRCS}
|
||||
${lib_common_SRCS}
|
||||
${lib_asn1c_SRCS}
|
||||
${lib_goose_SRCS}
|
||||
${lib_sv_SRCS}
|
||||
${lib_linux_SRCS}
|
||||
)
|
||||
ENDIF(APPLE)
|
||||
|
|
|
@ -292,7 +292,7 @@ Timestamp_setTimeInSeconds(Timestamp* self, uint32_t secondsSinceEpoch)
|
|||
void
|
||||
Timestamp_setTimeInMilliseconds(Timestamp* self, uint64_t millisSinceEpoch)
|
||||
{
|
||||
uint32_t timeval32 = (millisSinceEpoch / 1000LL);
|
||||
uint32_t timeval32 = (uint32_t) (millisSinceEpoch / 1000LL);
|
||||
|
||||
uint8_t* timeArray = (uint8_t*) &timeval32;
|
||||
uint8_t* valueArray = self->val;
|
||||
|
|
|
@ -327,6 +327,7 @@ IedConnection_getMmsConnection(IedConnection self);
|
|||
/** SV ASDU contains attribute Security */
|
||||
#define IEC61850_SV_OPT_SECURITY 16
|
||||
|
||||
|
||||
/** an opaque handle to the instance data of a ClientSVControlBlock object */
|
||||
typedef struct sClientSVControlBlock* ClientSVControlBlock;
|
||||
|
||||
|
@ -370,7 +371,7 @@ ClientSVControlBlock_isMulticast(ClientSVControlBlock self);
|
|||
* \return the error code of the last read or write access
|
||||
*/
|
||||
IedClientError
|
||||
ClientSVControlBlock_getLastError(ClientSVControlBlock self);
|
||||
ClientSVControlBlock_getLastComError(ClientSVControlBlock self);
|
||||
|
||||
|
||||
bool
|
||||
|
@ -382,6 +383,9 @@ ClientSVControlBlock_getSvEna(ClientSVControlBlock self);
|
|||
bool
|
||||
ClientSVControlBlock_setResv(ClientSVControlBlock self, bool svEna);
|
||||
|
||||
bool
|
||||
ClientSVControlBlock_getResv(ClientSVControlBlock self);
|
||||
|
||||
char*
|
||||
ClientSVControlBlock_getMsvID(ClientSVControlBlock self);
|
||||
|
||||
|
|
|
@ -1968,22 +1968,6 @@ MmsValue_getTypeString(MmsValue* self)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
msTimeToGeneralizedTime(uint64_t msTime, uint8_t* buffer, size_t bufferSize)
|
||||
{
|
||||
time_t unixTime = (msTime / 1000);
|
||||
|
||||
struct tm tmTime;
|
||||
|
||||
int msPart = (msTime % 1000);
|
||||
gmtime_r(&unixTime, &tmTime);
|
||||
|
||||
snprintf((char*) buffer, bufferSize, "%04d%02d%02d%02d%02d%02d.%03dZ", tmTime.tm_year + 1900, tmTime.tm_mon + 1,
|
||||
tmTime.tm_mday, tmTime.tm_hour, tmTime.tm_min, tmTime.tm_sec, msPart);
|
||||
}
|
||||
|
||||
|
||||
char*
|
||||
MmsValue_printToBuffer(MmsValue* self, char* buffer, int bufferSize)
|
||||
{
|
||||
|
@ -2022,7 +2006,11 @@ MmsValue_printToBuffer(MmsValue* self, char* buffer, int bufferSize)
|
|||
break;
|
||||
|
||||
case MMS_BINARY_TIME:
|
||||
msTimeToGeneralizedTime(MmsValue_getBinaryTimeAsUtcMs(self), (uint8_t*) buffer, bufferSize);
|
||||
{
|
||||
uint8_t tempBuf[20];
|
||||
Conversions_msTimeToGeneralizedTime(MmsValue_getBinaryTimeAsUtcMs(self), tempBuf);
|
||||
snprintf(buffer, bufferSize, "%s", tempBuf);
|
||||
}
|
||||
break;
|
||||
|
||||
case MMS_BIT_STRING:
|
||||
|
@ -2101,7 +2089,11 @@ MmsValue_printToBuffer(MmsValue* self, char* buffer, int bufferSize)
|
|||
break;
|
||||
|
||||
case MMS_UTC_TIME:
|
||||
msTimeToGeneralizedTime(MmsValue_getUtcTimeInMs(self), (uint8_t*) buffer, bufferSize);
|
||||
{
|
||||
uint8_t tempBuf[20];
|
||||
Conversions_msTimeToGeneralizedTime(MmsValue_getUtcTimeInMs(self), tempBuf);
|
||||
snprintf(buffer, bufferSize, "%s", tempBuf);
|
||||
}
|
||||
break;
|
||||
|
||||
case MMS_STRING:
|
||||
|
|
621
src/sampled_values/sv_subscriber.c
Normal file
621
src/sampled_values/sv_subscriber.c
Normal file
|
@ -0,0 +1,621 @@
|
|||
/*
|
||||
* sv_receiver.c
|
||||
*
|
||||
* Copyright 2015 Michael Zillgith
|
||||
*
|
||||
* This file is part of libIEC61850.
|
||||
*
|
||||
* libIEC61850 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* libIEC61850 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with libIEC61850. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* See COPYING file for the complete license text.
|
||||
*/
|
||||
|
||||
#include "stack_config.h"
|
||||
|
||||
#include "libiec61850_platform_includes.h"
|
||||
|
||||
#include "hal_ethernet.h"
|
||||
#include "hal_thread.h"
|
||||
#include "ber_decode.h"
|
||||
#include "ber_encoder.h"
|
||||
|
||||
#include "sv_subscriber.h"
|
||||
|
||||
#ifndef DEBUG_SV_SUBSCRIBER
|
||||
#define DEBUG_SV_SUBSCRIBER 1
|
||||
#endif
|
||||
|
||||
#define ETH_BUFFER_LENGTH 1518
|
||||
|
||||
#define ETH_P_SV 0x88ba
|
||||
|
||||
struct sSVReceiver {
|
||||
bool running;
|
||||
bool stopped;
|
||||
|
||||
bool checkDestAddr; /* option: check destination address (additionally to AppID) to identify application */
|
||||
|
||||
char* interfaceId;
|
||||
|
||||
uint8_t* buffer;
|
||||
EthernetSocket ethSocket;
|
||||
LinkedList subscriberList;
|
||||
};
|
||||
|
||||
struct sSVSubscriber {
|
||||
uint8_t ethAddr[6];
|
||||
uint16_t appId;
|
||||
|
||||
SVUpdateListener listener;
|
||||
void* listenerParameter;
|
||||
};
|
||||
|
||||
struct sSVClientASDU {
|
||||
|
||||
char* svId;
|
||||
|
||||
uint8_t* smpCnt;
|
||||
uint8_t* confRev;
|
||||
uint8_t* smpSynch;
|
||||
|
||||
|
||||
int dataBufferLength;
|
||||
uint8_t* dataBuffer;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
SVReceiver
|
||||
SVReceiver_create(void)
|
||||
{
|
||||
SVReceiver self = (SVReceiver) GLOBAL_MALLOC(sizeof(struct sSVReceiver));
|
||||
|
||||
if (self != NULL) {
|
||||
self->subscriberList = LinkedList_create();
|
||||
self->buffer = (uint8_t*) GLOBAL_MALLOC(ETH_BUFFER_LENGTH);
|
||||
|
||||
self->checkDestAddr = false;
|
||||
}
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
void
|
||||
SVReceiver_setInterfaceId(SVReceiver self, const char* interfaceId)
|
||||
{
|
||||
if (self->interfaceId != NULL)
|
||||
GLOBAL_FREEMEM(self->interfaceId);
|
||||
|
||||
self->interfaceId = copyString(interfaceId);
|
||||
}
|
||||
|
||||
void
|
||||
SVReceiver_disableDestAddrCheck(SVReceiver self)
|
||||
{
|
||||
self->checkDestAddr = false;
|
||||
}
|
||||
|
||||
void
|
||||
SVReceiver_addSubscriber(SVReceiver self, SVSubscriber subscriber)
|
||||
{
|
||||
LinkedList_add(self->subscriberList, (void*) subscriber);
|
||||
}
|
||||
|
||||
void
|
||||
SVReceiver_removeSubscriber(SVReceiver self, SVSubscriber subscriber)
|
||||
{
|
||||
LinkedList_remove(self->subscriberList, (void*) subscriber);
|
||||
}
|
||||
|
||||
static void
|
||||
svReceiverLoop(void* threadParameter)
|
||||
{
|
||||
SVReceiver self = (SVReceiver) threadParameter;
|
||||
|
||||
self->running = true;
|
||||
self->stopped = false;
|
||||
|
||||
SVReceiver_startThreadless(self);
|
||||
|
||||
while (self->running) {
|
||||
|
||||
if (SVReceiver_tick(self) == false)
|
||||
Thread_sleep(1);
|
||||
}
|
||||
|
||||
SVReceiver_stopThreadless(self);
|
||||
|
||||
self->stopped = true;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
SVReceiver_start(SVReceiver self)
|
||||
{
|
||||
Thread thread = Thread_create((ThreadExecutionFunction) svReceiverLoop, (void*) self, true);
|
||||
|
||||
if (thread != NULL) {
|
||||
if (DEBUG_SV_SUBSCRIBER)
|
||||
printf("SV_SUBSCRIBER: SV receiver started for interface %s\n", self->interfaceId);
|
||||
|
||||
Thread_start(thread);
|
||||
}
|
||||
else {
|
||||
if (DEBUG_SV_SUBSCRIBER)
|
||||
printf("SV_SUBSCRIBER: Starting SV receiver failed for interface %s\n", self->interfaceId);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
SVReceiver_stop(SVReceiver self)
|
||||
{
|
||||
self->running = false;
|
||||
|
||||
while (self->stopped == false)
|
||||
Thread_sleep(1);
|
||||
}
|
||||
|
||||
void
|
||||
SVReceiver_destroy(SVReceiver self)
|
||||
{
|
||||
LinkedList_destroyDeep(self->subscriberList,
|
||||
(LinkedListValueDeleteFunction) SVSubscriber_destroy);
|
||||
|
||||
GLOBAL_FREEMEM(self->buffer);
|
||||
GLOBAL_FREEMEM(self);
|
||||
}
|
||||
|
||||
void
|
||||
SVReceiver_startThreadless(SVReceiver self)
|
||||
{
|
||||
if (self->interfaceId == NULL)
|
||||
self->ethSocket = Ethernet_createSocket(CONFIG_ETHERNET_INTERFACE_ID, NULL);
|
||||
else
|
||||
self->ethSocket = Ethernet_createSocket(self->interfaceId, NULL);
|
||||
|
||||
Ethernet_setProtocolFilter(self->ethSocket, ETH_P_SV);
|
||||
|
||||
self->running = true;
|
||||
}
|
||||
|
||||
void
|
||||
SVReceiver_stopThreadless(SVReceiver self)
|
||||
{
|
||||
Ethernet_destroySocket(self->ethSocket);
|
||||
|
||||
self->running = false;
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
parseASDU(SVReceiver self, SVSubscriber subscriber, uint8_t* buffer, int length)
|
||||
{
|
||||
int bufPos = 0;
|
||||
|
||||
struct sSVClientASDU asdu;
|
||||
memset(&asdu, 0, sizeof(struct sSVClientASDU));
|
||||
|
||||
int svIdLength = 0;
|
||||
|
||||
|
||||
while (bufPos < length) {
|
||||
int elementLength;
|
||||
|
||||
uint8_t tag = buffer[bufPos++];
|
||||
|
||||
bufPos = BerDecoder_decodeLength(buffer, &elementLength, bufPos, length);
|
||||
|
||||
switch (tag) {
|
||||
|
||||
case 0x80:
|
||||
asdu.svId = (char*) (buffer + bufPos);
|
||||
svIdLength = elementLength;
|
||||
break;
|
||||
|
||||
case 0x82:
|
||||
asdu.smpCnt = buffer + bufPos;
|
||||
break;
|
||||
|
||||
case 0x83:
|
||||
asdu.confRev = buffer + bufPos;
|
||||
break;
|
||||
|
||||
case 0x85:
|
||||
asdu.smpSynch = buffer + bufPos;
|
||||
break;
|
||||
|
||||
case 0x87:
|
||||
asdu.dataBuffer = buffer + bufPos;
|
||||
asdu.dataBufferLength = elementLength;
|
||||
break;
|
||||
|
||||
default: /* ignore unknown tag */
|
||||
break;
|
||||
}
|
||||
|
||||
bufPos += elementLength;
|
||||
}
|
||||
|
||||
if (asdu.svId != NULL)
|
||||
asdu.svId[svIdLength] = 0;
|
||||
|
||||
/* Call callback handler */
|
||||
if (subscriber->listener != NULL)
|
||||
subscriber->listener(subscriber, subscriber->listenerParameter, &asdu);
|
||||
}
|
||||
|
||||
static void
|
||||
parseSequenceOfASDU(SVReceiver self, SVSubscriber subscriber, uint8_t* buffer, int length)
|
||||
{
|
||||
int bufPos = 0;
|
||||
|
||||
while (bufPos < length) {
|
||||
int elementLength;
|
||||
|
||||
uint8_t tag = buffer[bufPos++];
|
||||
|
||||
bufPos = BerDecoder_decodeLength(buffer, &elementLength, bufPos, length);
|
||||
|
||||
switch (tag) {
|
||||
case 0x30:
|
||||
parseASDU(self, subscriber, buffer + bufPos, elementLength);
|
||||
break;
|
||||
|
||||
default: /* ignore unknown tag */
|
||||
break;
|
||||
}
|
||||
|
||||
bufPos += elementLength;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
parseSVPayload(SVReceiver self, SVSubscriber subscriber, uint8_t* buffer, int apduLength)
|
||||
{
|
||||
int bufPos = 0;
|
||||
|
||||
if (buffer[bufPos++] == 0x60) {
|
||||
int elementLength;
|
||||
|
||||
bufPos = BerDecoder_decodeLength(buffer, &elementLength, bufPos, apduLength);
|
||||
|
||||
int svEnd = bufPos + elementLength;
|
||||
|
||||
while (bufPos < svEnd) {
|
||||
uint8_t tag = buffer[bufPos++];
|
||||
|
||||
bufPos = BerDecoder_decodeLength(buffer, &elementLength, bufPos, svEnd);
|
||||
|
||||
if (bufPos + elementLength > apduLength) {
|
||||
if (DEBUG_SV_SUBSCRIBER)
|
||||
printf("SV_SUBSCRIBER: Malformed message: sub element is too large!\n");
|
||||
|
||||
goto exit_error;
|
||||
}
|
||||
|
||||
if (bufPos == -1)
|
||||
goto exit_error;
|
||||
|
||||
switch(tag) {
|
||||
case 0x80: /* noASDU (INTEGER) */
|
||||
/* ignore */
|
||||
break;
|
||||
|
||||
case 0xa2: /* asdu (SEQUENCE) */
|
||||
parseSequenceOfASDU(self, subscriber, buffer + bufPos, elementLength);
|
||||
break;
|
||||
|
||||
default: /* ignore unknown tag */
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
bufPos += elementLength;
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
exit_error:
|
||||
if (DEBUG_SV_SUBSCRIBER)
|
||||
printf("SV_SUBSCRIBER: Invalid SV message!\n");
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static void
|
||||
parseSVMessage(SVReceiver self, int numbytes)
|
||||
{
|
||||
int bufPos;
|
||||
bool subscriberFound = false;
|
||||
uint8_t* buffer = self->buffer;
|
||||
|
||||
if (numbytes < 22) return;
|
||||
|
||||
/* Ethernet source address */
|
||||
uint8_t* srcAddr = buffer;
|
||||
|
||||
/* skip ethernet addresses */
|
||||
bufPos = 12;
|
||||
int headerLength = 14;
|
||||
|
||||
/* check for VLAN tag */
|
||||
if ((buffer[bufPos] == 0x81) && (buffer[bufPos + 1] == 0x00)) {
|
||||
bufPos += 4; /* skip VLAN tag */
|
||||
headerLength += 4;
|
||||
}
|
||||
|
||||
/* check for SV Ethertype */
|
||||
if (buffer[bufPos++] != 0x88)
|
||||
return;
|
||||
if (buffer[bufPos++] != 0xba)
|
||||
return;
|
||||
|
||||
uint16_t appId;
|
||||
|
||||
appId = buffer[bufPos++] * 0x100;
|
||||
appId += buffer[bufPos++];
|
||||
|
||||
uint16_t length;
|
||||
|
||||
length = buffer[bufPos++] * 0x100;
|
||||
length += buffer[bufPos++];
|
||||
|
||||
/* skip reserved fields */
|
||||
bufPos += 4;
|
||||
|
||||
int apduLength = length - 8;
|
||||
|
||||
if (numbytes < length + headerLength) {
|
||||
if (DEBUG_SV_SUBSCRIBER)
|
||||
printf("SV_SUBSCRIBER: Invalid PDU size\n");
|
||||
return;
|
||||
}
|
||||
|
||||
if (DEBUG_SV_SUBSCRIBER) {
|
||||
printf("SV_SUBSCRIBER: SV message: ----------------\n");
|
||||
printf("SV_SUBSCRIBER: APPID: %u\n", appId);
|
||||
printf("SV_SUBSCRIBER: LENGTH: %u\n", length);
|
||||
printf("SV_SUBSCRIBER: APDU length: %i\n", apduLength);
|
||||
}
|
||||
|
||||
|
||||
/* check if there is a matching subscriber */
|
||||
LinkedList element = LinkedList_getNext(self->subscriberList);
|
||||
|
||||
SVSubscriber subscriber;
|
||||
|
||||
while (element != NULL) {
|
||||
subscriber = (SVSubscriber) LinkedList_getData(element);
|
||||
|
||||
if (subscriber->appId == appId) {
|
||||
|
||||
if (self->checkDestAddr) {
|
||||
if (memcmp(srcAddr, subscriber->ethAddr, 6) == 0) {
|
||||
subscriberFound = true;
|
||||
break;
|
||||
}
|
||||
else
|
||||
if (DEBUG_SV_SUBSCRIBER)
|
||||
printf("SV_SUBSCRIBER: Checking ethernet src address failed!\n");
|
||||
}
|
||||
else {
|
||||
subscriberFound = true;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
element = LinkedList_getNext(element);
|
||||
}
|
||||
|
||||
|
||||
if (subscriberFound)
|
||||
parseSVPayload(self, subscriber, buffer + bufPos, apduLength);
|
||||
else {
|
||||
if (DEBUG_SV_SUBSCRIBER)
|
||||
printf("SV_SUBSCRIBER: SV message ignored due to unknown APPID value\n");
|
||||
}
|
||||
}
|
||||
|
||||
bool
|
||||
SVReceiver_tick(SVReceiver self)
|
||||
{
|
||||
int packetSize = Ethernet_receivePacket(self->ethSocket, self->buffer, ETH_BUFFER_LENGTH);
|
||||
|
||||
if (packetSize > 0) {
|
||||
parseSVMessage(self, packetSize);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
SVSubscriber
|
||||
SVSubscriber_create(const uint8_t* ethAddr, uint16_t appID)
|
||||
{
|
||||
SVSubscriber self = (SVSubscriber) GLOBAL_CALLOC(1, sizeof(struct sSVSubscriber));
|
||||
|
||||
if (self != NULL) {
|
||||
self->appId = appID;
|
||||
|
||||
if (ethAddr != NULL)
|
||||
memcpy(self->ethAddr, ethAddr, 6);
|
||||
}
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
void
|
||||
SVSubscriber_destroy(SVSubscriber self)
|
||||
{
|
||||
if (self != NULL)
|
||||
GLOBAL_FREEMEM(self);
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
SVSubscriber_setListener(SVSubscriber self, SVUpdateListener listener, void* parameter)
|
||||
{
|
||||
self->listener = listener;
|
||||
self->listenerParameter = parameter;
|
||||
}
|
||||
|
||||
uint16_t
|
||||
SVClientASDU_getSmpCnt(SVClientASDU self)
|
||||
{
|
||||
uint16_t retVal;
|
||||
uint8_t* valBytes = (uint8_t*) &retVal;
|
||||
|
||||
#if (ORDER_LITTLE_ENDIAN == 1)
|
||||
valBytes[0] = self->smpCnt[1];
|
||||
valBytes[1] = self->smpCnt[0];
|
||||
#else
|
||||
valBytes[0] = self->smpCnt[0];
|
||||
valBytes[1] = self->smpCnt[1];
|
||||
#endif
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
const char*
|
||||
SVClientASDU_getSvId(SVClientASDU self)
|
||||
{
|
||||
return self->svId;
|
||||
}
|
||||
|
||||
uint32_t
|
||||
SVClientASDU_getConfRev(SVClientASDU self)
|
||||
{
|
||||
uint32_t retVal = *((uint32_t*) (self->confRev));
|
||||
|
||||
#if (ORDER_LITTLE_ENDIAN == 1)
|
||||
uint8_t* buf = (uint8_t*) (&retVal);
|
||||
|
||||
BerEncoder_revertByteOrder(buf, 4);
|
||||
#endif
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
int8_t
|
||||
SVClientASDU_getINT8(SVClientASDU self, int index)
|
||||
{
|
||||
int8_t retVal = *((int8_t*) (self->dataBuffer + index));
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
int16_t
|
||||
SVClientASDU_getINT16(SVClientASDU self, int index)
|
||||
{
|
||||
int16_t retVal = *((int16_t*) (self->dataBuffer + index));
|
||||
|
||||
#if (ORDER_LITTLE_ENDIAN == 1)
|
||||
uint8_t* buf = (uint8_t*) (&retVal);
|
||||
|
||||
BerEncoder_revertByteOrder(buf, 2);
|
||||
#endif
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
int32_t
|
||||
SVClientASDU_getINT32(SVClientASDU self, int index)
|
||||
{
|
||||
int32_t retVal = *((int32_t*) (self->dataBuffer + index));
|
||||
|
||||
#if (ORDER_LITTLE_ENDIAN == 1)
|
||||
uint8_t* buf = (uint8_t*) (&retVal);
|
||||
|
||||
BerEncoder_revertByteOrder(buf, 4);
|
||||
#endif
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
uint8_t
|
||||
SVClientASDU_getINT8U(SVClientASDU self, int index)
|
||||
{
|
||||
uint8_t retVal = *((uint8_t*) (self->dataBuffer + index));
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
uint16_t
|
||||
SVClientASDU_getINT16U(SVClientASDU self, int index)
|
||||
{
|
||||
uint16_t retVal = *((uint16_t*) (self->dataBuffer + index));
|
||||
|
||||
#if (ORDER_LITTLE_ENDIAN == 1)
|
||||
uint8_t* buf = (uint8_t*) (&retVal);
|
||||
|
||||
BerEncoder_revertByteOrder(buf, 2);
|
||||
#endif
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
uint32_t
|
||||
SVClientASDU_getINT32U(SVClientASDU self, int index)
|
||||
{
|
||||
uint32_t retVal = *((uint32_t*) (self->dataBuffer + index));
|
||||
|
||||
#if (ORDER_LITTLE_ENDIAN == 1)
|
||||
uint8_t* buf = (uint8_t*) (&retVal);
|
||||
|
||||
BerEncoder_revertByteOrder(buf, 4);
|
||||
#endif
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
|
||||
float
|
||||
SVClientASDU_getFLOAT32(SVClientASDU self, int index)
|
||||
{
|
||||
float retVal = *((float*) (self->dataBuffer + index));
|
||||
|
||||
#if (ORDER_LITTLE_ENDIAN == 1)
|
||||
uint8_t* buf = (uint8_t*) (&retVal);
|
||||
|
||||
BerEncoder_revertByteOrder(buf, 4);
|
||||
#endif
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
double
|
||||
SVClientASDU_getFLOAT64(SVClientASDU self, int index)
|
||||
{
|
||||
double retVal = *((double*) (self->dataBuffer + index));
|
||||
|
||||
#if (ORDER_LITTLE_ENDIAN == 1)
|
||||
uint8_t* buf = (uint8_t*) (&retVal);
|
||||
|
||||
BerEncoder_revertByteOrder(buf, 8);
|
||||
#endif
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
SVClientASDU_getDataSize(SVClientASDU self)
|
||||
{
|
||||
return self->dataBufferLength;
|
||||
}
|
||||
|
326
src/sampled_values/sv_subscriber.h
Normal file
326
src/sampled_values/sv_subscriber.h
Normal file
|
@ -0,0 +1,326 @@
|
|||
/*
|
||||
* sv_subscriber_api.h
|
||||
*
|
||||
* Copyright 2015 Michael Zillgith
|
||||
*
|
||||
* This file is part of libIEC61850.
|
||||
*
|
||||
* libIEC61850 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* libIEC61850 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with libIEC61850. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* See COPYING file for the complete license text.
|
||||
*/
|
||||
|
||||
#ifndef SAMPLED_VALUES_SV_SUBSCRIBER_H_
|
||||
#define SAMPLED_VALUES_SV_SUBSCRIBER_H_
|
||||
|
||||
#include "libiec61850_common_api.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* \brief opaque handle to a SV ASDU (Application service data unit) instance.
|
||||
*
|
||||
* Sampled Values (SV) ASDUs (application service data units) are the basic units for
|
||||
* sampled value data. Each ASDU represents a single sample consisting of multiple measurement
|
||||
* values with a single dedicated timestamp.
|
||||
*
|
||||
* NOTE: SVClientASDU are statically allocated and are only valid inside of the SVUpdateListener
|
||||
* function when called by the library. If you need the data contained in the ASDU elsewhere
|
||||
* you have to copy and store the data by yourself!
|
||||
*/
|
||||
typedef struct sSVClientASDU* SVClientASDU;
|
||||
|
||||
/**
|
||||
* \brief opaque handle to a SV subscriber instance
|
||||
*
|
||||
* A subscriber is an instance associated with a single stream of measurement data. It is identified
|
||||
* by the Ethernet destination address, the appID value (both are on SV message level) and the svID value
|
||||
* that is part of each ASDU (SVClientASDU object).
|
||||
*/
|
||||
typedef struct sSVSubscriber* SVSubscriber;
|
||||
|
||||
/**
|
||||
* \brief Callback function for received SV messages
|
||||
*
|
||||
* Will be called for each ASDU contained in a SV message!
|
||||
*
|
||||
* \param subscriber the subscriber that was associated with the received SV message
|
||||
* \param parameter a user provided parameter that is simply passed to the callback
|
||||
* \param asdu SV ASDU data structure. This structure is only valid inside of the callback function
|
||||
*/
|
||||
typedef void (*SVUpdateListener)(SVSubscriber subscriber, void* parameter, SVClientASDU asdu);
|
||||
|
||||
/**
|
||||
* \brief opaque handle to a SV receiver instance
|
||||
*/
|
||||
typedef struct sSVReceiver* SVReceiver;
|
||||
|
||||
/**
|
||||
* \brief Create a new SV receiver instance.
|
||||
*
|
||||
* A receiver is responsible for processing all SV message for a single Ethernet interface.
|
||||
* In order to process messages from multiple Ethernet interfaces you have to create multiple
|
||||
* instances.
|
||||
*
|
||||
* \return the newly created receiver instance
|
||||
*/
|
||||
SVReceiver
|
||||
SVReceiver_create(void);
|
||||
|
||||
/**
|
||||
* \brief Disable check for destination address of the received SV messages
|
||||
*
|
||||
* Per default both the appID and the destination address are checked to identify
|
||||
* relevant SV messages. Destination address check can be disabled for performance
|
||||
* reason when the appIDs are unique in the local system.
|
||||
*
|
||||
* \param self the receiver instance reference
|
||||
*/
|
||||
void
|
||||
SVReceiver_disableDestAddrCheck(SVReceiver self);
|
||||
|
||||
/**
|
||||
* \brief Set the Ethernet interface ID for the receiver instance
|
||||
*
|
||||
* Use this function if you want to use a different interface than
|
||||
* the default interface set by CONFIG_ETHERNET_INTERFACE_ID (stack_config.h)
|
||||
* NOTE: This function has to be called before calling SVReceiver_start.
|
||||
*
|
||||
* \param self the receiver instance reference
|
||||
* \param interfaceId the Ethernet interface id (platform specific e.g. eth0 for linux).
|
||||
*/
|
||||
void
|
||||
SVReceiver_setInterfaceId(SVReceiver self, const char* interfaceId);
|
||||
|
||||
/**
|
||||
* \brief Add a subscriber instance to the receiver
|
||||
*
|
||||
* The given subscriber will be connected to the receiver instance.
|
||||
*
|
||||
* \param self the receiver instance reference
|
||||
* \param subscriber the subscriber instance to connect
|
||||
*/
|
||||
void
|
||||
SVReceiver_addSubscriber(SVReceiver self, SVSubscriber subscriber);
|
||||
|
||||
/**
|
||||
* \brief Disconnect subscriber and receiver
|
||||
*
|
||||
* \param self the receiver instance reference
|
||||
* \param subscriber the subscriber instance to disconnect
|
||||
*/
|
||||
void
|
||||
SVReceiver_removeSubscriber(SVReceiver self, SVSubscriber subscriber);
|
||||
|
||||
/**
|
||||
* \brief Receiver starts listening for SV messages.
|
||||
*
|
||||
* NOTE: This call will start a new background thread.
|
||||
*
|
||||
* \param self the receiver instance reference
|
||||
*/
|
||||
void
|
||||
SVReceiver_start(SVReceiver self);
|
||||
|
||||
/**
|
||||
* \brief Receiver stops listening for SV messages
|
||||
*
|
||||
* \param self the receiver instance reference
|
||||
*/
|
||||
void
|
||||
SVReceiver_stop(SVReceiver self);
|
||||
|
||||
/**
|
||||
* \brief Destroy receiver instance (cleanup resources)
|
||||
*
|
||||
* \param self the receiver instance reference
|
||||
*/
|
||||
void
|
||||
SVReceiver_destroy(SVReceiver self);
|
||||
|
||||
/***************************************
|
||||
* Functions for non-threaded operation
|
||||
***************************************/
|
||||
|
||||
void
|
||||
SVReceiver_startThreadless(SVReceiver self);
|
||||
|
||||
void
|
||||
SVReceiver_stopThreadless(SVReceiver self);
|
||||
|
||||
bool
|
||||
SVReceiver_tick(SVReceiver self);
|
||||
|
||||
/*
|
||||
* Subscriber
|
||||
*/
|
||||
|
||||
SVSubscriber
|
||||
SVSubscriber_create(const uint8_t* ethAddr, uint16_t appID);
|
||||
|
||||
/**
|
||||
* \brief Set a callback handler to process received SV messages
|
||||
*
|
||||
* If the received SV message contains multiple ASDUs (application service data units) the callback
|
||||
* function will be called for each ASDU separately. If a callback function has already been installed
|
||||
* for this SVSubscriber object the old callback will be replaced.
|
||||
*
|
||||
* \param self The subscriber object
|
||||
* \param listener the callback function to install
|
||||
* \param a user provided parameter that is provided to the callback function
|
||||
*
|
||||
*/
|
||||
void
|
||||
SVSubscriber_setListener(SVSubscriber self, SVUpdateListener listener, void* parameter);
|
||||
|
||||
void
|
||||
SVSubscriber_destroy(SVSubscriber self);
|
||||
|
||||
/*************************************************************************
|
||||
* SVClientASDU object methods
|
||||
**************************************************************************/
|
||||
|
||||
/**
|
||||
* \brief return the SmpCnt value included in the SV ASDU
|
||||
*
|
||||
* The SmpCnt (sample counter) is increased for each ASDU to
|
||||
* identify the sample.
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
*/
|
||||
uint16_t
|
||||
SVClientASDU_getSmpCnt(SVClientASDU self);
|
||||
|
||||
/**
|
||||
* \brief return the SvID value included in the SV ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
*/
|
||||
const char*
|
||||
SVClientASDU_getSvId(SVClientASDU self);
|
||||
|
||||
/**
|
||||
* \brief return the ConfRev value included in the SV ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
*/
|
||||
uint32_t
|
||||
SVClientASDU_getConfRev(SVClientASDU self);
|
||||
|
||||
/**
|
||||
* \brief Get an INT8 data value in the data part of the ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
* \param index the index (byte position of the start) of the data in the data part
|
||||
*
|
||||
* \return SV data
|
||||
*/
|
||||
int8_t
|
||||
SVClientASDU_getINT8(SVClientASDU self, int index);
|
||||
|
||||
/**
|
||||
* \brief Get an INT16 data value in the data part of the ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
* \param index the index (byte position of the start) of the data in the data part
|
||||
*
|
||||
* \return SV data
|
||||
*/
|
||||
int16_t
|
||||
SVClientASDU_getINT16(SVClientASDU self, int index);
|
||||
|
||||
/**
|
||||
* \brief Get an INT32 data value in the data part of the ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
* \param index the index (byte position of the start) of the data in the data part
|
||||
*
|
||||
* \return SV data
|
||||
*/
|
||||
int32_t
|
||||
SVClientASDU_getINT32(SVClientASDU self, int index);
|
||||
|
||||
/**
|
||||
* \brief Get an INT8U data value in the data part of the ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
* \param index the index (byte position of the start) of the data in the data part
|
||||
*
|
||||
* \return SV data
|
||||
*/
|
||||
uint8_t
|
||||
SVClientASDU_getINT8U(SVClientASDU self, int index);
|
||||
|
||||
/**
|
||||
* \brief Get an INT16U data value in the data part of the ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
* \param index the index (byte position of the start) of the data in the data part
|
||||
*
|
||||
* \return SV data
|
||||
*/
|
||||
uint16_t
|
||||
SVClientASDU_getINT16U(SVClientASDU self, int index);
|
||||
|
||||
/**
|
||||
* \brief Get an INT32U data value in the data part of the ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
* \param index the index (byte position of the start) of the data in the data part
|
||||
*
|
||||
* \return SV data
|
||||
*/
|
||||
uint32_t
|
||||
SVClientASDU_getINT32U(SVClientASDU self, int index);
|
||||
|
||||
/**
|
||||
* \brief Get an FLOAT32 data value in the data part of the ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
* \param index the index (byte position of the start) of the data in the data part
|
||||
*
|
||||
* \return SV data
|
||||
*/
|
||||
float
|
||||
SVClientASDU_getFLOAT32(SVClientASDU self, int index);
|
||||
|
||||
/**
|
||||
* \brief Get an FLOAT64 data value in the data part of the ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
* \param index the index (byte position of the start) of the data in the data part
|
||||
*
|
||||
* \return SV data
|
||||
*/
|
||||
double
|
||||
SVClientASDU_getFLOAT64(SVClientASDU self, int index);
|
||||
|
||||
/**
|
||||
* \brief Returns the size of the data part of the ASDU
|
||||
*
|
||||
* \param self ASDU object instance
|
||||
*
|
||||
* \return size of the ASDU data part in bytes.
|
||||
*/
|
||||
int
|
||||
SVClientASDU_getDataSize(SVClientASDU self);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* SAMPLED_VALUES_SV_SUBSCRIBER_ */
|
|
@ -498,4 +498,19 @@ EXPORTS
|
|||
SVControlBlock_create
|
||||
SVControlBlock_addPhyComAddress
|
||||
GSEControlBlock_addPhyComAddress
|
||||
GooseSubscriber_getConfRev
|
||||
ClientSVControlBlock_create
|
||||
ClientSVControlBlock_destroy
|
||||
ClientSVControlBlock_isMulticast
|
||||
ClientSVControlBlock_getLastComError
|
||||
ClientSVControlBlock_setSvEna
|
||||
ClientSVControlBlock_getSvEna
|
||||
ClientSVControlBlock_setResv
|
||||
ClientSVControlBlock_getResv
|
||||
ClientSVControlBlock_getMsvID
|
||||
ClientSVControlBlock_getDatSet
|
||||
ClientSVControlBlock_getConfRev
|
||||
ClientSVControlBlock_getSmpRate
|
||||
ClientSVControlBlock_getDstAddress
|
||||
ClientSVControlBlock_getOptFlds
|
||||
ClientSVControlBlock_getSmpMod
|
||||
ClientSVControlBlock_getNoASDU
|
|
@ -522,4 +522,45 @@ EXPORTS
|
|||
SVControlBlock_create
|
||||
SVControlBlock_addPhyComAddress
|
||||
GSEControlBlock_addPhyComAddress
|
||||
GooseSubscriber_getConfRev
|
||||
GooseSubscriber_getConfRev
|
||||
SVReceiver_create
|
||||
SVReceiver_setInterfaceId
|
||||
SVReceiver_addSubscriber
|
||||
SVReceiver_removeSubscriber
|
||||
SVReceiver_start
|
||||
SVReceiver_stop
|
||||
SVReceiver_destroy
|
||||
SVReceiver_startThreadless
|
||||
SVReceiver_stopThreadless
|
||||
SVReceiver_tick
|
||||
SVSubscriber_create
|
||||
SVSubscriber_setListener
|
||||
SVSubscriber_destroy
|
||||
SVClientASDU_getSmpCnt
|
||||
SVClientASDU_getSvId
|
||||
SVClientASDU_getConfRev
|
||||
SVClientASDU_getINT8
|
||||
SVClientASDU_getINT16
|
||||
SVClientASDU_getINT32
|
||||
SVClientASDU_getINT8U
|
||||
SVClientASDU_getINT16U
|
||||
SVClientASDU_getINT32U
|
||||
SVClientASDU_getFLOAT32
|
||||
SVClientASDU_getFLOAT64
|
||||
SVClientASDU_getDataSize
|
||||
ClientSVControlBlock_create
|
||||
ClientSVControlBlock_destroy
|
||||
ClientSVControlBlock_isMulticast
|
||||
ClientSVControlBlock_getLastComError
|
||||
ClientSVControlBlock_setSvEna
|
||||
ClientSVControlBlock_getSvEna
|
||||
ClientSVControlBlock_setResv
|
||||
ClientSVControlBlock_getResv
|
||||
ClientSVControlBlock_getMsvID
|
||||
ClientSVControlBlock_getDatSet
|
||||
ClientSVControlBlock_getConfRev
|
||||
ClientSVControlBlock_getSmpRate
|
||||
ClientSVControlBlock_getDstAddress
|
||||
ClientSVControlBlock_getOptFlds
|
||||
ClientSVControlBlock_getSmpMod
|
||||
ClientSVControlBlock_getNoASDU
|
Loading…
Add table
Reference in a new issue