Giter VIP home page Giter VIP logo

husky's Introduction

Husky

ROS Packages for Husky Robot

Dependencies

  • fath_pivot_mount_description: $ sudo apt-get install ros-noetic-fath-pivot-mount-description
  • flir_camera_description: $ sudo apt-get install ros-noetic-flir-camera-description
  • velodyne_description: $ sudo apt-get install ros-noetic-velodyne-description
  • realsense2_description: $ sudo apt install ros-noetic-realsense2-description
  • LMS1xx: $ sudo apt-get install ros-noetic-lms1xx
  • robot_localization: $ sudo apt-get install ros-noetic-robot-localization
  • interactive_marker_twist_server: $ sudo apt-get install ros-noetic-interactive-marker-twist-server
  • twist_mux: $ sudo apt-get install ros-noetic-twist-mux
  • teleop_twist_keyboard: $ sudo apt-get install ros-noetic-teleop-twist-keyboard
  • teleop_twist_joy: $ sudo apt-get install ros-noetic-teleop-twist-joy
  • rviz_imu_plugin: $ sudo apt-get install ros-noetic-rviz-imu-plugin
  • gmapping: $ sudo apt-get install ros-noetic-gmapping

Installation

  1. Create a Catkin workspace (if not already present)
$ mkdir -p catkin_ws/src
  1. Change directory to the source space (src) of your Catkin workspace
$ cd catkin_ws/src
  1. Clone this repository:
$ git clone https://github.com/Tinker-Twins/Husky.git
  1. Change directory back to the Catkin workspace:
$ cd ..
  1. Build the packages:
$ catkin_make

Usage:

  1. Keyboard Teleoperation:

    $ roslaunch husky_gazebo husky_playpen.launch
    $ roslaunch husky_control teleop_keyboard.launch
  2. Map-Less Navigation:

    $ roslaunch husky_gazebo husky_playpen.launch
    $ roslaunch husky_viz view_robot.launch
    $ roslaunch husky_navigation map_less_navigation.launch
  3. Simultaneous Localization And Mapping (SLAM):

    $ roslaunch husky_gazebo husky_playpen.launch
    $ roslaunch husky_viz view_robot.launch
    $ roslaunch husky_navigation gmapping.launch
    $ roslaunch husky_control teleop_keyboard.launch

    To save generated map to current working directory, run:

    $ rosrun map_server map_saver -f <filename>
  4. Adaptive Monte Carlo Localization (AMCL):

    $ roslaunch husky_gazebo husky_playpen.launch
    $ roslaunch husky_viz view_robot.launch
    $ roslaunch husky_navigation amcl.launch
    $ roslaunch husky_control teleop_keyboard.launch
  5. Map-Based Navigation:

    $ roslaunch husky_gazebo husky_playpen.launch
    $ roslaunch husky_viz view_robot.launch
    $ roslaunch husky_navigation map_based_navigation.launch

Video Tutorials:

  1. Installation
  2. Teleoperation
  3. Map-Less Navigation
  4. SLAM
  5. Map-Based Localization
  6. Map-Based Navigation

husky's People

Contributors

tinker-twins avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

husky's Issues

3d Lidar

Hello again ๐Ÿ˜ƒ

I want to use Velodyne Lidar. The urdf file has it's tags. But rostopic echo /points command returns none. I changed parameters and tried but cant do it. How can I use 3d lidar?

Thanks for your interest

when i try to launch view_robot.launch w rviz, there is warning and a big error that closes rviz

here is the warning

[ WARN] [1690287699.820079586, 2168.940000000]: Interactive marker 'robot_twist_marker' contains unnormalized quaternions. This warning will only be output once but may be true for others; enable DEBUG messages for ros.rviz.quaternions to see more details.

i can fix the warning to change top_plate.stl from gazebo husky stl files. but i couldnt fix the error

here is the error
process[rviz-1]: started with pid [9654]
[ INFO] [1690288083.454007239]: rviz version 1.14.19
[ INFO] [1690288083.454063946]: compiled against Qt version 5.12.8
[ INFO] [1690288083.454072723]: compiled against OGRE version 1.9.0 (Ghadamon)
[ INFO] [1690288083.465769429]: Forcing OpenGl version 0.
[ INFO] [1690288084.222889530, 2553.210000000]: Stereo is NOT SUPPORTED
[ INFO] [1690288084.223049241, 2553.210000000]: OpenGL device: SVGA3D; build: RELEASE; LLVM;
[ INFO] [1690288084.223072695, 2553.210000000]: OpenGl version: 4.1 (GLSL 4.1) limited to GLSL 1.4 on Mesa system.
*** stack smashing detected **: terminated
[rviz-1] process has died [pid 9654, exit code -6, cmd /opt/ros/noetic/lib/rviz/rviz -d /home/xx/husky_ws/src/Husky/husky_viz/rviz/robot.rviz __name:=rviz __log:=/home/xx/.ros/log/c49272a6-2ae3-11ee-aa7e-9588e5fa7193/rviz-1.log].
log file: /home/xx/.ros/log/c49272a6-2ae3-11ee-aa7e-9588e5fa7193/rviz-1
.log

