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

Youssef_Lah's profile - activity

2023-05-22 10:05:54 -0500 received badge  Famous Question (source)
2023-03-20 20:40:25 -0500 received badge  Notable Question (source)
2023-02-26 08:08:53 -0500 received badge  Enlightened (source)
2023-02-26 08:08:53 -0500 received badge  Good Answer (source)
2023-01-27 03:54:50 -0500 received badge  Famous Question (source)
2023-01-26 19:44:36 -0500 marked best answer smac lattice planner for differential robot

env: ros2 humble on ubuntu 22.04

I am trying to use smac lattice planner for my differential/rectangular robot. I noticed that when the robot arrives near goal, it parks as a vehicle and it does not rotate on goal. in nav2 documentation it says that the planner is suitable for differential non-circular robot. How can I make the robot rotate on goal ? here is the screen and config:

image description

planner_server:
  ros__parameters:
    expected_planner_frequency: 20.0
    use_sim_time: False
    planner_plugins: ["GridBased"]
    GridBased:
      plugin: "nav2_smac_planner/SmacPlannerLattice"
      allow_unknown: true  
      tolerance: 0.05
      max_iterations: 1000000         
      max_on_approach_iterations: 1000  
      max_planning_time: 5.0          
      analytic_expansion_ratio: 3.5 
      analytic_expansion_max_length: 4.0 
      reverse_penalty: 1.0 
      change_penalty: 0.05 
      non_straight_penalty: 1.05
      cost_penalty: 2.0
      rotation_penalty: 1.0               
      retrospective_penalty: 0.015
      lattice_filepath: "path_to_file/output.json" 
      lookup_table_size: 20.0  
      cache_obstacle_heuristic: true
      allow_reverse_expansion: true
      smooth_path: False

and for the primitive config:

{
    "motion_model": "diff",
    "turning_radius": 1.0,
    "grid_resolution": 0.05,
    "stopping_threshold": 5,
    "num_of_headings": 16
}
2023-01-26 19:44:34 -0500 commented answer smac lattice planner for differential robot

the minimum turning_radius value that I can set to generate the lattice file is 0.08, else the script got division by ze

2023-01-08 17:03:24 -0500 received badge  Popular Question (source)
2023-01-04 03:13:48 -0500 received badge  Good Question (source)
2023-01-04 03:13:47 -0500 received badge  Nice Answer (source)
2022-12-28 12:17:04 -0500 commented answer smac lattice planner for differential robot

when I set it to 0, the robot arrive to goal and stops, it does not rotate to meet the desired orientation.

2022-12-28 12:16:08 -0500 commented question smac lattice planner for differential robot

the controller is following the exact path (as expected), but the generated path from the planner is not suitable for di

2022-12-28 12:15:31 -0500 commented question smac lattice planner for differential robot

the controller is following the exact path (as expected), but the generated path from the planner is not suitable for di

2022-12-22 10:13:25 -0500 commented answer How to generate custom control sets for Smac State Lattice Planner?

I am facing a problem for tunning a differential/rectangular robot, did anyone of you figure out how to customize it ? h

2022-12-21 20:29:39 -0500 edited question smac lattice planner for differential robot

smac lattice planner for differential robot env: ros2 humble on ubuntu 22.04 I am trying to use smac lattice planner fo

2022-12-21 20:24:09 -0500 asked a question smac lattice planner for differential robot

smac lattice planner for differential robot env: ros2 humble on ubuntu 22.04 I am trying to use smac lattice planner fo

2022-11-28 18:57:36 -0500 received badge  Famous Question (source)
2022-10-26 19:53:46 -0500 asked a question Local planer does not follow global plan

Local planer does not follow global plan Ubuntu 22.04 / ROS 2 Humble Hi, the local planner does not tightly follow the

2022-10-25 20:24:19 -0500 received badge  Notable Question (source)
2022-09-21 06:17:19 -0500 received badge  Famous Question (source)
2022-08-31 02:16:55 -0500 received badge  Self-Learner (source)
2022-08-30 14:18:13 -0500 edited answer tf2 view_frames under namespace

I've checked the package code and figure out that the command should be run like this: ros2 run tf2_tools view_frames -

2022-08-30 14:18:07 -0500 commented answer tf2 view_frames under namespace

Thanks @zechurbo, I've posted a cleaner solution.

2022-08-30 14:17:16 -0500 marked best answer tf2 view_frames under namespace

Hi community,

env: ROS2 Galactic

how can I view the frames of a name-spaced simulation ? the command ros2 run tf2_tools view_frames does not work when I set a namespace.

image description

Thanks

2022-08-30 14:17:11 -0500 answered a question tf2 view_frames under namespace

I've checked the package code and figure out that the command should be run like this: ros2 run tf2_tools view_frames --

