No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 1.3.0
License Apache License 2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/cpswarm/swarm_behaviors.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2020-03-04
Dev Status DEVELOPED
CI status Continuous Integration
Released RELEASED
Package Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

A package performs random walk coverage with an unmanned ground vehicle (UGV).

Additional Links

Maintainers

  • Micha Sende

Authors

  • Micha Sende

ugv_random_walk

Build Status

This package performs random walk coverage with an unmanned ground vehicle (UGV). It is part of the swarm behaviors library.

Dependencies

This package depends on the following message definitions: * cpswarm_msgs

The following library packages of the swarm behaviors library are required: * swarm_behaviors_position

The following packages of the swarm functions library are required: * target_monitor (only if single_target=true)

The following packages of the sensing and actuation library are required: * area_provider * obstacle_detection

Further required packages are: * roscpp * actionlib * random_numbers

Execution

Run the launch file

roslaunch ugv_random_walk ugv_random_walk.launch

to launch the ugv_random_walk node.

The launch file can be configured with following parameters: * id (integer, default: 1) The identifier (ID) of the CPS used for name spacing in simulation. * output (string, default: screen) Whether to show the program output (screen) or to write it to a log file (log).

In the param subdirectory there is the parameter file ugv_random_walk.yaml that allows to configure the behavior of the ugv_random_walk node.

Nodes

ugv_random_walk

The ugv_random_walk performs coverage using the random walk algorithm. The random walk is a mathematical movement model, where an agent moves straight for a specific distance. Then, it changes its direction randomly into a direction that is clear of obstacles and moves straight again. If it arrives at the environment boundary, it reflects to continue its walk. When the parameter single_target is set to true, the UGV succeeds once a target has been found and returns the target ID and position.

Action Goal

Action Result

Subscribed Topics

  • target_found (cpswarm_msgs/TargetPositionEvent) Position and ID of a target detected by the target monitor. Only subscribed when single_target is set to true.

Services Called

Parameters

  • ~loop_rate (real, default: 5.0) The frequency in Hz at which to run the control loops.
  • ~queue_size (integer, default: 1) The size of the message queue used for publishing and subscribing to topics.
  • ~single_target (boolean, default: true) Whether the algorithm will succeed / terminate once a target has been found.
  • ~step_size (real, default: 3.0) The distance in meter that a UGV travels in one step.
  • /rng_seed (integer, default: 0) The seed used for random number generation. In the default case, a random seed is generated.

Code API

ugv_random_walk package code API documentation

CHANGELOG

Changelog for package ugv_random_walk

1.3.0 (2020-01-03)

1.2.0 (2019-12-29)

  • Changed: Refactor library structure
  • Changed: Read RNG seed from parameter, use random seed otherwise
  • Changed: Return state aborted once coverage finishes
  • Changed: Check if movement was successful
  • Changed: Targets handled by swarm functions library
  • Fixed: Correctly handle state of behavior algorithm
  • Fixed: Force C++11
  • Fixed: Returning of target
  • Initial release of ugv_random_walk
  • Contributors: Micha Sende

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

Launch files

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ugv_random_walk at answers.ros.org

No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.