Distributed Motion Control for Multiple Connected Surface Vessels

  address = {Las Vegas, NV, USA},
  title = {Distributed {Motion} {Control} for {Multiple} {Connected} {Surface} {Vessels}},
  isbn = {978-1-72816-212-6},
  url = {https://ieeexplore.ieee.org/document/9340743/},
  abstract = {We propose a scalable cooperative control approach which coordinates a group of rigidly connected autonomous surface vessels to track desired trajectories in a planar water environment as a single floating modular structure. Our approach leverages the implicit information of the structure’s motion for force and torque allocation without explicit communication among the robots. In our system, a leader robot steers the entire group by adjusting its force and torque according to the structure’s deviation from the desired trajectory, while follower robots run distributed consensusbased controllers to match their inputs to amplify the leader’s intent using only onboard sensors as feedback. To cope with the nonlinear system dynamics in the water, the leader robot employs a nonlinear model predictive controller (NMPC), where we experimentally estimated the dynamics model of the floating modular structure in order to achieve superior performance for leader-following control. Our method has a wide range of potential applications in transporting humans and goods in many of today’s existing waterways. We conducted trajectory and orientation tracking experiments in hardware with three custom-built autonomous modular robotic boats, called Roboat, which are capable of holonomic motions and onboard state estimation. Simulation results with up to 65 robots also prove the scalability of our proposed approach.},
  language = {en},
  urldate = {2021-04-09},
  booktitle = {2020 {IEEE}/{RSJ} {International} {Conference} on {Intelligent} {Robots} and {Systems} ({IROS})},
  publisher = {IEEE},
  author = {Wang, Wei and Wang, Zijian and Mateos, Luis and Huang, Kuan Wei and Schwager, Mac and Ratti, Carlo and Rus, Daniela},
  month = oct,
  year = {2020},
  pages = {11658--11665},
  month_numeric = {10}