Port to Galactic. galactic
authorWalter Fetter Lages <w.fetter@ieee.org>
Tue, 9 Nov 2021 05:51:55 +0000 (02:51 -0300)
committerWalter Fetter Lages <w.fetter@ieee.org>
Tue, 9 Nov 2021 05:51:55 +0000 (02:51 -0300)
12 files changed:
CMakeLists.txt [new file with mode: 0644]
config/display.rviz [new file with mode: 0644]
launch/display.launch [deleted file]
launch/display.launch.xml [new file with mode: 0644]
launch/gazebo.launch [deleted file]
launch/gazebo.launch.xml [new file with mode: 0644]
launch/plier.launch [deleted file]
launch/plier.launch.xml [new file with mode: 0644]
launch/plier_sim.launch [deleted file]
manifest.xml [deleted file]
package.xml [new file with mode: 0644]
urdf/plier.urdf

diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644 (file)
index 0000000..ffd7642
--- /dev/null
@@ -0,0 +1,29 @@
+cmake_minimum_required(VERSION 3.8)
+project(plier_description)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+  add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package(<dependency> REQUIRED)
+
+install(DIRECTORY config launch meshes urdf
+       DESTINATION share/${PROJECT_NAME}
+)
+
+if(BUILD_TESTING)
+  find_package(ament_lint_auto REQUIRED)
+  # the following line skips the linter which checks for copyrights
+  # uncomment the line when a copyright and license is not present in all source files
+  #set(ament_cmake_copyright_FOUND TRUE)
+  # the following line skips cpplint (only works in a git repo)
+  # uncomment the line when this package is not in a git repo
+  #set(ament_cmake_cpplint_FOUND TRUE)
+  ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/config/display.rviz b/config/display.rviz
new file mode 100644 (file)
index 0000000..8748878
--- /dev/null
@@ -0,0 +1,177 @@
+Panels:
+  - Class: rviz_common/Displays
+    Help Height: 78
+    Name: Displays
+    Property Tree Widget:
+      Expanded:
+        - /Global Options1
+        - /Status1
+        - /RobotModel1
+        - /RobotModel1/Status1
+      Splitter Ratio: 0.5
+    Tree Height: 549
+  - Class: rviz_common/Selection
+    Name: Selection
+  - Class: rviz_common/Tool Properties
+    Expanded:
+      - /2D Goal Pose1
+      - /Publish Point1
+    Name: Tool Properties
+    Splitter Ratio: 0.5886790156364441
+  - Class: rviz_common/Views
+    Expanded:
+      - /Current View1
+    Name: Views
+    Splitter Ratio: 0.5
+  - Class: rviz_common/Time
+    Experimental: false
+    Name: Time
+    SyncMode: 0
+    SyncSource: ""
+Visualization Manager:
+  Class: ""
+  Displays:
+    - Alpha: 0.5
+      Cell Size: 1
+      Class: rviz_default_plugins/Grid
+      Color: 160; 160; 164
+      Enabled: true
+      Line Style:
+        Line Width: 0.029999999329447746
+        Value: Lines
+      Name: Grid
+      Normal Cell Count: 0
+      Offset:
+        X: 0
+        Y: 0
+        Z: 0
+      Plane: XY
+      Plane Cell Count: 10
+      Reference Frame: <Fixed Frame>
+      Value: true
+    - Alpha: 1
+      Class: rviz_default_plugins/RobotModel
+      Collision Enabled: false
+      Description File: ""
+      Description Source: Topic
+      Description Topic:
+        Depth: 5
+        Durability Policy: Volatile
+        History Policy: Keep Last
+        Reliability Policy: Reliable
+        Value: /robot_description
+      Enabled: true
+      Links:
+        All Links Enabled: true
+        Expand Joint Details: false
+        Expand Link Details: false
+        Expand Tree: false
+        Link Tree Style: Links in Alphabetic Order
+        base_link:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+          Value: true
+        link1:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+          Value: true
+        link2:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+          Value: true
+        plier_origin:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+      Name: RobotModel
+      TF Prefix: ""
+      Update Interval: 0
+      Value: true
+      Visual Enabled: true
+  Enabled: true
+  Global Options:
+    Background Color: 48; 48; 48
+    Fixed Frame: map
+    Frame Rate: 30
+  Name: root
+  Tools:
+    - Class: rviz_default_plugins/Interact
+      Hide Inactive Objects: true
+    - Class: rviz_default_plugins/MoveCamera
+    - Class: rviz_default_plugins/Select
+    - Class: rviz_default_plugins/FocusCamera
+    - Class: rviz_default_plugins/Measure
+      Line color: 128; 128; 0
+    - Class: rviz_default_plugins/SetInitialPose
+      Covariance x: 0.25
+      Covariance y: 0.25
+      Covariance yaw: 0.06853891909122467
+      Topic:
+        Depth: 5
+        Durability Policy: Volatile
+        History Policy: Keep Last
+        Reliability Policy: Reliable
+        Value: /initialpose
+    - Class: rviz_default_plugins/SetGoal
+      Topic:
+        Depth: 5
+        Durability Policy: Volatile
+        History Policy: Keep Last
+        Reliability Policy: Reliable
+        Value: /goal_pose
+    - Class: rviz_default_plugins/PublishPoint
+      Single click: true
+      Topic:
+        Depth: 5
+        Durability Policy: Volatile
+        History Policy: Keep Last
+        Reliability Policy: Reliable
+        Value: /clicked_point
+  Transformation:
+    Current:
+      Class: rviz_default_plugins/TF
+  Value: true
+  Views:
+    Current:
+      Class: rviz_default_plugins/Orbit
+      Distance: 1.2215003967285156
+      Enable Stereo Rendering:
+        Stereo Eye Separation: 0.05999999865889549
+        Stereo Focal Distance: 1
+        Swap Stereo Eyes: false
+        Value: false
+      Focal Point:
+        X: 0
+        Y: 0
+        Z: 0
+      Focal Shape Fixed Size: true
+      Focal Shape Size: 0.05000000074505806
+      Invert Z Axis: false
+      Name: Current View
+      Near Clip Distance: 0.009999999776482582
+      Pitch: 0.785398006439209
+      Target Frame: <Fixed Frame>
+      Value: Orbit (rviz)
+      Yaw: 0.785398006439209
+    Saved: ~
+Window Geometry:
+  Displays:
+    collapsed: false
+  Height: 846
+  Hide Left Dock: false
+  Hide Right Dock: false
+  QMainWindow State: 000000ff00000000fd000000040000000000000156000002b0fc0200000008fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb000000100044006900730070006c006100790073010000003d000002b0000000c900fffffffb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000010f000002b0fc0200000003fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000000a00560069006500770073010000003d000002b0000000a400fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000004b00000003efc0100000002fb0000000800540069006d00650100000000000004b00000025600fffffffb0000000800540069006d006501000000000000045000000000000000000000023f000002b000000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
+  Selection:
+    collapsed: false
+  Time:
+    collapsed: false
+  Tool Properties:
+    collapsed: false
+  Views:
+    collapsed: false
+  Width: 1200
+  X: 60
+  Y: 60
diff --git a/launch/display.launch b/launch/display.launch
deleted file mode 100644 (file)
index a113ced..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-<launch>\r
-  <arg name="model" />\r
-  <arg name="gui" default="False" />\r
-  <param\r
-    name="robot_description"\r
-    textfile="$(find plier_description)/urdf/plier.urdf" />\r
-  <param name="use_gui" value="$(arg gui)" />\r
-  <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" />\r
-  <node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher" />\r
-  <node name="rviz" pkg="rviz" type="rviz" args="-d $(find plier_description)/urdf.rviz" />\r
-</launch>
\ No newline at end of file
diff --git a/launch/display.launch.xml b/launch/display.launch.xml
new file mode 100644 (file)
index 0000000..86232bb
--- /dev/null
@@ -0,0 +1,29 @@
+<!--******************************************************************************
+                            Plier Description
+                            RViz Launch File
+          Copyright (C) 2014, 2021 Walter Fetter Lages <w.fetter@ieee.org>
+
+        This program is free software: you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation, either version 3 of the License, or
+        (at your option) any later version.
+
+        This program is distributed in the hope that it will be useful, but
+        WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+        Geneal Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see
+        <http://www.gnu.org/licenses/>.
+        
+*******************************************************************************-->
+\r
+<launch>\r
+       <arg name="gui" default="false"/>
+\r
+       <node pkg="tf2_ros" exec="static_transform_publisher" name="plier_origin_publisher" args="0 0 0 0 0 0 1 map plier_origin"/>
+       <node if="$(var gui)" name="joint_state_publisher" pkg="joint_state_publisher_gui" exec="joint_state_publisher_gui"/>
+       <include file="$(find-pkg-share plier_description)/launch/plier.launch.xml"/>
+       <node name="rviz" pkg="rviz2" exec="rviz2" args="-d $(find-pkg-share plier_description)/config/display.rviz"/>\r
+</launch>\r
diff --git a/launch/gazebo.launch b/launch/gazebo.launch
deleted file mode 100644 (file)
index c829339..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<launch>\r
-  <include file="$(find gazebo_worlds)/launch/empty_world.launch" />\r
-  <node name="tf_footprint_base" pkg="tf" type="static_transform_publisher" args="0 0 0 0 0 0 base_link base_footprint 40" />\r
-  <node name="spawn_model" pkg="gazebo" type="spawn_model" args="-file $(find plier)/urdf/plier.urdf -urdf -model plier" output="screen" />\r
-  <include file="$(find pr2_controller_manager)/controller_manager.launch" />\r
-  <node name="fake_joint_calibration" pkg="rostopic" type="rostopic"  args="pub /calibrated std_msgs/Bool true" />\r
-</launch>
\ No newline at end of file
diff --git a/launch/gazebo.launch.xml b/launch/gazebo.launch.xml
new file mode 100644 (file)
index 0000000..3fc4fc8
--- /dev/null
@@ -0,0 +1,39 @@
+<!--******************************************************************************
+                            Plier Description
+                            Gazebo Launch File
+          Copyright (C) 2014, 2021 Walter Fetter Lages <w.fetter@ieee.org>
+
+        This program is free software: you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation, either version 3 of the License, or
+        (at your option) any later version.
+
+        This program is distributed in the hope that it will be useful, but
+        WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+        Geneal Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see
+        <http://www.gnu.org/licenses/>.
+        
+*******************************************************************************-->
+
+<launch>
+       <arg name="pause" default="true"/>
+       <arg name="gui" default="true"/>
+       <arg name="use_sim_time" default="true"/>
+
+       <include file="$(find-pkg-share gazebo_ros)/launch/gazebo.launch.py">
+               <arg name="pause" value="$(var pause)"/>
+               <arg name="gui" value="$(var gui)"/>
+               <arg name="use_sim_time" value="$(var use_sim_time)"/>
+               <arg name="world" value="worlds/empty_sky.world" />
+       </include>
+
+       <include file="$(find-pkg-share plier_description)/launch/plier.launch.xml">
+               <arg name="use_sim_time" value="$(var use_sim_time)"/>
+       </include>
+
+       <node name="plier_spawner" pkg="gazebo_ros" exec="spawn_entity.py" args="-topic robot_description -entity plier" />
+</launch>
diff --git a/launch/plier.launch b/launch/plier.launch
deleted file mode 100644 (file)
index 8376d88..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-<launch>
-       <param name="robot_description" textfile="$(find plier_description)/urdf/plier.urdf" />
-       <node name="spawn_wam_object" pkg="gazebo" type="spawn_model" args="-urdf -param robot_description -model plier" respawn="false" output="screen" />
-</launch>
diff --git a/launch/plier.launch.xml b/launch/plier.launch.xml
new file mode 100644 (file)
index 0000000..87f8500
--- /dev/null
@@ -0,0 +1,29 @@
+<!--******************************************************************************
+                            Plier Description
+                            Plier Launch File
+          Copyright (C) 2014, 2021 Walter Fetter Lages <w.fetter@ieee.org>
+
+        This program is free software: you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation, either version 3 of the License, or
+        (at your option) any later version.
+
+        This program is distributed in the hope that it will be useful, but
+        WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+        Geneal Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see
+        <http://www.gnu.org/licenses/>.
+        
+*******************************************************************************-->
+
+<launch>
+       <arg name="use_sim_time" default="false"/>
+
+       <node name="robot_state_publisher" pkg="robot_state_publisher" exec="robot_state_publisher">
+               <param name="robot_description" value="$(command 'xacro $(find-pkg-share plier_description)/urdf/plier.urdf')" type="str"/>
+               <param name="use_sim_time" value="$(var use_sim_time)"/>
+       </node>
+</launch>
diff --git a/launch/plier_sim.launch b/launch/plier_sim.launch
deleted file mode 100644 (file)
index c9bf77f..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-<launch>
-       <!-- Start Gazebo -->
-       <include file="$(find gazebo_worlds)/launch/empty_world.launch"/>
-
-       <include file="$(find plier_description)/launch/plier.launch"/>
-</launch>
diff --git a/manifest.xml b/manifest.xml
deleted file mode 100644 (file)
index 97a62e2..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-<package>\r
-  <description brief="plier_description">plier_description</description>\r
-  <depend package="gazebo" />\r
-  <author>Walter Fetter Lags</author>\r
-  <license>BSD</license>\r
-</package>
\ No newline at end of file
diff --git a/package.xml b/package.xml
new file mode 100644 (file)
index 0000000..e4052c8
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
+<package format="3">
+  <name>plier_description</name>
+  <version>2.0.0</version>
+  <description>Laparoscopic plier description</description>
+  <maintainer email="fetter@ece.ufrgs.br">Walter Fetter Lages</maintainer>
+  <license>GPLv3</license>
+
+  <buildtool_depend>ament_cmake</buildtool_depend>
+
+  <test_depend>ament_lint_auto</test_depend>
+  <test_depend>ament_lint_common</test_depend>
+
+  <export>
+    <build_type>ament_cmake</build_type>
+    <gazebo_ros gazebo_model_path="${prefix}/.."/>
+  </export>
+</package>
index 6ad1514..dbb1de5 100644 (file)
@@ -1,7 +1,14 @@
+<?xml version="1.0"?>\r
 <robot name="plier">\r
 \r
