RobotStudio event

Write IO failure

Hi, guys



I met a problem ,That is : 
After connected the real IRC5, I use pcsdk to write "DO" by C#,but It return a  alarm :

"The operation is not allowed in current operation mode.For example, a remote user may not be allowed to perform the operation in manual mode."

But I'm sure that the mode is in auto mode, I don't know how to solve this problem ,

Does someone can help me ? 

My C# souce code like this :

 

            Signal signal1 = GudData.mController.IOSystem.GetSignal("doPlaceRD");
                                   
            DigitalSignal diSig = (DigitalSignal)signal1;
           
            string wMode=GudData.mController.OperatingMode.ToString();
            if (wMode != "Auto") return;
            int wValue = diSig.Get();
            //diSig.Pulse(wTime);
            diSig.Set();

 

Please help  me ?  I'm in urgent ,

Thanks

 

 

 

Comments

  • Try changing the Access Level from DEFAULT to ALL for the signal doPlaceRD in the Configuration Editor (I/O domain).

    Be aware that relaxing the Access Level may have an impact on personnel safety (signals with relaxed access level may be changed by an external client). You should conduct a safety review before changing the Access Level.
    (Example: A robot gripper holding 500 kg metal may be accidentally opened from an external client if the Access Level has been relaxed for the corresponding output signal. If a service technician is inside the robot cell doing maintenance at this point, it may cause injury.)
    Henrik Berlin
    ABB
  • Dear Henrik
     

    Can you tell me how to write this code to change the Access level  or give me the sample code?

     

    OR like this code :

     

    GudData.mController.AuthenticationSystem.DemandGrant(Grant.FullAccess);

     

    right?

     

    Thanks very much

     

     
  • You can change this in the Configuration Editor. This is something you only do once when the system is setup, so there is no need to do it from your application.

    image




    Henrik Berlin
    ABB
  • Dear Henrik :
     I test my code  again by your method , but  still unsuccessful ,The alarm was the same as that alarm.I don't know why,

    Can you help me to point the error?

     

    Thanks

     
  • Hello,

    I have the same problem writing I/O signals on my C# app. I read I/O correctly, but when I try to change the value it returns "The operation is not allowed in current operation mode.For example, a remote user may not be allowed to perform the operation in manual mode."
    Also I tested changing the access level of some signals in RobotStudio for testing, but it doesn't work. My code is shown below:

    if (_controller.OperatingMode == ControllerOperatingMode.Auto)
                        {
                            using (Mastership m = Mastership.Request(_controller.Rapid))
                            {
                                Signal sig = _controller.IOSystem.GetSignal(item.Text);
                                DigitalSignal digitalSig = (DigitalSignal)sig;
                                int val = digitalSig.Get();
                                if (val == 1)
                                {
                                    digitalSig.Set();
                                }
                                else
                                {
                                    digitalSig.Reset();
                                }
                            }
                        }

    I know I´m refloating an old post, but it has not been resolved...

    Thank you in advance

    Alex