ME4828 Fundamental GNC Algorithms of Autonomous Robotics

This course presents the key concepts of the integrated Guidance, Navigation, and Control systems of autonomous vehicles and builds their most common algorithms. It defines the objectives of each GNC component and the combined closed-loop system. First, it develops a linear controller capable of vehicle stabilization and reference-following. The feedback design utilizes the concept of a noise-additive sensor model that is represented by a Gaussian probability density function. The course teaches how to design a calibration experiment that identifies a sensor. The multiplexing of qualitatively different measurements is introduced using the Bayesian inference concept. The propagation of Gaussian noise through the linear and nonlinear systems develops the prediction-correction mechanism of the linear and extended Kalman filters and builds the path to modern unscented and particle filters. The path-planning considers a trajectory as a combination of the path and the velocity along the path. The trajectory generation assumes the partially known environment with obstacles.

The laboratory work utilizes general-purpose programming (Python/MatLab) and intermediate techniques specific to robotics, e.g., objects, multithreading, event-based programming, cyber-physical interface, real-time execution, etc. Students successfully completing the class will have an understanding and skills of onboard software design typical of real-life robotic applications. Since the basic programming review is accelerated, to succeed in the course, students should have previously learned a procedural programming language. 

Prerequisite

Fundamentals of motion dynamics and linear systems control is required. The students should have previously learned a procedural programming language.

Lecture Hours

3

Lab Hours

2

Course Learning Outcomes

  • Recognize the fundamental concepts of Guidance, Navigation, and Control of unmanned systems (UxV).
  • Develop a practical understanding of key approaches of UxVs control and the associated real-time algorithms. Recognize fundamental differences between linear and nonlinear systems.
  • Develop understanding and practical methods of sensor classification and calibration. Understand the concept of sensor noise propagation through linear and nonlinear systems. Design calibration experiments and implement sensor identification algorithms.
  • Learn practical methods of mathematical modeling of autonomous systems using MatLab/Simulink and Python modeling environments.
  • Understand the fundamentals of Bayesian filtering and the prediction-correction mechanism. Design linear and nonlinear Kalman filter. Develop state estimation algorithms suitable for integration into navigation and control systems.
  • Understand the fundamentals of path planning of UxVs in an uncertain cluttered environment.
  • Develop a practical understanding of key methods of UxV guidance - Pure pursuit, Deviated pursuit, Pure collision, Proportional navigation.