Summary This paper describes autonomous racing of RC race cars based on mathematical optimization. Using a dynamical model of the vehicle, control inputs are computed by receding horizon based controllers, where the objective is to maximize progress on the track subject to the requirement of staying on the track and avoiding opponents. Two different control formulations are presented. The first controller employs a two-level structure, consisting of a path planner and a nonlinear model predictive controller (NMPC) for tracking. The second controller combines both tasks in one nonlinear optimization problem (NLP) following the ideas of contouring control. Linear time varying models obtained by linearization are used to build local approximations of the control NLPs in the form of convex quadratic programs (QPs) at each sampling time. The resulting QPs have a typical MPC structure and can be solved in the range of milliseconds by recent structure exploiting solvers, which is key to the real-time feasibility of the overall control scheme. Obstacle avoidance is incorporated by means of a high-level corridor planner based on dynamic programming, which generates convex constraints for the controllers according to the current position of opponents and the track layout. The control performance is investigated experimentally using 1:43 scale RC race cars, driven at speeds of more than 3 m s and in operating regions with saturated rear tire forces (drifting). The algorithms run at 50 Hz sampling rate on embedded computing platforms, demonstrating the real-time feasibility and high performance of optimization-based approaches for autonomous racing. Copyright © 2014 John Wiley & Sons, Ltd.
@cite_13: This paper presents simple analytical techniques that are used to understand and control high sideslip drift manoeuvres of road vehicles. These are manoeuvres in which a skilled driver stabilises a vehicle beyond its limits of handling, an operating regime responsible for major safety concerns in everyday driving. An analysis of the equilibria of a bicycle model with nonlinear tyres reveals the existence of unstable 'drift equilibria' corresponding to cornering at high sideslip angle in a countersteer configuration. Equipped with this information, linearisation about a desired drift equilibrium is used to design a controller that stabilises the vehicle at the equilibrium. The controller is subsequently implemented on a steer- and drive-by-wire testbed and successfully used to achieve autonomous drifts.
@cite_8: In this work we derive steady-state cornering conditions for a single-track vehicle model without restricting the operation of the tires to their linear region (i.e. allowing the vehicle to drift). For each steady-state equilibrium we calculate the corresponding tire friction forces at the front and rear tires, as well as the required front steering angle and front and rear wheel longitudinal slip, to maintain constant velocity, turning rate and vehicle sideslip angle. We design a linear controller that stabilizes the vehicle dynamics with respect to the steady-state cornering equilibria using longitudinal slip at the front and the rear wheels as the control inputs. The wheel torques necessary to maintain the given equilibria are calculated and a sliding-mode controller is proposed to stabilize the vehicle using only front and rear wheel torques as control inputs.
From a control perspective, the fundamental building blocks for automatic racing can be grouped into three categories: drift control, reference tracking, and path planning. Research associated with the first group focuses on gaining a better understanding of the behavior of the car near the friction limit for designing safety control systems that try to prevent loss-of-control accidents. By analyzing the nonlinear car model, it can be shown that steady state motions corresponding to drifting can be generated, see e.g. @cite_8 and @cite_13 . As these approaches are not designed for trajectory tracking, the controlled car drifts in a circle, which represents a steady state drift equilibrium.