kinematics_exchanger package from swarm_functions repoarea_division coverage_path kinematics_exchanger state_exchanger swarm_functions target_monitor task_allocation |
|
Package Summary
Tags | No category tags. |
Version | 1.1.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/cpswarm/swarm_functions.git |
VCS Type | git |
VCS Version | kinetic-devel |
Last Updated | 2021-01-19 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Micha Sende
Authors
- Micha Sende
kinematics_exchanger
This package exchanges kinematic properties such as velocity or position between multiple cyber physical systems (CPSs) in a swarm.
Dependencies
This package depends on the following message definitions:
The communication between CPSs is based on the CPSwarm Communication Library.
The following packages of the sensing and actuation library are required:
- *_pos_provider
- *_vel_provider
Further required packages are:
Execution
Run the launch file
roslaunch kinematics_exchanger kinematics_exchanger.launch
to launch the kinematics_exchanger
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 kinematics_exchanger.yaml
that allows to configure the behavior of the kinematics_exchanger
node.
Nodes
kinematics_exchanger
The kinematics_exchanger
node publishes position and velocity of this CPS to the rest of the swarm and publishes the position and velocity received from the other swarm members locally. It publishes the swarm position both as relative and absolute coordinates. The swarm velocity is published only as relative coordinates.
Subscribed Topics
-
pos_provider/pose
(geometry_msgs/PoseStamped) The current position of this CPS. -
vel_provider/velocity
(geometry_msgs/TwistStamped) The current velocity of this CPS. -
bridge/events/position
(cpswarm_msgs/Position) The current position of another CPS. Messages are exchanged between CPSs using the CPSwarm Communication Library. -
bridge/events/velocity
(cpswarm_msgs/Velocity) The current velocity of another CPS. Messages are exchanged between CPSs using the CPSwarm Communication Library.
Published Topics
-
position
(cpswarm_msgs/Position) The current position of this CPS that is forwarded by the CPSwarm Communication Library to the other swarm members. -
velocity
(cpswarm_msgs/Velocity) The current velocity of this CPS that is forwarded by the CPSwarm Communication Library to the other swarm members. -
swarm_position
(cpswarm_msgs/ArrayOfPositions) The positions of the other swarm members received through the CPSwarm Communication Library. -
swarm_position_rel
(cpswarm_msgs/ArrayOfVectors) The positions of the other swarm members received through the CPSwarm Communication Library relative to the position of this CPS. -
swarm_velocity_rel
(cpswarm_msgs/ArrayOfVectors) The velocities of the other swarm members received through the CPSwarm Communication Library relative to the velocity of this CPS.
Parameters
-
~loop_rate
(real, default:1.5
) The frequency in Hz at which to run the control loops. -
~queue_size
(integer, default:10
) The size of the message queue used for publishing and subscribing to topics. -
~timeout
(real, default:20.0
) The time in seconds after which another CPS is considered to have left the swarm. -
~sample_size
(integer, default:5
) The number of data samples to average over for reliable results. -
~init
(integer, default:30
) The number of messages to ignore during initialization. This is because the first messages are inaccurate.
Code API
Changelog for package kinematics_exchanger
1.1.0 (2019-10-31)
- Changed: Renamed package swarm_kinematics_exchanger to kinematics_exchanger
- Contributors: Micha Sende
1.0.0 (2019-09-11)
- Initial release of swarm_kinematics_exchanger
- Contributors: Micha Sende
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
roscpp | |
geometry_msgs | |
cpswarm_msgs | |
tf2 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
swarm_functions |
Launch files
- launch/kinematics_exchanger.launch
-
- id [default: 1]
- output [default: log]