125 lines
5.7 KiB
Plaintext
125 lines
5.7 KiB
Plaintext
FUNCTION_BLOCK "TestBaustein"
|
|
{ S7_Optimized_Access := 'TRUE' }
|
|
VERSION : 0.1
|
|
VAR
|
|
retVal : Bool;
|
|
retValStat : Bool;
|
|
"String" : String;
|
|
ArrayByte : Array[1..254] of Byte;
|
|
cnt : UInt;
|
|
myBuffer : Array[0..10] of Byte;
|
|
trig : Bool;
|
|
trigger {InstructionName := 'R_TRIG'; LibVersion := '1.0'} : R_TRIG;
|
|
arRohDaten : Array[0..1000] of Byte;
|
|
sNewTelegram : WString[16382];
|
|
END_VAR
|
|
|
|
VAR_TEMP
|
|
des : Int;
|
|
"var" : DInt;
|
|
retVal_1 : Bool;
|
|
temp : "UDT_TelegramDefinition";
|
|
END_VAR
|
|
|
|
|
|
BEGIN
|
|
(* (* "R_TRIG_DB"(CLK := "TestVariables".Append);
|
|
"R_TRIG_DB_1"(CLK:="TestVariables".xClear);
|
|
|
|
|
|
IF "R_TRIG_DB".Q THEN
|
|
#retVal_1:= "FC_TeleSetData"(nDataField := "TestVariables".nDataField,
|
|
sData := "TestVariables".nString,
|
|
stInOutTelegram := "TestVariables".TelegramToSend);
|
|
END_IF;
|
|
|
|
IF "R_TRIG_DB_1".Q THEN
|
|
"FC_TeleClear"("TestVariables".TelegramToSend);
|
|
END_IF;
|
|
|
|
|
|
REGION TeleHandler Test - SSI Schäfer MyTheresa
|
|
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.InterfaceId := 64; //TIA V17: Alle Variablen --> Systemkonstanten -> entsprechendes Hw_Interface
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.ID := 1; // connection reference ID, beliebig innerhalb der Grenzwerte
|
|
#fbTeleHandler_Test.stInTcpParameters.xInAdhocMode := TRUE; // TRUE = Variable Länge der Empfangsdaten aktiviert, FALSE = Feste Länge
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.LocalPort := 4424; // Muss übereinstimmen im Server (Absprache Kommunikationspartner
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemotePort := 0; // Auf 0 lassen!
|
|
|
|
// Statische IP-Addresse des Partner-Port (PC):
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemoteAddress.ADDR[1] := 192;
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemoteAddress.ADDR[2] := 168;
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemoteAddress.ADDR[3] := 178;
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemoteAddress.ADDR[4] := 224;
|
|
|
|
|
|
#fbTeleHandler_Test.stInTelegramDefinition.sStartMarker := '$02';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.sEndMarker := '$03';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.sStartMarkerSend := '$02';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.sEndMarkerSend := '$03';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.bSeparatorByte := ',';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.nLength := 0;
|
|
#fbTeleHandler_Test.stInTelegramDefinition.nTelegramIDDataField := 0;
|
|
#fbTeleHandler_Test.stInTelegramDefinition.xTelegramIDIsNumber := FALSE;
|
|
|
|
#fbTeleHandler_Test(xInGetFirst:="TestVariables".xGetFirstTelegram,
|
|
xInReset:="TestVariables".xResetTeleHandler,
|
|
xInOutSendTele:="TestVariables".xSendTelegram,
|
|
stInTelegramSend:="TestVariables".TelegramToSend,
|
|
xOutNewTelegram => "TestVariables".FirstTelegram);
|
|
END_REGION *)
|
|
|
|
#trigger(CLK :="TestVariables".Append);
|
|
|
|
IF #trigger.Q THEN
|
|
#retVal_1 := "FC_TeleSetData"(nDataField := "TestVariables".nDataField,
|
|
sData := "TestVariables".nString,
|
|
stInOutTelegram := "TestVariables".TelegramToSend);
|
|
END_IF;
|
|
|
|
IF "TestVariables".xAddDataField THEN
|
|
"TestVariables".xAddDataField := FALSE;
|
|
#retVal_1 := "FC_TeleAddDataField"(sData := "TestVariables".nString,
|
|
stInOutTelegram := "TestVariables".TelegramToSend);
|
|
END_IF;
|
|
|
|
IF "TestVariables".xClear THEN
|
|
"TestVariables".xClear := FALSE;
|
|
"FC_TeleClear"("TestVariables".TelegramToSend);
|
|
END_IF;
|
|
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.InterfaceId := 64; //TIA V17: Alle Variablen --> Systemkonstanten -> entsprechendes Hw_Interface
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.ID := 1; // connection reference ID, beliebig innerhalb der Grenzwerte
|
|
#fbTeleHandler_Test.stInTcpParameters.xInAdhocMode := TRUE; // TRUE = Variable Länge der Empfangsdaten aktiviert, FALSE = Feste Länge
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.LocalPort := 4424; // Muss übereinstimmen im Server (Absprache Kommunikationspartner
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemotePort := 0; // Auf 0 lassen!
|
|
|
|
// Statische IP-Addresse des Partner-Port (PC):
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemoteAddress.ADDR[1] := 192;
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemoteAddress.ADDR[2] := 168;
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemoteAddress.ADDR[3] := 0;
|
|
#fbTeleHandler_Test.stInTcpParameters.tcpConnParam.RemoteAddress.ADDR[4] := 166;
|
|
|
|
// Telegramdefinition
|
|
#fbTeleHandler_Test.stInTelegramDefinition.sStartMarker := '$02';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.sEndMarker := '$03';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.sStartMarkerSend := '$02';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.sEndMarkerSend := '$03';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.bSeparatorByte := ',';
|
|
#fbTeleHandler_Test.stInTelegramDefinition.nLength := 0;
|
|
#fbTeleHandler_Test.stInTelegramDefinition.nTelegramIDDataField := 0;
|
|
#fbTeleHandler_Test.stInTelegramDefinition.xTelegramIDIsNumber := FALSE;
|
|
|
|
|
|
#fbTeleHandler_Test(xInGetFirst := "TestVariables".xGetFirstTelegram,
|
|
xInReset := "TestVariables".xResetTeleHandler,
|
|
xInOutSendTele := "TestVariables".xSendTelegram,
|
|
stInTelegramSend := "TestVariables".TelegramToSend,
|
|
xOutNewTelegram => "TestVariables".FirstTelegram);
|
|
|
|
|
|
|
|
*)
|
|
END_FUNCTION_BLOCK
|
|
|