Skip to content

Commit

Permalink
first moveit doc draft
Browse files Browse the repository at this point in the history
  • Loading branch information
mhubii committed Jul 29, 2023
1 parent fc46a8d commit 1a03eae
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 0 deletions.
1 change: 1 addition & 0 deletions lbr_fri_ros2_stack/doc/lbr_fri_ros2_stack.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Collection of packages for controlling the KUKA LBR iiwa / med through ROS 2.
- ``lbr_fri_msgs``: ``IDL``-equivalent of KUKA's ``nanopb`` message definitions.
- ``lbr_fri_ros2``: Exposes ``fri`` to ROS 2 topics / services.
- ``lbr_hardware_interface``: ``ros2_control`` hardware interface for the LBR.
- ``lbr_moveit_config```: ``MoveIt 2`` configurations for thr LBR.
- ``fri``: Integration of KUKA's Fast Robot Interface (FRI) into ROS 2 ``ament_cmake`` build system.

Installation
Expand Down
62 changes: 62 additions & 0 deletions lbr_moveit_config/doc/lbr_moveit_config.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
LBR MoveIt Config
=================
Documentation for generating (:ref:`Generate MoveIt Configuration`) and updating (:ref:`Update MoveIt Configuration`) the ``MoveIt 2`` configurations for the LBRs. For full documentation see `MoveIt Documentation <https://moveit.picknik.ai/main/index.html>`_.

Generate MoveIt Configuration
-----------------------------
This procedure applies to all LBRs: ``iiwa7``, ``iiwa14``, ``med7``, and ``med14``.

1. Make sure ``MoveIt 2`` is installed.

.. code-block:: bash
sudo apt install ros-$ROS_DISTRO-moveit*
2. Make sure the ``lbr_fri_ros2_stack`` is installed and **sourced**, see :ref:`Installation`.

3. Launch the setup assistant

.. code-block:: bash
ros2 launch moveit_setup_assistant setup_assistant.launch.py
4. .. dropdown:: Select the target ``xacro``, e.g. ``lbr_fri_ros2_stack_ws/install/lbr_description/share/lbr_description/urdf/iiwa7/iiwa7.urdf.xacro``, and ``Load Files``

.. thumbnail:: img/moveit_setup_assistant.png

5. Configure to your needs. Some configurations we used:

- ``Robot Poses``: Add ``zero`` and ``transport``
- ``MoveIt Controller``: ``Auto Add FollowJointsTrajectory``
- ``Perception``: select ``None``
- ``Launch``: Unselect all but ``MoveGroup Launch``, ``RViz Launch and Config``, and ``Setup Assistant Launch``
- ``Configuration Files``: ``browse`` output folder and ``Generate Package``

6. Some manual changes are required:

has_acceleration_limits: true
max_acceleration: 0 to float

arm_controller -> position_trajectory_controller

generate_demo_launch:

{"use_sim_time": True}
# additional_env={"DISPLAY": ":0"},


- Since ``URDF`` doesn't support acceleration limits, manually add acceleration limits in ``iiwa7_moveit_config/config/joint_limits.yaml``
- In the ``move_group.launch.py`` use the robot descriotion from ``lbr_description``
- In ``iiwa7_moveit_config/config/moveit_controllers.yaml`` change the ``arm_controller`` to ``position_trajectory_controller`` as in ``lbr_bringup/config/lbr_controllers.yml``

Update MoveIt Configuration
---------------------------
1. Make sure the ``lbr_fri_ros2_stack`` is installed and sourced, see :ref:`Installation`.

2. Run the setup assistant for the existing configuration.

.. code-block:: bash
ros2 launch iiwa7_moveit_config setup_assistant.launch.py # [iiwa7, iiwa14, med7, med14]
3. Update and save the configurations, similar to :ref:`Generate MoveIt Configuration`.

0 comments on commit 1a03eae

Please sign in to comment.