Code Monkey home page Code Monkey logo

Comments (7)

RobertWilbrandt avatar RobertWilbrandt commented on June 24, 2024

I don't quite understand how this relates to our ROS 2 driver. We use the RTDE protocol to read the robot state, move the arm and set i/os. This did not change.

What exactly do you want to achieve? Why do you need to be able to directly set tool i/os if the robotiq urcap is used?

from universal_robots_ros2_driver.

firesurfer avatar firesurfer commented on June 24, 2024

@RobertWilbrandt

  1. Why do I want to set one of the tool outputs while the robotiq urcap is used?

The robotiq 2f-85 only uses one of the outputs as power supply. We use the second one to control an electromagnet mounted at the wrist.
Being able to control the gripper from remote + from the teach panel is very convenient for testing.

  1. Apparently setting the output via the urscript instead of RTDE still works with newer versions of the urcap.

As neither UR nor Robotiq want to do anything about this the only way of having this very convenient feature is by changing the way the IOs are controlled in the ROS driver....

from universal_robots_ros2_driver.

RobertWilbrandt avatar RobertWilbrandt commented on June 24, 2024

I see, that makes sense.

We are aware that using RTDE for IOs can lead to problems when integrating with additional equipment (also e.g. if you try to control the UR IOs from a PLC while controlling the joints through ROS). Enabling IO control through a different interface is on our roadmap, but we don't have a timeline for that yet.

@urrsk do you maybe have some more information on this specific conflict with robotiq?

from universal_robots_ros2_driver.

urrsk avatar urrsk commented on June 24, 2024

@firesurfer you have a good point and we are aware about it. In general, we are missing a good way to integrate URCaps with the use of the ROS drivers.
On the short term, regarding the digital and analog outputs, we have talked about expending the script_commands thread in the Universal_Robots_Client_Library/resources/external_control.urscript#L496 to also control the outputs as an alternative to use RTDE.

from universal_robots_ros2_driver.

firesurfer avatar firesurfer commented on June 24, 2024

@urrsk
Could you perhaps elaborate why it should make a difference to control an IO via RTDE or via a urscript? In both cases one would need to accept that one can interfere with the settings from an installed URcap (or it has to be blocked). Unfortunately I did't get any useful answer from the UR support why this specific behavior has been changed (That the robotiq urcap may only control the gripper if the IOs are controlled by the urcap) .

from universal_robots_ros2_driver.

EbbeFuglsang avatar EbbeFuglsang commented on June 24, 2024

@firesurfer Our current way of managing the Tool Connector have it limitations. The intend with selecting one owner is that they are in control. In the past we have seen cases with other tool manufactures tools have been disturbed by the presence of Robotiqs URCap, even when they were selected as owner of the tool connector. That is what Robotiq have fixed here.
Is it an option to use the UCG-1.8.13.22852 version of the URCap?

from universal_robots_ros2_driver.

firesurfer avatar firesurfer commented on June 24, 2024

@EbbeFuglsang Thanks for the info.

Is it an option to use the UCG-1.8.13.22852 version of the URCap?

Thats what we are currently doing. But given that there were some necessary updates in the past I would like being able to run the newest version of the URCap to avoid bad surprises in the future.
(E.g. at some point the combination of the URCap and a newer Polyscope version lead to the gripper shutting down during startup because of an over current condition)

Also I would argue that from a user point of view: If I select: Controlled by user, than I would like to be able to control it myself ;)

from universal_robots_ros2_driver.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.