From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

ROS for LabVIEW(TM) Software

cancel
Showing results for 
Search instead for 
Did you mean: 

Ignore Post - Error Code 1 on ROS Topic Read in .exe

Ignore this.  Seems this is the incorrect Ros for LabVIEW toolkit. 

 

Hi There.

I'm subscribing to several Ros topics using ROS for LabVIEW.  Whenever I test the program using the development code it seems to work fine.  I've attached a simple vi as an example of what I am doing. 

My state machine consists of:

Check Master:  Fail results in a new check for master.  Success --> Initialize

Initialize: Ros Topic Init

Listen: Ros Topic Read, Parse Header, Parse Data, Check Timestamp to confirm good data. 

If Sequence = 0 or Data is old (> 20 seconds) then Re-Initialize Topic.

 

When I run the vi, it works fine.  I may or may not get the pop-up for the Master IP address.  It appears that previous selections are saved to some preference file somewhere.  Anyways, when I build an executable and run that, it indicates that the master is there, but I get the following error. 

 

Error Code 1

Dequeue Element in ROS_Topic_Read_Primative.vi:5110002->ROS_Topic_Read.vi:6470001->Ros_Comm_Test2.vi

 

I'm not doing anything special with building the executable, except I have allowed for debugging the application. 

When I do try to debug the code, I find the global variable FIFOQ (located in GetFIFOQueue.vi) is empty. 

Anyone seen this before? 

 

Thanks
Relec

 

0 Kudos
Message 1 of 4
(5,035 Views)

Relec,

I did not ignore your post because I have the exact error you have. I digged deeper and found a somewhat complex implementation using a lot of globals, locals and a vi-server calling a vi that is not mentioned. Adding that vi to my code did not help either. I finally gave up.

Can you tell me what toolkit is the correct one to use for ROS communication in a LabVIEW executable?

Patrick de Boevere

0 Kudos
Message 2 of 4
(3,938 Views)

I was using ROS for LabVIEW by Tufts University.  From my understanding, this group is for those using ROS Toolkit by Clearpath Robotics.  

In the end I ended up taking ROS messages and sending those via UDP to a LabVIEW routine that uses the .msg file information to parse them.  

 

Relec.

Message 3 of 4
(3,925 Views)

I got some ROS communication working in an exe.

In the code I added the Tufts CEEO ROS for LabVIEW Software directory to the Project and, in the Build Specifications – Source Files I selected the 5 vi’s in the NewROS subdir of that library and copied them in the Always Included section.

Perhaps this helps.

 

0 Kudos
Message 4 of 4
(3,645 Views)