TCP/UDP RT TcCom Parameter
Neben den Interfaces ist das TcCOM Objekt „TCP/UDP RT“ die wesentliche Komponente der Function. Eine Instanziierung wird normalerweise unterhalb des Devices vorgenommen:
Durch einen Doppelklick wird die Instanz geöffnet und die Parameter, die im Folgenden dokumentiert sind, können genutzt werden:

Name | Default-Wert | Beschreibung |
---|---|---|
TcIoIpSettings.IpAddress | 0.0.0.0 | Eigene (lokale) IP-Adresse, die zur Kommunikation genutzt wird. |
TcIoIpSettings.SubnetMask | 0.0.0.0 | Eigene Subnetzmaske |
TcIoIpSettings.Gateway | 0.0.0.0 | Gateway, welches genutzt wird, um Kommunikationspartner außerhalb des eigenen Netzes zu erreichen. |
TcIoIpSettings.DhcpEnable | FALSE | Noch nicht implementiert. |
TcIoIpSettings.ManualSettings | FALSE | Auf FALSE gesetzt: Es wird die aktuelle IP-Konfiguration des referenzierten Adapters vom Betriebssystem verwendet. Auf TRUE gesetzt: Parameter von TcIoIpSettings* werden genutzt. |
IpMaxReceivers | 4 | Max. Anzahl der maximal erlaubten IP-basierenden Protokolle. |
IpMaxPendingOnArp | 40 | Max. Anzahl der Einträge in der ARP Request Table. |
IpMacCacheSize | 64 | Anzahl der Einträge in MAC-Cache, also der Zuordnungen IP Adresse zu MAC Adresse. Caching ist implementiert als LRU. |
IpMTU | 1514 | Noch nicht implementiert. (Maximum Transport Unit Größe für IP Pakete) |
IpRecvFrameQueueSize | 255 | Anzahl der Einträge in der Queue zum Empfang von Udp Paketen. |
UdpMaxReceivers | 4 | Max. Anzahl der UDP-Empfänger |
UdpMTU | 1514 | Ab TwinCAT 3.1 Build 4026: In früheren Versionen (<= Build 4024) ist dieser Parameter ohne Funktion |
UdpCheckCrc | TRUE | Auf TRUE gesetzt bedeutet, dass UDP Pakete mit falscher Checksum verworfen werden. |
TTL | 0x80 | TTL im IP-Header der zu versendenden Frames. |
MultiCastTTL | 0x01 | TTL der zu sendenden MultiCast Frames. |
PassiveMode | FALSE | Bei TRUE werden durch diese Instanz keine Frames vom RT-Netzwerkadapter Frames abgeholt. Siehe Multitask Zugriff auf eine Netzwerkkarte |
MulticastIpList | [] | Multicast-Adressen zum Empfang von MultiCast Paketen. |
TcpMTU | 1514 | Noch nicht implementiert. (Maximum Transport Unit Größe für TCP) |
TcpCheckCrc | TRUE | Eingehende TCP-Frames werden auf gültige Checksumme überprüft und ggf. verworfen. |
TcpMaxSocketCount | 32 | Max. Anzahl von Sockets, die von dem IP Stack verwaltet werden. |
TcpReceiveBufferSize | 16192 | Anzahl empfangener Bytes die bei einer TCP-Verbindung zwischengespeichert werden können. |
TcpTransmitBufferSize | 16192 | Anzahl zu sendender Bytes die bei einer Verbindung im TCP-Stack zwischengespeichert werden können. |
TcpMaxRetry | 5 | Anzahl der Wiederholungen von TCP-Paketen bis die Verbindung beendet wird. |
TcpTimeoutCon | 5000 | Timeout für TCP Verbindungsaufbau und -abbau. |
TcpTimeoutWait | 60000 | Zeitspanne, wie lange Handles intern gehalten werden nach einem unerwarteten Abbruch der Verbindung. |
TcpTimeoutIdle | 1000 | Zeitspanne bis zum Callback (ReveiveEvent), wenn keine Antwort erfolgt. |
TcpRoundTripTime | 3000 | Startwert für den Timeout von Datenpaketen. Wird dynamisch nach Verbindungsqualität angepasst (je nach Paketumlaufzeit). |
Zeiten sind in Millisekunden angegeben.