1
0
mirror of https://gitlab.com/obbart/universal_robots_ros_driver.git synced 2026-04-10 10:00:48 +02:00
Commit Graph

293 Commits

Author SHA1 Message Date
Jarek Potiuk
992c661e9e Removed unused append method 2018-02-04 23:50:50 +01:00
Jarek Potiuk
8f5df0145f Removed unused debug/more_debug options 2018-02-04 23:21:01 +01:00
Jarek Potiuk
b4718ab4d2 Only do adjustment of position at the very end of the move 2018-02-04 22:40:27 +01:00
Jarek Potiuk
2ace46d824 Bring all parameters in example launch files to common/latest parameters 2018-02-04 22:40:14 +01:00
Jarek Potiuk
42b336bbf5 Faster loading speed and better precision for LBTF
Low Bandwidth Trajectory Follower has now much less comments
and debugging information - which means that it will parse on UR robot
in around 400 ms instead of 700 ms. It also has an adjustment loop
in case the robot does not reach any of the trajectory points specified.

It will catch-up at every trajectory point sent by MoveIt and will try
to get as close as possible to the desired pointi (it will check if all
joints are within MAX_JOINT_DIFFERENCE from the desired positions)
2018-01-27 13:14:38 +01:00
Jarek Potiuk
a54b97e939 Renamed Safe Trajectory Follower to Low Bandwidth one 2018-01-14 22:01:53 +01:00
Jarek Potiuk
5dcef72415 Adds Safe Trajectory Follower implementation
Safe Trajectory Follower implements different approach for controlling
the robot. Rather than calculate the interpolation steps in the driver
and send the small interpolated steps over the network to the URScript
program with 500Hz frequency, the coarser MoveIt trajectory is sent
(with few Hz) and the interpolation steps are calculated by the
URScript.

The algorithm for time progress has also built-in protection against
any delays induced by load on the driver, network or URControl - it
will never "catch-up" dangerously when such delay are introduced,
It will rather pause and wait for the next small interpolation step
instructions and re-start the move slower - never skipping any
interpolated steps.

