Main Content

UDP Send

Send UDP message

  • UDP Send block

Libraries:
DSP System Toolbox / Sinks

Description

The UDP Send block sends data packets over the network using the User Datagram Protocol (UDP). UDP is a simple message-based connectionless protocol and does not have an end-to-end connection. The protocol sends data packets in one direction from source to destination without verifying the readiness of the receiver. The protocol has no handshaking mechanism. The data packets can get dropped for several reasons. There is no acknowledgement, retransmission, or timeout in UDP. However, UDP is a very simple transmission protocol and is suitable for time-sensitive applications where dropping packets is preferable to waiting for packets delayed due to retransmission.

The UDP Send block transmits an input data vector as a UDP packet to a remote IP network port. The remote IP port number to which the block sends the UDP packets is tunable in the generated code.

Some Simulink® blocks and .exe files built from models that contain those blocks require shared libraries, such as .dll files on Windows®. The UDP Send block requires the networkdevice.dll library file. To meet this requirement, follow the example on the packNGo (Simulink Coder) function page to package the code files for your model. The resulting compressed folder contains the .dll files that the model requires, including networkdevice.dll. To run this type of .exe file outside of a MATLAB® environment, place the required .dll files in the same folder as the .exe file or place them in a folder on the Windows system path. For more details, see How To Run a Generated Executable Outside MATLAB.

Examples

Ports

Input

expand all

Specify the input data vector that the block transmits as a UDP packet.

Data Types: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean
Complex Number Support: Yes

Parameters

expand all

Specify the IP address or host name to which to send UDP packets. If you specify a host name, specify it as a string. To broadcast a UDP packet, specify '255.255.255.255'.

Specify the IP port number to which to send UDP packets. This parameter is tunable in the generated code but is not tunable during simulation.

On Linux®, to set the IP port number below 1024, run MATLAB with root privileges. For example, at the Linux command line, enter sudo matlab.

Specify whether the block uses a local port number that the system assigns or that you specify by using the Local IP port parameter. For the system to assign the port number, select Automatically determine. If the receiving address expects UDP packets from a specific port number, select Specify via dialog and specify the port number by using the Local IP port parameter.

Specify the IP port number from which the block sends UDP packets. Use this parameter when the receiving address expects messages from a specific port number.

Parameter Dependencies

To enable this parameter, set Local IP port source to Specify via dialog.

Specify the size of the buffer, in bytes, that sends the UDP packets. Make the buffer large enough to avoid data loss caused by buffer overflows.

Block Characteristics

Data Types

Boolean | double | integer | single

Direct Feedthrough

no

Multidimensional Signals

no

Variable-Size Signals

no

Zero-Crossing Detection

no

Extended Capabilities

Version History

Introduced in R2010a