Ask Your Question

Kasra's profile - activity

2021-03-21 10:52:58 -0600 received badge  Enlightened (source)
2021-03-21 10:52:58 -0600 received badge  Good Answer (source)
2021-02-21 14:11:03 -0600 received badge  Good Question (source)
2019-11-19 04:30:13 -0600 received badge  Nice Question (source)
2018-02-04 17:57:07 -0600 received badge  Famous Question (source)
2016-12-09 19:41:52 -0600 received badge  Student (source)
2015-07-15 05:58:40 -0600 received badge  Notable Question (source)
2015-07-15 05:58:40 -0600 received badge  Popular Question (source)
2015-04-17 09:57:52 -0600 received badge  Famous Question (source)
2015-04-10 05:29:38 -0600 received badge  Famous Question (source)
2014-12-30 22:44:44 -0600 received badge  Popular Question (source)
2014-12-30 22:44:44 -0600 received badge  Notable Question (source)
2014-12-02 02:12:24 -0600 received badge  Popular Question (source)
2014-12-02 02:12:24 -0600 received badge  Notable Question (source)
2014-11-20 16:33:29 -0600 asked a question load custom world in gazebo from launch file

Hello everyone,

I've built a custom wold for gazebo (dae file) and I'm trying to load this file from a launch file. When I run the world file directly from gazebo, it woks and I can see the world (gazebo But when I build a launch file and include the world file inside the launch file, I get the following error:

Error [] File or path does not exist[""]
Error [] No mesh specified

Here is the content of the world file (

image description

and here is the launch file(maze.launch):

image description

both launch file and world file are in the same directory and I've set the GAZEBO_MODEL_PATH to that directory. Can someone tell me what's the problem here?


2014-11-06 10:33:33 -0600 commented question pioneer 3dx gazebo model

Can anyone help please? This is driving me crazy !

2014-11-04 21:34:56 -0600 asked a question pioneer 3dx gazebo model

Hi everyone, Can anyone introduce me a stable pioneer-3dx model for Gazebo? I've tried p2os' model and the model in link ( ) and non of them are stable. In the second model, the caster wheel continuously revolves randomly and sometimes robot starts bouncing. Any help would be highly appreciated.

2014-10-31 15:22:48 -0600 commented question Acceleration Noise in Gazebo

Does anyone know about any good gazebo model of p3dx? I've tried the p2os model as well and it's not working for me.

2014-10-29 10:40:02 -0600 commented question Acceleration Noise in Gazebo

I don't think the real robot is that inaccurate. Its behavior is so unreliable.

2014-10-28 21:51:38 -0600 asked a question Acceleration Noise in Gazebo

Hi All,

I'm writing my own planner in ROS and I'm trying to test it using Gazebo. I'm observing really weird behaviors from Gazebo. For example some times I just send some simple velocity commands like Twist::linear.x = 1. Twist::angluar.z = 0, which is supposed to drive the robot in a straight line, but some times robot turns slightly. Also when I send rotational velocities the turning angle varies alot among different runs. I'm using the Pioneer 3dx model which I downloaded from . I think it's using "differential_drive_contoller" plugin to drive the robot. When I use the erratic_teleop_keyboard to drive the robot the same strange behavior happens. I'm using ROS Indigo. Any help would be highly appreciated.

2014-09-10 01:44:32 -0600 received badge  Famous Question (source)
2014-08-03 14:00:27 -0600 received badge  Notable Question (source)
2014-08-01 16:17:34 -0600 commented answer Replace move_base planners with a real-time algorithm

I just realized that I need to wipe out also cost maps and write my own environment tracker system. So most of the move_base is gone. I only need to use amcl for localization and then write my own planner. Still I don't have a clear idea of how should I do that! Thanks

2014-08-01 16:12:33 -0600 received badge  Popular Question (source)
2014-08-01 13:51:01 -0600 commented question Replace move_base planners with a real-time algorithm

I think I can keep cost maps for a real-time planner and only wipe out global and local planners.

2014-07-31 23:25:22 -0600 asked a question Replace move_base planners with a real-time algorithm

Hello everyone,

I'm currently using move_base and it works fine for me. I'm going to write my own planner based on a real-time planning algorithm. As you know in the real-time search there is no complete path to the goal because we need to decide what action to take soon. So we search forward until s time limit is reached, then the path with minimum cost is selected and this cycle repeats until we reach the goal (there is no guarantee that the path is optimum). So I think I need to wipe out local_planner and global_planner and replace them with only one real-time algorithm. I took a look at the move_base code ( ) and it looks so confusing to me. I don't know where should I start and what parts of the code should be replaced or removed. I appreciate your help in advance.

2014-07-23 13:20:32 -0600 received badge  Famous Question (source)
2014-07-17 05:02:24 -0600 received badge  Nice Answer (source)
2014-07-16 13:57:24 -0600 received badge  Self-Learner (source)
2014-07-16 13:57:24 -0600 received badge  Teacher (source)
2014-07-16 13:23:32 -0600 answered a question global costmap position

I found what's causing the problem. For whatever reason I couldn't put the namespace in the beginning of the param files like putting the "global_costmap" at the start point of the "global_costmap_params.yaml". It's the way it is in the tutorials but it just didn't work for me. So I added these namespaces to the move_base.launch and now I see my robot in center of the global_costmap. Thank you David, looking at the output of "rosparam get /move_base" helped me to figure it out.

2014-07-16 12:36:43 -0600 commented answer global costmap position

David, I only can put a few characters here so I uploaded the output: Thanks

2014-07-15 20:29:20 -0600 received badge  Notable Question (source)
2014-07-15 18:50:53 -0600 commented answer global costmap position

global_costmap, local_cost_map, and TrajectoryPlannerROS (They are set in move_base.launch)

2014-07-15 15:29:38 -0600 received badge  Popular Question (source)
2014-07-15 15:01:48 -0600 commented answer global costmap position

Thanks you. I made the changes but still when I add the global_costmap to the rviz, it shows it in the the same place. It seems writing "width: 40.0 height: 40.0 origin_x: -20.0 origin_y: -20.0" hasn't changed anything, because its origin is still (0, 0, 0) and weight=heigh=200

2014-07-14 23:28:52 -0600 asked a question global costmap position


I'm new to ROS and I'm trying to get my robot simulation in gazebo work with the navigation stack. I've followed the navigation stack tutorials but when I set a goal position in the rviz, I get the error:

[ WARN] [1405397031.898957310, 340.132000000]: The robot's start position is off the global costmap. Planning will always fail, are you sure the robot has been properly localized?

Here are my navigation stack configurations:


obstacle_range: 2.5
raytrace_range: 3.0
footprint: [[-0.2,-0.2],[-0.2,0.2], [0.2, 0.2], [0.2,-0.2]]
#robot_radius: 0.20
inflation_radius: 0.55

observation_sources: laser_scan_sensor

laser_scan_sensor: {sensor_frame: lms100, data_type: LaserScan, topic: /p3dx/laser/scan, marking: true, clearing: true}


global_frame: /map
robot_base_frame: base_link
update_frequency: 5.0
static_map: true


global_frame: odom
robot_base_frame: base_link
update_frequency: 5.0
publish_frequency: 2.0
static_map: false
rolling_window: true
width: 6.0
height: 6.0
resolution: 0.05

transform_tolerance: 0.8 # seconds


  max_vel_x: 0.45
  min_vel_x: 0.1
  max_rotational_vel: 1.0
  min_in_place_rotational_vel: 0.4

  acc_lim_th: 3.2
  acc_lim_x: 2.5
  acc_lim_y: 2.5

  holonomic_robot: false


  <master auto="start"/>

  <!-- Run the map server -->
<!-- <node name="map_server" pkg="map_server" type="map_server" args="$(find p3dx_description)/launch/map.yaml my_map" output="screen"/>   -->

  <!--- Run AMCL -->

  <include file="$(find amcl)/examples/amcl_omni.launch" />
 <!-- <include file="$(find erratic_navigation)/navigation_slam/slam_gmapping.launch" /> -->

  <node pkg="move_base" type="move_base" respawn="false" name="move_base" output="screen">
    <rosparam file="$(find p3dx_description)/launch/costmap_common_params.yaml" command="load" ns="global_costmap" />
    <rosparam file="$(find p3dx_description)/launch/costmap_common_params.yaml" command="load" ns="local_costmap" />
    <rosparam file="$(find p3dx_description)/launch/local_costmap_params.yaml" command="load" />
    <rosparam file="$(find p3dx_description)/launch/global_costmap_params.yaml" command="load" />
    <rosparam file="$(find p3dx_description)/launch/base_local_planner_params.yaml" command="load" />

gazebo.launch which contains gmapping:


    <!-- these are the arguments you can pass this launch file, for example 
        paused:=true -->
    <arg name="paused" default="false" />
    <arg name="use_sim_time" default="true" />
    <arg name="gui" default="true" />
    <arg name="headless" default="false" />
    <arg name="debug" default="false" />

    <!-- We resume the logic in empty_world.launch, changing only the name of 
        the world to be launched -->
    <include file="$(find gazebo_ros)/launch/empty_world.launch">
        <arg name="world_name" value="$(find p3dx_gazebo)/worlds/" />
        <arg name="debug" value="$(arg debug)" />
        <arg name="gui" value="$(arg gui)" />
        <arg name="paused" value="$(arg paused)" />
        <arg name="use_sim_time" value="$(arg use_sim_time)" />
        <arg name="headless" value="$(arg headless)" />


    <!-- Load the URDF into the ROS Parameter Server -->
    <param name="robot_description"
        command="$(find xacro)/ '$(find p3dx_description)/urdf/pioneer3dx.xacro'" />

    <!-- Run a python script to the send a service call to gazebo_ros to spawn 
        a URDF robot -->
    <node name="urdf_spawner" pkg="gazebo_ros" type="spawn_model"
        respawn="false" output="screen" args="-urdf -model p3dx -param robot_description" />

    <!-- ros_control p3rd launch file -->
    <!-- <include file="$(find p3dx_control)/launch/control.launch" /> -->

<!-- kasra -->

    <node pkg="p3dx_gazebo" name="mimic_cmd_vel" type="mimic_cmd_vel"  />

      <!-- convert joint states to TF transforms for rviz, etc -->
  <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher"
    respawn="false" output="screen">
    <remap from="/joint_states" to="/p3dx/joint_states" />
  <node ...
2014-07-14 20:35:16 -0600 received badge  Enthusiast
2014-06-30 21:44:22 -0600 received badge  Supporter (source)