-  <link name="base_link">\r
+  <link name="plier_origin"/>\r
+  \r
+  <joint name="plier_origin_joint" type="fixed">\r
+       <parent link="plier_origin"/>\r
+       <child link="base_link"/>\r
+  </joint>\r
 \r
+  <link name="base_link">\r
     <inertial>\r
       <origin xyz="-2.9946E-09 2.3647E-09 0.038028" rpy="0 0 0" />\r
       <mass value="0.065887" />\r
@@ -27,7 +34,6 @@
   </link>\r
 \r
   <link name="link1">\r
-\r
     <inertial>\r
       <origin xyz="0.00018812 -0.011115 0.0015573" rpy="0 0 0" />\r
       <mass value="0.00011808" />\r
         <mesh filename="package://plier_description/meshes/link1.stl" />\r
       </geometry>\r
     </collision>\r
-\r
   </link>\r
 \r
-  <joint name="joint1" type="revolute">\r
+  <joint name="mimic_joint" type="revolute">\r
     <origin xyz="-0.00125 0.00098997 0.3459" rpy="-1.5708 -6.123E-17 -1.5708" />\r
     <parent link="base_link" />\r
     <child link="link1" />\r
     <axis xyz="0 0 1" />\r
-    <limit lower="-0.05" upper="0.05" effort="0.31" velocity="0.25" />\r
+    <limit lower="-0.05" upper="0.0" effort="0.31" velocity="0.25" />\r
+    <mimic joint="joint" multiplier="-1.0" offset="0.0"/>\r
   </joint>\r
 \r
   <link name="link2">\r
         <mesh filename="package://plier_description/meshes/link2.stl" />\r
       </geometry>\r
     </collision>\r
-\r
   </link>\r
 \r
-  <joint name="joint2" type="revolute">\r
+  <joint name="joint" type="revolute">\r
     <origin xyz="0.00025 -0.00098997 0.3459" rpy="-1.5708 -6.123E-17 -1.5708" />\r
     <parent link="base_link" />\r
     <child link="link2" />\r
     <axis xyz="0 0 1" />\r
-    <limit lower="-0.05" upper="0.05" effort="0.31" velocity="0.25" />\r
+    <limit lower="0.0" upper="0.05" effort="0.31" velocity="0.25" />\r
+    \r
   </joint>\r
 \r
   <gazebo reference="base_link">