TCP/IP Receive
Empfangen von Daten von einem Remote-Host über TCP/IP-Netzwerke
Bibliotheken:
Simulink Support Package for LEGO MINDSTORMS EV3 Hardware
Simulink Coder Support Package for BeagleBone Blue Hardware /
Communication
Simulink Support Package for Android Devices /
Communication
Simulink Support Package for Raspberry Pi Hardware /
Network
Simulink Support Package for Android Devices /
Communication
Simulink Coder Support Package for BeagleBone Blue Hardware /
Communication
Simulink Support Package for LEGO MINDSTORMS EV3 Hardware
Simulink Support Package for Raspberry Pi Hardware /
Network
Simulink Support Package for Raspberry Pi Hardware /
Network
Simulink Coder Support Package for BeagleBone Blue Hardware /
Communication
Simulink Support Package for Android Devices /
Communication
Simulink Support Package for LEGO MINDSTORMS EV3 Hardware
Simulink Coder Support Package for BeagleBone Blue Hardware /
Communication
Simulink Support Package for Android Devices /
Communication
Simulink Support Package for LEGO MINDSTORMS EV3 Hardware
Simulink Support Package for Raspberry Pi Hardware /
Network
Beschreibung
Sie können Daten von einem Remote-Host oder anderer Ziel-Hardware über ein Netzwerk empfangen. Wenn Sie den Verbindungmodus auf „Server“ setzen, müssen Sie den lokalen Port angeben. Der lokale Port fungiert als Listening-Port des TCP/IP-Servers. Wenn Sie den Block als Client festlegen, müssen Sie die Remote-Adresse und den Remote-Port des TCP/IP-Servers festlegen, um Daten zu empfangen. Der Block akzeptiert Daten entweder im Blocking-Modus oder im Non-Blocking-Modus. Die Ausgabe des Data-Ports enthält die in jedem Zeitschritt angeforderten Daten. Der Status-Port enthält 0 oder 1 und gibt an, ob die neuen Daten im angegebenen Zeitschritt empfangen wurden. Ein Statusport-Wert von 1 gibt an, dass die Daten vom Data-Port gültig sind.
Im Blocking-Modus blockiert das Modell die Ausführung, während es auf die Verfügbarkeit der angeforderten Daten wartet.
In Zeitschritt 1 fordert der Block vier Datenwerte an und der TCP/IP-Buffer empfängt vier Datenwerte. Die Ausführung läuft.
In Zeitschritt 2 fordert der Block erneut Daten an, der TCP/IP-Buffer empfängt jedoch nur drei Datenwerte. Die Ausführung wird pausiert, bis der Buffer den vierten Datenwert empfängt oder der Timeout-Wert abläuft. Daraufhin wird die Ausführung fortgesetzt.
In Zeitschritt 3 fordert der Block Daten an und der Buffer empfängt fünf Datenwerte. Der Block gibt die ersten vier Datenwerte aus, der verbleibende Datenwert wird im nächsten Empfangszyklus verwendet.
Im Non-Blocking-Modus läuft das Modell kontinuierlich.
In Zeitschritt 1 fordert der Block Daten an und der Buffer empfängt vier Datenwerte. Der Block ändert den Wert des Status-Ports auf 0 und gibt so an, dass neue angeforderte Daten vorliegen. Der Data-Port enthält zu diesem Zeitpunkt die eben empfangenen Datenwerte. Der Block setzt den Wert des Data-Ports auf 0 zurück.
In Zeitschritt 2 fordert der Block erneut Daten an, der Buffer empfängt jedoch nur drei Werte. Der Block kann keinen Wert 3 ausgeben, da die Datengröße auf 4 festgelegt ist. Der Block ändert den Wert des Status-Ports auf 1 und gibt so an, dass keine neuen Daten vorliegen. Alle Werte des Data-Ports werden auf 0 geändert. Der Buffer weist zu diesem Zeitpunkt drei Datenwerte auf. In dieser Phase stoppt die Ausführung jedoch im Gegensatz zur Ausführung im Blocking-Mode nicht.
In Zeitschritt 3 weist der Buffer fünf Datenwerte auf, und der Block gibt die ersten vier Datenwerte in Empfangsreihenfolge aus und ändert den Wert des Status-Ports auf 0. Der verbleibende Datenwert wird im nächsten Empfangszyklus verwendet.