-> Hier kostenlos registrieren
Ich bin nicht der Experte was AG_SEND angeht.
Ich habe aber eine Anlage wo das funktioniert. Vielelicht hilft das weiter?Anhang anzeigen 35376Anhang anzeigen 35377
So wie du das im Netzwerk 2 hast, hab ich das auch schon versucht in SCL zu bauen. Allerdings verschickt er dann gar nichts mehr.
Im Moment hab ich meinen Code so umgebaut, leider auch nicht wirklich zufriedenstellend.
Code:
IF CONNECT AND NOT SEND_BUSY_EXT THEN SEND_BUSY := TRUE;
END_IF;
PulsePosCon := SEND_BUSY AND NOT EdgeFlagPosCon;
EdgeFlagPosCon := SEND_BUSY;
SEND_REPEAT_TON (IN:= SEND_BUSY AND NOT SEND_REPEAT_TON.Q, PT:= T#1S);
PulsePosREPEAT := SEND_REPEAT_TON.Q AND NOT EdgeFlagPosREPEAT;
EdgeFlagPosREPEAT := SEND_REPEAT_TON.Q;
AG_SEND(ACT := PulsePosCon OR (SEND_BUSY AND PulsePosREPEAT) // IN: BOOL
,ID := WORD_TO_INT(ID) // IN: INT
,LADDR := LADDR // IN: WORD
,SEND := TempPointerSend // IN: ANY
,LEN := LEN (SENDE_STRING) // IN: INT
,DONE := SEND_DONE // OUT: BOOL
,ERROR := SEND_ERROR // OUT: BOOL
,STATUS := SEND_STATUS // OUT: WORD
); // VOID
IF SEND_DONE THEN
CONNECT := FALSE;
SEND_BUSY := FALSE;
END_IF;