Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rolling -> Humble backport #225

Merged
merged 47 commits into from
Nov 20, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
03cd753
humble -> rolling, ubuntu 22.04 -> 24.04 (#180)
mhubii Oct 19, 2024
a5071d9
ign -> gz
mhubii Oct 19, 2024
9f7d243
moved configuration files to lbr_description for stand-alone urdf use
mhubii Oct 19, 2024
8832fc0
moved configuration files to lbr_description for stand-alone urdf use
mhubii Oct 19, 2024
4c02bef
updated moveit
mhubii Oct 19, 2024
9b65978
robot name prefix in config files (#189)
mhubii Oct 19, 2024
f76be58
controller modifications for name prefix (#189)
mhubii Oct 19, 2024
b33aec2
fixed lambda capture for rt prio
mhubii Oct 19, 2024
88bd630
fixed licenses
mhubii Oct 19, 2024
5e21032
added system config to launch arguments
mhubii Oct 20, 2024
62a5cfa
fixed the default path to system config
mhubii Oct 20, 2024
0115ba2
rviz_config -> rviz_cfg
mhubii Oct 20, 2024
dae64a8
added a kinematics class
mhubii Oct 20, 2024
ffe3fac
added a twist controller
mhubii Oct 20, 2024
b9c1c43
turn off controller in case to command are received
mhubii Oct 20, 2024
27fcbd4
added default values for sys cfg
mhubii Oct 20, 2024
bb31bcc
added a floating link with name prefix (#189)
mhubii Oct 21, 2024
079232b
bundling types in shared header
mhubii Oct 22, 2024
ea11f1e
replaced types among interfaces
mhubii Oct 22, 2024
2171bd8
added a N_JNTS alias to types
mhubii Oct 22, 2024
ac36e53
added a worker class
mhubii Oct 22, 2024
74afbb8
removed redundant members
mhubii Oct 22, 2024
ebe74f6
Merge pull request #214 from lbr-stack/dev-rolling-worker
mhubii Oct 22, 2024
48f92c1
moved the FT estimation into an asynchronous thread (#213)
mhubii Oct 22, 2024
acde47a
Merge pull request #213 from lbr-stack/dev-rolling-admittance
mhubii Oct 22, 2024
88945b6
added prefix (#189)
mhubii Oct 23, 2024
218d723
added unique name to system interface (#189)
mhubii Oct 23, 2024
cb113b1
updating doi (https://github.com/openjournals/joss-reviews/issues/6138)
mhubii Nov 16, 2024
5fdaed9
tip frame twist command support (#163)
mhubii Nov 18, 2024
836f30c
initial admittance controller impl (#163)
mhubii Nov 18, 2024
ccab2db
pid -> exp smooth + exp smooth with time constant (#163)
mhubii Nov 19, 2024
78462d4
addressed review (https://github.com/lbr-stack/lbr_fri_ros2_stack/pul…
mhubii Nov 19, 2024
412922e
moved controller config for standalone URDF use
mhubii Nov 19, 2024
afda9c9
moved controller config for standalone URDF use
mhubii Nov 19, 2024
26f5022
updated documentation (#163)
mhubii Nov 19, 2024
a058918
Merge pull request #220 from lbr-stack/dev-rolling-admittance
mhubii Nov 19, 2024
5c84eb1
added backport workflow
mhubii Nov 19, 2024
f92ee26
Merge pull request #222 from lbr-stack/dev-rolling-backport
mhubii Nov 19, 2024
eff5a63
added merge commit skip
mhubii Nov 19, 2024
7c00ac9
added multi-dof gains (#163)
mhubii Nov 20, 2024
8749b09
Merge pull request #224 from lbr-stack/dev-rolling-gains
mhubii Nov 20, 2024
5bc524c
Revert "humble -> rolling, ubuntu 22.04 -> 24.04 (#180)"
mhubii Nov 20, 2024
cf4030e
Revert "ign -> gz"
mhubii Nov 20, 2024
7da8f2a
addressed humble compatability (https://github.com/lbr-stack/lbr_fri_…
mhubii Nov 20, 2024
deb2b55
revert moveit configs for humble
mhubii Nov 20, 2024
7afb59f
release notes and version bump 2.1.2 -> 2.2.0
mhubii Nov 20, 2024
8639214
fixed increment
mhubii Nov 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,26 @@
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Changelog for package LBR FRI ROS 2 Stack
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Humble v2.2.0 (2024-11-20)
--------------------------
This release backports new ``rolling`` features to ``humble``. Following has changed:

* Related PRs:

* https://github.com/lbr-stack/lbr_fri_ros2_stack/pull/213 and https://github.com/lbr-stack/lbr_fri_ros2_stack/pull/214

* Joints and links are now prefixed with ``lbr_`` (i.e. the robot name)
* Robot state publisher has no ``lbr/`` prefix anymore
* async + deactivateable FT estimation
* Issue with setting real-time priority fixed
* Modifiable source for ``lbr_system_config.yaml`` in launch files

* https://github.com/lbr-stack/lbr_fri_ros2_stack/pull/220

* PID on joint position commands replaced by simpler exponential filter (please test robot in T1 mode as this will affect your control)
* Introduction of twist and admittance controllers
* Configurations from ``lbr_ros2_control`` now in ``lbr_description`` (for stand alone URDF use)

Humble v2.1.2 (2024-10-18)
--------------------------
* Adds MoveIt Servo demo, related to https://github.com/lbr-stack/lbr_fri_ros2_stack/issues/50 and https://github.com/lbr-stack/lbr_fri_ros2_stack/issues/211
Expand Down
6 changes: 3 additions & 3 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,6 @@ authors:


title: "LBR-Stack: ROS 2 and Python Integration of KUKA FRI for Med and IIWA Robots"
version: 2.1.2
doi: 10.48550/arXiv.2311.12709
date-released: 2024-10-18
version: 2.2.0
doi: 10.21105/joss.06138
date-released: 2024-11-20
22 changes: 13 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,8 @@ Full documentation available on [Read the Docs](https://lbr-stack.readthedocs.io
```shell
source install/setup.bash
ros2 launch lbr_bringup rviz.launch.py \
rviz_config_pkg:=lbr_bringup \
rviz_config:=config/mock.rviz
rviz_cfg_pkg:=lbr_bringup \
rviz_cfg:=config/mock.rviz
```

Now, run the [demos](https://lbr-stack.readthedocs.io/en/latest/lbr_fri_ros2_stack/lbr_demos/doc/lbr_demos.html). To get started with the real robot, checkout the [Hardware Setup](https://lbr-stack.readthedocs.io/en/latest/lbr_fri_ros2_stack/lbr_fri_ros2_stack/doc/hardware_setup.html).
Expand All @@ -88,13 +88,17 @@ Now, run the [demos](https://lbr-stack.readthedocs.io/en/latest/lbr_fri_ros2_sta
If you enjoyed using this repository for your work, we would really appreciate ❤️ if you could leave a ⭐ and / or cite it, as it helps us to continue offering support.

```
@misc{huber2023lbrstack,
title={LBR-Stack: ROS 2 and Python Integration of KUKA FRI for Med and IIWA Robots},
author={Martin Huber and Christopher E. Mower and Sebastien Ourselin and Tom Vercauteren and Christos Bergeles},
year={2023},
eprint={2311.12709},
archivePrefix={arXiv},
primaryClass={cs.RO}
@article{Huber2024,
doi = {10.21105/joss.06138},
url = {https://doi.org/10.21105/joss.06138},
year = {2024},
publisher = {The Open Journal},
volume = {9},
number = {103},
pages = {6138},
author = {Martin Huber and Christopher E. Mower and Sebastien Ourselin and Tom Vercauteren and Christos Bergeles},
title = {LBR-Stack: ROS 2 and Python Integration of KUKA FRI for Med and IIWA Robots},
journal = {Journal of Open Source Software}
}
```

Expand Down
24 changes: 12 additions & 12 deletions lbr_bringup/config/gazebo.rviz
Original file line number Diff line number Diff line change
Expand Up @@ -67,59 +67,59 @@ Visualization Manager:
Expand Link Details: false
Expand Tree: false
Link Tree Style: Links in Alphabetic Order
link_0:
lbr_floating_link:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_1:
lbr_link_0:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_2:
lbr_link_1:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_3:
lbr_link_2:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_4:
lbr_link_3:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_5:
lbr_link_4:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_6:
lbr_link_5:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_7:
lbr_link_6:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_ee:
lbr_link_7:
Alpha: 1
Show Axes: false
Show Trail: false
world:
Value: true
lbr_link_ee:
Alpha: 1
Show Axes: false
Show Trail: false
Mass Properties:
Inertia: false
Mass: false
Name: RobotModel
TF Prefix: lbr
TF Prefix: ""
Update Interval: 0
Value: true
Visual Enabled: true
Expand Down
24 changes: 12 additions & 12 deletions lbr_bringup/config/hardware.rviz
Original file line number Diff line number Diff line change
Expand Up @@ -68,59 +68,59 @@ Visualization Manager:
Expand Link Details: false
Expand Tree: false
Link Tree Style: Links in Alphabetic Order
link_0:
lbr_floating_link:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_1:
lbr_link_0:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_2:
lbr_link_1:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_3:
lbr_link_2:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_4:
lbr_link_3:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_5:
lbr_link_4:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_6:
lbr_link_5:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_7:
lbr_link_6:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_ee:
lbr_link_7:
Alpha: 1
Show Axes: false
Show Trail: false
world:
Value: true
lbr_link_ee:
Alpha: 1
Show Axes: false
Show Trail: false
Mass Properties:
Inertia: false
Mass: false
Name: RobotModel
TF Prefix: lbr
TF Prefix: ""
Update Interval: 0
Value: true
Visual Enabled: true
Expand Down
24 changes: 12 additions & 12 deletions lbr_bringup/config/mock.rviz
Original file line number Diff line number Diff line change
Expand Up @@ -67,59 +67,59 @@ Visualization Manager:
Expand Link Details: false
Expand Tree: false
Link Tree Style: Links in Alphabetic Order
link_0:
lbr_floating_link:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_1:
lbr_link_0:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_2:
lbr_link_1:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_3:
lbr_link_2:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_4:
lbr_link_3:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_5:
lbr_link_4:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_6:
lbr_link_5:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_7:
lbr_link_6:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link_ee:
lbr_link_7:
Alpha: 1
Show Axes: false
Show Trail: false
world:
Value: true
lbr_link_ee:
Alpha: 1
Show Axes: false
Show Trail: false
Mass Properties:
Inertia: false
Mass: false
Name: RobotModel
TF Prefix: lbr
TF Prefix: ""
Update Interval: 0
Value: true
Visual Enabled: true
Expand Down
8 changes: 4 additions & 4 deletions lbr_bringup/doc/lbr_bringup.rst
Original file line number Diff line number Diff line change
Expand Up @@ -114,8 +114,8 @@ This launch file will spin up ``RViz`` for visualization. It will (see `rviz.lau
.. code:: bash

ros2 launch lbr_bringup rviz.launch.py \
rviz_config_pkg:=lbr_bringup \
rviz_config:=config/mock.rviz # [gazebo.rviz, hardware.rviz, mock.rviz]
rviz_cfg_pkg:=lbr_bringup \
rviz_cfg:=config/mock.rviz # [gazebo.rviz, hardware.rviz, mock.rviz]

.. note::
List all arguments for the launch file via ``ros2 launch lbr_bringup rviz.launch.py -s``.
Expand Down Expand Up @@ -156,8 +156,8 @@ The below shows an example of the `rviz.launch.py <https://github.com/lbr-stack/
ld = LaunchDescription()

# launch arguments
ld.add_action(RVizMixin.arg_rviz_config())
ld.add_action(RVizMixin.arg_rviz_config_pkg())
ld.add_action(RVizMixin.arg_rviz_cfg())
ld.add_action(RVizMixin.arg_rviz_cfg_pkg())

# rviz
ld.add_action(RVizMixin.node_rviz())
Expand Down
10 changes: 6 additions & 4 deletions lbr_bringup/launch/gazebo.launch.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from launch import LaunchDescription
from launch.substitutions import LaunchConfiguration, PathJoinSubstitution
from launch.substitutions import LaunchConfiguration, PythonExpression
from lbr_bringup.description import LBRDescriptionMixin
from lbr_bringup.gazebo import GazeboMixin
from lbr_bringup.ros2_control import LBRROS2ControlMixin
Expand All @@ -13,15 +13,17 @@ def generate_launch_description() -> LaunchDescription:
ld.add_action(LBRDescriptionMixin.arg_robot_name())
ld.add_action(
LBRROS2ControlMixin.arg_ctrl()
) # Gazebo loads controller configuration through lbr_description/gazebo/*.xacro from lbr_ros2_control/config/lbr_controllers.yaml
) # Gazebo loads controller configuration through lbr_description/gazebo/*.xacro from lbr_description/ros2_control/lbr_controllers.yaml

# static transform world -> robot_name/world
# static transform world -> <robot_name>_floating_link
world_robot_tf = [0, 0, 0, 0, 0, 0] # keep zero
ld.add_action(
LBRDescriptionMixin.node_static_tf(
tf=world_robot_tf,
parent="world",
child=PathJoinSubstitution([LaunchConfiguration("robot_name"), "world"]),
child=PythonExpression(
["'", LaunchConfiguration("robot_name"), "' + '_floating_link'"]
),
)
)

Expand Down
15 changes: 10 additions & 5 deletions lbr_bringup/launch/hardware.launch.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from launch import LaunchDescription
from launch.actions import RegisterEventHandler
from launch.event_handlers import OnProcessStart
from launch.substitutions import LaunchConfiguration, PathJoinSubstitution
from launch.substitutions import LaunchConfiguration, PythonExpression
from lbr_bringup.description import LBRDescriptionMixin
from lbr_bringup.ros2_control import LBRROS2ControlMixin

Expand All @@ -12,17 +12,20 @@ def generate_launch_description() -> LaunchDescription:
# launch arguments
ld.add_action(LBRDescriptionMixin.arg_model())
ld.add_action(LBRDescriptionMixin.arg_robot_name())
ld.add_action(LBRDescriptionMixin.arg_port_id())
ld.add_action(LBRROS2ControlMixin.arg_sys_cfg_pkg())
ld.add_action(LBRROS2ControlMixin.arg_sys_cfg())
ld.add_action(LBRROS2ControlMixin.arg_ctrl_cfg_pkg())
ld.add_action(LBRROS2ControlMixin.arg_ctrl_cfg())
ld.add_action(LBRROS2ControlMixin.arg_ctrl())

# static transform world -> robot_name/world
# static transform world -> <robot_name>_floating_link
ld.add_action(
LBRDescriptionMixin.node_static_tf(
tf=[0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
parent="world",
child=PathJoinSubstitution([LaunchConfiguration("robot_name"), "world"]),
child=PythonExpression(
["'", LaunchConfiguration("robot_name"), "' + '_floating_link'"]
),
)
)

Expand All @@ -36,7 +39,9 @@ def generate_launch_description() -> LaunchDescription:
ld.add_action(robot_state_publisher)

# ros2 control node
ros2_control_node = LBRROS2ControlMixin.node_ros2_control(use_sim_time=False)
ros2_control_node = LBRROS2ControlMixin.node_ros2_control(
use_sim_time=False, robot_description=robot_description
)
ld.add_action(ros2_control_node)

# joint state broad caster and controller on ros2 control node start
Expand Down
Loading
Loading