The objective of this lab is to understand the dynamics of an inverted pendulum with a rotating base. Students will use state feedback to control on unstable system. The self-erecting control algorithm will be implemented in LabVIEW, such that once the pendulum control algorithm is finished, control switches to inverted pendulum algorithm. The controllers will be implemented in LabVIEW using the Simulation Module.
Self-erecting inverted pendulum on a rotating base
Objectives
Understand the dynamics of an inverted pendulum with a rotating base.
Use state feedback to control on unstable system.
Code a self-erecting control algorithm into LabVIEW which automatically switches to inverted pendulum control.
Pre-lab
Derive the equations of motion for both a non-inverted and inverted pendulum with a rotating base as shown in the figure below:
Find the transfer function of the non-inverted system.
Design and simulate a PD controller that adds energy to the system to provide the self-erecting action.
Find a state-space realization of the inverted system.
Design and simulate a state feedback compensator that stabilizes the system and satisfies the following performance specifications for a step input:
Percent overshoot
Settling time
Lab procedure
Configure the plant for this experiment.
Code your self-erecting controller into the control loop VI.
Before proceeding to the inverted system controller, test your self-erecting algorithm to make sure that it executes correctly.
Once you have achieved the self-erecting action, code your controller for the inverted system into the VI. Your VI should be written such that the controller for the inverted system automatically takes over once the pendulum is near the inverted position.
Run the VI and after carefully checking for stability, execute a 1000 count step input and save the plot.
Post-lab
Look at your step response plot. What do you notice about the initial direction of the base disk's displacement? Can you explain why this happens in terms of the closed-loop system's zero(s).