Wiki

Only released in EOL distros:  

swarm_functions: area_division | coverage_path | kinematics_exchanger | state_exchanger | target_monitor | task_allocation

Package Summary

A package that exchanges behavioral states between multiple cyber physical systems (CPSs) in a swarm.

  • Maintainer status: developed
  • Maintainer: Micha Sende <sende AT lakeside-labs DOT com>
  • Author: Micha Sende <sende AT lakeside-labs DOT com>
  • License: Apache License 2.0
  • Source: git https://github.com/cpswarm/swarm_functions.git (branch: kinetic-devel)

Dependencies

This package depends on the following message definitions:

The communication between CPSs is based on the CPSwarm Communication Library.

The state that is exchanged is read from a SMACH state machine.

Execution

Run the launch file

roslaunch state_exchanger state_exchanger.launch

to launch the state_exchanger node.

The launch file can be configured with following parameters:

id (integer, default: 1)

output (string, default: screen)

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

Nodes

state_exchanger

The state_exchanger node publishes behavioral states of this CPS to the rest of the swarm and publishes the state received from the other swarm members locally. The state is taken from a locally running SMACH state machine. If the CPS is in multiple states, only the first one is considered.

Subscribed Topics

smach_server/smach/container_status (smach_msgs/SmachContainerStatus) bridge/events/state (cpswarm_msgs/StateEvent)

Published Topics

state (cpswarm_msgs/StateEvent) swarm_state (cpswarm_msgs/ArrayOfStates)

Parameters

~loop_rate (real, default: 1.5) ~queue_size (integer, default: 10) ~timeout (real, default: 20.0) ~sm_path (string, default: /SM_TOP)

Acknowledgements

This work is supported by the European Commission through the CPSwarm H2020 project under grant no. 731946.

Wiki: state_exchanger (last edited 2019-11-05 16:02:49 by MichaSende)