sometimes its opening but there is no image or map or etc :( do you know why and how to fix.

image

Depth Camera

Hello,

I want to use depth camera and suppose the intel_realsense.urdf.xacro file is for depth camera. But I cannot see topics for this and depth camera images. How can I do that?

OS: Ubuntu 20.04
ROS Version: Noetic

Best Regards

flir-camera-description unable to locate

Hey bro, I am facing error regarding the flir camera description installation.
I am using ros melodic and in that I am unable to install this description.

Error:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package ros-melodic-flir-camera-description

Move Base Terrain Map Points Which is Behind of Hill

Hello Community,

I am studing autonomous path planning using move_base.launch node and yaml files in this repo. I wrote a slope detector code and coordinate code that takes the gps data from terminal and convert them utm and mappose. The command is here:

rostopic pub --once /move_base_simple/goal_fix sensor_msgs/NavSatFix "header: seq: 0 stamp: {secs: 0, nsecs: 0} frame_id: '' status: {status: 0, service: 0} latitude: 49.900712660524746 longitude: 8.900719770176472 altitude: -1.2020334709814404 position_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]"

The problem is the robot goes everywhere in your clearpath_playpen.world and my terrain map. However, When I want to go far points behind the hill, the robot cannot exceed the obstacle and cannot change its path plan. How should I set the parameters? Do you have some suggestions for that problem?

move_base.launch file:

`

<param name="base_global_planner" value="$(arg base_global_planner)"/>
<param name="base_local_planner" value="$(arg base_local_planner)"/>  
<rosparam file="$(find main_package)/config/planner.yaml" command="load"/>

<rosparam file="$(find main_package)/config/costmap_common.yaml" command="load" ns="global_costmap" />
<rosparam file="$(find main_package)/config/costmap_common.yaml" command="load" ns="local_costmap" />

<rosparam file="$(find main_package)/config/costmap_local.yaml" command="load" ns="local_costmap" />
<param name="local_costmap/width" value="10.0"/>
<param name="local_costmap/height" value="10.0"/>

<rosparam file="$(find main_package)/config/costmap_slope_static.yaml" command="load" ns="global_costmap" unless="$(arg no_static_map)"/>

<param name="global_costmap/width" value="500.0" />
<param name="global_costmap/height" value="500.0" />

<remap from="/odom" to="/odometry/filtered_fusion"/>
`

planner.yaml:

controller_frequency: 5.0
recovery_behaviour_enabled: true

NavfnROS:
allow_unknown: true
default_tolerance: 0.1

TrajectoryPlannerROS:
acc_lim_x: 2.5
acc_lim_theta: 3.2

max_vel_x: 1.0
min_vel_x: -1.0 # default 0.0

max_vel_theta: 1.0
min_vel_theta: -1.0
min_in_place_vel_theta: 0.2

holonomic_robot: false
escape_vel: -0.1

yaw_goal_tolerance: 0.1
xy_goal_tolerance: 0.2
latch_xy_goal_tolerance: false

sim_time: 2.0
sim_granularity: 0.02
angular_sim_granularity: 0.02
vx_samples: 6
vtheta_samples: 20
controller_frequency: 20.0

meter_scoring: true
occdist_scale: 0.1
pdist_scale: 0.75
gdist_scale: 1.0

heading_lookahead: 0.325
heading_scoring: false
heading_scoring_timestep: 0.8 scoring (double, default: 0.8)
dwa: true
simple_attractor: false
publish_cost_grid_pc: true

oscillation_reset_dist: 0.25
escape_reset_dist: 0.1
escape_reset_theta: 0.1

DWAPlannerROS:
acc_lim_x: 2.5
acc_lim_y: 0
acc_lim_th: 3.2

max_vel_x: 1.0
min_vel_x: -0.5
max_vel_y: 0
min_vel_y: 0

max_trans_vel: 2.0
min_trans_vel: 0.1
max_rot_vel: 1.0
min_rot_vel: 0.2

yaw_goal_tolerance: 0.1
xy_goal_tolerance: 0.2
latch_xy_goal_tolerance: false

costmap_common.yaml:

footprint: [[-0.5, -0.33], [-0.5, 0.33], [0.5, 0.33], [0.5, -0.33]]
footprint_padding: 0.01

robot_base_frame: base_link
update_frequency: 4.0
publish_frequency: 3.0
transform_tolerance: 3.0

resolution: 0.05

obstacle_range: 5.5
raytrace_range: 6.0

origin_x: -10.0
origin_y: -10.0
width: 800.0
height: 800.0

#layer definitions
static:
map_topic: /occupancy_grid
subscribe_to_updates: true

inflation:
inflation_radius: 1.0

costmap_local.yaml:

global_frame: map
rolling_window: true

plugins:

  • {name: static, type: "costmap_2d::StaticLayer"}
  • {name: obstacles_layer, type: "costmap_2d::ObstacleLayer"}
  • {name: inflation, type: "costmap_2d::InflationLayer"}

costmap_slope_static.yaml:

global_frame: map
rolling_window: true
track_unknown_space: true
map_topic: /occupancy_grid

origin_x: 0.0
origin_y: 0.0
width: 20.0
height: 20.0

plugins:

  • {name: static, type: "costmap_2d::StaticLayer"}
  • {name: inflation, type: "costmap_2d::InflationLayer"}

Assistance to re-enable multimaster_launch package

I have successfully executed all 5 usages from Keyboard teleportation to Map-Based Navigation, however I am unable to launch the multi_husky_playpen.launch file as there is no multimaster_launch package in neither the src paths or local noetic files. Any suggestions how to proceed with creation of a fleet management system in playpen world using the tinker-twins repository?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.