2022-08-30 05:20:04 -0500 received badge  Nice Question (source)
2022-08-30 05:19:55 -0500 received badge  Popular Question (source)
2022-07-31 22:51:34 -0500 edited question tf2 view_frames under namespace

tf2 view_frames under namespace Hi community, env: ROS2 Galactic how can I view the frames of a name-spaced simulation

2022-07-31 22:50:08 -0500 asked a question tf2 view_frames under namespace

tf2 view_frames under namespace Hi community, env: ROS2 Galactic how can I view the frames of a name-spaced simulation

2022-07-08 13:19:37 -0500 commented answer galactic keepout_filter inflation

I didn't manage to resolve it, maybe in the next few months i will get back to this task.

2022-03-04 12:08:27 -0500 received badge  Notable Question (source)
2021-12-10 09:13:36 -0500 received badge  Famous Question (source)
2021-10-27 10:01:23 -0500 received badge  Famous Question (source)
2021-10-05 00:50:48 -0500 marked best answer Nav2 - global_planner does not avoid obstacles

Hi,

I am tunning nav2 parameters for a rectangular robot, when I send a goal that requires obstacle avoidance the planner does not avoid the obstacle, here is my param file and screenshot. Thanks for help.

image description

amcl:
  ros__parameters:
    use_sim_time: True
    alpha1: 0.2
    alpha2: 0.2
    alpha3: 0.2
    alpha4: 0.2
    alpha5: 0.2
    base_frame_id: "base_footprint"
    beam_skip_distance: 0.5
    beam_skip_error_threshold: 0.9
    beam_skip_threshold: 0.3
    do_beamskip: false
    global_frame_id: "map"
    lambda_short: 0.1
    laser_likelihood_max_dist: 2.0
    laser_max_range: 100.0
    laser_min_range: -1.0
    laser_model_type: "likelihood_field"
    max_beams: 60
    max_particles: 2000
    min_particles: 500
    odom_frame_id: "odom"
    pf_err: 0.05
    pf_z: 0.99
    recovery_alpha_fast: 0.0
    recovery_alpha_slow: 0.0
    resample_interval: 1
    robot_model_type: "differential"
    save_pose_rate: 0.5
    sigma_hit: 0.2
    tf_broadcast: true
    transform_tolerance: 1.0
    update_min_a: 0.01 
    update_min_d: 0.2 
    z_hit: 0.5
    z_max: 0.05
    z_rand: 0.5
    z_short: 0.05
    scan_topic: scan_front
    map_topic: map

amcl_map_client:
  ros__parameters:
    use_sim_time: True

amcl_rclcpp_node:
  ros__parameters:
    use_sim_time: True

bt_navigator:
  ros__parameters:
    use_sim_time: True
    global_frame: "map"
    robot_base_frame: "base_link"
    odom_topic: /odom
    enable_groot_monitoring: True
    groot_zmq_publisher_port: 1666
    groot_zmq_server_port: 1667
    default_bt_xml_filename: "navigate_w_replanning_and_recovery.xml"
    plugin_lib_names:
    - nav2_compute_path_to_pose_action_bt_node
    - nav2_follow_path_action_bt_node
    - nav2_back_up_action_bt_node
    - nav2_spin_action_bt_node
    - nav2_wait_action_bt_node
    - nav2_clear_costmap_service_bt_node
    - nav2_is_stuck_condition_bt_node
    - nav2_goal_reached_condition_bt_node
    - nav2_goal_updated_condition_bt_node
    - nav2_initial_pose_received_condition_bt_node
    - nav2_reinitialize_global_localization_service_bt_node
    - nav2_rate_controller_bt_node
    - nav2_distance_controller_bt_node
    - nav2_speed_controller_bt_node
    - nav2_truncate_path_action_bt_node
    - nav2_goal_updater_node_bt_node
    - nav2_recovery_node_bt_node
    - nav2_pipeline_sequence_bt_node
    - nav2_round_robin_node_bt_node
    - nav2_transform_available_condition_bt_node
    - nav2_time_expired_condition_bt_node
    - nav2_distance_traveled_condition_bt_node

bt_navigator_rclcpp_node:
  ros__parameters:
    use_sim_time: True

