ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

VN's profile - activity

2020-02-14 07:05:56 -0500 received badge  Nice Question (source)
2020-01-21 03:00:21 -0500 received badge  Favorite Question (source)
2019-03-13 09:02:26 -0500 received badge  Great Question (source)
2017-02-20 03:05:17 -0500 received badge  Nice Question (source)
2017-01-10 21:59:09 -0500 received badge  Good Question (source)
2014-05-28 01:03:27 -0500 received badge  Nice Question (source)
2014-04-20 06:48:26 -0500 marked best answer where is the node for follow_joint_trajectory action server (control_msgs/FollowJointTrajectory)

I just noticed that move_arm is looking for arm_controller/follow_joint_trajectory with action type: control_msgs/FollowJointTrajectory.

Earlier I was running arm_controller/joint_trajectory_action with action type: pr2_controllers_msgs/JointTrajectoryAction which make an interface between arm_controller and move_arm. which is documented here.

Now I need to run action node of type control_msgs/FollowJointTrajectory so that it can interface with move_arm.

Can I get the information about where is the ros node for implementing action server for controllers of the type control_msgs/FollowJointTrajectory?? OR it is a part of something else.

2014-04-20 06:48:26 -0500 marked best answer planning_environment in electric for clearing known objects

planning_environment has been changed in electric as compared to diamondback. Can anyone please point out what is corresponding to these lines in electric (node for clearing known objects?).

Thanks!

<!--clearing known objects from the laser data-->
<node pkg="planning_environment" type="clear_known_objects" name="laser_clear_objects" output="screen">
    <remap from="cloud_in" to="tilt_scan_cloud" />
    <remap from="cloud_out" to="tilt_scan_cloud_known" />
    <param name="sensor_frame" type="string" value="base_scan_link" />              

    <param name="fixed_frame" type="string" value="base_link" />
    <param name="object_padd" type="double" value="0.02" />
    <param name="object_scale" type="double" value="1.0" />
</node>
2014-04-20 06:48:26 -0500 marked best answer move_arm and arm_controller conflict over action interface message type

I changed in move_arm.launch from

<param name="controller_action_name" type="string" value="arm_controller/follow_joint_trajectory" />

to

<param name="controller_action_name" type="string" value="arm_controller/joint_trajectory_action" />

and hence my move_arm.launch is

<launch>
    <node pkg="move_arm" type="move_arm_simple_action" name="arm_tilt_laser_move_arm">
        <param name="group" type="string" value="arm" />
        <remap from="arm_ik" to="arm_tilt_laser_arm_kinematics/get_constraint_aware_ik" />
        <param name="controller_action_name" type="string" value="arm_controller/joint_trajectory_action" />
        <!--<param name="controller_action_name" type="string" value="arm_controller/follow_joint_trajectory" />-->
    </node>
</launch>

because my arm_controller is looking for arm_controller/joint_trajectory_action/goal ;arm_controller/joint_trajectory_action/cancel ....etc

and got the following error:

[ERROR] [1320368664.906687128, 19.071000000]: Client [/arm_controller/arm_joint_trajectory_action_node] wants topic /arm_controller/joint_trajectory_action/goal to have datatype/md5sum [pr2_controllers_msgs/JointTrajectoryActionGoal/aee77e81e3afb8d91af4939d603609d8], but our version has [control_msgs/FollowJointTrajectoryActionGoal/8f3e00277a7b5b7c60e1ac5be35ddfa2]. Dropping connection.
[ERROR] [1320368664.909130373, 19.103000000]: Client [/arm_tilt_laser_move_arm] wants topic /arm_controller/joint_trajectory_action/result to have datatype/md5sum [control_msgs/FollowJointTrajectoryActionResult/bce83d50f7bb28226801436caf0e2043], but our version has [pr2_controllers_msgs/JointTrajectoryActionResult/1eb06eeff08fa7ea874431638cb52332]. Dropping connection.
[ERROR] [1320368664.909281089, 19.103000000]: Client [/arm_tilt_laser_move_arm] wants topic /arm_controller/joint_trajectory_action/feedback to have datatype/md5sum [control_msgs/FollowJointTrajectoryActionFeedback/868e86353778bcb1c5689adaa01a40d7], but our version has [pr2_controllers_msgs/JointTrajectoryActionFeedback/aae20e09065c3809e8a8e87c4c8953fd]. Dropping connection.

I can understand from the error that move_arm being an action client (while interfacing to controller) is sending a goal message which is not of same type as arm_controller node action server listening to. same for feedback and result message type. I am using electric.

Is it because of new arm_navigation stack that move_arm message types has been changed for interfacing with arm_controller?? Anyone got this problem before? Need help please.

Thanks,

2014-04-20 06:48:16 -0500 marked best answer why local costmap rotates with robot

Hi: I got a strange problem. I am simulating a robot in gazebo and visualizing in rviz. My local costmap rotates as robot traverses along its planned path. I tried all options, double check with frames naming. Please refer to an image below.image description

costmap configuration files are as follow:

costmap_common_params_sim.yaml

footprint: [[-0.18,-0.20],[-0.28,-0.10],[-0.28,0.10],[-0.18,0.20],[0.070,0.20],[0.180,0.10],[0.180,-0.10],[0.07,-0.20]]    
inflation_radius: 0.75
cost_scaling_factor: 10.0
transform_tolerance: 2.0

observation_sources: laser_scan_sensor sonar_scan_sensor point_cloud_sensor

laser_scan_sensor: {sensor_frame: base_scan_link, data_type: LaserScan, topic: /scan,marking: true, clearing: true, obstacle_range: 10, raytrace_range: 10}

sonar_scan_sensor: {sensor_frame: base_link, data_type: LaserScan, topic: /myscan, marking: false, clearing: true, obstacle_range: 5.2, raytrace_range: 5.7, observation_persistence: 0}

point_cloud_sensor: {sensor_frame: base_scan_link, data_type: PointCloud2, topic: /marking, max_obstacle_height: 7, min_obstacle_height: 2, marking: true, clearing: false, obstacle_range: 4.9, raytrace_range: 4.9, observation_persistance: 0}

global_costmap_params.yaml

global_costmap:
  global_frame: map
  robot_base_frame: base_footprint
  map_type: costmap
  unknown_cost_value: 1
  track_unknown_space: true
  obstacle_range: 10.0
  raytrace_range: 10.0
  update_frequency: 0.5
  publish_frequency: 0.2
  static_map: true

local_costmap_params.yaml

local_costmap:
  global_frame: odom
  map_type: costmap
  robot_base_frame: base_footprint
  obstacle_range: 2.0
  raytrace_range: 2.0
  update_frequency: 5.0
  publish_frequency: 1.0
  inflation_radius: 0.35
  static_map: false
  rolling_window: true
  width: 6.0
  height: 6.0
  origin_x: 0.0
  origin_y: 0.0
  resolution: 0.025

I am just using laser sensor to get the data in simulation. So "sonar_scan_sensor" and "point_cloud_sensor" in costmap_common_params_sim.yaml are not in use.

2014-04-20 06:48:16 -0500 marked best answer pioneer "powerbot" URDF model/stl files

I am looking for "Pioneer-powerbot" URDF model or stl files. I searched in p2os stack but they have pioneer3dx urdf model. I am wondering if I can find powerbot urdf model.

Thanks,

2014-04-20 06:48:15 -0500 marked best answer Using sampling based global planner and simple slam 2D map (not costmap) with Navigation Stack

Hi,

I want to implement some new planner which requires sampling based global planner for base and some different planner for arm (partly decoupled approach) using 2D map (slam) for base and 3D map (collision map /Octree) for arm as well as for base. But current Navigation Stack is using Gradient based global planner and DWA/Trajectory Rollout as local planner, both local and global planners are using costmap to find their respective path. And this part is coded in "move_base" package.

Anyone in ROS community has tried this approach? Anyone of you have used/written code for using sampling based planner as global planner without using costmap by interfacing it with Navigation Stack?? One way is to use costmap (put the inflation radius as 0) and hence adapt move_base package according to sampling based planner.

Can anyone guide me on this: if I want to use sampling based global planner in Navigation Stack then do I need to change(write) the whole "move_base" package?? Is there any easier way?

Looking forward for kind help and suggestions. Thanks, V.N.

2014-04-20 06:48:14 -0500 marked best answer Is there any way to calculate inertial property of a robot to simulate it in Gazebo

I have got urdf/xacro files for pioneer3dx robot from "p2os" stack, modified them by replacing erratic_robot differential drive plugin and adding transmission for swivel and hubcap (which was not there as many reported a problem in visualizing swivel/hubcap in rviz). Then I tried to simulate pioneer3dx model in gazebo by using erratic_robot_teleop_keyboard node and also using navigation stack (by configuring yaml files).

My robot is behaving very strangely as it topples, lift backside up....etc. I am sure this is because of inertial properties provided in the model.

Is there any way to calculate these properties without estimating them by hand...like provide dimensions to any software then it 'll calculate for you??

Also I have model for schunk powercube arm but without any inertial properties. I don't think schunk 'll provide these information, I have to calculate myself to simulate it in gazebo.

Looking forward for a quick solution.

Thanks V.N.

2014-04-20 06:48:13 -0500 marked best answer How to generate .stl files

How to generate .stl files for my robot? As far as I understand I need to create CAD model for each link and then export it as .stl file (binary not ascii?). Which one (Autodesk Inventor, SolidWorks...etc) provides binary .stl files? 'll the stl files from the CAD software work as it is OR do I need to change anything before using in URDF file?

2014-04-20 06:48:11 -0500 marked best answer Belief Roadmap (BRM) implementation in ROS

Hi,

Anyone knows if the Belief Roadmap (BRM) algorithm has been implemented as ROS node??

Refering to paper:- The Belief Roadmap:Efficient planning in belief space by factoring the covariance by Samuel and Nicholas Roy, IJRR09.

V.N.

