Quantcast
Channel: ROS Answers: Open Source Q&A Forum - RSS feed
Viewing all 1441 articles
Browse latest View live

Headless motion planning

$
0
0
Is it generally possible to run the motion planning tools of ROS in an completely headless manner? To be more specific, can MoveIt run without RViz interface? Virtually all launch files out there include RViz in them, and there's little to no documentation (at least to my knowledge) on how to run this without a user interface. Is it simply not really possible to do? Or is it just not documented?

Moveit! cannot display the model at right window

$
0
0
I use" Mastering Ros for robotics programming " to learn how to use move it, and I use the xacro and urdf file it provide I can load the seven_dof_arm.xacro however it cannot display any 3d model at the right window but it still say "success!"

FollowJointTrajectoryAction feasibility checking

$
0
0
MoveIt seems to do some sanity checking before executing trajectories and I was wondering if using the `follow_joint_trajectory` action gets you those same checks. I sent a bad trajectory that didn't start from the current pose today in simulation and expected an error but instead I got a instantaneous jump in the robots simulated state (very bad). I was expecting an error such as [this](https://github.com/ros-planning/moveit/issues/283) but just got straight up execution. 1) Is this expected behavior? 2) Should I perhaps wrap my trajectory with a `MoveGroup::Plan` and then execute via `MoveGroup::execute(const Plan &plan)` call? Do I get other checks this way as well like collisions, joint limits, etc.?

Return of multple IK configurations of goal state.

