| 7 | | '''1.Lösungsteil:''' |
| 8 | | - Erhöhung der Timeoutzeit in 'recvtimo()' von 5 Sek. auf 6 Sek. |
| | 7 | '''Lösung:''' |
| | 8 | - Erhöhung der Timeoutzeit in 'recvtimo()' von 5 Sek. auf 10 Sek. |
| | 9 | - Wenn in 'recvtimo()' ein Timeout entsteht wird ein !DummyRead gemacht, kurz gewartet und das Receive wird wiederholt. Falls ein zweites Timeout kommt, wird wieder ein !DummyRead gemacht, kurz gewartet und das Receive erneut wiederholt. Beim dritten Timeout hintereinander wird der !ModbusMaster-Socket geschlossen/geöffnet. recvtimo-Timeout-Meldung: "Receive Header Fehler: Operation timed out". |
| | 10 | - Wenn in 'Receive()' erkannt wird, dass sich !Frage/Antwort "überholt" haben, dann wird hier genau gleich, wie oben für 'recvtimo()'-Timeout beschrieben, vorgegangen. "Überholt"-Meldung: "TId Soll: x, TId Empfangen: y". |