UDP Position Output

Spikemark can send real time motor position data using the UDP protocol to any device that supports UDP. Unlike the other position outputs, which have a fixed syntax for their messages the UDP Position Output allows you to pick the syntax. This can be handy for when a device doesn't support one of the standard outputs but can listen for UDP.

Open OSC Output Window

From the Show Control menu click UDP... to open the configuration window.

Configuration Window

OSC Output Window

1. Client Address

The IP address of the other device receiving data from Spikemark.

2. Client Port

The port number the other device is listening for data on.

3. Output Pattern

The syntax of the UDP message.

4. Active

When checked, the given axis’ position will be sent. This allows Spikemark to selectively send position data. By default, active is unchecked.

5. Motor Name

The name of the motor in Spikemark.

6. UDP Name

The name that the other device will see. By default, the UDP name is the same as the motor name but can be changed as needed. This allows an axis to be called one name in Spikemark and another on a UDP client.

7. Update Interval

The update interval is the speed at which UDP packets are sent. The recommended fastest speed is 30.

8. Send Output

Toggles the UDP output on or off.

Output Pattern

One of the main advantages of the UDP position output is its flexibility. You get to decide which information you need and how it should be formatted. In the Output Pattern text box you can type any text you want as well as few special arguments. It is these arguments that will get replaced with the actual motor information.

UDP Arguments

Pattern
Description

{name}

The UDP name for the motor

{position}

The simulated position based off of the loaded/running motion profile of the motor

{actual_position}

The actual position of the motor

{desired_position}

The commanded position from the motion controller

{speed}

The simulated speed based off of the running motion profile of the motor

{actual_speed}

The actual speed of the motor

{desired_speed}

The commanded speed from the motion controller

{error}

The simulated position minus the actual position

{ti_error}

The desired position minus the actual position

{cr}

Carriage return character (\r)

{lf}

Line feed character (\n)

{nl}

New line character (\r\n)

{tab}

Tab character (\t)

Examples

Pattern
Result

{name} - {position}:{speed}

Pushstick V2 - 12.47:8.6

Axis {name} is at {actual_position}

Axis Pushstick V2 is at 147.86

{position}{tab}{speed}{tab}{name}

88.61 8.6 Pushstick V2

Last updated

Was this helpful?