ros-naoqi / pepper_dcm_robot

DCM stack integrating tools to control Pepper robot
4 stars 7 forks source link

Unable to control pepper with ros-melodic #6

Closed souljaboy764 closed 4 years ago

souljaboy764 commented 4 years ago

I am trying to control Pepper from ubuntu 18.04 with ros-melodic. Since all packages weren't available with sudo apt install, installed whatever was available sudo apt install ros-melodic-naoqi-bridge-msgs ros-melodic-naoqi-libqi ros-melodic-naoqi-driver ros-melodic-naoqi-libqicore sudo apt install ros-melodic-pepper-meshes

I have cloned the rest of the packages into my catkin_ws

neo@zion:~$ ls catkin_ws/src/pepper_*
catkin_ws/src/pepper_dcm_robot:
pepper_dcm_bringup  README.rst

catkin_ws/src/pepper_moveit_config:
CHANGELOG.rst  CMakeLists.txt  config  launch  package.xml  README.rst  test  tuto

catkin_ws/src/pepper_robot:
pepper_bringup  pepper_description  pepper_robot  pepper_sensors_py

catkin_ws/src/pepper_virtual:
pepper_control  pepper_gazebo_plugin  README.md

neo@zion:~$ ls catkin_ws/src/naoqi_*
catkin_ws/src/naoqi_bridge:
LICENSE.txt  naoqi_bridge     naoqi_navigation  naoqi_sensors_py  README.md
naoqi_apps   naoqi_driver_py  naoqi_pose        naoqi_tools       tracks.yaml

catkin_ws/src/naoqi_dcm_driver:
CHANGELOG.rst  CMakeLists.txt  include  package.xml  README.rst  src

and installed whatever dependencies using

neo@zion:~/catkin_ws$ rosdep install --from-paths src --ignore-src -r -y

After source catkin_ws/devel/setp.bash I run the following in different terminals one after the other

To start up the robot:

neo@zion:~$ roslaunch pepper_dcm_bringup pepper_bringup.launch robot_ip:=192.168.100.186 network_interface:=enp7s0 

The output of this can be seen here: https://pastebin.com/3VenKwum

Once the robot has started up, I run:

neo@zion:~$ roslaunch naoqi_driver naoqi_driver.launch nao_ip:=192.168.100.186 network_interface:=enp7s0

Using this, I am able to see the images and pointcloud from the robot and also visualize the robot's pose accurately in rviz when I passively move the hands. The output of this command can be seen here: https://pastebin.com/n9S5vN5t

And finally, I run moveit using:

neo@zion:~$ roslaunch pepper_moveit_config moveit_planner.launch 

The output of this can be seen here: https://pastebin.com/utPV5yZY

I use the moveit interface to generate a random valid goal configuration (shown in orange) from the MotionPlanning interface and then I first plan it (as seen in the trail). image

When I click on execute, nothing happens with the robot even though the following messages are displayed in the terminal

[ INFO] [1594216249.619841838]: Execution request received
[ INFO] [1594216253.127858948]: Controller pepper_dcm/RightArm_controller successfully finished
[ INFO] [1594216253.334119901]: Completed trajectory execution with status SUCCEEDED ...
[ INFO] [1594216253.334365776]: Execution completed: SUCCEEDED

There is nothing that gets printed in the terminal where pepper_dcm_bringup is running.

I try to publish the joint trajectories manually first using the topic /pepper_dcm/RightArm_controller/follow_joint_trajectory/goal which does not give any movement on the robot either. I then try to publish the joint trajectories on the topic /pepper_dcm/RightArm_controller/command which does not give any movement on the robot as well. There is nothing that gets printed in the terminal where pepper_dcm_bringup is running, even when manually publishing the trajectories on the topics.

I have tried this out with two different pepper robots and it does not work in either case.

The same commands when executed on a VM running ubuntu 16.04 with ros-kinetic seem to work perfectly with both robots moving to the specified location in the moveit interface.

Could this be an issue of the compatibility of the packages with ros-melodic, as I noticed most of the packages and tutorials were aimed for ros-indigo, although they seem to be working with ros-kinetic as well. Is there any documentation or packages that I might have missed out on for getting this to work in ros-melodic?

souljaboy764 commented 4 years ago

After more digging, I found that this is an issue with naoqi_dcm_driver so I'm closing this issue here and shall open it there.