  In this paper, we introduce ChoiRbot, a toolbox for distributed cooperative
robotics based on the novel Robot Operating System (ROS) 2. ChoiRbot provides a
fully-functional toolset to execute complex distributed multi-robot tasks,
either in simulation or experimentally, with a particular focus on networks of
heterogeneous robots without a central coordinator. Thanks to its modular
structure, ChoiRbot allows for a highly straight implementation of
optimization-based distributed control schemes, such as distributed optimal
control, model predictive control, task assignment, in which local computation
and communication with neighboring robots are alternated. To this end, the
toolbox provides functionalities for the solution of distributed optimization
problems. The package can be also used to implement distributed feedback laws
that do not need optimization features but do require the exchange of
information among robots. The potential of the toolbox is illustrated with
simulations and experiments on distributed robotics scenarios with mobile
ground robots. The ChoiRbot toolbox is available at
https://github.com/OPT4SMART/choirbot.
