LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Connect LabVIEW and Universal Robots via RTDE (real time data exchange)

Hello all,
I would like to connect the LabVIEW environment with the UniversalRobots robot. There are several connection options that are indicated here: https://www.universal-robots.com/how-tos-and-faqs/how-to/ur-how-tos/overview-of-client-interfaces-21...
With most I have no problems to connect and receive / send any data. The only interface with which I was unable to connect and work is RTDE - real time data exchange. It is described here: https://www.universal-robots.com/how-tos-and-faqs/how-to/ur-how-tos/real-time-data-exchange-rtde-gui...

In this page (at the bottom of this page) is an example in Python how it works. However, I wanted to create such communication in LabVIEW.

 

So from what I read it should be created in the beginning of the setup procedure in which we define what data we want to receive. Then we run the synchronization loop in which we read the values from the data that we defined in the setup procedure.

Below is a short program which, in my opinion, should work correctly.

RTDE LabVIEW.png
However, I receive information: jM Parse Error: package type is not supported or package invalid, package type: data: <? Xml version = "1.0"
I found the information that I should use the big-endian byte order so I added that. I also know that ,,UniversalRobots Controller expects ASCII codes, and will recognize those multibyte UTF8 encoded characters (or worse, misinterpret them). In production code, you must be sure that ASCII encoding is multibyte, or use ASCII encoding.,,
I do not quite know how to use this because "TCP Write" in Labview expect string input.

 

Has anyone ever connected LabVIEW with Universal Robots via RTDE?
Or does anyone know what next steps I can do to make RTDE communication possible.
Thank you in advance for your suggestions and advice!

0 Kudos
Message 1 of 26
(6,948 Views)

I’ve never used Universal Robots, so my comments here are meant to be suggestions, not definite solutions.

 

I don’t think you need the Flatten To String function for this example.  The TCP Write function will send the string as ASCII encoding.  Network byte order (endian-ness) only applies when you have multibyte data—such as integers that are sent as 32-bit or 64-bit quantities.  (I.e., if you were flattening integers or floats, or such.)

 

I think this takes you back to your initial error.  I’d maybe try using a packet sniffer (such as Wireshark) to compare how the data is sent differently between LabVIEW and Python.  Since the transport appears to be unencrypted, it should be pretty straightforward to see what the payload is and how they are different.

 

Please report back here if you learn anything.

Brian Powell
Stravaro, LLC


Learn more about the DSH Pragmatic Software Development Workshops.
0 Kudos
Message 2 of 26
(6,897 Views)

Thank you for your response.
As soon as I have the opportunity I will test what you have suggested and I will write what I managed to achieve in this topic

0 Kudos
Message 3 of 26
(6,887 Views)

Hi,

 

This SDK has a ready to use LabVIEW example to remote control and read robot data : https://underautomation.com/download/#labview-integration

 

LabVIEW-example.gif

 

0 Kudos
Message 4 of 26
(6,568 Views)

Did you have any luck figuring this out? I am trying to do something similar and am seeing the same response. 

Thanks!

0 Kudos
Message 5 of 26
(6,503 Views)

Hi,

 

Unfortunately, finally I did not work with this interface only with another available on the robot, so I did not delve into this topic RTDE.

0 Kudos
Message 6 of 26
(6,455 Views)

Seems to work best with python:


https://forum.universal-robots.com/t/python-3-library-to-communicate-with-robot/461 
https://forum.universal-robots.com/t/rtde-ur-eseries-connect-to-labview/4496/5

 

Perhaps LabView - python- UR ???

 

BR

EWiebe

-------------------------------------------------------------------
Eugen Wiebe
Bernstein AG
CLAD - Certified LabView Associate Developer
0 Kudos
Message 7 of 26
(5,246 Views)

Mhm - Although the last entry was a long time ago - it is easier than expected to read out or control the UR using RTDE and LabVIEW. But yes, it took me a few days. If it's still of interest, I'm about writing a manual right now. Let me know if it's still worth the work 🙂

Best,

Alex

0 Kudos
Message 8 of 26
(4,768 Views)

Hi Alex,

 

yes, we are interested in 😀🤝

Thank you in advance !

 

BR EWiebe

-------------------------------------------------------------------
Eugen Wiebe
Bernstein AG
CLAD - Certified LabView Associate Developer
0 Kudos
Message 9 of 26
(4,764 Views)

Wow - that was quick 😁

 

After I want to do this properly, I will need a few more days, 4 pages are written some more to come.

 

I have been asking myself one question for weeks: Why doesn't UR support us to use RTDE? 🙄

 

Best,

Alex

0 Kudos
Message 10 of 26
(4,758 Views)