Those changes make Safe Trajectory Follower much more resilient to
network communication problems and removes any superficial requirements
for the network setup, kernel latency and no-load-requirement for the
driver's PC - making it much more suitable for research, development
and quick iteration loops. It works reliably even over WiFi.
2018-01-12 00:00:16 +01:00
Simon Schmeisser
f71c83c649 respawn needs to have a value (#12)
Respawn defaults to false, so just remove it.
2018-01-11 14:46:54 +01:00
Simon Schmeisser (isys vision)
bf85755744 Add support for version 3.5
A new undocumented uchar was added to RobotMode
2018-01-09 21:25:48 +01:00
Jarek Potiuk
6950b3c4bd Re-add urscript topic (#7)
* Re-added UR script - for custom UR Script execution

* Restarting the driver when robot closes the connection on script error.

The pipelines work in the way that if the connection is
is closed by the control PC, it will not be re-established. This
happens for example if you use the URScript topic and upload
script that does not compile. The robot will then close the
connection, the pipeline will close and any subsequent
uploads will fail and noone realises there is a problem.

While we could re-establish the connection, I think much better
solution is to shutdown the driver in such case. This is much more
resilient behaviour as it will clean up any inconsistent driver state.

We can utilise "respawn" feature of ROS launch and restart such
driver automatically (launch files are updated as part of that change).

On top of "production" stability, it allows for much nicer development
workflow - you can use URScript topic for development of new scripts
and have the driver restart every time you make mistake.
Without it, any mistake requires restarting the driver manually.
2018-01-02 20:22:55 +01:00
Simon Schmeisser
24eef75d72 Publish industrial_msgs::RobotStatus (#5) 2018-01-02 20:16:41 +01:00
Simon Rasmussen
560affaa78 Fixed default tcp_link value 2017-12-08 14:57:14 +01:00
Simon Rasmussen
ccba7d593b Improved README.md 2017-12-08 14:55:05 +01:00
Simon Rasmussen
f93c9bcd65 Merged README.md from upstream 2017-12-08 14:48:09 +01:00
Simon Rasmussen
6dc4a98b9d Enable kinetic builds for travis 2017-12-08 14:20:59 +01:00
Michael Görner
e4a503fe5f various improvements and fixes for use_ros_control=true (#6)
* Find matching hardware_interface using the required type

The name of the controller was used in order to find and start
the matching hardware interface.
In consequence this meant that one could only define one controller
for each hardware interface.

Now, the controller's required type of hardware interface is used
to find and start the matching hardware interface.

* separate read & update in controller

consume is defined as read+update, but update
does not include read in ros_control terminology.

* Handle latency in pipeline loop

The controllers need to update at a rate of *at least* 125Hz,
but the wait_dequeue_timed call could in theory slow the loop down to 62.5Hz.
The old ur_modern_driver worked around this problem by sending goals
at 4*125Hz.

This patch exploits the onTimeout method of a consumer to update with
the specified frequency of the control loop, even if no new state message
arrived after the previous command.

* publish wrench w.r.t. tcp frame

The messages had an empty frame_id before and could not be displayed in RViz

* support ros_control in indigo
2017-12-08 14:05:07 +01:00
Simon Rasmussen
ef7aca7fb9 Merge pull request #3 from TAMS-Group/pr-kinetic-catkin-lint
Satisfy catkin_lint
2017-10-12 21:56:17 +02:00
v4hn
0257396486 fix typo in catkin_package
ur_hardware_interface is no *dependency* of this package.
It's a library *provided* by this package
2017-10-11 20:36:33 +02:00
v4hn
3bd3c017a5 cleanup inconsistent / unused dependencies 2017-10-11 20:36:06 +02:00
v4hn
08affc5e9b set(CMAKE_CXX_FLAGS -> add_compile_options
Some of the set commands overwrote user-provided values.
Also add_compile_options is the much cleaner interface to add the values
2017-10-11 20:34:19 +02:00
Simon Rasmussen
372aca967f Merge pull request #2 from TAMS-Group/fork_master
Activation modes for service /ur_driver/robot_enable
2017-08-30 16:39:48 +02:00
Henning Kayser
231840fabf Change default activation mode to 'Never'
Maintains default behavior of indigo that no controller activation is required.
Enabling required activation can be done by passing 'require_activation' as Always/OnStartup
to the ur_common.launch or by modifying corresponding launch files.
2017-08-17 13:39:05 +02:00
Henning Kayser
f70255926b Implement activation modes of robot_enable service
Adds parameter 'require_activation' to configure when the service should be called (Always, Never, OnStartup).
2017-08-16 16:56:21 +02:00
Simon Rasmussen
b57e327a09 Removed jade and kinetic builds from travis for now 2017-07-28 02:11:46 +02:00
Simon Rasmussen
afff1e440b Fixed travis "fatal error: std_srvs/Empty.h: No such file or directory" 2017-07-28 01:36:18 +02:00
Simon Rasmussen
5de8950bdf travis debugging... 2017-07-28 01:23:59 +02:00
Simon Rasmussen
336ad6453a Better travis config 2017-07-28 01:17:09 +02:00
Simon Rasmussen
24b81c6f94 Started ROS CI config 2017-07-24 19:12:00 +02:00
Simon Rasmussen
3be07d19be Merge pull request #1 from TAMS-Group/fork_master
Fix runtime issues
2017-07-24 18:49:45 +02:00
Henning
45480881ff Change ROS_ERROR_STREAM to LOG_ERROR. 2017-07-24 12:20:45 +02:00
Simon Rasmussen
dbcf8aeb41 Fixed SO_REUSEADDR being set after bind rather than before 2017-07-21 19:02:19 +02:00
Henning Kayser
75c3733eb7 Fix type warning in log output 2017-07-21 18:02:48 +02:00
Henning Kayser
d3637e9633 Fixing some typos. 2017-07-21 17:48:34 +02:00
Henning Kayser
4375ffecc6 Adds multiple retries to accept reverse connection
We observed that the accept failed nondeterministically in rare cases.
2017-07-21 17:48:34 +02:00
Henning Kayser
63691e038e Extend error messages
Extends error message to print invalid joint names.
Adds max_velocity as parameter descriptor in error message.
2017-07-21 17:48:12 +02:00
Henning Kayser
54a852305c Adds prefix to all joint names. 2017-07-21 17:33:28 +02:00
Henning Kayser
1e4934a199 Adds missing param max_velocity. 2017-07-21 17:32:13 +02:00
Simon Rasmussen
b5f9b69303 Fixed minor merge conflict 2017-07-19 17:43:59 +02:00
Simon Rasmussen
6e8b2ef5ca Fixed minor ur3 launch typos issue #98 2017-07-17 23:33:18 +02:00
Simon Rasmussen
a170b9f51e Fixed issues preventing from compiling on Kinetic 2017-07-17 23:30:39 +02:00
Simon Rasmussen
8e8a0428b0 Added testing for master board parsing and fixed unparsed fields 2017-07-09 04:04:22 +02:00
Simon Rasmussen
1e724dcd33 Added bitset parsing and setter for random data 2017-07-09 04:03:37 +02:00
Simon Rasmussen
79fd2ee864 Fixed missing include 2017-07-09 04:02:40 +02:00
Simon Rasmussen
88c9976e31 Removed more old files 2017-07-09 04:01:16 +02:00
Simon Rasmussen
b63e36b533 removed useless file 2017-07-09 02:55:33 +02:00
Simon Rasmussen
3a5fa23f6b Clang-format run 2017-07-09 02:54:49 +02:00
Simon Rasmussen
577fcdbf98 Fixed compiler warnings 2017-07-09 02:45:58 +02:00
Simon Rasmussen
fdaaacfe2c Clean up of old driver files 2017-07-09 02:45:02 +02:00
Simon Rasmussen
40fc986e7b Fixed jitter issues 2017-07-07 20:08:15 +02:00
Simon Rasmussen
210e0086bf socket improvment 2017-07-07 19:15:46 +02:00