  In this paper, we present a diabolo model that can be used for training
agents in simulation to play diabolo, as well as running it on a real dual
robot arm system. We first derive an analytical model of the diabolo-string
system and compare its accuracy using data recorded via motion capture, which
we release as a public dataset of skilled play with diabolos of different
dynamics. We show that our model outperforms a deep-learning-based predictor,
both in terms of precision and physically consistent behavior. Next, we
describe a method based on optimal control to generate robot trajectories that
produce the desired diabolo trajectory, as well as a system to transform
higher-level actions into robot motions. Finally, we test our method on a real
robot system by playing the diabolo, and throwing it to and catching it from a
human player.