2014-04-20 06:47:54 -0500 marked best answer "rosmake teleop_base" couldn't find dependency [joy] of [teleop_base]

Hi,

I am using diamondback-full-desktop ROS version on Ubuntu 10.10. I was trying to run this command $rosmake teleop_base and it says that [rospack] couldn't find dependency [joy] of [teleop_base].

Is not [joy] a part of diamondback-full-desktop or do I need to install it separately? [I have control_toolbox -which is one dependency of teleop_base]

Thanks VN

2014-01-28 17:30:03 -0500 marked best answer Octomap slows down the gazebo simulation, is there anyway to speed up

Hi all: I am working with mobile manipulator in simulations for which I am using ROS electric, gazebo, octomap_mapping (version sometime released in June 2012), and my ubuntu OS is 10.10. Point cloud data for the octomap comes from Kinect sensor. I have noticed that my gazebo simulation is slower as a result of octomap.

for e.g. if I run mobile base in simulation with the help of teleop_keyboard, then without the launch of octomap_server node, it runs ok as expected, however as I launch the octomap_server node and again play with teleop_keyboard then it slows down a lot. Same thing with arm trajectory execution in simulation with or without octomap_server. So gazebo is not an issue, slowness comes from octomap.

Is there anyway I can speed up my simulation while using octomap_mapping for 3D mapping.

Thanks in advance.

2014-01-28 17:24:59 -0500 marked best answer Transformation between two frames from unconnected trees

Hi: I want to transform a point from /map frame to /base_link.

I used the following method but it didn't work out:-

tf::TransformListener listener(ros::Duration(10));
geometry_msgs::PoseStamped map_pose, base_link_pose;
<---Input map_pose here-->
listener.transformPose("base_link", map_pose, base_link_pose);

Got the following error:-

terminate called after throwing an instance of 'tf::LookupException'
  what():  Frame id /base_link does not exist! Frames (1): 
Aborted

I double checked with tf tools and my tree is well connected, only thing is /map and /base_link are from two unconnected trees, I don't know why it says "Frame /base_footprint exists with parent NO_PARENT." although it exists (checked with rviz and "rosrun tf view_frames"), suddenly it starts publishing transformation (you can see below):

$ rosrun tf tf_echo map base_link
Failure at 450.800000000
Exception thrown:Could not find a connection between '/map' and '/base_link' because they are not part of the same tree.Tf has two or more unconnected trees.
The current list of frames is:

Frame /top_plate exists with parent /base_link.
Frame /back_sonar exists with parent /base_link.
Frame /base_link exists with parent /base_footprint.
Frame /front_sonar exists with parent /base_link.
Frame /base_link_left_hubcap exists with parent /base_link_left_wheel_link.
Frame /base_link_left_wheel_link exists with parent /base_link.
Frame /base_link_right_hubcap exists with parent /base_link_right_wheel_link.
Frame /base_link_right_wheel_link exists with parent /base_link.
Frame /base_scan_link exists with parent /laser_base_link.
Frame /laser_base_link exists with parent /top_plate.
Frame /odom exists with parent /map.
Frame /map exists with parent NO_PARENT.
Frame /base_caster_support_link exists with parent /base_link.
Frame /caster_wheel_link exists with parent /base_caster_support_link.
Frame /base_footprint exists with parent NO_PARENT.

At time 451.374
- Translation: [2.048, 0.805, 0.000]
- Rotation: in Quaternion [0.000, 0.000, -0.678, 0.735]
            in RPY [0.000, 0.000, -1.491]
At time 451.924
- Translation: [2.048, 0.805, 0.000]
- Rotation: in Quaternion [0.000, 0.000, -0.678, 0.735]
            in RPY [0.000, 0.000, -1.491]
At time 452.274
- Translation: [2.048, 0.805, 0.000]
- Rotation: in Quaternion [0.000, 0.000, -0.678, 0.735]
            in RPY [0.000, 0.000, -1.491]
At time 452.874
- Translation: [2.048, 0.805, 0.000]
- Rotation: in Quaternion [0.000, 0.000, -0.678, 0.735]
            in RPY [0.000, 0.000, -1.491]
At time 453.524
- Translation: [2.048, 0.805, 0.000]
- Rotation: in Quaternion [0.000, 0.000, -0.678, 0.735]
            in RPY [0.000, 0.000, -1.491]

I googled this before asking on forum thinking that it is a basic question, should have been answered by now but no success.

Looking for help please. Thanks

2014-01-28 17:23:10 -0500 marked best answer Does environment server make global 3D representation with respect to static frame /odom or /map ?

I am looking for a collision efficient 3D global representation. I think environment server does this using collision map, but I am not sure and hence want to clear my doubts.

Does environment server take the collision maps and put them into global representation which should be with respect to some static frame like /odom or /map. So if next time it receives a new collision map from different location of mobile base (as collision map is centered around the mobile base frame) then it should update the global 3D representation. could someone show me the right direction?

If above is true then Can I save the global 3d representation (collision map) and reload it again in the future??

Thanks,