Move physical 'e'- Series Robot with Universal_Robots_ROS_Driver, steps vorgotten?
I Use ROS Melodic on Ubuntu 18.04 (on an old Del laptop)
I have installed the current universal_robots_driver as instructed on GitHub. driver
Than I followed the instructions for an e-series setup. urcaps After getting error messages, because "follow_joint_trajectory" was not found, I edited the controllers.yaml file as suggested in Issue55 . That fixed the error. The robot is turned on, in external control mode, speed is 100 and the connection to the Robot works. (my terminal shows me all the proper Robot info such as when the emergency stop has been pushed)
Using the demo.launch with the fake controller worked well in RVIZ. Next I wanted to move the real Robot. to do that I tried:
roslaunch ur_robot_driver ur3e_bringup.launch robot_ip:=<placeholder_for_real_ip>
The last info it displayes is "Send program to robot" . Next I launched moveit planing execution.
roslaunch ur3_e_moveit_config ur3_e_moveit_planning_execution.launch sim:=false limited:=true
this produced a some warnings:
[ INFO] []: Loading robot model 'ur3e'...
[ WARN] []: Skipping virtual joint 'fixed_base' because its child frame 'base_link' does not match the URDF frame 'world'
[ INFO] []: No root/virtual joint specified in SRDF. Assuming fixed joint
Choosing "world" instead of "base" means that I can not rotate the camera around the robot in RVIZ anymore. I'm too inexperienced with ROS to fully understand why. when I start RVIZ:
roslaunch ur3_e_moveit_config moveit_rviz.launch config:=true
I get:
[ INFO] []: Added FollowJointTrajectory controller for
[ INFO] []: Returned 1 controllers in list
[ INFO] []: Trajectory execution is managing controllers
Loading 'move_group/ApplyPlanningSceneService'...
Loading 'move_group/ClearOctomapService'...
Loading 'move_group/MoveGroupCartesianPathService'...
Loading 'move_group/MoveGroupExecuteService'...
[ERROR] []: Exception while loading move_group capability 'move_group/MoveGroupExecuteService': MultiLibraryClassLoader: Could not create object of class type move_group::MoveGroupExecuteService as no factory exists for it. Make sure that the library exists and was explicitly loaded through MultiLibraryClassLoader::loadLibrary()
I'm not sure what this error means or where it comes from, but I suspect it is important. Next I tried to use RVIZ to plan and execute a path. (to move the real robot a few centimeters) I 'm not 100% sure what the output means.
[ INFO] []: Starting planning scene monitor
[ INFO] []: Listening to '/move_group/monitored_planning_scene'
[ INFO] []: Constructing new MoveGroup connection for group 'manipulator' in namespace ''
[ INFO] []: Ready to take commands for planning group manipulator.
[ INFO] []: Looking around: no
[ INFO] []: Replanning: no
[ INFO] []: Marker 'EE:goal_ee_link/10': mesh_use_embedded_materials is ignored.
[ INFO] []: ABORTED: Solution found but controller failed during execution
The real robot never moved with ROS. It does not work with a simple python script for the Move commander either (It is functional when using the teach panel with out ROS)
-Did I forget a critical step?
-Did I use the proper procedures to move the robot?
After reading a lot of GitHub issues, I tried temporarily setting the number format to English in each terminal. (export LC_NUMERIC="en_US.UTF-8")
I tried editing the move_group Launchfile as suggested in Universal Robots GitHub Issue 413 . That got writ of the Exception for the "MoveGroupExecuteService" when launching the robots MoveIT config.
My real robot still does not move though.
MoveIt : "Execution request recived"
Robots driver: "Sent program to robot"
I would suggest you post an issue on the issue tracker.