Code Monkey home page Code Monkey logo

panda_simulation's Introduction

panda_simulation

Panda in Gazebo

This package was written for ROS melodic running under Ubuntu 18.04. Run the following commands to make sure that all additional packages are installed:

mkdir -p catkin_ws/src
cd catkin_ws/src
git clone https://github.com/erdalpekel/panda_simulation.git
git clone https://github.com/erdalpekel/panda_moveit_config.git
git clone --branch simulation https://github.com/erdalpekel/franka_ros.git
cd ..
sudo apt-get install libboost-filesystem-dev
rosdep install --from-paths src --ignore-src -y --skip-keys libfranka
cd ..

It is also important that you build the libfranka library from source and pass its directory to catkin_make when building this ROS package as described in this tutorial.

Currently it includes a controller parameter config file and a launch file to launch the Gazebo simulation environment and the Panda robot from FRANKA EMIKA in it with the necessary controllers.

Build the catkin workspace and run the simulation:

catkin_make -j4 -DCMAKE_BUILD_TYPE=Release -DFranka_DIR:PATH=/path/to/libfranka/build
source devel/setup.bash
roslaunch panda_simulation simulation.launch

Depending on your operating systems language you might need to export the numeric type so that rviz can read the floating point numbers in the robot model correctly:

export LC_NUMERIC="en_US.UTF-8"

Otherwise, the robot will appear in rviz in a collapsed state.

You can see the full explanation in my blog post.

Changelog:

MoveIt! constraint-aware planning

This repository was extended with a ROS node that communicates with the MoveIt! Planning Scene API. It makes sure that the motion planning pipeline avoids collision objects in the environment specified by the user in a separate directory (~/.panda_simulation) as json files.

Publishing a box at Panda's hand in Gazebo

This repository was extended with a node that publishes a simple box object in the Gazebo simulation at the hand of the robot. The position of this box will get updated as soon as the robot moves.

Visual Studio Code Remote Docker

I have added configuration files and additional setup scripts for developing and using this ROS package within a Docker container. Currently user interfaces for Gazebo and RViz are not supported.

Position based trajectory execution

The joint specifications in Gazebo were changed from an effort interface to position based interface. Furthermore, the PID controller was substituted with the simple gazebo internal position based control mechanism for a more stable movement profile of the robot. A custom joint position based controller was implemented in order to set the initial joint states of the robot to a valid configuration.

Automatic robot state initialization

A separate ROS node was implemented that starts a custom joint position controller and initializes the robot with a specific configuration. It switches back to the default controllers after the robot reaches the desired state.

Panda state initialization in Gazebo

Panda web interface

A minimalist web interface based on ReactJS is showcased which can visualize the robot joint data and the visual state in real-time in the browser.

Panda web interface

Panda real-time collision detection

We present a real-time collision detection algorithm that was developed for the Panda robotic arm and runs on the GPU with OpenCL.

The collision detection feature can be enabled in the configuration stage by passing the -DSAFETY=1 option to catkin_make.

In order to start the simulation with the collision detection feature enabled run the following command:

roslaunch panda_simulation simulation.launch safety:=true pointcloud_viewer:=true

Panda real-time collision detection

panda_simulation's People

Contributors

erdalpekel avatar marcoesposito1988 avatar rickstaa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

panda_simulation's Issues

problem with catkin_make

Hi!

Thank you a lot for this tutorial.
But i have a problem while doing:
catkin_make -j4 -DCMAKE_BUILD_TYPE=Release -DFranka_DIR:PATH=~/path/to/libfranka/build

I got an error:

CMake Error at franka_ros/franka_gripper/CMakeLists.txt:17 (find_package):
By not providing "FindFranka.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Franka", but
CMake did not find one.

Could not find a package configuration file provided by "Franka" (requested
version 0.5.0) with any of the following names:

FrankaConfig.cmake
franka-config.cmake

Add the installation prefix of "Franka" to CMAKE_PREFIX_PATH or set
"Franka_DIR" to a directory containing one of the above files. If "Franka"
provides a separate development package or SDK, be sure it has been
installed.