controller_server:
  ros__parameters:
    use_sim_time: True
    controller_frequency: 5.0
    min_x_velocity_threshold: 0.001
    min_y_velocity_threshold: 0.5
    min_theta_velocity_threshold: 0.001
    progress_checker_plugin: "progress_checker"
    goal_checker_plugin: "goal_checker"
    controller_plugins: ["FollowPath"]

    # Progress checker parameters
    progress_checker:
      plugin: "nav2_controller::SimpleProgressChecker"
      required_movement_radius: 0.5
      movement_time_allowance: 10.0
    # Goal checker parameters
    goal_checker:
      plugin: "nav2_controller::SimpleGoalChecker"
      xy_goal_tolerance: 0.25
      yaw_goal_tolerance: 0.25
      stateful: True
    # DWB parameters
    FollowPath:
      plugin: "dwb_core::DWBLocalPlanner"
      debug_trajectory_details: True
      min_vel_x: 0.0
      min_vel_y: 0.0
      max_vel_x: 1.5
      max_vel_y: 0.0
      max_vel_theta: 1.0
      min_speed_xy: 0.0
      max_speed_xy: 1.0
      min_speed_theta: 0.0
      acc_lim_x: 2.5
      acc_lim_y: 0.0
      acc_lim_theta: 3.2
      decel_lim_x: -2.5
      decel_lim_y: 0.0
      decel_lim_theta: -3.2
      vx_samples: 20
      vy_samples: 5
      vtheta_samples: 20
      sim_time: 1.7
      linear_granularity: 0.05
      angular_granularity: 0.025
      transform_tolerance: 0.2
      xy_goal_tolerance: 0.25
      trans_stopped_velocity: 0.25
      short_circuit_trajectory_evaluation: True
      stateful: True
      critics: ["RotateToGoal", "Oscillation", "ObstacleFootprint", "GoalAlign", "PathAlign", "PathDist", "GoalDist"] # ObstacleFootprint pour notre robot (non circulaire)
      ObstacleFootprint.scale: 0.02 # meme chose
      PathAlign.scale: 32.0
      PathAlign.forward_point_distance: 0.1
      GoalAlign.scale: 24.0
      GoalAlign.forward_point_distance: 0.1
      PathDist.scale: 32.0
      GoalDist.scale: 24.0
      RotateToGoal.scale: 32.0
      RotateToGoal.slowing_factor: 5.0
      RotateToGoal.lookahead_time: -1.0

controller_server_rclcpp_node:
  ros__parameters:
    use_sim_time: True

local_costmap:
  local_costmap:
    ros__parameters:
      update_frequency: 5.0
      publish_frequency: 2.0
      global_frame: "map"
      robot_base_frame: "base_link"
      use_sim_time: True
      rolling_window: true
      width: 5
      height: 5
      resolution: 0.05
      map_topic: "map"
      origin_x: -24.9
      origin_y: -24.9
      footprint_padding: 0.01
      footprint: "[[-0.7874, -0.381], [-0.7874, 0.381], [0.8636, 0.381], [0.8636, -0.381]]"
      plugins: ["obstacle_layer", "inflation_layer"]
      inflation_layer:
        plugin: "nav2_costmap_2d::InflationLayer"
        cost_scaling_factor: 3.0
        inflation_radius: 0.55
      obstacle_layer:
        plugin: "nav2_costmap_2d::ObstacleLayer"
        enabled: True
        observation_sources: scan
        scan:
          topic: /scan_front
          max_obstacle_height: 2.0
          clearing: True
          marking: True
          data_type: "LaserScan"
      static_layer:
        map_subscribe_transient_local: True
      always_send_full_costmap: True
  local_costmap_client:
    ros__parameters:
      use_sim_time: True
  local_costmap_rclcpp_node:
    ros__parameters:
      use_sim_time: True

global_costmap:
  global_costmap:
    ros__parameters:
      update_frequency: 1.0
      publish_frequency: 1.0
      global_frame: map
      robot_base_frame: base_link
      use_sim_time: True
      footprint_padding: 0.01
      footprint ...
(more)
2021-09-28 03:47:12 -0500 received badge  Notable Question (source)
2021-09-23 02:55:31 -0500 received badge  Notable Question (source)
2021-09-16 08:49:45 -0500 received badge  Famous Question (source)
2021-08-21 05:54:26 -0500 received badge  Famous Question (source)
2021-08-02 22:06:25 -0500 marked best answer navigation2 - Set two scan topics to AMCL

Hi,

Env: ROS2 Foxy / Ubuntu 20.04

I have a robot navigating with two Lidars, so I have two topics /scan_front and /scan_back. in the costmap i am setting observation_sources: scan1 scan2, but how can I set two scan topics in the parameter "scan_topic" for AMCL ?

Thanks in advance.

2021-07-30 16:04:58 -0500 received badge  Popular Question (source)
2021-07-22 00:49:20 -0500 asked a question Spatio-temporal voxel layer to avoid 3d obstacles

Spatio-temporal voxel layer to avoid 3d obstacles Hi community, env: Galactic I am trying to implement the Spatio-temp

2021-07-21 17:46:44 -0500 answered a question Is URDF plugin's namespace different from topic's namespace?

Here is what I did for namespace and it's working well: In a file robots.launch: (here I show you only the group tag)

2021-07-21 06:53:28 -0500 received badge  Nice Answer (source)
2021-07-20 20:22:54 -0500 received badge  Rapid Responder (source)
2021-07-20 20:22:54 -0500 answered a question No /odom or /cmd_vel topics when using diff drive plugin

In this link you will find how to use many gazebo plugins for ROS2 including diff_drive. Here is an example of how to u