- fixed 9-2 example code

pull/6/head
Michael Zillgith 10 years ago
parent 94f62e365b
commit 80cf01f1d4

@ -17,10 +17,10 @@
#define DEBUG_COTP 0 #define DEBUG_COTP 0
#define DEBUG_ISO_SERVER 0 #define DEBUG_ISO_SERVER 0
#define DEBUG_ISO_CLIENT 0 #define DEBUG_ISO_CLIENT 0
#define DEBUG_IED_SERVER 0 #define DEBUG_IED_SERVER 1
#define DEBUG_IED_CLIENT 0 #define DEBUG_IED_CLIENT 0
#define DEBUG_MMS_CLIENT 0 #define DEBUG_MMS_CLIENT 0
#define DEBUG_MMS_SERVER 0 #define DEBUG_MMS_SERVER 1
#define DEBUG_GOOSE_SUBSCRIBER 0 #define DEBUG_GOOSE_SUBSCRIBER 0
#define DEBUG_GOOSE_PUBLISHER 0 #define DEBUG_GOOSE_PUBLISHER 0
#define DEBUG_SV_SUBSCRIBER 0 #define DEBUG_SV_SUBSCRIBER 0

@ -20,9 +20,9 @@ extern DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda6;
extern DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda7; extern DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda7;
DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda0 = { DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda0 = {
"1", "MUnn",
false, false,
"TCTR$MX$Amp", "TCTR1$MX$Amp",
-1, -1,
NULL, NULL,
NULL, NULL,
@ -30,9 +30,9 @@ DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda0 = {
}; };
DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda1 = { DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda1 = {
"2", "MUnn",
false, false,
"TCTR$MX$Amp", "TCTR2$MX$Amp",
-1, -1,
NULL, NULL,
NULL, NULL,
@ -40,9 +40,9 @@ DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda1 = {
}; };
DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda2 = { DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda2 = {
"3", "MUnn",
false, false,
"TCTR$MX$Amp", "TCTR3$MX$Amp",
-1, -1,
NULL, NULL,
NULL, NULL,
@ -50,9 +50,9 @@ DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda2 = {
}; };
DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda3 = { DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda3 = {
"4", "MUnn",
false, false,
"TCTR$MX$Amp", "TCTR4$MX$Amp",
-1, -1,
NULL, NULL,
NULL, NULL,
@ -60,9 +60,9 @@ DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda3 = {
}; };
DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda4 = { DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda4 = {
"1", "MUnn",
false, false,
"TVTR$MX$Vol", "TVTR1$MX$Vol",
-1, -1,
NULL, NULL,
NULL, NULL,
@ -70,9 +70,9 @@ DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda4 = {
}; };
DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda5 = { DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda5 = {
"2", "MUnn",
false, false,
"TVTR$MX$Vol", "TVTR2$MX$Vol",
-1, -1,
NULL, NULL,
NULL, NULL,
@ -80,9 +80,9 @@ DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda5 = {
}; };
DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda6 = { DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda6 = {
"3", "MUnn",
false, false,
"TVTR$MX$Vol", "TVTR3$MX$Vol",
-1, -1,
NULL, NULL,
NULL, NULL,
@ -90,9 +90,9 @@ DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda6 = {
}; };
DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda7 = { DataSetEntry iedModelds_MUnn_LLN0_PhsMeas1_fcda7 = {
"4", "MUnn",
false, false,
"TVTR$MX$Vol", "TVTR4$MX$Vol",
-1, -1,
NULL, NULL,
NULL, NULL,
@ -128,23 +128,10 @@ DataObject iedModel_MUnn_LLN0_Mod = {
"Mod", "Mod",
(ModelNode*) &iedModel_MUnn_LLN0, (ModelNode*) &iedModel_MUnn_LLN0,
NULL, NULL,
(ModelNode*) &iedModel_MUnn_LLN0_Mod_ctlVal, (ModelNode*) &iedModel_MUnn_LLN0_Mod_stVal,
0 0
}; };
DataAttribute iedModel_MUnn_LLN0_Mod_ctlVal = {
DataAttributeModelType,
"ctlVal",
(ModelNode*) &iedModel_MUnn_LLN0_Mod,
(ModelNode*) &iedModel_MUnn_LLN0_Mod_stVal,
NULL,
0,
IEC61850_FC_CO,
IEC61850_INT32,
0,
NULL,
0};
DataAttribute iedModel_MUnn_LLN0_Mod_stVal = { DataAttribute iedModel_MUnn_LLN0_Mod_stVal = {
DataAttributeModelType, DataAttributeModelType,
"stVal", "stVal",

@ -14,7 +14,6 @@ extern IedModel iedModel;
extern LogicalDevice iedModel_MUnn; extern LogicalDevice iedModel_MUnn;
extern LogicalNode iedModel_MUnn_LLN0; extern LogicalNode iedModel_MUnn_LLN0;
extern DataObject iedModel_MUnn_LLN0_Mod; extern DataObject iedModel_MUnn_LLN0_Mod;
extern DataAttribute iedModel_MUnn_LLN0_Mod_ctlVal;
extern DataAttribute iedModel_MUnn_LLN0_Mod_stVal; extern DataAttribute iedModel_MUnn_LLN0_Mod_stVal;
extern DataAttribute iedModel_MUnn_LLN0_Mod_q; extern DataAttribute iedModel_MUnn_LLN0_Mod_q;
extern DataAttribute iedModel_MUnn_LLN0_Mod_t; extern DataAttribute iedModel_MUnn_LLN0_Mod_t;
@ -88,7 +87,6 @@ extern DataAttribute iedModel_MUnn_TVTR4_Vol_sVC_offset;
#define IEDMODEL_MUnn (&iedModel_MUnn) #define IEDMODEL_MUnn (&iedModel_MUnn)
#define IEDMODEL_MUnn_LLN0 (&iedModel_MUnn_LLN0) #define IEDMODEL_MUnn_LLN0 (&iedModel_MUnn_LLN0)
#define IEDMODEL_MUnn_LLN0_Mod (&iedModel_MUnn_LLN0_Mod) #define IEDMODEL_MUnn_LLN0_Mod (&iedModel_MUnn_LLN0_Mod)
#define IEDMODEL_MUnn_LLN0_Mod_ctlVal (&iedModel_MUnn_LLN0_Mod_ctlVal)
#define IEDMODEL_MUnn_LLN0_Mod_stVal (&iedModel_MUnn_LLN0_Mod_stVal) #define IEDMODEL_MUnn_LLN0_Mod_stVal (&iedModel_MUnn_LLN0_Mod_stVal)
#define IEDMODEL_MUnn_LLN0_Mod_q (&iedModel_MUnn_LLN0_Mod_q) #define IEDMODEL_MUnn_LLN0_Mod_q (&iedModel_MUnn_LLN0_Mod_q)
#define IEDMODEL_MUnn_LLN0_Mod_t (&iedModel_MUnn_LLN0_Mod_t) #define IEDMODEL_MUnn_LLN0_Mod_t (&iedModel_MUnn_LLN0_Mod_t)

@ -68,62 +68,79 @@ SCL.xsd">
<AccessPoint name="accessPoint1"> <AccessPoint name="accessPoint1">
<Server> <Server>
<Authentication/> <Authentication/>
<LDevice inst="MUnn"> <LDevice inst="MUnn">
<LN0 lnType="9-2LELLN0" lnClass="LLN0" inst=""> <LN0 lnType="9-2LELLN0" lnClass="LLN0" inst="">
<DataSet name="PhsMeas1"> <DataSet name="PhsMeas1">
<FCDA lnClass="TCTR" ldInst="1" fc="MX" doName="Amp"/>
<FCDA lnClass="TCTR" ldInst="2" fc="MX" doName="Amp"/> <FCDA ldInst="MUnn" lnClass="TCTR" lnInst="1" fc="MX" doName="Amp"/>
<FCDA lnClass="TCTR" ldInst="3" fc="MX" doName="Amp"/> <FCDA ldInst="MUnn" lnClass="TCTR" lnInst="2" fc="MX" doName="Amp"/>
<FCDA lnClass="TCTR" ldInst="4" fc="MX" doName="Amp"/> <FCDA ldInst="MUnn" lnClass="TCTR" lnInst="3" fc="MX" doName="Amp"/>
<FCDA lnClass="TVTR" ldInst="1" fc="MX" doName="Vol"/> <FCDA ldInst="MUnn" lnClass="TCTR" lnInst="4" fc="MX" doName="Amp"/>
<FCDA lnClass="TVTR" ldInst="2" fc="MX" doName="Vol"/> <FCDA ldInst="MUnn" lnClass="TVTR" lnInst="1" fc="MX" doName="Vol"/>
<FCDA lnClass="TVTR" ldInst="3" fc="MX" doName="Vol"/> <FCDA ldInst="MUnn" lnClass="TVTR" lnInst="2" fc="MX" doName="Vol"/>
<FCDA lnClass="TVTR" ldInst="4" fc="MX" doName="Vol"/> <FCDA ldInst="MUnn" lnClass="TVTR" lnInst="3" fc="MX" doName="Vol"/>
<FCDA ldInst="MUnn" lnClass="TVTR" lnInst="4" fc="MX" doName="Vol"/>
</DataSet> </DataSet>
<SampledValueControl name="MSVCB01" datSet="PhsMeas1" smvID="xxxxMUnn01" <SampledValueControl name="MSVCB01" datSet="PhsMeas1" smvID="xxxxMUnn01"
smpRate="80" nofASDU="1" confRev="1"> smpRate="80" nofASDU="1" confRev="1">
<SmvOpts refreshTime="false" sampleSynchronized="true" <SmvOpts refreshTime="false" sampleSynchronized="true"
security="false" dataRef="false"/> security="false" dataRef="false"/>
</SampledValueControl> </SampledValueControl>
</LN0> </LN0>
<LN lnType="9-2LETCTR" lnClass="TCTR" inst="1"/> <LN lnType="9-2LETCTR" lnClass="TCTR" inst="1"/>
<LN lnType="9-2LETCTR" lnClass="TCTR" inst="2"/> <LN lnType="9-2LETCTR" lnClass="TCTR" inst="2"/>
<LN lnType="9-2LETCTR" lnClass="TCTR" inst="3"/> <LN lnType="9-2LETCTR" lnClass="TCTR" inst="3"/>
<LN lnType="9-2LETCTR" lnClass="TCTR" inst="4"/> <LN lnType="9-2LETCTR" lnClass="TCTR" inst="4"/>
<LN lnType="9-2LETVTR" lnClass="TVTR" inst="1"/> <LN lnType="9-2LETVTR" lnClass="TVTR" inst="1"/>
<LN lnType="9-2LETVTR" lnClass="TVTR" inst="2"/> <LN lnType="9-2LETVTR" lnClass="TVTR" inst="2"/>
<LN lnType="9-2LETVTR" lnClass="TVTR" inst="3"/> <LN lnType="9-2LETVTR" lnClass="TVTR" inst="3"/>
<LN lnType="9-2LETVTR" lnClass="TVTR" inst="4"/> <LN lnType="9-2LETVTR" lnClass="TVTR" inst="4"/>
</LDevice> </LDevice>
</Server> </Server>
</AccessPoint> </AccessPoint>
</IED> </IED>
<DataTypeTemplates> <DataTypeTemplates>
<LNodeType id="9-2LELLN0" lnClass="LLN0"> <LNodeType id="9-2LELLN0" lnClass="LLN0">
<DO name="Mod" type="9-2LEINC"/> <DO name="Mod" type="9-2LEINC"/>
</LNodeType> </LNodeType>
<LNodeType id="9-2LETCTR" lnClass="TCTR"> <LNodeType id="9-2LETCTR" lnClass="TCTR">
<DO name="Amp" type="9-2LESAVAmp"/> <DO name="Amp" type="9-2LESAVAmp"/>
</LNodeType> </LNodeType>
<LNodeType id="9-2LETVTR" lnClass="TVTR"> <LNodeType id="9-2LETVTR" lnClass="TVTR">
<DO name="Vol" type="9-2LESAVVol"/> <DO name="Vol" type="9-2LESAVVol"/>
</LNodeType> </LNodeType>
<DOType id="9-2LESAVAmp" cdc="SAV"> <DOType id="9-2LESAVAmp" cdc="SAV">
<DA name="instMag" bType="Struct" type="9-2LEAV" fc="MX"/> <DA name="instMag" bType="Struct" type="9-2LEAV" fc="MX"/>
<DA name="q" bType="Quality" fc="MX"/> <DA name="q" bType="Quality" fc="MX"/>
<DA name="sVC" bType="Struct" type="9-2LEsVCAmp" fc="CF"/> <DA name="sVC" bType="Struct" type="9-2LEsVCAmp" fc="CF"/>
</DOType> </DOType>
<DOType id="9-2LESAVVol" cdc="SAV"> <DOType id="9-2LESAVVol" cdc="SAV">
<DA name="instMag" bType="Struct" type="9-2LEAV" fc="MX"/> <DA name="instMag" bType="Struct" type="9-2LEAV" fc="MX"/>
<DA name="q" bType="Quality" fc="MX"/> <DA name="q" bType="Quality" fc="MX"/>
<DA name="sVC" bType="Struct" type="9-2LEsVCVol" fc="CF"/> <DA name="sVC" bType="Struct" type="9-2LEsVCVol" fc="CF"/>
</DOType> </DOType>
<DOType id="9-2LEINC" cdc="INC"> <DOType id="9-2LEINC" cdc="INC">
<DA name="ctlVal" fc="CO" bType="INT32"/>
<DA name="stVal" fc="ST" bType="INT32" dchg="true"/> <DA name="stVal" fc="ST" bType="INT32" dchg="true"/>
<DA name="q" fc="ST" bType="Quality" dchg="true"/> <DA name="q" fc="ST" bType="Quality" dchg="true"/>
<DA name="t" fc="ST" bType="Timestamp" dchg="true"/> <DA name="t" fc="ST" bType="Timestamp" dchg="true"/>
</DOType> </DOType>
<DAType id="9-2LEAV"> <DAType id="9-2LEAV">
<BDA name="i" bType="INT32"/> <BDA name="i" bType="INT32"/>
</DAType> </DAType>

@ -827,7 +827,6 @@ createNamedVariableFromLogicalNode(MmsMapping* self, MmsDomain* domain,
int componentCount = determineLogicalNodeComponentCount(logicalNode); int componentCount = determineLogicalNodeComponentCount(logicalNode);
SettingGroupControlBlock* sgControlBlock = NULL; SettingGroupControlBlock* sgControlBlock = NULL;
#if (CONFIG_IEC61850_SETTING_GROUPS == 1) #if (CONFIG_IEC61850_SETTING_GROUPS == 1)
@ -1016,7 +1015,7 @@ createNamedVariableFromLogicalNode(MmsMapping* self, MmsDomain* domain,
if (usvcbCount > 0) { if (usvcbCount > 0) {
namedVariable->typeSpec.structure.elements[currentComponent] = namedVariable->typeSpec.structure.elements[currentComponent] =
LIBIEC61850_SV_createSVControlBlocks(self, domain, logicalNode, msvcbCount, true); LIBIEC61850_SV_createSVControlBlocks(self, domain, logicalNode, usvcbCount, true);
currentComponent++; currentComponent++;
} }

Loading…
Cancel
Save