-- Configuring incomplete, errors occurred!
See also "/home/pdc-labor/pandanew_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/pdc-labor/pandanew_ws/build/CMakeFiles/CMakeError.log".
Makefile:3498: recipe for target 'cmake_check_build_system' failed
make: *** [cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed
pdc-labor@pdclabor-ThinkPad-E480:~/pandanew_ws$

Why can it happen?

Files missing and version problem

Your description says your packages are based on ROS melodic, but actually your franka_ros package forked from franka https://github.com/erdalpekel/franka_ros seems pulled from kinetic. I wonder if there will be conflict in such way.

Another problem is, I didn't find the file franka_description/robots/panda.transmission.xacro in your franka_ros package as your description.

No p gain specified for pid

Hello @erdalpekel,

the simulation and the gazebo integration works fine now. But I am getting this error for every joint(panda_joint1, panda_joint2, etc.), that I didn't specify pid gains. Upon launching the simulation I get this error:

[ERROR] [1584377149.867905243, 0.071000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/panda_joint1

I could of course just specify any pid gains like this thread suggests. But I'm not entirely sure if I would be doing the right thing, because I'm not an engineer and thus not having much knowledge of the parameters.

Do you also get this error? Should I just ignore it or is it important for the simulation in Gazebo?

Best regards,
Christian

robot_control_node fails after startup

Hi Erdal,

unfortunately I can't make the robot to move after startup of RVIZ and Gazebo. The following errors are being printed to console:

image
Afterwards this fails:
image

A quick look in the log file reveals this:

  1. spawn_urdf-4.log
    image
  2. master.log
    image

I built the newest version of libfranka from source. Does it require an older version of libfranka maybe?

Problem with Controlling Hand

Hi,

First off, thank you for sharing these tutorials and these files... They are a big help... :)

I had a problem... I'm not sure how i'm supposed to control the robot hand...

For example, when i try using the moveit commander command line interface, and try using either the groups 'hand' or 'panda_arm_hand', i always get the message Failed while moving to goal.

Using the group 'panda_arm' works correctly.

Thanks... :)
Screenshot from 2019-04-26 18-44-24
Screenshot from 2019-04-26 19-26-57

Gazebo doesn't support mimic joints

The problem described in issue #20 is still present, and is caused by Gazebo not supporting mimic joints out of the box. I remediated it by deleting line 77 in hand.xacro and making the fingers independent, but I suspect this is not the best solution?

Missing include

When following your blockposts and the README to install the panda simulator I stumbled across the following issue when launching the simulator:

[FATAL] [1561640151.166516932]: Exception while loading controller manager 'moveit_simple_controller_manager/MoveItSimpleControllerManager': According to the loaded plugin descriptions the class moveit_simple_controller_manager/MoveItSimpleControllerManager with base class type moveit_controller_manager::MoveItControllerManager does not exist. Declared types are moveit_fake_controller_manager/MoveItFakeControllerManager

I fixed it by adding <depend>moveit_simple_controller_manager</depend> to the dependencies in package.xml.

Broadcasting objects from Gazebo to Rviz

Dear @erdalpekel,

I am now trying to create a planning scene in gazebo, but doesn't know how to publish that to Rviz. I tried it with the box you created through the box.launch file. But it doesn't show up in Rviz, I don't know if this should be the case or not.

I tried to understand the hierachy of the launch files with the rqt_graph, but didn't find it really helpful, because the "box_state_publisher" and "robot_state_publisher" seem to have the same connections from the "gazebo" node to the "move_group" node.

gazebo_panda_simulation_and_box

Can you give me some advice on how to publish the box to Rviz?

Kind regards,
Christian

Can't finish pick and place task

