erster Baustein KF00 testweise exportiert
This commit is contained in:
@@ -0,0 +1,81 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.GlobalDB ID="0">
|
||||
<AttributeList>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Static">
|
||||
<Member Name="System" Datatype=""UDT_GOHStatus"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="de-DE">Fortna specific system status (check documentation for value descriptions)</MultiLanguageText>
|
||||
</Comment>
|
||||
<Sections>
|
||||
<Section Name="None">
|
||||
<Member Name="Status" Datatype="Int">
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="de-DE">Fortna specific system status (check documentation for value descriptions)</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections></Interface>
|
||||
<MemoryLayout>Optimized</MemoryLayout>
|
||||
<MemoryReserve>100</MemoryReserve>
|
||||
<Name>DB_Status</Name>
|
||||
<Namespace />
|
||||
<Number>66</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.GlobalDB>
|
||||
</Document>
|
||||
@@ -0,0 +1,72 @@
|
||||
FUNCTION_BLOCK "FB-OPC_UA_System-Stat"
|
||||
{ S7_Optimized_Access := 'TRUE' }
|
||||
VERSION : 0.1
|
||||
VAR_INPUT
|
||||
nInSystemStat : Int; // Main State
|
||||
xInFireAlarm : Bool; // Feueralarm
|
||||
xInSafetyStop : Bool; // Not-Halt
|
||||
xInError : Bool; // Störung
|
||||
xInCommunicationError : Bool; // Kommunikationsstörung
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
nOutScadaStatus : Int;
|
||||
END_VAR
|
||||
|
||||
|
||||
BEGIN
|
||||
//Priority Chain
|
||||
//Emergency
|
||||
//Fault/Restore
|
||||
//Manual
|
||||
//Energy Saving
|
||||
//Cleaning / Warning
|
||||
//Running/Stopped
|
||||
|
||||
IF #xInFireAlarm THEN
|
||||
#nOutScadaStatus := 1;
|
||||
ELSIF #xInSafetyStop THEN
|
||||
#nOutScadaStatus := 3;
|
||||
ELSIF #xInError THEN
|
||||
#nOutScadaStatus := 5;
|
||||
ELSIF #xInCommunicationError THEN
|
||||
#nOutScadaStatus := 23;
|
||||
ELSIF #nInSystemStat = "E_DeviceState.eExecute" THEN
|
||||
#nOutScadaStatus := 19;
|
||||
ELSIF (#nInSystemStat = "E_DeviceState.eStopped") OR (#nInSystemStat = "E_DeviceState.eIdle") THEN
|
||||
#nOutScadaStatus := 17;
|
||||
END_IF;
|
||||
|
||||
(* CASE #nInSystemStat OF
|
||||
|
||||
"E_DeviceState.eStopped":
|
||||
#nOutScadaStatus := 17;
|
||||
|
||||
"E_DeviceState.eIdle":
|
||||
#nOutScadaStatus := 17;
|
||||
|
||||
"E_DeviceState.eExecute":
|
||||
#nOutScadaStatus := 19;
|
||||
|
||||
"E_DeviceState.eHolding":
|
||||
#nOutScadaStatus := 3;
|
||||
|
||||
"E_DeviceState.eHeld":
|
||||
#nOutScadaStatus := 13;
|
||||
|
||||
"E_DeviceState.eSuspended":
|
||||
#nOutScadaStatus := 13;
|
||||
|
||||
"E_DeviceState.eStarting",
|
||||
120,
|
||||
"E_DeviceState.eUnholding",
|
||||
"E_DeviceState.eUnsuspending",
|
||||
"E_DeviceState.eStopping":
|
||||
#nOutScadaStatus := 7;
|
||||
|
||||
ELSE
|
||||
#nOutScadaStatus := 5;
|
||||
|
||||
END_CASE; *)
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.InstanceDB ID="0">
|
||||
<AttributeList>
|
||||
<InstanceOfName>FB-OPC_UA_System-Stat</InstanceOfName>
|
||||
<InstanceOfType>FB</InstanceOfType>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Input">
|
||||
<Member Name="nInSystemStat" Datatype="Int" />
|
||||
<Member Name="xInFireAlarm" Datatype="Bool" />
|
||||
<Member Name="xInSafetyStop" Datatype="Bool" />
|
||||
<Member Name="xInError" Datatype="Bool" />
|
||||
<Member Name="xInCommunicationError" Datatype="Bool" />
|
||||
</Section>
|
||||
<Section Name="Output">
|
||||
<Member Name="nOutScadaStatus" Datatype="Int" />
|
||||
</Section>
|
||||
<Section Name="InOut" />
|
||||
<Section Name="Static" />
|
||||
</Sections></Interface>
|
||||
<Name>FB-OPC_UA_System-Stat_DB</Name>
|
||||
<Namespace />
|
||||
<Number>77</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.InstanceDB>
|
||||
</Document>
|
||||
+200
@@ -0,0 +1,200 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.InstanceDB ID="0">
|
||||
<AttributeList>
|
||||
<InstanceOfName>ReadServerDiagnostics</InstanceOfName>
|
||||
<InstanceOfType>FB</InstanceOfType>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Input">
|
||||
<Member Name="read" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
<Section Name="Output">
|
||||
<Member Name="done" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="busy" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="error" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="status" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="server" Datatype=""typeServer"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="simaticDevice" Datatype=""typeSimaticDevice"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
<Section Name="InOut" />
|
||||
<Section Name="Static">
|
||||
<Member Name="statConnectionHdl" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeCount" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeIds" Datatype="Array[0..32] of OPC_UA_NodeId" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeStatusList" Datatype="Array[0..32] of DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statTimeStamps" Datatype="Array[0..32] of LDT">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statVariable" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="ServerStatus" Datatype=""typeServerStatus"" />
|
||||
<Member Name="NamespaceArray" Datatype="Array[0.."NAMESPACEARRAY_UPPERBOUND"] of String" />
|
||||
<Member Name="ServerDiagnosticsSummary" Datatype=""typeServerDiagnosticsSummary"" />
|
||||
<Member Name="SessionDiagnosticsArray" Datatype="Array[0.."SESSIONS_UPPERBOUND"] of "typeSessionDiagnostics"" />
|
||||
<Member Name="SessionSecurityDiagnosticsArray" Datatype="Array[0.."SESSIONS_UPPERBOUND"] of "typeSessionSecurityDiagnosticsData"" />
|
||||
<Member Name="SubscriptionDiagnosticsArray" Datatype="Array[0.."SUBSCRIPTIONS_UPPERBOUND"] of "typeSubscriptionDiagnostics"" />
|
||||
<Member Name="ServerArray" Datatype="Array[0.."SERVERARRAY_UPPERBOUND"] of String" />
|
||||
<Member Name="DeviceManual" Datatype="String" />
|
||||
<Member Name="DeviceRevision" Datatype="String" />
|
||||
<Member Name="EngineeringRevision" Datatype="String" />
|
||||
<Member Name="HardwareRevision" Datatype="String" />
|
||||
<Member Name="Manufacturer" Datatype=""typeLocalizedText"" />
|
||||
<Member Name="Model" Datatype=""typeLocalizedText"" />
|
||||
<Member Name="OperatingMode" Datatype="DInt" />
|
||||
<Member Name="OrderNumber" Datatype="String" />
|
||||
<Member Name="RevisionCounter" Datatype="DInt" />
|
||||
<Member Name="SerialNumber" Datatype="String" />
|
||||
<Member Name="SoftwareRevision" Datatype="String" />
|
||||
<Member Name="MaxArrayLength" Datatype="UDInt" />
|
||||
<Member Name="MaxBrowseContinuationPoints" Datatype="UInt" />
|
||||
<Member Name="MaxByteStringLength" Datatype="UDInt" />
|
||||
<Member Name="MaxHistoryContinuationPoints" Datatype="UInt" />
|
||||
<Member Name="MaxQueryContinuationPoints" Datatype="UInt" />
|
||||
<Member Name="MaxStringLength" Datatype="UDInt" />
|
||||
<Member Name="MinSupportedSampleRate" Datatype="LReal" />
|
||||
<Member Name="MaxMonitoredItemsPerCall" Datatype="UDInt" />
|
||||
<Member Name="MaxNodesPerBrowse" Datatype="UDInt" />
|
||||
<Member Name="MaxNodesPerMethodCall" Datatype="UDInt" />
|
||||
<Member Name="MaxNodesPerRead" Datatype="UDInt" />
|
||||
<Member Name="MaxNodesPerRegisterNodes" Datatype="UDInt" />
|
||||
<Member Name="MaxNodesPerTranslateBrowsePathsToNodeIds" Datatype="UDInt" />
|
||||
<Member Name="MaxNodesPerWrite" Datatype="UDInt" />
|
||||
<Member Name="ServerProfileArray" Datatype="Array[0.."SERVERPROFILES_UPPERBOUND"] of WString" />
|
||||
</Member>
|
||||
<Member Name="instOpcUaReadList" Datatype="OPC_UA_ReadList" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections></Interface>
|
||||
<Name>InstReadServerDiagnostics</Name>
|
||||
<Namespace />
|
||||
<Number>78</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.InstanceDB>
|
||||
</Document>
|
||||
+170
@@ -0,0 +1,170 @@
|
||||
FUNCTION_BLOCK "ReadServerDiagnostics"
|
||||
{ S7_Optimized_Access := 'TRUE' }
|
||||
VERSION : 0.1
|
||||
VAR_INPUT
|
||||
read { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
done { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
busy { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
error { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
status { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : DWord;
|
||||
server { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : "typeServer";
|
||||
simaticDevice { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : "typeSimaticDevice";
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
statConnectionHdl { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : DWord := -42;
|
||||
statNodeCount { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UInt := #NODES_COUNT;
|
||||
statNodeIds {InstructionName := 'OPC_UA_NodeId'; LibVersion := '1.0'; ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : Array[0..#NODES_UPPERBOUND] of OPC_UA_NodeId := [((), WSTRING#'2256', ()), ((), WSTRING#'2255', ()), ((), WSTRING#'2275', ()), ((), WSTRING#'3707', ()), ((), WSTRING#'3708', ()), ((), WSTRING#'2290', ()), ((), WSTRING#'2254', ()), (3, WSTRING#'DeviceManual', 1), (3, WSTRING#'DeviceRevision', 1), (3, WSTRING#'EngineeringRevision', 1), (3, WSTRING#'HardwareRevision', 1), (3, WSTRING#'Manufacturer', 1), (3, WSTRING#'Model', 1), (3, WSTRING#'OperatingMode', 1), (3, WSTRING#'OrderNumber', 1), (3, WSTRING#'RevisionCounter', 1), (3, WSTRING#'SerialNumber', 1), (3, WSTRING#'SoftwareRevision', 1), ((), WSTRING#'11702', ()), ((), WSTRING#'2735', ()), ((), WSTRING#'12911', ()), ((), WSTRING#'2737', ()), ((), WSTRING#'2736', ()), ((), WSTRING#'11703', ()), ((), WSTRING#'2272', ()), ((), WSTRING#'11714', ()), ((), WSTRING#'11710', ()), ((), WSTRING#'11709', ()), ((), WSTRING#'11705', ()), ((), WSTRING#'11711', ()), ((), WSTRING#'11712', ()), ((), WSTRING#'11707', ()), ((), WSTRING#'2269', ())];
|
||||
statNodeStatusList { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0..#NODES_UPPERBOUND] of DWord;
|
||||
statTimeStamps { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0..#NODES_UPPERBOUND] of LDT;
|
||||
statVariable { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
ServerStatus { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : "typeServerStatus";
|
||||
NamespaceArray { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0.."NAMESPACEARRAY_UPPERBOUND"] of String;
|
||||
ServerDiagnosticsSummary { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : "typeServerDiagnosticsSummary";
|
||||
SessionDiagnosticsArray { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : Array[0.."SESSIONS_UPPERBOUND"] of "typeSessionDiagnostics";
|
||||
SessionSecurityDiagnosticsArray { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : Array[0.."SESSIONS_UPPERBOUND"] of "typeSessionSecurityDiagnosticsData";
|
||||
SubscriptionDiagnosticsArray { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : Array[0.."SUBSCRIPTIONS_UPPERBOUND"] of "typeSubscriptionDiagnostics";
|
||||
ServerArray { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0.."SERVERARRAY_UPPERBOUND"] of String;
|
||||
DeviceManual { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : String;
|
||||
DeviceRevision { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : String;
|
||||
EngineeringRevision { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : String;
|
||||
HardwareRevision { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : String;
|
||||
Manufacturer { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : "typeLocalizedText" := (16#0002, (), ());
|
||||
Model { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : "typeLocalizedText" := (16#0002, (), ());
|
||||
OperatingMode { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : DInt;
|
||||
OrderNumber { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : String;
|
||||
RevisionCounter { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : DInt;
|
||||
SerialNumber { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : String;
|
||||
SoftwareRevision { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : String;
|
||||
MaxArrayLength { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
MaxBrowseContinuationPoints { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UInt;
|
||||
MaxByteStringLength { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
MaxHistoryContinuationPoints { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UInt;
|
||||
MaxQueryContinuationPoints { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UInt;
|
||||
MaxStringLength { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
MinSupportedSampleRate { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : LReal;
|
||||
MaxMonitoredItemsPerCall { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
MaxNodesPerBrowse { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
MaxNodesPerMethodCall { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
MaxNodesPerRead { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
MaxNodesPerRegisterNodes { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
MaxNodesPerTranslateBrowsePathsToNodeIds { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
MaxNodesPerWrite { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
ServerProfileArray { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0.."SERVERPROFILES_UPPERBOUND"] of WString;
|
||||
END_STRUCT;
|
||||
instOpcUaReadList {InstructionName := 'OPC_UA_ReadList'; LibVersion := '1.0'; ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : OPC_UA_ReadList;
|
||||
END_VAR
|
||||
|
||||
VAR_TEMP
|
||||
tempDone : Bool;
|
||||
tempBusy : Bool;
|
||||
tempError : Bool;
|
||||
tempStatus : DWord;
|
||||
END_VAR
|
||||
|
||||
VAR CONSTANT
|
||||
NODES_UPPERBOUND : DInt := 32;
|
||||
NODES_COUNT : UInt := 33;
|
||||
END_VAR
|
||||
|
||||
|
||||
BEGIN
|
||||
REGION Description header
|
||||
//==================================================================================
|
||||
// SIEMENS / (C) Copyright 2023
|
||||
//----------------------------------------------------------------------------------
|
||||
// Title: ReadServerDiagnostics
|
||||
// Comment/Function: reads out the Server node data of the internal OPC UA server
|
||||
// Library/Family:
|
||||
// Author: SIEMENS SIMATIC Systems Support (SUP)
|
||||
// Target System:
|
||||
// Engineering: TIA Portal (>= V18)
|
||||
// Restrictions:
|
||||
// Requirements: FW 3.0 (1500)
|
||||
//----------------------------------------------------------------------------------
|
||||
// Change log table:
|
||||
// Version | Date | Expert in charge | Changes applied
|
||||
//-------------|------------|------------------|------------------------------------
|
||||
// 001.000.000 | 2023-02-13 | SUP SPH | First released version
|
||||
//==================================================================================
|
||||
END_REGION Description header
|
||||
|
||||
REGION OPC_UA_ReadList instance
|
||||
#instOpcUaReadList(REQ := #read,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount,
|
||||
NodeHdls := #statNodeIds,
|
||||
Done => #tempDone,
|
||||
Busy => #tempBusy,
|
||||
Error => #tempError,
|
||||
Status => #tempStatus,
|
||||
NodeStatusList := #statNodeStatusList,
|
||||
TimeStamps := #statTimeStamps,
|
||||
Variable := #statVariable);
|
||||
END_REGION OPC_UA_ReadList instance
|
||||
|
||||
REGION Write results
|
||||
IF #tempDone THEN
|
||||
|
||||
//ServerStatus
|
||||
#server.serverStatus := #statVariable.ServerStatus;
|
||||
|
||||
//NamespaceArray
|
||||
#server.namespaceArray := #statVariable.NamespaceArray;
|
||||
|
||||
//ServerArray
|
||||
#server.serverArray := #statVariable.ServerArray;
|
||||
|
||||
//Diagnostics
|
||||
#server.serverDiagnostics.serverDiagnosticsSummary := #statVariable.ServerDiagnosticsSummary;
|
||||
#server.serverDiagnostics.sessionDiagnosticsArray := #statVariable.SessionDiagnosticsArray;
|
||||
#server.serverDiagnostics.sessionSecurityDiagnosticsArray := #statVariable.SessionSecurityDiagnosticsArray;
|
||||
#server.serverDiagnostics.subscriptionDiagnosticsArray := #statVariable.SubscriptionDiagnosticsArray;
|
||||
|
||||
//ServerCapabilities:
|
||||
#server.serverCapabilities.MaxArrayLength := #statVariable.MaxArrayLength;
|
||||
#server.serverCapabilities.MaxBrowseContinuationPoints := #statVariable.MaxBrowseContinuationPoints;
|
||||
#server.serverCapabilities.MaxByteStringLength := #statVariable.MaxByteStringLength;
|
||||
#server.serverCapabilities.MaxHistoryContinuationPoints := #statVariable.MaxHistoryContinuationPoints;
|
||||
#server.serverCapabilities.MaxQueryContinuationPoints := #statVariable.MaxQueryContinuationPoints;
|
||||
#server.serverCapabilities.MaxStringLength := #statVariable.MaxStringLength;
|
||||
#server.serverCapabilities.MinSupportedSampleRate := #statVariable.MinSupportedSampleRate;
|
||||
#server.serverCapabilities.OperationLimits.MaxMonitoredItemsPerCall := #statVariable.MaxMonitoredItemsPerCall;
|
||||
#server.serverCapabilities.OperationLimits.MaxNodesPerBrowse := #statVariable.MaxNodesPerBrowse;
|
||||
#server.serverCapabilities.OperationLimits.MaxNodesPerMethodCall := #statVariable.MaxNodesPerMethodCall;
|
||||
#server.serverCapabilities.OperationLimits.MaxNodesPerRead := #statVariable.MaxNodesPerRead;
|
||||
#server.serverCapabilities.OperationLimits.MaxNodesPerRegisterNodes := #statVariable.MaxNodesPerRegisterNodes;
|
||||
#server.serverCapabilities.OperationLimits.MaxNodesPerTranslateBrowsePathsToNodeIds := #statVariable.MaxNodesPerTranslateBrowsePathsToNodeIds;
|
||||
#server.serverCapabilities.OperationLimits.MaxNodesPerWrite := #statVariable.MaxNodesPerWrite;
|
||||
#server.serverCapabilities.ServerProfileArray := #statVariable.ServerProfileArray;
|
||||
|
||||
//SimaticDevice
|
||||
#simaticDevice.#deviceManual := STRING_TO_WSTRING(#statVariable.DeviceManual);
|
||||
#simaticDevice.#deviceRevision := STRING_TO_WSTRING(#statVariable.DeviceRevision);
|
||||
#simaticDevice.#engineeringRevision := STRING_TO_WSTRING(#statVariable.EngineeringRevision);
|
||||
#simaticDevice.#hardwareRevision := STRING_TO_WSTRING(#statVariable.HardwareRevision);
|
||||
#simaticDevice.manufacturer := #statVariable.Manufacturer;
|
||||
#simaticDevice.#model := #statVariable.Model;
|
||||
#simaticDevice.#orderNumber := STRING_TO_WSTRING(#statVariable.OrderNumber);
|
||||
#simaticDevice.#revisionCounter := #statVariable.RevisionCounter;
|
||||
#simaticDevice.#serialNumber := STRING_TO_WSTRING(#statVariable.SerialNumber);
|
||||
#simaticDevice.#softwareRevision := STRING_TO_WSTRING(#statVariable.SoftwareRevision);
|
||||
|
||||
END_IF;
|
||||
|
||||
END_REGION Write results
|
||||
|
||||
REGION Outputs
|
||||
|
||||
//simply pass output parameters
|
||||
#done := #tempDone;
|
||||
#error := #tempError;
|
||||
#status := #tempStatus;
|
||||
#busy := #tempBusy;
|
||||
|
||||
END_REGION Outputs
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
+144
@@ -0,0 +1,144 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.GlobalDB ID="0">
|
||||
<AttributeList>
|
||||
<DBAccessibleFromOPCUA>false</DBAccessibleFromOPCUA>
|
||||
<DBAccessibleFromWebserver>false</DBAccessibleFromWebserver>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Static">
|
||||
<Member Name="read" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">Flag for triggering the Read instruction.</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="done" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">execution is finished</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="busy" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">execution is running</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="error" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">error has occured during execution</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="status" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">execution status</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="server" Datatype=""typeServer"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Sections>
|
||||
<Section Name="None">
|
||||
<Member Name="namespaceArray" Datatype="Array[0.."NAMESPACEARRAY_UPPERBOUND"] of String">
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">NamespaceArray defines an array of namespace URIs. This Variable is also referred as namespace table.</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="serverArray" Datatype="Array[0.."SERVERARRAY_UPPERBOUND"] of String">
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">ServerArray defines an array of Server URIs. This Variable is also referred to as the server table.</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections>
|
||||
</Member>
|
||||
<Member Name="simaticDevice" Datatype=""typeSimaticDevice"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections></Interface>
|
||||
<MemoryLayout>Optimized</MemoryLayout>
|
||||
<MemoryReserve>100</MemoryReserve>
|
||||
<Name>ServerDiagnostics</Name>
|
||||
<Namespace />
|
||||
<Number>79</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.GlobalDB>
|
||||
</Document>
|
||||
+370
@@ -0,0 +1,370 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.InstanceDB ID="0">
|
||||
<AttributeList>
|
||||
<DBAccessibleFromOPCUA>false</DBAccessibleFromOPCUA>
|
||||
<DBAccessibleFromWebserver>false</DBAccessibleFromWebserver>
|
||||
<InstanceOfName>ReadSessionDiagnostics</InstanceOfName>
|
||||
<InstanceOfType>FB</InstanceOfType>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Input">
|
||||
<Member Name="sessionNameSubstring" Datatype="String">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="nodeIdExtension" Datatype="WString">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="read" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="enable" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
<Section Name="Output">
|
||||
<Member Name="done" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="busy" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="error" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="status" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="sessionsFound" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
<Section Name="InOut">
|
||||
<Member Name="readValue" Datatype="Variant" />
|
||||
</Section>
|
||||
<Section Name="Static">
|
||||
<Member Name="statRead" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statReadHandled" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statREQ1" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statREQ2" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statSessionsFound" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statSessionIdentifier" Datatype="WString">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statState" Datatype="USInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statDone" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statError" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statStatus" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statBusy" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statConnectionHdl" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeCount1" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeIds1" Datatype="Array[0..0] of OPC_UA_NodeId" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeStatusList1" Datatype="Array[0..0] of DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statTimeStamps1" Datatype="Array[0..0] of LDT">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statVariable1" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="SessionDiagnosticsArray" Datatype="Array[0.."SESSIONS_UPPERBOUND"] of "typeSessionDiagnostics"" />
|
||||
</Member>
|
||||
<Member Name="statNodeCount2" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeIds2" Datatype="Array[0..0] of OPC_UA_NodeId" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeStatusList2" Datatype="Array[0..0] of DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statTimeStamps2" Datatype="Array[0..0] of LDT">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statVariable2SessionDiagnostics" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype=""typeSessionDiagnostics"" />
|
||||
</Member>
|
||||
<Member Name="statVariable2ServiceCounter" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype=""typeServiceCounter"" />
|
||||
</Member>
|
||||
<Member Name="statVariable2UDInt" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="UDInt" />
|
||||
</Member>
|
||||
<Member Name="statVariable2LDT" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="LDT" />
|
||||
</Member>
|
||||
<Member Name="statVariable2LReal" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="LReal" />
|
||||
</Member>
|
||||
<Member Name="statVariable2Array05String" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="Array[0..5] of String" />
|
||||
</Member>
|
||||
<Member Name="statVariable2String" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="String" />
|
||||
</Member>
|
||||
<Member Name="statVariable2ApplicationDescription" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype=""typeApplicationDescription"" />
|
||||
</Member>
|
||||
<Member Name="statVariable2OpcUaNodeId" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="OPC_UA_NodeId" Version="1.0" />
|
||||
</Member>
|
||||
<Member Name="instOpcUaReadList1" Datatype="OPC_UA_ReadList" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="instOpcUaReadList2" Datatype="OPC_UA_ReadList" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections></Interface>
|
||||
<Name>InstReadSessionDiagnostics</Name>
|
||||
<Namespace />
|
||||
<Number>80</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.InstanceDB>
|
||||
</Document>
|
||||
+515
@@ -0,0 +1,515 @@
|
||||
FUNCTION_BLOCK "ReadSessionDiagnostics"
|
||||
{ S7_Optimized_Access := 'TRUE' }
|
||||
VERSION : 0.1
|
||||
VAR_INPUT
|
||||
sessionNameSubstring { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : String;
|
||||
nodeIdExtension { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : WString;
|
||||
read { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
enable { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
done { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
busy { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
error { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
status { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : DWord;
|
||||
sessionsFound { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UInt;
|
||||
END_VAR
|
||||
|
||||
VAR_IN_OUT
|
||||
readValue : Variant;
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
statRead { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
statReadHandled { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
statREQ1 { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
statREQ2 { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
statSessionsFound { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UInt;
|
||||
statSessionIdentifier { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : WString;
|
||||
statState { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : USInt := #STATE_FINDSESSION;
|
||||
statDone { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
statError { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
statStatus { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : DWord;
|
||||
statBusy { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
statConnectionHdl { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : DWord := -42;
|
||||
statNodeCount1 { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UInt := #NODES_COUNT_1;
|
||||
statNodeIds1 {InstructionName := 'OPC_UA_NodeId'; LibVersion := '1.0'; ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : Array[0..#NODES_UPPERBOUND_1] of OPC_UA_NodeId := [((), WSTRING#'3707', ())];
|
||||
statNodeStatusList1 { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0..#NODES_UPPERBOUND_1] of DWord;
|
||||
statTimeStamps1 { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0..#NODES_UPPERBOUND_1] of LDT;
|
||||
statVariable1 { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
SessionDiagnosticsArray { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : Array[0.."SESSIONS_UPPERBOUND"] of "typeSessionDiagnostics";
|
||||
END_STRUCT;
|
||||
statNodeCount2 { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UInt := #NODES_COUNT_2;
|
||||
statNodeIds2 {InstructionName := 'OPC_UA_NodeId'; LibVersion := '1.0'; ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : Array[0..#NODES_UPPERBOUND_2] of OPC_UA_NodeId := [(1, #NODEID_SUFFIX, 1)];
|
||||
statNodeStatusList2 { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0..#NODES_UPPERBOUND_2] of DWord;
|
||||
statTimeStamps2 { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0..#NODES_UPPERBOUND_2] of LDT;
|
||||
statVariable2SessionDiagnostics { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
Value { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : "typeSessionDiagnostics";
|
||||
END_STRUCT;
|
||||
statVariable2ServiceCounter { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
Value { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : "typeServiceCounter";
|
||||
END_STRUCT;
|
||||
statVariable2UDInt { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
Value { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : UDInt;
|
||||
END_STRUCT;
|
||||
statVariable2LDT { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
Value { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : LDT;
|
||||
END_STRUCT;
|
||||
statVariable2LReal { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
Value { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : LReal;
|
||||
END_STRUCT;
|
||||
statVariable2Array05String { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
Value { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Array[0..5] of String;
|
||||
END_STRUCT;
|
||||
statVariable2String { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
Value { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : String;
|
||||
END_STRUCT;
|
||||
statVariable2ApplicationDescription { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
Value { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : "typeApplicationDescription";
|
||||
END_STRUCT;
|
||||
statVariable2OpcUaNodeId { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Struct
|
||||
Value {InstructionName := 'OPC_UA_NodeId'; LibVersion := '1.0'; ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : OPC_UA_NodeId;
|
||||
END_STRUCT;
|
||||
instOpcUaReadList1 {InstructionName := 'OPC_UA_ReadList'; LibVersion := '1.0'; ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : OPC_UA_ReadList;
|
||||
instOpcUaReadList2 {InstructionName := 'OPC_UA_ReadList'; LibVersion := '1.0'; ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : OPC_UA_ReadList;
|
||||
END_VAR
|
||||
|
||||
VAR_TEMP
|
||||
tempRead1Done : Bool;
|
||||
tempRead1Error : Bool;
|
||||
tempRead1Busy : Bool;
|
||||
tempRead1Status : DWord;
|
||||
tempRead2Done : Bool;
|
||||
tempRead2Error : Bool;
|
||||
tempRead2Busy : Bool;
|
||||
tempRead2Status : DWord;
|
||||
tempSessionCounter : DInt;
|
||||
tempStringFound : Int;
|
||||
END_VAR
|
||||
|
||||
VAR CONSTANT
|
||||
STATE_IDLE : USInt := 0;
|
||||
STATE_FINDSESSION_PRE : USInt := 10;
|
||||
STATE_FINDSESSION : USInt := 11;
|
||||
STATE_READSESSIONDIAGNOSTICS_PRE : USInt := 20;
|
||||
STATE_READSESSIONDIAGNOSTICS : USInt := 21;
|
||||
STATE_ERROR : USInt := 99;
|
||||
STATUS_GOOD : DWord := 16#00000000;
|
||||
STATUS_NODENOTEXISTING : DWord := 16#80340000;
|
||||
STATUS_NODATA : DWord := 16#80370000;
|
||||
STATUS_UNEXPECTEDTYPE : DWord := 16#82000000;
|
||||
STATUS_INCORRECTSTATE : DWord := 16#82010000;
|
||||
STATUS_NOSESSIONFOUND : DWord := 16#90010000;
|
||||
NODES_UPPERBOUND_1 : DInt := 0;
|
||||
NODES_COUNT_1 : UInt := 1;
|
||||
NODES_UPPERBOUND_2 : DInt := 0;
|
||||
NODES_COUNT_2 : UInt := 1;
|
||||
NODEID_PREFIX : WString := WSTRING#'Session_';
|
||||
NODEID_SUFFIX : WString := WSTRING#'SessionDiagnostics';
|
||||
NODEID_SEPERATOR : WString := WSTRING#'.';
|
||||
END_VAR
|
||||
|
||||
|
||||
BEGIN
|
||||
REGION Description header
|
||||
//==================================================================================
|
||||
// SIEMENS / (C) Copyright 2023
|
||||
//----------------------------------------------------------------------------------
|
||||
// Title: GetLastContact
|
||||
// Comment/Function: reads out the Server node data of the internal OPC UA server to retrieve the LastContactTime
|
||||
// Library/Family:
|
||||
// Author: SIEMENS SIMATIC Systems Support (SUP)
|
||||
// Target System:
|
||||
// Engineering: TIA Portal (>= V18)
|
||||
// Restrictions:
|
||||
// Requirements: FW 3.0 (1500)
|
||||
//----------------------------------------------------------------------------------
|
||||
// Change log table:
|
||||
// Version | Date | Expert in charge | Changes applied
|
||||
//-------------|------------|------------------|------------------------------------
|
||||
// 001.000.000 | 2023-02-13 | SUP SPH | First released version
|
||||
//==================================================================================
|
||||
END_REGION Description header
|
||||
|
||||
REGION OPC_UA_ReadList Instances
|
||||
|
||||
// 1 - Read SessionDiagnosticsArray
|
||||
#instOpcUaReadList1(REQ := #statREQ1,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount1,
|
||||
NodeHdls := #statNodeIds1,
|
||||
Done => #tempRead1Done,
|
||||
Busy => #tempRead1Busy,
|
||||
Error => #tempRead1Error,
|
||||
Status => #tempRead1Status,
|
||||
NodeStatusList := #statNodeStatusList1,
|
||||
TimeStamps := #statTimeStamps1,
|
||||
Variable := #statVariable1);
|
||||
|
||||
// 2 - Read SessionDiagnostics
|
||||
REGION #instOPC_UA_ReadList2
|
||||
|
||||
CASE TypeOf(#readValue) OF
|
||||
|
||||
typeSessionDiagnostics:
|
||||
//addressing SessionDiagnostiocs as a whole
|
||||
#instOpcUaReadList2(REQ := #statREQ2,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount2,
|
||||
NodeHdls := #statNodeIds2,
|
||||
Done => #tempRead2Done,
|
||||
Busy => #tempRead2Busy,
|
||||
Error => #tempRead2Error,
|
||||
Status => #tempRead2Status,
|
||||
NodeStatusList := #statNodeStatusList2,
|
||||
TimeStamps := #statTimeStamps2,
|
||||
Variable := #statVariable2SessionDiagnostics);
|
||||
|
||||
typeServiceCounter:
|
||||
//e.g. addressing SessionDiagnostics.ReadCount or .WriteCount
|
||||
#instOpcUaReadList2(REQ := #statREQ2,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount2,
|
||||
NodeHdls := #statNodeIds2,
|
||||
Done => #tempRead2Done,
|
||||
Busy => #tempRead2Busy,
|
||||
Error => #tempRead2Error,
|
||||
Status => #tempRead2Status,
|
||||
NodeStatusList := #statNodeStatusList2,
|
||||
TimeStamps := #statTimeStamps2,
|
||||
Variable := #statVariable2ServiceCounter);
|
||||
|
||||
UDInt:
|
||||
//e.g. addressing SessionDiagnostics.MaxResponseMessageSize
|
||||
#instOpcUaReadList2(REQ := #statREQ2,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount2,
|
||||
NodeHdls := #statNodeIds2,
|
||||
Done => #tempRead2Done,
|
||||
Busy => #tempRead2Busy,
|
||||
Error => #tempRead2Error,
|
||||
Status => #tempRead2Status,
|
||||
NodeStatusList := #statNodeStatusList2,
|
||||
TimeStamps := #statTimeStamps2,
|
||||
Variable := #statVariable2UDInt);
|
||||
|
||||
LDT:
|
||||
//e.g. addressing SessionDiagnostics.ClientConnectionTime or .ClientLastContactTime
|
||||
#instOpcUaReadList2(REQ := #statREQ2,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount2,
|
||||
NodeHdls := #statNodeIds2,
|
||||
Done => #tempRead2Done,
|
||||
Busy => #tempRead2Busy,
|
||||
Error => #tempRead2Error,
|
||||
Status => #tempRead2Status,
|
||||
NodeStatusList := #statNodeStatusList2,
|
||||
TimeStamps := #statTimeStamps2,
|
||||
Variable := #statVariable2LDT);
|
||||
|
||||
LReal:
|
||||
//e.g. addressing SessionDiagnostics.ActualSessionTimeout
|
||||
#instOpcUaReadList2(REQ := #statREQ2,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount2,
|
||||
NodeHdls := #statNodeIds2,
|
||||
Done => #tempRead2Done,
|
||||
Busy => #tempRead2Busy,
|
||||
Error => #tempRead2Error,
|
||||
Status => #tempRead2Status,
|
||||
NodeStatusList := #statNodeStatusList2,
|
||||
TimeStamps := #statTimeStamps2,
|
||||
Variable := #statVariable2LReal);
|
||||
|
||||
String:
|
||||
//e.g. addressing SessionDiagnostics.ServerUri or .EndpointUrl
|
||||
#instOpcUaReadList2(REQ := #statREQ2,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount2,
|
||||
NodeHdls := #statNodeIds2,
|
||||
Done => #tempRead2Done,
|
||||
Busy => #tempRead2Busy,
|
||||
Error => #tempRead2Error,
|
||||
Status => #tempRead2Status,
|
||||
NodeStatusList := #statNodeStatusList2,
|
||||
TimeStamps := #statTimeStamps2,
|
||||
Variable := #statVariable2String);
|
||||
|
||||
typeApplicationDescription:
|
||||
//e.g. addressing SessionDiagnostics.ClientDescription
|
||||
#instOpcUaReadList2(REQ := #statREQ2,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount2,
|
||||
NodeHdls := #statNodeIds2,
|
||||
Done => #tempRead2Done,
|
||||
Busy => #tempRead2Busy,
|
||||
Error => #tempRead2Error,
|
||||
Status => #tempRead2Status,
|
||||
NodeStatusList := #statNodeStatusList2,
|
||||
TimeStamps := #statTimeStamps2,
|
||||
Variable := #statVariable2ApplicationDescription);
|
||||
|
||||
OPC_UA_NodeId:
|
||||
//e.g. addressing SessionDiagnostics.SessionId
|
||||
#instOpcUaReadList2(REQ := #statREQ2,
|
||||
ConnectionHdl := #statConnectionHdl,
|
||||
NodeHdlCount := #statNodeCount2,
|
||||
NodeHdls := #statNodeIds2,
|
||||
Done => #tempRead2Done,
|
||||
Busy => #tempRead2Busy,
|
||||
Error => #tempRead2Error,
|
||||
Status => #tempRead2Status,
|
||||
NodeStatusList := #statNodeStatusList2,
|
||||
TimeStamps := #statTimeStamps2,
|
||||
Variable := #statVariable2OpcUaNodeId);
|
||||
ELSE
|
||||
#statStatus := #STATUS_UNEXPECTEDTYPE;
|
||||
#statState := #STATE_ERROR;
|
||||
END_CASE;
|
||||
END_REGION #instOPC_UA_ReadList2
|
||||
|
||||
END_REGION OPC_UA_ReadList Instances
|
||||
|
||||
REGION Check Trigger Input
|
||||
|
||||
IF (#statState <> #STATE_ERROR) THEN
|
||||
IF NOT #read AND NOT #enable THEN
|
||||
#statState := #STATE_IDLE;
|
||||
#statReadHandled := FALSE;
|
||||
ELSE
|
||||
IF #statReadHandled = FALSE THEN
|
||||
#statRead := TRUE;
|
||||
#statReadHandled := TRUE;
|
||||
END_IF;
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
END_REGION Check Trigger Input
|
||||
|
||||
REGION State Handling
|
||||
|
||||
CASE #statState OF
|
||||
|
||||
#STATE_IDLE: //idle mode, waiting for start command
|
||||
REGION #STATE_IDLE
|
||||
#statREQ2 := FALSE;
|
||||
|
||||
#statDone := FALSE;
|
||||
#statError := FALSE;
|
||||
#statStatus := #STATUS_GOOD;
|
||||
#statSessionsFound := 0;
|
||||
|
||||
IF (#statRead) THEN
|
||||
#statRead := FALSE;
|
||||
#statNodeIds2[0].Identifier := #NODEID_SUFFIX;
|
||||
#statBusy := TRUE;
|
||||
#statState := #STATE_FINDSESSION_PRE;
|
||||
ELSE
|
||||
#statBusy := FALSE;
|
||||
#statREQ1 := FALSE;
|
||||
END_IF;
|
||||
END_REGION #STATE_IDLE
|
||||
|
||||
#STATE_FINDSESSION_PRE: //prepare finding the required client session
|
||||
REGION #STATE_FINDSESSION_PRE
|
||||
#statREQ1 := TRUE;
|
||||
#statSessionsFound := 0;
|
||||
#statState := #STATE_FINDSESSION;
|
||||
END_REGION #STATE_FINDSESSION_PRE
|
||||
#STATE_FINDSESSION: //try to find required session name in current sessions
|
||||
REGION #STATE_FINDSESSION
|
||||
|
||||
//check if execution is finished
|
||||
IF #tempRead1Done OR #tempRead1Error THEN
|
||||
|
||||
//reset trigger flag
|
||||
#statREQ1 := FALSE;
|
||||
|
||||
//check if everything was successful
|
||||
IF #tempRead1Done AND NOT #tempRead1Error AND #statNodeStatusList1[0] = #STATUS_GOOD THEN
|
||||
|
||||
//Search specified client session substring in list of returned sessions
|
||||
FOR #tempSessionCounter := 0 TO "SESSIONS_UPPERBOUND" DO
|
||||
|
||||
IF (LEN(IN := #statVariable1.SessionDiagnosticsArray[#tempSessionCounter].sessionName) > 0) THEN
|
||||
|
||||
//find sessionNameSubstring in sessionName
|
||||
#tempStringFound := FIND(IN1 := #statVariable1.SessionDiagnosticsArray[#tempSessionCounter].sessionName, IN2 := #sessionNameSubstring);
|
||||
|
||||
IF #tempStringFound > 0 THEN
|
||||
|
||||
#statSessionsFound += 1;
|
||||
|
||||
//first best result is taken for later use
|
||||
IF (#statSessionsFound = 1) THEN
|
||||
#statSessionIdentifier := #statVariable1.SessionDiagnosticsArray[#tempSessionCounter].sessionId.Identifier;
|
||||
END_IF;
|
||||
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
END_FOR;
|
||||
|
||||
//no matching session name was found
|
||||
IF NOT (#statSessionsFound > 0) THEN
|
||||
#statStatus := #STATUS_NOSESSIONFOUND;
|
||||
END_IF;
|
||||
|
||||
ELSIF #tempRead1Error THEN//error occurred
|
||||
#statStatus := #tempRead1Status;
|
||||
ELSIF #statNodeStatusList1[0] = #STATUS_NODATA THEN//read delivered no data
|
||||
#statStatus := #STATUS_NODATA;
|
||||
ELSIF #statNodeStatusList1[0] <> #STATUS_GOOD THEN//read returned bad node status
|
||||
#statStatus := #statNodeStatusList1[0];
|
||||
END_IF;
|
||||
|
||||
//if the required session was found go to next state
|
||||
IF (#statSessionsFound > 0) THEN
|
||||
#statState := #STATE_READSESSIONDIAGNOSTICS_PRE;
|
||||
ELSE
|
||||
IF (#enable) THEN //try to find session repeatedly
|
||||
#statState := #STATE_FINDSESSION_PRE;
|
||||
ELSE //go to idle mode because only a single read was requested
|
||||
#statState := #STATE_IDLE;
|
||||
#statError := TRUE;
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
END_IF;
|
||||
END_REGION #STATE_FINDSESSION
|
||||
|
||||
#STATE_READSESSIONDIAGNOSTICS_PRE: //prepare reading the SessionDiagnostics or a subelement
|
||||
REGION #STATE_READSESSIONDIAGNOSTICS_PRE
|
||||
|
||||
//Build session-specific NodeId of SessionDiagnostics node
|
||||
#statNodeIds2[0].Identifier := CONCAT_WSTRING(IN1 := #NODEID_PREFIX, IN2 := #statSessionIdentifier, IN3 := WSTRING#'.', IN4 := #NODEID_SUFFIX);
|
||||
|
||||
//if a subelement is to be addressed, extend the NodeId
|
||||
IF (LEN(#nodeIdExtension) > 0) THEN
|
||||
//check whether NodeId extension was already given with a '.'
|
||||
IF (FIND(IN1 := #nodeIdExtension, IN2 := #NODEID_SEPERATOR) = 1) THEN
|
||||
#statNodeIds2[0].Identifier := CONCAT_WSTRING(IN1 := #statNodeIds2[0].Identifier, IN2 := #nodeIdExtension);
|
||||
ELSE
|
||||
#statNodeIds2[0].Identifier := CONCAT_WSTRING(IN1 := #statNodeIds2[0].Identifier, IN2 := #NODEID_SEPERATOR, IN3 := #nodeIdExtension);
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
#statREQ2 := TRUE;
|
||||
#statDone := FALSE;
|
||||
#statState := #STATE_READSESSIONDIAGNOSTICS;
|
||||
END_REGION #STATE_READSESSIONDIAGNOSTICS_PRE
|
||||
#STATE_READSESSIONDIAGNOSTICS: //read SessionDiagnostics or a subelement
|
||||
REGION #STATE_READSESSIONDIAGNOSTICS
|
||||
|
||||
//check if execution is finished
|
||||
IF #tempRead2Done OR #tempRead2Error THEN
|
||||
|
||||
//reset trigger flag
|
||||
#statREQ2 := FALSE;
|
||||
|
||||
//check if everything was successful
|
||||
IF #tempRead2Done AND NOT #tempRead2Error AND #statNodeStatusList2[0] = #STATUS_GOOD THEN
|
||||
|
||||
#statDone := TRUE;
|
||||
|
||||
IF #enable THEN
|
||||
#statState := #STATE_READSESSIONDIAGNOSTICS_PRE; //read values repeatedly
|
||||
ELSE
|
||||
#statState := #STATE_IDLE; //go to idle mode because only a single read was requested
|
||||
END_IF;
|
||||
|
||||
ELSE
|
||||
IF #statNodeStatusList2[0] = #STATUS_NODENOTEXISTING THEN //session specific node is not existing
|
||||
#statStatus := #STATUS_NODENOTEXISTING;
|
||||
|
||||
IF #enable THEN
|
||||
#statState := #STATE_FINDSESSION_PRE; //go back to finding the session again
|
||||
ELSE
|
||||
#statError := TRUE;
|
||||
#statState := #STATE_IDLE; //go to idle mode because only a single read was requested
|
||||
END_IF;
|
||||
ELSIF #statNodeStatusList2[0] <> #STATUS_GOOD THEN//read returned bad node status
|
||||
#statStatus := #statNodeStatusList2[0];
|
||||
|
||||
IF #enable THEN
|
||||
#statState := #STATE_READSESSIONDIAGNOSTICS_PRE; //try reading the node again
|
||||
ELSE
|
||||
#statError := TRUE;
|
||||
#statState := #STATE_IDLE; //go to idle mode because only a single read was requested
|
||||
END_IF;
|
||||
ELSE//read instruction returned any unexpected status
|
||||
#statStatus := #tempRead2Status;
|
||||
|
||||
IF #enable THEN
|
||||
#statState := #STATE_READSESSIONDIAGNOSTICS_PRE; //try read again
|
||||
ELSE
|
||||
#statError := TRUE;
|
||||
#statState := #STATE_IDLE; //go to idle mode because only a single read was requested
|
||||
END_IF;
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
END_IF;
|
||||
|
||||
END_REGION #STATE_READSESSIONDIAGNOSTICS
|
||||
|
||||
#STATE_ERROR: //something is configured incorrectly. no further execution any more
|
||||
REGION #STATE_ERROR
|
||||
#statError := TRUE;
|
||||
#statBusy := FALSE;
|
||||
#statDone := FALSE;
|
||||
END_REGION #STATE_ERROR
|
||||
|
||||
ELSE //should never come here
|
||||
#statStatus := #STATUS_INCORRECTSTATE;
|
||||
#statState := #STATE_ERROR;
|
||||
|
||||
END_CASE;
|
||||
END_REGION State Handling
|
||||
|
||||
REGION Set Output
|
||||
IF (#statDone AND #statState <> #STATE_ERROR) THEN
|
||||
|
||||
//pass the matching read value back to the InOut Variant readValue
|
||||
CASE TypeOf(#readValue) OF
|
||||
typeSessionDiagnostics:
|
||||
VariantPut(SRC := #statVariable2SessionDiagnostics.Value,
|
||||
DST := #readValue);
|
||||
typeServiceCounter:
|
||||
VariantPut(SRC := #statVariable2ServiceCounter.Value,
|
||||
DST := #readValue);
|
||||
UDInt:
|
||||
VariantPut(SRC := #statVariable2UDInt.Value,
|
||||
DST := #readValue);
|
||||
LDT:
|
||||
VariantPut(SRC := #statVariable2LDT.Value,
|
||||
DST := #readValue);
|
||||
LReal:
|
||||
VariantPut(SRC := #statVariable2LReal.Value,
|
||||
DST := #readValue);
|
||||
String:
|
||||
VariantPut(SRC := #statVariable2String.Value,
|
||||
DST := #readValue);
|
||||
typeApplicationDescription:
|
||||
VariantPut(SRC := #statVariable2ApplicationDescription.Value,
|
||||
DST := #readValue);
|
||||
OPC_UA_NodeId:
|
||||
VariantPut(SRC := #statVariable2OpcUaNodeId.Value,
|
||||
DST := #readValue);
|
||||
ELSE
|
||||
#statStatus := #STATUS_UNEXPECTEDTYPE;
|
||||
#statState := #STATE_ERROR;
|
||||
END_CASE;
|
||||
END_IF;
|
||||
|
||||
//set output signals
|
||||
#sessionsFound := #statSessionsFound;
|
||||
#error := #statError;
|
||||
#status := #statStatus;
|
||||
#busy := #statBusy;
|
||||
#done := #statDone;
|
||||
END_REGION Set Output
|
||||
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
+143
@@ -0,0 +1,143 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.GlobalDB ID="0">
|
||||
<AttributeList>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Static">
|
||||
<Member Name="sessionNameSubstring" Datatype="String">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">substring of the client session name, e.g. "UaExpert"</MultiLanguageText>
|
||||
</Comment>
|
||||
<StartValue>'d58bc88f-f367-40de-90fd-257d73ba586e'</StartValue>
|
||||
</Member>
|
||||
<Member Name="read" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">trigger execution as single read</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="done" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">execution is finished</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="busy" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">execution is running</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="error" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">error ocurred during execution</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="status" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">execution status</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="sessionsFound" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Comment>
|
||||
<MultiLanguageText Lang="en-US">number of sessions found</MultiLanguageText>
|
||||
</Comment>
|
||||
</Member>
|
||||
<Member Name="sessionDiagnostics" Datatype=""typeSessionDiagnostics"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections></Interface>
|
||||
<MemoryLayout>Optimized</MemoryLayout>
|
||||
<MemoryReserve>100</MemoryReserve>
|
||||
<Name>SessionDiagnostics</Name>
|
||||
<Namespace />
|
||||
<Number>81</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.GlobalDB>
|
||||
</Document>
|
||||
+74
@@ -0,0 +1,74 @@
|
||||
FUNCTION_BLOCK "CheckForTimeOut"
|
||||
{ S7_Optimized_Access := 'TRUE' }
|
||||
VERSION : 0.1
|
||||
VAR_INPUT
|
||||
lastContactTime { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : LDT;
|
||||
timeOut { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : LTime;
|
||||
enable { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
isTimedOut { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : Bool;
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
statCurrentTime { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : LDT;
|
||||
statTimeDiff { ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'} : LTime;
|
||||
instProgramAlarm {InstructionName := 'Program_Alarm'; LibVersion := '1.0'; ExternalAccessible := 'False'; ExternalVisible := 'False'; ExternalWritable := 'False'; S7_SetPoint := 'False'} : Program_Alarm;
|
||||
END_VAR
|
||||
|
||||
VAR_TEMP
|
||||
tempRetValueSysTime : Int;
|
||||
tempIsTimedOut : Bool;
|
||||
END_VAR
|
||||
|
||||
|
||||
BEGIN
|
||||
REGION Description header
|
||||
//==================================================================================
|
||||
// SIEMENS / (C) Copyright 2023
|
||||
//----------------------------------------------------------------------------------
|
||||
// Title: CheckForTimeOut
|
||||
// Comment/Function: compares LastContactTime to a timeOut
|
||||
// Library/Family:
|
||||
// Author: SIEMENS SIMATIC Systems Support (SUP)
|
||||
// Target System:
|
||||
// Engineering:
|
||||
// Restrictions:
|
||||
// Requirements:
|
||||
//----------------------------------------------------------------------------------
|
||||
// Change log table:
|
||||
// Version | Date | Expert in charge | Changes applied
|
||||
//-------------|------------|------------------|------------------------------------
|
||||
// 001.000.000 | 2023-02-13 | SUP SPH | First released version
|
||||
//==================================================================================
|
||||
END_REGION Description header
|
||||
|
||||
IF #enable THEN
|
||||
|
||||
REGION Check Timeout
|
||||
//Read system time
|
||||
#tempRetValueSysTime := RD_SYS_T(#statCurrentTime);
|
||||
|
||||
//calculate time difference
|
||||
#statTimeDiff := T_DIFF(IN1 := #statCurrentTime, IN2 := #lastContactTime);
|
||||
|
||||
//compare time difference to timeOut
|
||||
IF #statTimeDiff > #timeOut THEN
|
||||
#tempIsTimedOut := TRUE;
|
||||
ELSE
|
||||
#tempIsTimedOut := FALSE;
|
||||
END_IF;
|
||||
//fire program alarm
|
||||
#instProgramAlarm(SIG := false);//#tempIsTimedOut);
|
||||
END_REGION Check Timeout
|
||||
|
||||
ELSE
|
||||
#tempIsTimedOut := FALSE;
|
||||
END_IF;
|
||||
|
||||
REGION Write Output
|
||||
#isTimedOut := #tempIsTimedOut;
|
||||
END_REGION Write Output
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
+113
@@ -0,0 +1,113 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.GlobalDB ID="0">
|
||||
<AttributeList>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Static">
|
||||
<Member Name="sessionNameSubstring" Datatype="String">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<StartValue>'d58bc88f-f367-40de-90fd-257d73ba586e'</StartValue>
|
||||
</Member>
|
||||
<Member Name="enable" Datatype="Bool">
|
||||
<StartValue>true</StartValue>
|
||||
</Member>
|
||||
<Member Name="done" Datatype="Bool" />
|
||||
<Member Name="busy" Datatype="Bool" />
|
||||
<Member Name="error" Datatype="Bool" />
|
||||
<Member Name="status" Datatype="DWord" />
|
||||
<Member Name="lastContactTimeString" Datatype="WString">
|
||||
<StartValue>WSTRING#'ClientLastContactTime'</StartValue>
|
||||
</Member>
|
||||
<Member Name="lastContactTime" Datatype="LDT" />
|
||||
<Member Name="timeOut" Datatype="LTime">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<StartValue>LT#10s</StartValue>
|
||||
</Member>
|
||||
<Member Name="isTimedOut" Datatype="Bool" />
|
||||
<Member Name="tOn_CycUpd_ServerDiag" Datatype="TON_TIME" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="tOn_RestartEnable" Datatype="TON_TIME" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="tOnHandling" Datatype="TON_TIME" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="nState" Datatype="Int">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="xCycTrig" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections></Interface>
|
||||
<MemoryLayout>Optimized</MemoryLayout>
|
||||
<MemoryReserve>100</MemoryReserve>
|
||||
<Name>ClientStatus</Name>
|
||||
<Namespace />
|
||||
<Number>83</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.GlobalDB>
|
||||
</Document>
|
||||
+118
@@ -0,0 +1,118 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.InstanceDB ID="0">
|
||||
<AttributeList>
|
||||
<InstanceOfName>CheckForTimeOut</InstanceOfName>
|
||||
<InstanceOfType>FB</InstanceOfType>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Input">
|
||||
<Member Name="lastContactTime" Datatype="LDT">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="timeOut" Datatype="LTime">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="enable" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
<Section Name="Output">
|
||||
<Member Name="isTimedOut" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
<Section Name="InOut" />
|
||||
<Section Name="Static">
|
||||
<Member Name="statCurrentTime" Datatype="LDT">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statTimeDiff" Datatype="LTime">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="instProgramAlarm" Datatype="Program_Alarm" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections></Interface>
|
||||
<Name>InstCheckForTimeOut</Name>
|
||||
<Namespace />
|
||||
<Number>84</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.InstanceDB>
|
||||
</Document>
|
||||
+368
@@ -0,0 +1,368 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.InstanceDB ID="0">
|
||||
<AttributeList>
|
||||
<InstanceOfName>ReadSessionDiagnostics</InstanceOfName>
|
||||
<InstanceOfType>FB</InstanceOfType>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Input">
|
||||
<Member Name="sessionNameSubstring" Datatype="String">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="nodeIdExtension" Datatype="WString">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="read" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="enable" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
<Section Name="Output">
|
||||
<Member Name="done" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="busy" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="error" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="status" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="sessionsFound" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
<Section Name="InOut">
|
||||
<Member Name="readValue" Datatype="Variant" />
|
||||
</Section>
|
||||
<Section Name="Static">
|
||||
<Member Name="statRead" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statReadHandled" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statREQ1" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statREQ2" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statSessionsFound" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statSessionIdentifier" Datatype="WString">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statState" Datatype="USInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statDone" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statError" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statStatus" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statBusy" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statConnectionHdl" Datatype="DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeCount1" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeIds1" Datatype="Array[0..0] of OPC_UA_NodeId" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeStatusList1" Datatype="Array[0..0] of DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statTimeStamps1" Datatype="Array[0..0] of LDT">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statVariable1" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="SessionDiagnosticsArray" Datatype="Array[0.."SESSIONS_UPPERBOUND"] of "typeSessionDiagnostics"" />
|
||||
</Member>
|
||||
<Member Name="statNodeCount2" Datatype="UInt">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeIds2" Datatype="Array[0..0] of OPC_UA_NodeId" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statNodeStatusList2" Datatype="Array[0..0] of DWord">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statTimeStamps2" Datatype="Array[0..0] of LDT">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="statVariable2SessionDiagnostics" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype=""typeSessionDiagnostics"" />
|
||||
</Member>
|
||||
<Member Name="statVariable2ServiceCounter" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype=""typeServiceCounter"" />
|
||||
</Member>
|
||||
<Member Name="statVariable2UDInt" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="UDInt" />
|
||||
</Member>
|
||||
<Member Name="statVariable2LDT" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="LDT" />
|
||||
</Member>
|
||||
<Member Name="statVariable2LReal" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="LReal" />
|
||||
</Member>
|
||||
<Member Name="statVariable2Array05String" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="Array[0..5] of String" />
|
||||
</Member>
|
||||
<Member Name="statVariable2String" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="String" />
|
||||
</Member>
|
||||
<Member Name="statVariable2ApplicationDescription" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype=""typeApplicationDescription"" />
|
||||
</Member>
|
||||
<Member Name="statVariable2OpcUaNodeId" Datatype="Struct">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
<Member Name="Value" Datatype="OPC_UA_NodeId" Version="1.0" />
|
||||
</Member>
|
||||
<Member Name="instOpcUaReadList1" Datatype="OPC_UA_ReadList" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="instOpcUaReadList2" Datatype="OPC_UA_ReadList" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="ExternalAccessible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalVisible" SystemDefined="true">false</BooleanAttribute>
|
||||
<BooleanAttribute Name="ExternalWritable" SystemDefined="true">false</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections></Interface>
|
||||
<Name>InstReadSessionDiagnostics.ClientLastContactTime</Name>
|
||||
<Namespace />
|
||||
<Number>82</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.InstanceDB>
|
||||
</Document>
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user