xArm-Developer / xarm_ros

ROS packages for robotic products from UFACTORY
https://www.ufactory.cc/
BSD 3-Clause "New" or "Revised" License
196 stars 147 forks source link

Questions about Online Target Update #205

Open onda-ais opened 5 months ago

onda-ais commented 5 months ago

Hello! I have a question about the Online Target Update (OTG) that you guys publish. I am using xArm7 robot with the force sensors you provide, and I am using the impedance control you provide in your API. I have read the following paper and found that it switches between trajectory-following control and sensor-guided control. https://www-cs.stanford.edu/group/manips/publications/pdfs/Kroeger_2010_TRO.pdf

There are two things I would like to know. First, is it possible to know whether the robot is moving in trajectory-following control or sensor-guided control? Second, is there any threshold for switching to sensor-guided motion?

I would appreciate it if you could answer my questions.

penglongxiang commented 5 months ago

Hi @onda-ais, to clearify, OTG is not a concept we created, it is a function we support, for dynamic adaptation for newly updated target (most likely generated from a sensor). And we refer to that paper (published by IEEE members and it has nothing to do with UFACTORY and our products) just to give a clue for users who are interested in details of different types of OTG.

I think the paper mentions the switching between sensor guided and trajectory following control just to give a scenario of what OTG can be useful for. Since the inclusion of sensor signals requires the robot to adjust its trajectory in arbitrary situations as well as keeping motion continuous, and this is what OTG is for. The sensor integration and switching of control mode have nothing to do with this paper, it just focuses on trajectory calculation.

We provid the interface for OTG function in ROS service, please checkout the instructions here, however it has nothing to do with the FT sensor. You may use this interface to dynamically adjust the target position according to the sensor(whether it is FT sensor or 3d camera, etc) signal.

And to answer your two questions: It is actually the developer's call in their specific application to decide when and under what circumstances to operate the robot in normal trajectory mode or sensor guided motion, the switching can be realized with calling our provided interface, please read through our document and example code.