RSI cannot set any outputs due to operator protections

  • Hey there,


    I am trying to establish a connection between the RSI interface and KUKA KR_20 R1810-2, a KR_C4 controller.


    Up till now, I have followed below instructions:


    1. [Configuring RSI on the controller.](https://github.com/ros-industr…si_hw_interface/krl/KR_C4)


    2. [Problem to set-up RSI interface with KR6 R900 and this answer.](https://github.com/ros-industr…15#issuecomment-371521574)


    I have set the Ip Address is shown below:


    Smart-pad Ip address:

    Windows 10 OS in a smart pad: 192.168.0.1

    Not changed, and not safe to do so.

    Smartpad virtual5 KLI: 172.31.1.147

    Virtual 6: 192.168.1.121

    Windows interface is selected.

    Virtual 7 RSI: 192.168.2.121

    Linux PC:

    192.168.1.210 windows interface

    192.168.2.210 RSI


    Selecting User as Administrator in the smart pad and after Minimize HMI (Start-up > Service > Minimize HMI), I window 10 of smart pad I can ping to 192.168.1.121, 192.168.2.121, and 192.168.1.210, but I am not able to ping 192.168.2.210. On the other side, I can ping all the smart-pad addresses, e.g. (172.31.1.147, 192.168.1.121, 192.168.2.121 ).



    In ros_rsi_ethernet.xml, I have tried adding both IP addresses of my Linux pc 192.168.2.210 and 192.169.1.210.


    In test_params.yml, I have changed the IP address to 192.168.1.210. Further, I have added the below line just before kuks_hardware_interface.


    ```

    <arg name="model" default="$(find kuka_kr16_support)/urdf/kr16_2.xacro"/>

    <param name="robot_description" command="$(find xacro)/xacro $(arg model)" />

    ```



    This is the output I am getting :


    ```

    kuka-ai@kukaai-ROG-Zephyrus-G15-GA502IU-GA502IU:~/ws_moveit$ roslaunch kuka_rsi_hw_interface test_hardware_interface.launch sim:=false

    ... logging to /home/kuka-ai/.ros/log/63f99866-7771-11eb-bd0a-efc131f6c940/roslaunch-kukaai-ROG-Zephyrus-G15-GA502IU-GA502IU-8082.log

    Checking log directory for disk usage. This may take a while.

    Press Ctrl-C to interrupt

    Done checking log file disk usage. Usage is <1GB.


    started roslaunch server http://kukaai-ROG-Zephyrus-G15-GA502IU-GA502IU:40857/


    SUMMARY

    ========


    PARAMETERS

    * /controller_joint_names: ['joint_a1', 'joi...

    * /joint_state_controller/publish_rate: 50

    * /joint_state_controller/type: joint_state_contr...

    * /position_trajectory_controller/action_monitor_rate: 20

    * /position_trajectory_controller/joints: ['joint_a1', 'joi...

    * /position_trajectory_controller/state_publish_rate: 50

    * /position_trajectory_controller/type: position_controll...

    * /robot_description: <?xml version="1....

    * /rosdistro: noetic

    * /rosversion: 1.15.9

    * /rsi/listen_address: 192.168.1.210

    * /rsi/listen_port: 49152


    NODES

    /

    controller_spawner (controller_manager/spawner)

    kuka_hardware_interface (kuka_rsi_hw_interface/kuka_hardware_interface_node)

    robot_state_publisher (robot_state_publisher/robot_state_publisher)


    ROS_MASTER_URI=http://localhost:11311


    process[kuka_hardware_interface-1]: started with pid [8098]

    process[controller_spawner-2]: started with pid [8099]

    [ INFO] [1614265728.636066787]: Starting hardware interface...

    process[robot_state_publisher-3]: started with pid [8101]

    [ INFO] [1614265728.647552308]: Loaded kuka_rsi_hardware_interface

    [ INFO] [1614265728.650771039]: Setting up RSI server on: (192.168.1.210, 49152)

    [ INFO] [1614265728.675373482]: Waiting for robot!

    [WARN] [1614265728.882024]: DEPRECATION warning: --shutdown-timeout has no effect.

    [INFO] [1614265728.883432]: Controller Spawner: Waiting for service controller_manager/load_controller

    [INFO] [1614265728.887354]: Controller Spawner: Waiting for service controller_manager/switch_controller

    [INFO] [1614265728.891932]: Controller Spawner: Waiting for service controller_manager/unload_controller

    [INFO] [1614265728.896652]: Loading controller: position_trajectory_controller

    [INFO] [1614265728.924515]: Loading controller: joint_state_controller

    [INFO] [1614265728.929037]: Controller Spawner: Loaded controllers: position_trajectory_controller, joint_state_controller

    ```



    On the controller side I am getting this error:


    ![WhatsApp Image 2021-02-25 at 3 57 34 PM](https://user-images.githubuser…eb-8f54-58ecf317abb8.jpeg)

    ![WhatsApp Image 2021-02-25 at 3 56 25 PM](https://user-images.githubuser…eb-83dc-f48ad5ae2efb.jpeg)


    My configuration is correct?

    And why am I not able to communicate?



    Thanks in advance for your help.

  • kwakisaki

    Approved the thread.
  • I think this will not work in t1 or t2 (SPOC)


    With rsi the robot movement is sensor controlled and this is normally forbidden (safety)

    It should work in AUT or EXT only

    Not in my experience. At least as late as KSS 8.3, I had RSI (and FTC) working in all modes, and I've seen it working in T1 under KSS 8.5. It's one of the things that can make RSI dangerous -- it can make the robot move in T1 at speeds higher than 250mm/sec. Had more than one close call that way when I was first learning RSI.


    That said, the fastest way to check if this is the problem is to try running the same program in T1, T2, and AUT/EXT, and see if the behavior changes.

  • the screenshot with "problem" message is KSS29005 which shows that drives are off. how is RSI supposed to do anything with robot if drives are off?

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Hello Guys,


    I have tried running in all modes but then also it is not working.


    I am attaching a video link of the output I am getting:

    External Content youtu.be
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.


    Thanks for replying.

  • smartPad shows all 4 boxes on top as green and i saw a message that correction is active and i don't see there KSS29005 any more, so... it appears that RSI connection is ok.


    cannot tell what is on the other side (laptop), perhaps screenshot would be better.


    btw, you have a bad habit there. do not just click on OK and Confirm All button repeatedly without reading messages. do that before you start test but stop erasing the messages during test. also try to display them by touching the message body of message on top of the screen. this shows/hides message list.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Hello,


    I am trying to configure RSI with ROS(Robot operating system) and In terminal, I should get " Got connection from the robot" it was maintained in the following link by doing below steps.


    The terminal output is attached at the last.

    Code
    roslaunch kuka_rsi_hw_interface test_hardware_interface.launch sim:=false


    The kuka_rsi_hardware_interface is now waiting for the robot controller to connect. Follow the next steps to connect RSI:

    1. On the teach pad, enter mode T1 for testing purposes.
    2. Navigate to KRC:\R1\Program and select ros_rsi.src.
    3. Press and hold an enabling switch and the run/play-button. The robot will first move to the start position.
      • A message like a Programmed path reached (BCO) will be shown at the teach pad.
    4. Press and hold again. The teach pad will post a warning !!! Attention - Sensor correction goes active !!!.
    5. Confirm the warning and press and hold the buttons again. This time the terminal where kuka_rsi_hardware_interface is running should output Got connection from robot. The RSI connection is now up and running.


    Ignoring the error and not reading it is not a bad habit, I am seeing these messages for the last 4 days so I know what's in the message and what it tells it.


  • Quote

    On the other side, I can ping all the smart-pad addresses, e.g. (172.31.1.147, 192.168.1.121, 192.168.2.121 ).

    that is normal, because Windows does not have control of hardware and RSI interface is not a windows interface. pinging from robot is possible but need to be done from vxWorks (need to open terminal etc).



    Quote

    Ignoring the error and not reading it is not a bad habit, I am seeing these messages for the last 4 days so I know what's in the message and what it tells it.

    one can argue that since issue is not resolved, you did not see enough of them :winking_face:

    also you did not record video to tell yourself what is going on. we may need a hint or two...



    Programmed path reached (BCO)

    This is normal on KUKA when new program is selected or reset etc.


    !!! Attention - Sensor correction goes active !!!.

    This is normal too, RSI is working so far...


    Got connection from robot.

    This is not a KUKA message. it looks like you have a problem on ROS side.

    it sure look like you have a network address mismatch, your server need to be on 192.168.2.x subnet




    Windows 10 OS in a smart pad: 192.168.0.1

    Not changed, and not safe to do so.

    Smartpad virtual5 KLI: 172.31.1.147

    Virtual 6: 192.168.1.121

    Windows interface is selected.

    Virtual 7 RSI: 192.168.2.121

    Linux PC:

    192.168.1.210 windows interface

    192.168.2.210 RSI


    process[kuka_hardware_interface-1]: started with pid [8098]

    process[controller_spawner-2]: started with pid [8099]

    [ INFO] [1614265728.636066787]: Starting hardware interface...

    process[robot_state_publisher-3]: started with pid [8101]

    [ INFO] [1614265728.647552308]: Loaded kuka_rsi_hardware_interface

    [ INFO] [1614265728.650771039]: Setting up RSI server on: (192.168.1.210, 49152)

    [ INFO] [1614265728.675373482]: Waiting for robot!

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Hello, @panic mode,


    Thanks for your suggestion and I think you are true, so I am sorry for that.


    When recording the video, I should have given you a hint to identify the mistake, and again sorry for that.


    I did all things from the start again, and I found few points, but I am confused that it a true or wrong.


    1. I was using the kuka_experimental library from GitHub for ROS configuration, In that, I am using the kuka_kr16_support package for the robot, but my robot is KR20 R1810-2. I have checked the difference between both robots, and I found that some links given in both pictures are different.

    Again: I am not sure that this causes the problem or not?


    Simulator:

    https://drive.google.com/file/…Egyr7QBm/view?usp=sharing


    Real Robot:

    https://drive.google.com/file/…ZgB0I-5J/view?usp=sharing


    I think that this robot looks different; that may be an issue for ROS connection or not?


    2. (Hint -2 ) Whenever I am running my program:

    I see this type of behavior: First, it will execute PTP {A1 0, A2 -90, A3 90, A4 0, A5 90, A6 0} this line, and release the play button and play it again then my cursor stops here in HALT. I have checked my file is in the proper location, and I think that this condition is not satisfying


    ret = RSI_CREATE("ros_rsi.rsi",CONTID,TRUE)

    IF (ret <> RSIOK) THEN

    HALT # Over here

    ENDIF


    3. After Halt when I press the play button again, I am getting two warnings:

    1. RSI: cannot set any outputs due to operator protection

    Originator:KS

    (Do we have to turn some operator flag on for this?)

    2. RSI_MOVECORR: Motion active

    Originator:0


    And in Auto mode: all things up till now remain the same but I get this extra warning.


    3. Process active

    KSS01372



    Thanks for helping

  • The HALT command should never be reached unless RSI_CREATE returns an error. What is the value of ret when the program pointer hits the HALT command?


    "After Halt when I press the Play button again" -- you should not do that. Since RSI_CREATE failed, just pressing Play again is not going to do anything helpful. Until you fix the issue with RSI_CREATE, nothing past that is going to work.


    Post the actual code of the KRL program.

  • when you hit HALT command, program is paused. in this state you can monitor variables using single variable monitor

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • please try to add attachments using forum, try to avoid external links.

    and try to evaluate correct variable, in this case, you were asked about value of RET, not RSIERRMSG

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Hello panic mode,


    I have tried to obtain the value of rat, but I am not getting any value of it..



    According to your experience do you think that if my virtual environment and real environment link will be different in look so that can through error.

Advertising from our partners