Upon spawning the robotiq gripper palm found here https://github.com/ros-industrial/robotiq/blob/groovy-devel/robotiq_s_model_visualization/cfg/s-model_articulated_macro.xacro
Even after removing the fingers, the palm has a red collision with itself (Rviz says so, and when used with a full arm model it refuses to plan in MoveIt!)
Could it be because of this stl file? Do visual tags collide with collision tags? Any insight would be appreciated here.
↧
Moveit: Link collides with itself
↧
Path constraint in euler coordinates?
I want to create a motion plan with the gripper/end effector in a fixed orientation, e.g. pointing downwards. In euler coordinates this means the roll and pitch are fixed (roll = 0, pitch = pi/2) and the yaw may freely defined. However, the orientation constraints are defined using quaternions (x, y, z, w), and as far as I understand my constraint cannot be specified using quaternions. Or am I missing something?
How can I constrain the orientation of the end effector as described? Is this possible?
(Preferably Python solutions, but any help is appreciated.)
UPDATE:
To give an example of what I mean, see the following possible orientations, each with the end effectuator pointed downwards, but rotated around the z-axis (in the cartesion frame), in steps of 45 degrees (=pi/4). In euler coordinates, it's clear that "roll" should be fixed to 0 and "pitch" to 1.571 (=pi/2), and that "yaw" defines the rotation about the z-axis. But how could I constrain this using quaternions? The x, y, z and w value all change when I only change the yaw in euler coordinates...
euler: --> quaternion:
roll = 0.000, pitch = 1.571, yaw = 0.000 --> x = 0.0000, y = 0.7071, z = 0.0000, w = 0.7071
roll = 0.000, pitch = 1.571, yaw = 0.785 --> x = -0.2706, y = 0.6533, z = 0.2706, w = 0.6533
roll = 0.000, pitch = 1.571, yaw = 1.571 --> x = -0.5000, y = 0.5000, z = 0.5000, w = 0.5000
roll = 0.000, pitch = 1.571, yaw = 2.356 --> x = -0.6533, y = 0.2706, z = 0.6533, w = 0.2706
roll = 0.000, pitch = 1.571, yaw = 3.142 --> x = -0.7071, y = 0.0000, z = 0.7071, w = 0.0000
roll = 0.000, pitch = 1.571, yaw = 3.927 --> x = -0.6533, y = -0.2706, z = 0.6533, w = -0.2706
roll = 0.000, pitch = 1.571, yaw = 4.712 --> x = -0.5000, y = -0.5000, z = 0.5000, w = -0.5000
roll = 0.000, pitch = 1.571, yaw = 5.498 --> x = -0.2706, y = -0.6533, z = 0.2706, w = -0.6533
roll = 0.000, pitch = 1.571, yaw = 6.283 --> x = 0.0000, y = 0.7071, z = 0.0000, w = 0.7071
↧
↧
How to set target pose in MoveIt ?
Is there any GUI tool to set planning group's start state or goal state in MoveIt? We now can use API and interactive marker to control the arm.
↧
Raspbian Jessie ROS INDIGO installation
Hello all,
during christmas vacation I compiled ROS INDIGO on a Raspbian Jessie image with the following features / packages installed:
C-BERRY TFT framebuffer driver
ROS INDIGO
- ROS base
- RQT
- imageview
- geometry
- moveit
- rviz
- robot model
Here is the link for downloading:
https://drive.google.com/open?id=0Bzu4fg52rneFX1V3REhKTmM2VWc&authuser=0
ROS INDIGO
- ROS base
- RQT
- imageview
- geometry
- moveit
- rviz
- robot model
Here is the link for downloading:
https://drive.google.com/open?id=0Bzu4fg52rneFX1V3REhKTmM2VWc&authuser=0
↧
moveit path planning ignores constraints
I'm using moveit planning pipeline (indigo-devel) to generate a path for ur5 with some obstacles in the environment, but the generated path goes through the obstacles. The obstacles are represented by a mesh, which defines a collision object imported into the planning scene like this
planning_scene->processCollisionObjectMsg( collision_object );
When I publish the planning scene, I can see the obstacles in rviz. A path is then generated with
planning_pipeline->generatePlan( planning_scene, request, response );
which uses the planning scene with the defined constraints. However, the path visualised in rviz goes right through the obstacles as if they were not there. ROS outputs the following
[ INFO] [1420698166.546178298]: Planner configuration 'manipulator[ESTkConfigDefault]' will use planner 'geometric::EST'. Additional configuration parameters will be set when the planner is constructed.
[ INFO] [1420698166.546475384]: manipulator[ESTkConfigDefault]: Attempting to use default projection.
[ INFO] [1420698166.549255239]: manipulator[ESTkConfigDefault]: Starting with 1 states
[ INFO] [1420698166.689949799]: manipulator[ESTkConfigDefault]: Created 3 states in 3 cells
[ INFO] [1420698166.690029336]: Solution found in 0.143339 seconds
[ INFO] [1420698166.690206928]: Path simplification took 0.000054 seconds
[ERROR] [1420698166.708755458]: Computed path is not valid. Invalid states at index locations: [ 4 5 ] out of 10. Explanations follow in command line. Contacts are published on /path_planning/display_contacts
[ INFO] [1420698166.710135263]: Found a contact between 'obstacle' (type 'Object') and 'wrist_2_link' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1420698166.710176768]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1420698166.713790237]: Found a contact between 'obstacle' (type 'Object') and 'wrist_2_link' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1420698166.713845565]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ERROR] [1420698166.716069182]: Completed listing of explanations for invalid states.
So, collision checking works fine and reports a collision. But the same obstacles are ignored by the path planning algorithm. What am I missing? What else do I need to do to make path planning take my collision objects into account? I was under the impression that just importing a collision object into the planning scene is sufficient. Obviously, something else needs to be done.
↧
↧
a moveit pr2 tutorial terminates with a mutex_lock error
I run a moveit pr2 tutorial like so:
roslaunch pr2_moveit_tutorials move_group_interface_tutorial.launch
and it runs through different motions fine but at the end it shows an error and then just hangs. Is this an expected behaviour. What should I do to get rid of this error message and have the program finish cleanly? The error message looks like this:
move_group_interface_tutorial: /usr/include/boost/thread/pthread/recursive_mutex.hpp:110: void boost::recursive_mutex::lock(): Assertion `!pthread_mutex_lock(&m)' failed.
[move_group_interface_tutorial-7] process has died [pid 13649, exit code -6, cmd /home/andrey/misc/ros/devel/lib/pr2_moveit_tutorials/move_group_interface_tutorial __name:=move_group_interface_tutorial __log:=/home/andrey/.ros/log/dbebe4c8-97ad-11e4-ba0e-90b11c98a3ed/move_group_interface_tutorial-7.log].
log file: /home/andrey/.ros/log/dbebe4c8-97ad-11e4-ba0e-90b11c98a3ed/move_group_interface_tutorial-7*.log
moveit_pr2 and the necessary pr2 modules are compiled and installed with catkin_make from source (indigo).
I also had a look at master.log and it shows the following error (not sure if it's relevant):
[rosmaster.threadpool][ERROR] 2015-01-09 14:49:10,269: Traceback (most recent call last):
File "/opt/ros/indigo/lib/python2.7/dist-packages/rosmaster/threadpool.py", line 218, in run
result = cmd(*args)
File "/opt/ros/indigo/lib/python2.7/dist-packages/rosmaster/master_api.py", line 208, in publisher_update_task
xmlrpcapi(api).publisherUpdate('/master', topic, pub_uris)
File "/usr/lib/python2.7/xmlrpclib.py", line 1224, in __call__
return self.__send(self.__name, args)
File "/usr/lib/python2.7/xmlrpclib.py", line 1578, in __request
verbose=self.__verbose
File "/usr/lib/python2.7/xmlrpclib.py", line 1264, in request
return self.single_request(host, handler, request_body, verbose)
File "/usr/lib/python2.7/xmlrpclib.py", line 1297, in single_request
return self.parse_response(response)
File "/usr/lib/python2.7/xmlrpclib.py", line 1473, in parse_response
return u.close()
File "/usr/lib/python2.7/xmlrpclib.py", line 793, in close
raise Fault(**self._stack[0])
Fault:
↧
Moveit Setup Assistant crashes when loading a URDF
Hi,
I am doing the Tutorials from http://aeswiki.datasys.swri.edu/rositraining/hydro/Exercises
During the Session 3 Tutorials Moveit! keeps crashing when ever I have to use it.
I am running Ubuntu 13.04 (32-bit), ROS-I Hydro
I noticed that the Moveit Setup Assistant launchens when I start it with:
roslaunch moveit_setup_assistant setup_assistant.launch
But as soon as I try to create a new moveit config pkg by loading a .urdf file it crashes.
The console shows this Error message:
REQUIRED process [moveit_setup_assistant-2] has died!
process has died [pid 7937, exit code -11, cmd /opt/ros/hydro/lib/moveit_setup_assistant/moveit_setup_assistant __name:=moveit_setup_assistant __log:=/home/siemens/.ros/log/c324fdc4-9769-11e4-99d8-c4d98785fc5f/moveit_setup_assistant-2.log].
log file: /home/siemens/.ros/log/c324fdc4-9769-11e4-99d8-c4d98785fc5f/moveit_setup_assistant-2*.log
Initiating shutdown!
the log file /moveit_setup_assistant-2.log does not exist!
This is the urdf file I used: https://www.dropbox.com/s/2mtvf4ctmax9xq5/pr2.urdf?dl=0
↧
Planning NAO to grasp object from floor with moveit
I want to take object from floor with nao. Can I create such move group where are both legs and one of the arms, so that moveit plans robot to squat and then moving arm near object?
Or do I have to create multiple move groups and then "manually" plan squat and after that plan moving arm to the object?
↧
how to publish current scene in c++
If I launch rviz with
roslaunch ur5_moveit_config demo.launch limited:=true
I can then open 'Scene Object' tab and import a file with a constraint object. After that I can go back to the Context tab and publish the current scene by pressing a button. How do I achieve the same effect in a c++ code?
↧
↧
Running object_recognition (ORK) makes RViz with MoveIt Motion Planning Plugin unusable
I have created some weird problem, where I can't figure out what the reason is:
RViz with the Motion Planning Plugin from moveit gets unusable when I run the ORK object detection in parallel.
The GUI is very unresponsive, I takes more then 10 seconds to just turn the view, but it still works. Only RViz is affected, i.e. all other programs work fine. Also CPU and memory load are way under max, so that doesn't seem to be the issue.
The problem appears only in this combination, i.e. Motion Planning plugin in rviz and object detection running.
When I stop object detection it takes about 20 seconds and rviz is responsive again, so it is definitely causing this somehow. Also the motion planning plugin only must be in the plugins list. It is not necessary to activate it. In contrast only loading the Planning Scene plugin works fine. It is also not necessary to run the move_group node in parallel.
I am running hydro on precise.
Object Recognition is built from sources as the debs coredump according to the rosinstall file here:
http://wg-perception.github.io/object_recognition_core/install.html#install
I am mainly running tabletop detection from a Gazebo Kinect on a simulated PR2, but a quick test with the LineMod config showed the same effect.
I also tried building rviz from sources and there was no difference in the behavior.
Besides a solution I'd also be happy with any suggestions on what could be a possible cause to investigate.
↧
UR5 use moveit interface to move robot
Hi,
I would like to move the UR5 Robot with the move_group python interface. I used the interface with the pr2 Robot and it's working fine.
Here is the interface Tutorial page: http://docs.ros.org/hydro/api/pr2_moveit_tutorials/html/planning/scripts/doc/move_group_python_interface_tutorial.html
When i would like to use the python interface with the UR5 then I do it like this:
roslaunch ur5_moveit_config demo.launch
python move_group_python_interface_tutorial.py
The robot is loading in RVIZ perfectly. When it starts the interface it's looking like this:
============ Starting tutorial setup
[ INFO] [1421497007.277703461]: Loading robot model 'ur5'...
[ INFO] [1421497007.277819143]: No root joint specified. Assuming fixed joint
[ INFO] [1421497007.716290571]: Loading robot model 'ur5'...
[ INFO] [1421497007.716347402]: No root joint specified. Assuming fixed joint
[FATAL] [1421497007.980622919]: Group 'left_arm' was not found.
Traceback (most recent call last):
File "move_group_python_interface_tutorial.py", line 238, in
move_group_python_interface_tutorial()
File "move_group_python_interface_tutorial.py", line 76, in move_group_python_interface_tutorial
group = moveit_commander.MoveGroupCommander("left_arm")
File "/opt/ros/hydro/lib/python2.7/dist-packages/moveit_commander/move_group.py", line 51, in __init__
self._g = _moveit_move_group_interface.MoveGroup(name, "robot_description")
RuntimeError: Group 'left_arm' was not found.
Of course, i know that i haven't got a left arm on the ur5. But what else i have write in there? Or is there any better idea how to move the robot with moveit?
Thank you very much for your help =)
↧
Moveit! planning and collision detection with multiple robots
Hi everyone,
I know this question did appear once in MoveIt Google Groups newsletter, but I am still curious in this topic.
https://groups.google.com/forum/#!topic/moveit-users/NZfk2PfnxWM
I have to make path planning for an industrial robot cell with ROS and I thought it would be a good idea to setup all of this in Rviz and Moveit first.
I had the idea to make a big urdf with my robots and set up the environment in this. I attached the base links of all parts to a virtual "world" link with planar joints.
This is possible, but unfortunately I get strange collisions with my robots in free space.
Does anyone have an idea why this happens? Maybe the error is due to internal MoveIt collision checks? Is this even possible or should I try to use different tf_prefixes for each robot and import the environment parts as scene objects?
I would greatly appreciate any help as I am eager to fix this issue. I am sure there are more people interested in this topic.
I can provide more information if necessary.
Thanks!
Greetings,
Almin
↧
Is the "byte" type in messages signed or unsigned?
It appears that [moveit_msgs/CollisionObject](http://docs.ros.org/indigo/api/moveit_msgs/html/msg/CollisionObject.html) uses the type `byte` which isn't discussed in the documentation for message types found at http://wiki.ros.org/msg . Is this an alias for uint8, int8, or some form of message structure?
↧
↧
Problem using ur5/ur10 with moveit in indigo
Hello,
I was using the universal robot package with ros hydro on ubuntu 12.04. I felt like it was time to upgrade my linux and ros versions. I am now running ros indigo on ubuntu 14.04.
When I try to use the moveit planner with a UR10, no solutions are found... Can anybody help ? Thank you.
↧
Which path planner is chosen if unspecified?
Hi,
I am using ros-groovy with the ur5 package and I would like to get some information about the path planners.
First is, if I do not specify a specifiy path planner, which one is being chosen? Or is there a default one?
And second (still no specific solver chosen), after the path planning, can I get the name of the solver which was being chosen? I would like to do a performance benchmark of the various solvers.
↧
Cartesian velocity control of robot arm
I have a 6DOF robot arm, and would like to start driving the end effector around with a joystick. I think the most natural way to do this would be to map my joystick axes to Cartesian velocities of the end effector. I have tried executing very small paths in the desired directions using `MoveGroupCommander.compute_cartesian_path()`, but I end up getting very jumpy results. Are there any facilities built into MoveIt or otherwise to help me do this?
↧
Retrieve filtered point cloud from Moveit Planning Scene
Hello,
I added several sensor plugins into the occupancy_map_monitor of moveit.
I have a generated occupancy map which i can visualize in RViz using /move_group/monitored_planning_scene topic
Is it possible to retrieve the filtered point cloud of the overall scene which is generated from all the sensors?
Regards
↧
↧
installation problem with moveit_core package
I am trying to install the moveit_core package inorder to work with robotic manipulator. at the time of installation its asking for "fcl" and "srdfdom" package. i have installed the package "fcl" from https://github.com/flexible-collision-library/fcl/archive/master.zip and "srdfdom" package form https://github.com/ros/robot_model. I have copied the package in the workspace and then tried to install but still its showiing the same problem. "fcl" and "srdfdom" packages are missing.
↧
Using an octomap in rviz for obstacle avoidance
Hello dear community,
General information:
- I am using ROS hydro
- new to ROS (using it for 6 months)
I am a student and for my master thesis i have to program a robot using ROS and MoveIT! for a pick and place implementation.
I am having some problems with path planning in MoveIT!. I have successfully loaded in an octomap (.bt) (a box with stuff in) in Rviz using the Marker Array tool and subscribing to the /occupied_cells_vis_array topic. The octomap is posted on this topic using octomap_server:
*code:*
rosrun octomap_server build/devel/lib/octomap_server/octomap_server_node SOLMeasurePolygon.binvox.bt
I also made my own Epson robot for visualisation in Rviz. I am able to show the octomap and the robot in Rviz and i can do pathplanning using the OMPL library. Now i have some questions:
1) How can i change the position of the octomap in Rviz, after the simulations i'm going to use this on a real robot and the relative position of the box is always the same in regard to the robot. Therefore i would like to put the octomap at the exact location X Y Z to the robot.
2) I am using the motion planner for path planning but i can't seem to click on the robot and drag it to a position i would like it to go (to set it as a goal state), i can only set a new goal state using the "random" button
3) Is it possible to make planning scene objects from parts op the octomap? I want to take one thing out of the box and place it somewhere else.
4) How hard is the transition from the simulation in Rviz to self-excecuting pathplanning on a real robot?
At the moment i made use of existing code since i have no knowledge of c++ but have to manually start up everything every time.
I have read allot about the things i need but i just can't understand it all because most explanations are "add this line of code" but they don't specify where. Also because i lack knowledge of c++ this is extra difficult.
Octomap and robot in Rviz:

Close-up of the octomap:

Kind regards
Joris Beuls
↧
Connect Moveit to a robot
Hi there!
I'm looking for any tutorials or any documents that show how to connect Moveit to a robot. I'm working actually on self-collision robot so I have to work with real robot using what I did on Moveit.
Or any other software instead of Moveit is welcome too :D
↧