  We present the design of a low-cost wheeled mobile robot, and an analytical
model for predicting its motion under the influence of motor torques and
friction forces. Using our proposed model, we show how to analytically compute
the gradient of an appropriate loss function, that measures the deviation
between predicted motion trajectories and real-world trajectories, which are
estimated using Apriltags and an overhead camera. These analytical gradients
allow us to automatically infer the unknown friction coefficients, by
minimizing the loss function using gradient descent. Motion trajectories that
are predicted by the optimized model are in excellent agreement with their
real-world counterparts. Experiments show that our proposed approach is
computationally superior to existing black-box system identification methods
and other data-driven techniques, and also requires very few real-world samples
for accurate trajectory prediction. The proposed approach combines the data
efficiency of analytical models based on first principles, with the flexibility
of data-driven methods, which makes it appropriate for low-cost robots. Using
the learned model and our gradient-based optimization approach, we show how to
automatically compute motor control signals for driving the robot along
pre-specified curves.
