How to properly use RMQmessages?

Hello,

I do not understand how to properly use RMQ messages. Here I have 2 parallel tasks: CONTROL and T_ROB1. I need to send messages from CONTROL to T_ROB1 but, when I use the code:
RMQFindSlot slotCONTROLtoMOTION,“RMQ_T_ROB1”;
the program stops saying that RMQ_T_ROB1 is not a valid name for a RMQ client.
The corresponding instruction in the T_ROB1 is:
RMQReadWait queueCONTROLtoMOTION\TimeOut:=WAIT_MAX;

Actually, i was using the whole program correctly on a real 1200 robot, but now i am transfering everything in a virtual system on robotstudio. Due to the “eio.cfg backup problem” i had to import the single modules inside each task so i don’t know if I made everything correct.

Can someone help me?
Thanks in advance and sorry for my bad english

Hello Boteon,

Do you have configured on both task the RMQType and RMQMode in the sys.cfg?

Best regards,
Daniel M.

Thanks for your reply.

In the controller configuration, under “Task” i have set both “Internal” for RMQtype and “Interrupt” for CONTROL RMQmode and “Synchronous” for T_ROB1.

(I’m a pretty newbie user) are there any other ways of modifying the sys.cfg?

For the connection (RMQFindSlot) only matter the task configuration. So it should be a configuration issue (did you perform a warm restart after the config change?).
It seems a good configuration. (I work with remote type). So, I do not know what to say.

I did some tests:
(1) Creating a new station with the same task names and building new code with the same general purpose (sending an RMQmessage) and it works;
(2) Copying the (1) code inside my initial virtual station and it doesn’t work.

So i compared the controller options: they’re nearly the same, but not equal

  • the initial station had 624-1 Continous Application Platform, the “test” one didn’t;
  • the test station had 610-1 Indipendent Axis, the initial didn’t.

So i guess that one of those options were the responsible.

The other options i use are (i don’t know if they are useful, but i can’t find how to add them after the creation of the station, so…):

  • Pendelum Calibration
  • 613-1 Collision Detection
  • 709-1 DeviceNet Master/Slave
  • 840-1 EtherNet/IP Anybus Adapter
  • 841-1 EtherNet/IP Scanner/Adapter
  • 614-1 FTP and NFS client
  • 617-1 FlexPendant Interface
  • Motor Commutation
  • 604-2 MultiMove Indipendent
  • 623-1 Multitasking
  • 616-1 PC Interface
  • Service Info System
  • 608-1 World Zones

Here I am (again).

I had to create a new station on another pc.
I used the same options I wrote in my previous post, but it shows the same error.

The backup importation failed (maybe is the RobotWare version (6.01 of the old pc vs the 6.02), so i manually imported the modules, setted the same virtual signal. The Configuration options are the same… I don’t know what i miss!

Any other solutions?

For the RMQmessage part you only need the option PC-interface (616-1) or Multitasking (623-1). If I read your post correctly, you have in both systems at least one of these options?

Can you show the part of your code, which gives the error?