$
0
0
I have searched a lot for the way of obtaining a set of possible IK robot configurations satisfying a defined goal pose. This is an ability used widely in Robotics for motion and action planning and I am struggling a lot to find a way to do it. I understand that this is a capability provided by the kinematics plugin being used, and that the [`kinematics::KinematicsBase`](http://docs.ros.org/kinetic/api/moveit_core/html/classkinematics_1_1KinematicsBase.html) (which as far as I understand is the interface all kinematics plugins implement) offers the method [`getPositionIK`](http://docs.ros.org/kinetic/api/moveit_core/html/classkinematics_1_1KinematicsBase.html#abf6d20852d81fa499a8853a150c7b5b5), which should return precisely a set of robot configurations, but I do not know how to use it and cannot find an example of it. First. This method seems not to be called by almost anyone, which makes me wonder whether I am looking at the wrong place. Second. How do you obtain an instance of the current move group kinematic solver plugin? in order to call this method? (which kinematics solver plugins implements correctly this method?) I want to get a pseudo-complete set of IK configurations, not just play with the seed state. Currently, I am using a UR10 6DOF with trac-IK kinematics plugin, but I don't think this is a robot-related answer, depending on the DOF of the robot the method should return IK solutions if they exist and if they are multiple. I require this to plan robot actions (multiple consecutive movements) that are sometimes only possible if the action is started in a defined robot configuration.

MoveIt: how to use class MoveGroup::MoveGroupImpl?

$
0
0
Hi everyone, I would like to use the function `void setReplanningDelay(double delay)` belonging to class MoveGroup::MoveGroupImpl, because I need to decrease the 2 seconds default value of `replan_delay_`. How could I implement that function? An example of code would be really helpful. I think another option is to manually decrease that value, but this would require installing Moveit in the workspace I guess, but I would leave this option as the last resort. ROS version: Kinetic Ubuntu: 16.04

Robot semantic description not found

$
0
0
I am not able to use this command on baxter. : group = moveit_commander.MoveGroupCommander("left_arm") gives error: RuntimeError: Group 'left_arm' was not found. The website tutorial of baxter claims that *The SRDF is generated dynamically at runtime and then loaded to the param server under robot_semantic_description.* But, I am getting the following error: [ERROR] [1490907690.019375241]: Robot semantic description not found. Did you forget to define or remap '/robot_description_semantic'? I am able to see 'rosparam get /robot_description', but there is no rosparam as /robot_semantic_description

Using Moveit to control 6 dof manipulator

$
0
0
Hi guys. I created a controller for 6 dof manipulator in ROS. There are six nodes 4 comute messages for comunication one is servise server which actually communicates with the robot and sends request messages and feedback response messages.One is main_control which gives basic commands. It sends commands for unbrake or motion or controlls the position and speed. One node publish all joints positions in frequency 50 hz and I can tell to every single joint to move on position in his scale. For example joint 5 has scale -135° 135° and I can tell him to go on -70° and he moves there with accurancy 0.1° I want to implement some IK kinematics to the model using moveit. I am still reading something about joint followtrajectory actions and I already created urdf file and use it in move it launch. But I dont know how to connect this two thing and actually control the robot from moveit. I did not start nothing special and come here for advice because i dont want to do something wrong. I have one more question is a good idea to rewrite my controller nodes to actionlib server and clients. Does it help to communicate with moveIt o I can easily communicate with moveit witout any action server. Sorry for my english I would be gratefull for any advice

Baxter Moveit-Commander Example script

$
0
0
Is there a simple example python script available to plan trajectory and execute for a Baxter using moveit-commander?

Moveit! tutorials on ROS Melodic

$
0
0
Hi, I am trying to install Moveit! on new ROS distro (Melodic). I think I've done it successfully, but now I am trying to follow the tutorials to get started with moveit! I am in [Getting Started](http://docs.ros.org/kinetic/api/moveit_tutorials/html/doc/getting_started/getting_started.html) but in the step "Build your Catkin Workspace" with the instructions cd ~/ws_moveit/src rosdep install -y --from-paths . --ignore-src --rosdistro kinetic I get this: ERROR: the following packages/stacks could not have their rosdep keys resolved to system dependencies: panda_moveit_config: Cannot locate rosdep definition for [franka_description] Does anybody know how to solve this? --- Edit: Thank you very much! I've completed [Getting Started](http://docs.ros.org/kinetic/api/moveit_tutorials/html/doc/getting_started/getting_started.html) with no errors. Still, I'm not able to launch moveit! quickstart ([Moveit! Quickstart in RViz](http://docs.ros.org/kinetic/api/moveit_tutorials/html/doc/quickstart_in_rviz/quickstart_in_rviz_tutorial.html)) When launch it with tutorial instrcution I get: Resource not found: franka_description ROS path [0]=/opt/ros/melodic/share/ros ROS path [1]=/home/joao/ws_moveit/src/moveit_tutorials ROS path [2]=/home/joao/ws_moveit/src/panda_moveit_config ROS path [3]=/opt/ros/melo Which seems strange to me, because I think I've just git -cloned franka_description package.

Can I exclude an active joint in MoveIt! groups?

$
0
0
Hi, I wonder if I can exclude an active joint from kinematic chain in MoveIt! configuration. I'm trying to use Sawyer, 7DOF arm. [The sawyer MoveIt! Tutorial](http://sdk.rethinkrobotics.com/intera/MoveIt_Tutorial) have sawyer_moveit_config which uses all joints and KDL, and it works. But 7DOF IK is a bit twitchy, so I want to try to handle it as 6DOF arm for investigation. The easiest way is to make a joint as fixed joint in robot_description, but Sawyer setup /robot_description in the controller box so that I cannot change the description. Is there any way to do so in MoveIt! settings? I tried passive joint, but it seems not update the joint angle, so the robot state gets incorrect. Thanks in advance.

frame id is overridden when collision object added to planning scene

$
0
0
I am following the ["Adding Collision Objects to the Planning Scene"](https://ros-planning.github.io/moveit_tutorials/doc/move_group_python_interface/move_group_python_interface_tutorial.html#adding-objects-to-the-planning-scene) section of the MoveIt! Move Group Python Interface guide. I have been setting the `frame_id` of the `PoseStamped` messages to `"/map"`. However, when the collision object is added to the planning scene, I find that the `frame_id` has been changed to `"/odom"`. I have also noticed the following log message, "Listening to '/collision_object' using message notifier with target frame '/odom'". This message seems can be found in [line 1055 of planning_scene_interface.cpp](http://docs.ros.org/kinetic/api/moveit_ros_planning/html/planning__scene__monitor_8cpp_source.html#l01055) as a result of `tf_ == true`. Why is this happening?

How to move the base of a quadruped using moveit?

$
0
0
I am using moveit to simulate a quadrupedal robot in Gazebo and ROS. Moving the four legs forward separately doesn't seem to be a problem but I can't figure out how to use moveit to move the base, which is basically should be done by actuating all the joints present in the four legs together appropriately.

How to define position constraint msgs in moveit

$
0
0
Hi everyone, I am trying to define a [position constraint msg](http://docs.ros.org/api/moveit_msgs/html/msg/PositionConstraint.html) in moveit, but I am getting the following error during planning: Exception caught executing *next* adapter 'Fix Start State In Collision': Bounds for real vector space seem to be incorrect (lower bound must be stricly less than upper bound). Sampling will not be possible. I am wondering whether I have done something wrong in the definition of the constraint, so let me ask a few things to clarify: 1. The header of the constraint defines the frame in which the BoundedVolume pose is defined, right? 2. The target_point_offset is the translation to the goal pose of the controlled link expressed in the current link frame, right? If you have any other insight on this error, please tell me...

include move_group_interface

$
0
0
I'm running ROS Kinetic on Ubuntu 16.04. So I was trying to make my own MoveIt interface, after experimenting and getting comfortable with the demo.launch created by the moveit setup assistant. But I immediatly ran into a problem, I can't figure out how to include the move group interface. This is the line I'm using to try and include the move_group_interface: #include But whatever I try, I keep getting the following error: fatal error: moveit/planning_interface/move_group_interface.h: No such file or directory I'm guessing it has something to do with my CMakeLists.txt, but I don't know what I'm doing wrong. cmake_minimum_required(VERSION 2.8.3) project(robotarm_moveit) ## Compile as C++11, supported in ROS Kinetic and newer add_compile_options(-std=c++11) ## Find catkin macros and libraries ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) ## is used, also find other catkin packages find_package(catkin REQUIRED COMPONENTS roscpp moveit_ros_planning_interface ) catkin_package( CATKIN_DEPENDS roscpp moveit_ros_planning_interface ) include_directories( ) ## Declare a C++ library add_library(${PROJECT_NAME} src/robotarm_moveit_interface.cpp ) add_executable(${PROJECT_NAME}_node src/robotarm_moveit_interface.cpp) add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) install(DIRECTORY launch DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} PATTERN "setup_assistant.launch" EXCLUDE) install(DIRECTORY config DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) Maybe somebody can spot what I'm doing wrong here?

Moveit planning Group foo is not a chain

$
0
0
Hi all, In a simulated (gazebo) environment i've placed a motoman ma1400 welding robot (https://github.com/kleinma/ma1400_sim) on top of a track (prismatic joint). Furthermore I've added a rotating table. In moveit I can succesfully plan and execute motion for the table and the robot on the track. But now I want to create a single planning group that plans both the table and all joints of the robot on the track. This is not a question of planning and executing motion synchronously as for example is asked in: https://answers.ros.org/question/235158/could-not-find-interactive-markers-for-dual-arm-group-in-moveit/ In that case both arms get a goal pose request in world frame. What I want is to plan for an end effector goal of the weld tip of the motoman on track relative to the table. However when I create a moveit plan group which contains all joints it gives the error as shown below. how should i set up my moveit plan group such that i can plan for the endeffector relative to the table frame with all joints? > [ INFO] [1540451728.075267997, 6.971000000]: Loading robot model 'weldtablecell'... [ INFO] [1540451728.075307271, 6.971000000]: No root/virtual joint specified in SRDF. Assuming fixed joint [ INFO] [1540451728.113952048, 7.014000000]: Loading robot model 'weldtablecell'... [ INFO] [1540451728.113994511, 7.014000000]: No root/virtual joint specified in SRDF. Assuming fixed joint [ERROR] [1540451728.135902717, 7.036000000]: Group 'all' is not a chain [ERROR] [1540451728.135934967, 7.036000000]: Kinematics solver of type 'kdl_kinematics_plugin/KDLKinematicsPlugin' could not be initialized for group 'all' [ERROR] [1540451728.136160612, 7.036000000]: Kinematics solver could not be instantiated for joint group all. [ INFO] [1540451728.261226293, 7.166000000]: Starting scene monitor [ INFO] [1540451728.264050719, 7.169000000]: Listening to '/move_group/monitored_planning_scene' [ INFO] [1540451728.334397629, 7.242000000]: Constructing new MoveGroup connection for group 'manipulator' in namespace '' [ INFO] [1540451729.513772641, 8.420000000]: Ready to take commands for planning group manipulator.

How to disable moveit octomap

$
0
0
Hi all, When i launch move_group.launch as generated by the moveit setup assistant I get the error that no sensor plugin is specified for the octomap updater. How can I disable the octomap updater entirely? Because I dont have any sensor and am not interested in using the octomap at all. Starting context monitors... [ INFO] [1540472290.226138098]: Starting scene monitor [ INFO] [1540472290.227961352]: Listening to '/planning_scene' [ INFO] [1540472290.227977222]: Starting world geometry monitor [ INFO] [1540472290.229877757]: Listening to '/collision_object' using message notifier with target frame '/world ' [ INFO] [1540472290.232777616, 482.172000000]: Listening to '/planning_scene_world' for planning scene world geometry **[ERROR] [1540472290.233755215, 482.173000000]: No sensor plugin specified for octomap updater 0; ignoring.** [ INFO] [1540472290.258212975, 482.197000000]: Listening to '/attached_collision_object' for attached collision objects Context monitors started.

Parallel links(mimic tag) and moveit compatibility

$
0
0
Hi , I have a few parallel links in my mechanism (two four bar mechanism) and made an URDF file with mimic joint tag. Now I would like to move the end effector. Can moveit package perform inverse kinematics on parallel link robot ?

Octomap update in Moveit

$
0
0
Hi, I am trying to map an area with a 3D Lidar and Husky. I hope to build an Octomap of the area and use Moveit to plan movements of the UR5 to prevent collisions. I am following the [Husky UR5 Demo](http://www.clearpathrobotics.com/assets/guides/husky/HuskyManip.html) and [Moveit Perception Tutorial](http://docs.ros.org/indigo/api/moveit_tutorials/html/doc/pr2_tutorials/planning/src/doc/perception_configuration.html). I have added a Velodyne VLP-16 (velodyne_simulator from DataspeedInc) to the Husky Model in /opt/ros/indigo/share/husky_description/urdf/husky.urdf.xacro. I notice that the octomap is displayed in rviz. However, when the Husky is moved, I see a duplicate of obstacles in the octomap (i.e. both the previous and current location). I believe I have set the octomap_frame = "odom". So I tried octomap_server (roslaunch octomap_server octomap_mapping.launch) and displayed it in rviz (occupied_cells_vis_array). I have set frame_id = "odom" as well. This time, the octomap seems to update and the obstacles are fixed in place. As such, I wonder if Moveit supports this, and if so, have I configured it incorrectly? Thanks in advanced. I am running on the following: 14.04.1-Ubuntu SMP ROS Indigo rviz version 1.11.19 Gazebo version 2.2.3 Moveit version 0.7.13-Alpha

Gripper Action Controller setup for air controlled 2-finger gripper

$
0
0
Hello All! I am trying to configure an air controlled gripper that I am using with a Fanuc LRMate 200id. What I am trying to do is interface with a Python node that I have written that publishes the state (bool) of the gripper, either open or closed. I would like to use gripper_action_controller to be able to send/recieve goals/feedback/results. As in so far, I have edited the controllers.yaml file in my MoveIt! config directory. This is what my controllers.yaml file looks like: `controller_list: - name: "" action_ns: joint_trajectory_action type: FollowJointTrajectory joints: [joint_1, joint_2, joint_3, joint_4, joint_5, joint_6] - name: "gripper_controller" action_ns: gripper_cmd type: GripperCommand joint: - gripper_joint` Thank you!

MoveIt! for multiple robots

$
0
0
I've spawned 2 similar robots(with their controllers) with distinct namespaces (robot1,robot2) in Gazebo according to [this](https://answers.ros.org/question/41433/multiple-robots-simulation-and-navigation/?answer=41434#post-id-41434). I intend to run two separate moveit instances to control them. For now I've been trying to control one of them while the other is present in simulation. The problem that I face is that gazebo publishes joint states as `robot1/joint_states` and `robot2/joint_states` but I get an error saying joint_states not found. So I remapped `robot1/joint_states` to `/joint_states` and all works fine but this would be a problem when i try to control the second robot. The rqt_graph after remap is attached : [C:\fakepath\rosgraph2.png](/upfiles/15409052439568428.png) how can I make moveit subscribe to `robot1/joint_states` ? or is there any other way to do this ? PS : I do not want to run both robots using the same moveit node
Viewing all 1441 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>