Skip to content

Tinker-Twins/Husky

Repository files navigation

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