Hi, I notice that you devide controller into two parts : panda_arm_controller and panda_hand_controller. I am confused that panda_hand_controller reports status FAILED when I excute the pick place task ( https://github.com/ros-planning/moveit_tutorials/tree/master/doc/pick_place ). The more information (may related) is below:
[ INFO] [1692021710.716025900, 14.892000000]: Controller 'panda_arm_controller' successfully finished
[ERROR] [1692021710.717598532, 14.894000000]: Joints on incoming goal don't match the controller joints.
[ WARN] [1692021710.722905013, 14.896000000]: Controller 'panda_hand_controller' failed with error INVALID_JOINTS:
[ WARN] [1692021710.723514930, 14.896000000]: Controller handle panda_hand_controller reports status FAILED
[ INFO] [1692021710.723870417, 14.896000000]: Completed trajectory execution with status FAILED ...
[ INFO] [1692021711.742351492, 15.789000000]: Planning attempt 1 of at most 1
[ERROR] [1692021711.742836901, 15.790000000]: Attached body 'object' not found

By the way, I check that the panda_hand_controller was loaded already. But it warns me that Group state 'ready' doesn't specify all group joints in group 'panda_arm_hand'. panda_finger_joint1 is missing. I use the noetic. Waiting for your apply!

Self collision at start pose

Hello @erdalpekel,

first, thanks for your great work implementing FRANKA into Gazebo.

Regarding my problem:
I'm trying for a few days now to implement your model of FRANKA into gazebo and it works more or less. I followed your tutorial and also installed libfranka from source. Worked great so far. But then I run roslaunch panda_simulation simulation.launch.

It opens two windows: Rviz(upper picture) and Gazebo(lower picture).
Screenshot_2020-03-10_rviz
Screenshot_2020-03-10_gazebo

As you can see FRANKA is colliding with itself and so I can't do any planning nor executing the paths in Rviz.

Here is the full output from the launch command: full_output_from_launch.txt

I'm working with Ubuntu 18.04 and ROS Melodic.

Do you have an idea what the problem could be and how to solve it?

Best regards,
Christian

when i ran catkin_make i have got this problem

-- +++ processing catkin package: 'cvg_sim_gazebo'
-- ==> add_subdirectory(tum_simulator/cvg_sim_gazebo)
CMake Warning at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:76 (find_package):
Could not find a package configuration file provided by "gazebo_ros" with
any of the following names:

gazebo_rosConfig.cmake
gazebo_ros-config.cmake

Add the installation prefix of "gazebo_ros" to CMAKE_PREFIX_PATH or set
"gazebo_ros_DIR" to a directory containing one of the above files. If
"gazebo_ros" provides a separate development package or SDK, be sure it has
been installed.
Call Stack (most recent call first):
tum_simulator/cvg_sim_gazebo/CMakeLists.txt:7 (find_package)

-- Could not find the required component 'gazebo_ros'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by "gazebo_ros" with
any of the following names:

gazebo_rosConfig.cmake
gazebo_ros-config.cmake

Add the installation prefix of "gazebo_ros" to CMAKE_PREFIX_PATH or set
"gazebo_ros_DIR" to a directory containing one of the above files. If
"gazebo_ros" provides a separate development package or SDK, be sure it has
been installed.
Call Stack (most recent call first):
tum_simulator/cvg_sim_gazebo/CMakeLists.txt:7 (find_package)

-- Configuring incomplete, errors occurred!
See also "/home/islamusma/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/islamusma/catkin_ws/build/CMakeFiles/CMakeError.log".
make: *** [cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed

please help me to get rid from this problem , i look forward for your swift relply

Error while making

Hello @erdalpekel, I am trying to build the panda_simulation using the instruction in the read me.
I am using ubuntu 20.04.
So my build fails, the screenshot is below( also if you see top of screenshot it says Error2 and waiting for unfinished jobs)
Error_1_build_fail

But when I build in the beginning I also get a cmake warning regarding OpenMesh as shown in the screenshot below:

Warning_1

I installed OpenMesh from source and I followed the instructions here: https://www.graphics.rwth-aachen.de/media/openmesh_static/Documentations/OpenMesh-6.2-Documentation/a00030.html

Is the cmake warning related to the repository not building?
do you have any suggestions for me, how to build it?

Grippers not physical

Hi !

Very nice work there. I actually try to push a cube with the grippers but they are not colliding with it. The grippers go through like there was nothing there. I am sure that my cube model is okay since a different robot (iCub) manage to push it.

Best,

Quentin

Error: Joints on incoming goal don't match the controller joints.

I followed the exact steps as suggested by you but I face this issue when I try to open the gripper in gazebo using the "panda_arm_hand" group.

I use the panda_simulation/launch/simulation.launch file from your code when I face this error.

`[ INFO] [1598501920.670434928, 22.629000000]: Constructing new MoveGroup connection for group 'panda_arm_hand' in namespace ''

[ INFO] [1598501920.760571710, 22.699000000]: Ready to take commands for planning group panda_arm_hand.

[ INFO] [1598501920.760658933, 22.699000000]: Looking around: no

[ INFO] [1598501920.760693550, 22.699000000]: Replanning: no

[ INFO] [1598501928.376091787, 29.183000000]: Combined planning and execution request received for MoveGroup action. Forwarding to planning and execution pipeline.

[ INFO] [1598501928.376485151, 29.183000000]: Planning attempt 1 of at most 1

[ INFO] [1598501928.376780958, 29.183000000]: Starting state is just outside bounds (joint 'panda_finger_joint1'). Assuming within bounds.

[ INFO] [1598501928.379398700, 29.186000000]: Planner configuration 'panda_arm_hand' will use planner 'geometric::RRTConnect'. Additional configuration parameters will be set when the planner is constructed.

[ INFO] [1598501928.381120592, 29.188000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.381200766, 29.188000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.381370661, 29.188000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.381435984, 29.188000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.397475351, 29.203000000]: RRTConnect: Created 5 states (2 start + 3 goal)

[ INFO] [1598501928.398498527, 29.204000000]: RRTConnect: Created 4 states (2 start + 2 goal)

[ INFO] [1598501928.400501796, 29.206000000]: RRTConnect: Created 6 states (2 start + 4 goal)

[ INFO] [1598501928.407793452, 29.211000000]: RRTConnect: Created 6 states (2 start + 4 goal)

[ INFO] [1598501928.408319705, 29.212000000]: ParallelPlan::solve(): Solution found by one or more threads in 0.027791 seconds

[ INFO] [1598501928.409109733, 29.213000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.409614384, 29.213000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.409819244, 29.213000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.410176520, 29.213000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.415975635, 29.216000000]: RRTConnect: Created 5 states (2 start + 3 goal)

[ INFO] [1598501928.417308157, 29.218000000]: RRTConnect: Created 4 states (2 start + 2 goal)

[ INFO] [1598501928.418953694, 29.220000000]: RRTConnect: Created 6 states (2 start + 4 goal)

[ INFO] [1598501928.421542082, 29.221000000]: RRTConnect: Created 6 states (2 start + 4 goal)

[ INFO] [1598501928.422544058, 29.221000000]: ParallelPlan::solve(): Solution found by one or more threads in 0.013612 seconds

[ INFO] [1598501928.423268307, 29.221000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.423932299, 29.221000000]: RRTConnect: Starting planning with 1 states already in datastructure

[ INFO] [1598501928.430913479, 29.227000000]: RRTConnect: Created 5 states (2 start + 3 goal)

[ INFO] [1598501928.435351748, 29.231000000]: RRTConnect: Created 5 states (2 start + 3 goal)

[ INFO] [1598501928.435927266, 29.232000000]: ParallelPlan::solve(): Solution found by one or more threads in 0.012887 seconds

[ INFO] [1598501928.468093214, 29.260000000]: SimpleSetup: Path simplification took 0.031553 seconds and changed from 3 to 2 states

[ INFO] [1598501928.469602657, 29.260000000]: Planning adapters have added states at index positions: [ 0 ]

[ INFO] [1598501928.474335734, 29.265000000]: Disabling trajectory recording

[ERROR] [1598501928.491541561, 29.279000000]: Joints on incoming goal don't match the controller joints.

[ WARN] [1598501928.493957406, 29.281000000]: Controller panda_hand_controller failed with error INVALID_JOINTS: 

[ INFO] [1598501930.607518792, 31.027000000]: Controller panda_arm_controller successfully finished

[ WARN] [1598501930.607690853, 31.027000000]: Controller handle panda_hand_controller reports status FAILED

[ INFO] [1598501930.607848520, 31.027000000]: Completed trajectory execution with status FAILED ...

[ INFO] [1598501930.629964474, 31.046000000]: ABORTED: Solution found but controller failed during execution

`

Gazebo crash when gazebo plugin is added to panda simulation

I tried to add a gazebo model plugin inside the panda.gazebo.xacro using and . However, every time I try to run it, it will generate the following error:
_[gazebo-2] process has died [pid 3515, exit code 139, cmd /home/jason4/catkin_ws/src/gazebo_ros_pkgs/gazebo_ros/scripts/gzserver -e ode worlds/empty.world __name:=gazebo _log:=/home/jason4/.ros/log/b868d85c-f63f-11ea-b153-080027b07338/gazebo-2.log].

No log file in that name (gazebo-2.log) is generated.

Configuring incomplete, errors occurred!

Hi,
I am new to ROS and I have been trying to setup the panda arm in my system and configure Gazebo panda simulation.
Although I followed all the instructions on the repo, cmake fails with the following errors:

-- +++ processing catkin package: 'panda_simulation'
-- ==> add_subdirectory(panda_simulation)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- Boost version: 1.58.0
-- Found the following Boost libraries:
--   filesystem
--   system
-- Checking for module 'jsoncpp'
--   No package 'jsoncpp' found
CMake Error at panda_simulation/CMakeLists.txt:38 (message):
  message called with incorrect number of arguments


CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkin_package.cmake:166 (message):
  catkin_package() DEPENDS on 'system_lib' but neither
  'system_lib_INCLUDE_DIRS' nor 'system_lib_LIBRARIES' is defined.
Call Stack (most recent call first):
  /opt/ros/kinetic/share/catkin/cmake/catkin_package.cmake:102 (_catkin_package)
  panda_simulation/CMakeLists.txt:44 (catkin_package)


-- Configuring incomplete, errors occurred!
See also "/home/akilesh/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/akilesh/catkin_ws/build/CMakeFiles/CMakeError.log".
Makefile:5512: recipe for target 'cmake_check_build_system' failed
make: *** [cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed

I checked and found that json cpp is installed. I dont understand why it doesn't pick it up. I also tried adding the path to the jsoncpp package with no success.

Any help would be much appreciated.

Unable to simulate rviz-created plans in gazebo

Dear Erdal,

I followed the instructions in your readme & your blog, but unfortunately I am not able to simulate the plans created in rviz in the Gazebo-Environment. I hope you can give me a hint about what I can do to get it working. You can see all information and my log below. Thanks in advance.

My Environment:

  • ROS Melodic
  • Ubuntu 18.04.4 LTS
  • Current version of MoveIt

What I already tried:

  • Run it with libfranka 0.6.0, 0.7.1, ros-melodic shipped libfranka
  • integrated your changes on franka_ros into ros-melodic

Log:

[ERROR] [1584633581.317447289, 0.358000000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/panda_joint1
[ERROR] [1584633581.318023500, 0.358000000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/panda_joint2
[ERROR] [1584633581.318550172, 0.358000000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/panda_joint3
[ERROR] [1584633581.318997989, 0.358000000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/panda_joint4
[ERROR] [1584633581.319560690, 0.358000000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/panda_joint5
[ERROR] [1584633581.320012283, 0.358000000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/panda_joint6
[ERROR] [1584633581.320441589, 0.358000000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/panda_joint7
[ERROR] [1584633581.320937503, 0.358000000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/panda_finger_joint1
[ERROR] [1584633581.321403157, 0.358000000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/panda_finger_joint2
[ INFO] [1584633581.324496048, 0.358000000]: Loaded gazebo_ros_control.
[INFO] [1584633581.333322, 0.359000]: Controller Spawner: Waiting for service controller_manager/switch_controller
[INFO] [1584633581.334815, 0.359000]: Controller Spawner: Waiting for service controller_manager/unload_controller
[INFO] [1584633581.336450, 0.359000]: Loading controller: panda_hand_controller
[ERROR] [1584633581.364777974, 0.366000000]: Could not find joint 'panda_finger_joint1' in 'hardware_interface::EffortJointInterface'.
[ERROR] [1584633581.364973330, 0.366000000]: Failed to initialize the controller
[ERROR] [1584633581.365025908, 0.366000000]: Initializing controller 

'panda_hand_controller' failed
[Err] [REST.cc:205] Error in REST request

libcurl: (51) SSL: no alternative certificate subject name matches target host name 'api.ignitionfuel.org'
[spawn_urdf-4] process has finished cleanly
log file: /home/sebastian/.ros/log/a259ca5c-69fa-11ea-8838-f875a49f9fe4/spawn_urdf-4*.log
[INFO] [1584633581.605707, 0.606000]: Controller Spawner: Waiting for service controller_manager/switch_controller
[INFO] [1584633581.607730, 0.608000]: Controller Spawner: Waiting for service controller_manager/unload_controller
[INFO] [1584633581.609528, 0.609000]: Loading controller: joint_state_controller
[INFO] [1584633581.615283, 0.616000]: Loading controller: panda_arm_controller
[ERROR] [1584633581.620880308, 0.621000000]: Could not find joint 'panda_joint1' in 'hardware_interface::EffortJointInterface'.
[ERROR] [1584633581.620941163, 0.621000000]: Failed to initialize the controller
[ERROR] [1584633581.621004136, 0.621000000]: Initializing controller 'panda_arm_controller' failed
[ERROR] [1584633582.366421, 1.357000]: Failed to load panda_hand_controller

"catkin_make" vs "catkin build" (& warnings during building)

Hi @erdalpekel,

I tested creating a workspace with "catkin build" instead of "catkin_make". And it works fine. Is there any reason you use "catkin_make"?

I encountered 1 warnings I didn't see when building with "catkin_make":

Starting  >>> franka_hw                                                        
_______________________________________________________________________________
Warnings   << panda_simulation:cmake /home/chansch/catkin_ws/logs/panda_simulation/build.cmake.000.log
jsoncpp
CMake Warning at /opt/ros/melodic/share/catkin/cmake/catkin_package.cmake:166 (message):
  catkin_package() DEPENDS on 'system_lib' but neither
  'system_lib_INCLUDE_DIRS' nor 'system_lib_LIBRARIES' is defined.
Call Stack (most recent call first):
  /opt/ros/melodic/share/catkin/cmake/catkin_package.cmake:102 (_catkin_package)
  CMakeLists.txt:41 (catkin_package)

This warning I encountered with both building commands:

_______________________________________________________________________________
Warnings   << panda_simulation:make /home/chansch/catkin_ws/logs/panda_simulation/build.make.000.log
In file included from /opt/ros/melodic/include/ros/ros.h:40:0,
                 from /opt/ros/melodic/include/urdf/model.h:50,
                 from /opt/ros/melodic/include/moveit/robot_model/robot_model.h:43,
                 from /opt/ros/melodic/include/moveit/robot_state/robot_state.h:41,
                 from /opt/ros/melodic/include/moveit/move_group_interface/move_group_interface.h:43,
                 from /home/chansch/catkin_ws/src/panda_simulation/src/robot_control_node.cpp:2:
/home/chansch/catkin_ws/src/panda_simulation/src/robot_control_node.cpp: In function ‘int main(int, char**)’:
/opt/ros/melodic/include/ros/console.h:348:176: warning: format ‘%s’ expects argument of type ‘char*’, but argument 8 has type ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’ [-Wformat=]
     ::ros::console::print(filter, __rosconsole_define_location__loc.logger_, __rosconsole_define_location__loc.level_, __FILE__, __LINE__, __ROSCONSOLE_FUNCTION__, __VA_ARGS__)
                                                                                                                                                                                ^
/opt/ros/melodic/include/ros/console.h:351:5: note: in expansion of macro ‘ROSCONSOLE_PRINT_AT_LOCATION_WITH_FILTER’
     ROSCONSOLE_PRINT_AT_LOCATION_WITH_FILTER(NULL, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/ros/melodic/include/ros/console.h:387:7: note: in expansion of macro ‘ROSCONSOLE_PRINT_AT_LOCATION’
       ROSCONSOLE_PRINT_AT_LOCATION(__VA_ARGS__); \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/ros/melodic/include/ros/console.h:572:35: note: in expansion of macro ‘ROS_LOG_COND’
 #define ROS_LOG(level, name, ...) ROS_LOG_COND(true, level, name, __VA_ARGS__)
                                   ^~~~~~~~~~~~
/opt/ros/melodic/include/rosconsole/macros_generated.h:110:23: note: in expansion of macro ‘ROS_LOG’
 #define ROS_INFO(...) ROS_LOG(::ros::console::levels::Info, ROSCONSOLE_DEFAULT_NAME, __VA_ARGS__)
                       ^~~~~~~
/home/chansch/catkin_ws/src/panda_simulation/src/robot_control_node.cpp:88:7: note: in expansion of macro ‘ROS_INFO’
       ROS_INFO("Creating %s collision objects directory.", path);
       ^
/home/chansch/catkin_ws/src/panda_simulation/src/robot_control_node.cpp:127:74: warning: passing ‘const _frame_id_type {aka const std::__cxx11::basic_string<char>}’ as ‘this’ argument discards qualifiers [-fpermissive]
       collision_object.header.frame_id = move_group_arm.getPlanningFrame();
                                                                          ^
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/jsoncpp/json/config.h:9,
                 from /usr/include/jsoncpp/json/autolink.h:9,
                 from /usr/include/jsoncpp/json/json.h:9,
                 from /home/chansch/catkin_ws/src/panda_simulation/src/robot_control_node.cpp:1:
/usr/include/c++/7/bits/basic_string.h:654:7: note:   in call to ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
       operator=(const basic_string& __str)
       ^~~~~~~~

Are these warnings normal?

Best regards,
Christian

PS: And one more thing. The command line auto completion for roslaunch doesn't work anymore. I don't know why. Maybe because I got the new version, since you did the last update?
This isn't as important, just wanted to know if you're having the same issues.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.