Description of the problem
How to transfer data from LabView to Dewesoft via UDP protocol?
Description of the solution
It happens regularly that in some applications different technologies such as Dewesoft and LabVIEW are integrated.
Although Dewesoft is a ready-to-use acquisition software, it allows many possibilities for customization and integration with other technologies.
With Dewesoft it is possible to read data bytes sent via LabView software via the network thanks to the use of the Ethernet receiver plugin. The LabVIEW code used sends data to the Dewesoft software via User Diagram Protocol (UDP) (Fig 1). UDP is one of the main network protocols in the Internet protocol suite. It is a packet transport layer protocol, usually used in combination with the IP network layer protocol.
Fig 1. Labview code Interface that sends data via UDP protocol
Fig 1 shows the Labview code screen that sends data over the network. Specifically, an "open UDP" block is used to create a write connection on the specified local port. Inside the while loop we find the "Simulate Signal" block which allows to generate a sinusoidal signal that is converted from a dynamic signal to a double type numeric value, and through the "Type Cast" block the input double type signal is converted in a string type and sent to the "UDP write" block. The UDP write function sends string data to the specified receiver port; this value is written on the port regardless of whether a receiver is currently connected.
Finally, the "UDP close" block closes the connection when the user clicks stop or if an error occurs.
Dewesoft on the other side is able to read the data bytes sent by the Labview software. To do this, as mentioned above, you need to enable the Ethernet receiver plugin. After enabling the plugin, you must select the data source, in this example the data was sent via the wi-fi network card, then in the drop-down menu in the data source setup the “Wi-Fi - Network adapter 'Microsoft was chosen 'on local host "(Fig 2).
Fig 2. Data source setup
Subsequently, to be sure to read only the correct UDP packets and ignore all the others, knowing the source and recipient IP address, the network traffic is filtered by specifying in IPv4 protocol and the source and recipient IP addresses (Fig 3).
Fig 3. Channel filtering setup
Once only the UDP packets from the Labview code are filtered, you can move on to the interpretation of the message payload. Having sent double data in binary format (via a Type Cast) from labview, in Dewesoft channel setup we interpret the first 64 bits of the payload (start byte 42) as "IEEE Float" with "Motorola" format (implicitly format used by Labview) (Fig 4).
Fig 4. Acquisition channel setup
Going to measure it is immediately possible to see the sinusoidal signal acquired via Ethernet with UDP protocol (Fig 5) and use it as a normal Dewesoft channel.
Fig 5. Acquisition of the measure channel
Warning: the signals acquired via ethernet are of the 'Asynchronous' type and therefore subject to some processing limitations, for example they cannot be used for FFT processing.