RobotStudio event

IpcQueue ArgumentException was unhandled


Hello,
 I'm trying to use IPCommands, but the creation of IpcQueue has encountered an exception.
The code that causes the exception is "IpcQueue queue = controller.Ipc.CreateQueue("RMQ_OtherTask", 5, Ipc.MaxMessageSize);" 
Exception is "'System.ArgumentException' occurred in ABB.Robotics.Controllers.PC.dll". 
My platform : RW6.03 , VisualStudio 2013 

Very appreciated for your help!

Comments

  • Is the variable 'controller' properly defined? ArgumentException, with the as additional information 'name' seems to indicate a problem with the 'destination_slot'. Maybe it can not handle the underscore in "RMQ_OtherTask"?
  • baijun
    baijun
    edited October 2016
    Is the variable 'controller' properly defined? ArgumentException, with the as additional information 'name' seems to indicate a problem with the 'destination_slot'. Maybe it can not handle the underscore in "RMQ_OtherTask"?
    Hi,John Verheij
        Very appreciated for your reply.
        Your idea is very helpful to me, I found that the RAPID program will output the error prompt (RMQ is not configured for the task) . I do not quite understand, I opened the PC interface option, according to the document (Application manual-Controller software IRC5)  can know the communication option RAPID Message Queue included in the PC interface.This may be the cause of the C # program error.
        Thank you again.
  • Micky
    Micky ✭✭✭
    Hello,
    have you set the RMQ_Type of the task (e.g. T_ROB1) in the system parameters (Controller/Task) to "Remote"?

    The name "RMQ_OtherTask" can not be used. Please use the task name with which you want to communicate. E.g, if you use the Task T_ROB1 you have to use the name "RMQ_T_ROB1".

    Please refer also to the RAPID reference manual, instruction "RMQFindSlot":
    RMQFindSlot myrmqslot, "RMQ_T_ROB1";


    /BR
    Micky

  • Micky said:
    Hello,
    have you set the RMQ_Type of the task (e.g. T_ROB1) in the system parameters (Controller/Task) to "Remote"?

    The name "RMQ_OtherTask" can not be used. Please use the task name with which you want to communicate. E.g, if you use the Task T_ROB1 you have to use the name "RMQ_T_ROB1".

    Please refer also to the RAPID reference manual, instruction "RMQFindSlot":
    RMQFindSlot myrmqslot, "RMQ_T_ROB1";


    /BR
    Micky

    Hi,
    Thank you very much for your reply.
    Your reply is in place, give me a lot of inspiration, and I will try according to your ideas.once again thanks.