Skip to content

Conversation

@FlorGrosso
Copy link
Member

@FlorGrosso FlorGrosso commented Jul 1, 2020

Description

This PR adds:

  1. Hector SLAM as a new mapping package. It enables:
  • Mapping using hector SLAM and saving the map with the map server.
  • Mapping using hector SLAM and saving the map with hector geotiff.
  1. Large Maps Framework (LaMa) as a new localization package.

  2. move base flex as a navigation alternative to move base.

Note: this PR also includes the latest work from @eborghi10 on Hardware updates and Square Test.

Type of change

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How Has This Been Tested?

  1. Hector SLAM

A) Hector + Map server

export LOCALIZATION=hector_mapping
export RVIZ=true
export LASER=rplidar
roslaunch ca_gazebo create_house.launch

On another console:

roslaunch ca_tools keyboard_teleop.launch

Map the environment and when finished, save the map:

rosrun map_server map_saver -f hector_house

B) Hector + geotiff

export LOCALIZATION=hector_geotiff
export RVIZ=true
export LASER=rplidar
roslaunch ca_gazebo create_house.launch

On another console:

roslaunch ca_tools keyboard_teleop.launch

Map the environment and when finished, save the map:

roslaunch ca_hector geotiff_map_saver.launch

This will store it under ca_hector/maps with the name _ts.tif and _ts.tfw, where is the name of the environment mapped ('house' in this case).

C) Repeated A) and B) sending navigation goals to the robot instead of using teleop.

  1. LaMa
export LOCALIZATION=lama
export RVIZ=true
export LASER=rplidar
roslaunch ca_gazebo create_house.launch

Using rviz, test navigation and localization.

  1. Move Base Flex

A) Regressions
Check that move base is the navigation option by default

export LOCALIZATION=amcl
export RVIZ=true
export LASER=rplidar
roslaunch ca_gazebo create_house.launch

B) New feature

export LOCALIZATION=amcl
export RVIZ=true
export LASER=rplidar
export NAVIGATION=mbf
roslaunch ca_gazebo create_house.launch

Using rviz, test that the robot can navigate when sending a goal to create1/move_base_simple/goal.

Note: test using different local and global planners, configuring them through env variables.

Test Configuration:

  • Gazebo simulation

Checklist:

  • My code follows the style guidelines of this project (Travis CI is passing)
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

Emiliano Borghi and others added 5 commits June 25, 2020 23:29
* Add square test

* Improve move_square script

* ros --> rospy

* Fix linter
* Mount RPLidar and robot with a fixed udev

* Improve ca_gazebo CMake testing list

* Generalize IMU settings path

* Use /dev/roomba for robot USB

* Improve LiDAR config

* Add imu_filter_madgwick as dependency

* fixup! Improve LiDAR config

* Set IMU rate
* Add hector slam package

* Add ca_hector package

* Add launchfile and config for default mapping

* Add localization opt for hector

* Add launchfiles for geotiff mapping

* Add localization opt for hector geotiff

* Add house maps

* Add comment to hector config

* Remove exec permissions

* Address comments

* Use env var to name the map

* Switch Hector dep to .repos
* Add packages dependencies for mbf

* Add mbf launchfile

* mbf: add planners config

* mbf: add controllers config

* mbf: add recovery behaviors config

* Add global planner config

* Add navigation option

* mbf: update dependencies

* mbf: complete support for all planners

* mbf: remove unnecesary files

* Remove moveback recovery

* Correct namespaces
* Add lama packages

* Add launchfile and config for lama

* Add localization opt for lama

* Fix namespace issue for map server

* Update lama dependencies intall

* Add lama to dependencies

* Fix build dependencies

* Address comments

* Rename node to lama

* Update offset params for lama

* Restore missing tag

* Add transform tolerance for Hector
@FlorGrosso FlorGrosso requested a review from eborghi10 as a code owner July 1, 2020 19:20
@FlorGrosso FlorGrosso merged commit e668cd7 into ekumenlabs:kinetic-devel Jul 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant