  Legged robots can traverse challenging terrain, use perception to plan their
safe foothold positions, and navigate the environment. Such unique mobility
capabilities make these platforms a perfect candidate for scenarios such as
search and rescue, inspection, and exploration tasks. While traversing through
such terrains, the robot's instability is a significant concern. Many times the
robot needs to switch gaits depending on its environment. Due to the complex
dynamics of quadruped robots, classical PID control fails to provide high
stability. Thus, there is a need for advanced control methods like the Model
Predictive Control (MPC) which uses the system model and the nature of the
terrain in order to predict the stable body pose of the robot. The controller
also provides correction to any external disturbances that result in a change
in the desired behavior of the robot. The MPC controller is designed in MATLAB,
for full body torque control. The controller performance was verified on Boston
Dynamics Spot in Webots simulator. The robot is able to provide correction for
external perturbations up to 150 N and also resist falls till 80 cm.
