Connections to Controls Concepts: Balance Arm
Prof. R. H. Bishop
University of South Florida
The self-balancing robot assembly provides insight into two key feedback control system concepts: (i) relative stability
and robust stability of an unstable open-loop system and (ii) fundamental controller design tension in the presence of
plant changes, external disturbances, and measurement noise.
Plant
Self-balancing robot
Sensor
Accelerometer, gyroscope, and encoder sensors
Actuator
DC servo motors
Performance
Robust stability, disturbance rejection, and measurement noise attenuation
Design objectives
Tune the control system by adjusting PD gain constants & stabilize the robot at the
vertical
Reference inputs
Regulation to zero angle (vertical pose)
The self-balancing robot and two geared, DC motor-driven wheels are the plant and actuators, respectively. The sensor
suite includes a gyroscope that measures angular velocity and an accelerometer that measures non-gravitational
acceleration. Since the accelerometer and gyro are known to have systematic errors (bias, drifts, etc.) and are noisy, the
signals from the sensors are combined to produce an accurate measurement of the orientation angle of the robot—
more accurate than can be achieved with either sensor individually. The external reference commands enter the
control system via the host computer either through keyboard entry or front panel commands sent over the network
connection to the myRIO which hosts the PD controller code. The design goal is the balance the robot in an upright
pose in the presence of external disturbances and to be robustly stable to plant variations (e.g., remain stable even
when a large mass is placed on the robot). The controller is a PD controller.
Relative stability and robust stability
A closed-loop feedback system is either stable or not stable. We say that a feedback control system that displays a
bounded response to a bounded input is stable. Note that this means that the closed-loop feedback system must have
a bounded output to every bounded input. This is known as absolute stability. We might wonder about marginally
stable closed-loop systems wherein the response remains bounded, but does not decay with time. Typically, our
design specifications require the closed-loop feedback system tracking error response, represented in the frequency
domain as E(s)=Y(s)-R(s), to decay to zero—not just remain bounded—and this is the focus of this discussion.
Obviously, it is not practical to test the response to every bounded input; however, a necessary and sufficient
condition for the closedloop feedback system to be stable is that all the poles of the closed-loop transfer function lie in
the left-half s-plane—this is a primary requirement of the controller design process. Once we have expertly designed
the controller so that the closed-loop feedback system is stable, we can further quantify the degree of stability,
often referred to as relative stability. So, a closedloop feedback system can be more (or less stable) with a given
controller design than the same system with a different controller design. This all relates to the concept of a robust
feedback control system. That is, a robust feedback control system is one that maintains acceptable performance in
the presence of plant uncertainty, external disturbances, and measurement noise. From the point of view of relative
stability, a robust controller typically displays a greater relative stability than a controller with less ability to retain
closed-loop stability in the presence of plant uncertainty, external disturbances, and measurement noise. Consider
the PD controller for the self-balancing robot that allows the robot to remain stable even when a large load (such as a
book) is placed on the top thereby significantly changing the plant or when an external gentle push is applied. A well-
designed PID controller can be very robust and explains why they are utilized in industry to such a large extent. Note
that the PD controller is a PID controller with the integral gain set to zero.
156
Self Balancing Robot Assembly
Summary of Contents for 41427
Page 1: ...RobotBuilder sGuide for NI myRIO 41427 POWERED BY...
Page 2: ......
Page 20: ......
Page 23: ...Finished Assembly Step 5 Subassembly Construction Instructions 21...
Page 25: ...Step 5 Step 6 Step 7 Step 9 Step 8 Step 10 Subassembly Construction Instructions 23...
Page 26: ...Step 12 Step 14 Step 16 Step 11 Step 13 Step 15 24 Subassembly Construction Instructions...
Page 27: ...Step 18 Step 17 Finished Assembly Subassembly Construction Instructions 25...
Page 29: ...Step 6 Finished Assembly Step 5 Subassembly Construction Instructions 27...
Page 54: ......
Page 57: ...Step 1 0 Step 1 1 Rover Vehicle Assembly 55...
Page 58: ...Step 1 2 Step 1 3 56 Rover Vehicle Assembly...
Page 59: ...Step 1 4 Rover Vehicle Assembly 57...
Page 61: ...Step 2 0 Step 2 1 Rover Vehicle Assembly 59...
Page 62: ...Step 2 2 60 Rover Vehicle Assembly...
Page 64: ...Step 3 0 Step 3 1 62 Rover Vehicle Assembly...
Page 65: ...Step 3 2 Step 3 3 Rover Vehicle Assembly 63...
Page 66: ...Step 3 4 Step 3 5 64 Rover Vehicle Assembly...
Page 68: ...Step 4 0 Step 4 1 66 Rover Vehicle Assembly...
Page 69: ...Step 4 2 Step 4 3 Rover Vehicle Assembly 67...
Page 70: ...Step 4 4 Step 4 5 68 Rover Vehicle Assembly...
Page 71: ...Step 4 6 Step 4 7 Rover Vehicle Assembly 69...
Page 73: ...Step 5 1 Step 5 0 Step 5 2 Step 5 3 Step 5 4 Step 5 5 Rover Vehicle Assembly 71...
Page 74: ...Step 5 6 Step 5 7 72 Rover Vehicle Assembly...
Page 76: ...Step 6 0 Step 6 1 74 Rover Vehicle Assembly...
Page 77: ...Step 6 2 Step 6 3 Rover Vehicle Assembly 75...
Page 78: ...Step 6 4 76 Rover Vehicle Assembly...
Page 84: ......
Page 87: ...Step 1 0 Step 1 1 Step 1 2 BalancingArmAssembly 85 Balancing Arm Assembly 85...
Page 88: ...Step 1 4 Step 1 3 86 BalancingArmAssembly 86 Balancing Arm Assembly...
Page 89: ...Step 1 6 Step 1 5 BalancingArmAssembly 87 Balancing Arm Assembly 87...
Page 90: ...Step 1 8 Step 1 7 88 BalancingArmAssembly 88 Balancing Arm Assembly...
Page 91: ...Step 1 10 Step 1 9 BalancingArmAssembly 89 Balancing Arm Assembly 89...
Page 92: ...Step 1 12 Step 1 11 90 BalancingArmAssembly 90 Balancing Arm Assembly...
Page 93: ...Step 1 14 Step 1 13 BalancingArmAssembly 91 Balancing Arm Assembly 91...
Page 94: ...Step 1 16 Step 1 15 92 BalancingArmAssembly 92 Balancing Arm Assembly...
Page 95: ...Step 1 17 BalancingArmAssembly 93 Balancing Arm Assembly 93...
Page 97: ...Step 2 0 Step 2 1 BalancingArmAssembly 95 Balancing Arm Assembly 95...
Page 98: ...Step 2 2 Step 2 3 96 BalancingArmAssembly 96 Balancing Arm Assembly...
Page 99: ...Step 2 4 Step 2 5 BalancingArmAssembly 97 Balancing Arm Assembly 97...
Page 100: ...Step 2 6 Step 2 7 98 BalancingArmAssembly 98 Balancing Arm Assembly...
Page 101: ...Step 2 8 Step 2 9 BalancingArmAssembly 99 Balancing Arm Assembly 99...
Page 102: ...Step 2 10 Step 2 11 100 BalancingArmAssembly 100 Balancing Arm Assembly...
Page 103: ...Step 2 12 Step 2 13 BalancingArmAssembly 101 Balancing Arm Assembly 101...
Page 105: ...Step 3 0 Step 3 1 BalancingArmAssembly 103 Balancing Arm Assembly 103...
Page 106: ...Step 3 2 Step 3 3 104 BalancingArmAssembly 104 Balancing Arm Assembly...
Page 108: ...Step 4 0 Step 4 1 106 BalancingArmAssembly 106 Balancing Arm Assembly...
Page 109: ...Step 4 2 Step 4 3 BalancingArmAssembly 107 Balancing Arm Assembly 107...
Page 110: ...Step 4 4 Step 4 5 108 BalancingArmAssembly 108 Balancing Arm Assembly...
Page 111: ...Step 4 6 Step 4 7 BalancingArmAssembly 109 Balancing Arm Assembly 109...
Page 112: ...Step 4 8 Step 4 9 110 BalancingArmAssembly 110 Balancing Arm Assembly...
Page 113: ...Step 4 10 BalancingArmAssembly 111 Balancing Arm Assembly 111...
Page 115: ...Step 5 1 Step 5 0 BalancingArmAssembly 113 Balancing Arm Assembly 113...
Page 116: ...Step 5 3 Step 5 2 114 BalancingArmAssembly 114 Balancing Arm Assembly...
Page 117: ...Finished assembly should look like this BalancingArmAssembly 115 Balancing Arm Assembly 115...
Page 124: ......
Page 127: ...Step 1 0 Step 1 1 Self Balancing Robot Assembly 125...
Page 128: ...Step 1 2 Step 1 3 126 Self Balancing Robot Assembly...
Page 129: ...Step 1 4 Step 1 5 Step 1 6 Self Balancing Robot Assembly 127...
Page 131: ...Step 2 0 Step 2 1 Self Balancing Robot Assembly 129...
Page 132: ...Step 2 2 Step 2 3 130 Self Balancing Robot Assembly...
Page 133: ...Step 2 4 Step 2 5 Self Balancing Robot Assembly 131...
Page 135: ...Step 3 0 Step 3 1 Self Balancing Robot Assembly 133...
Page 136: ...Step 3 2 Step 3 3 134 Self Balancing Robot Assembly...
Page 137: ...Step 3 4 Step 3 5 Self Balancing Robot Assembly 135...
Page 138: ...Step 3 6 Step 3 7 136 Self Balancing Robot Assembly...
Page 139: ...Step 3 8 Step 3 9 Self Balancing Robot Assembly 137...
Page 140: ...Step 3 10 Step 3 11 138 Self Balancing Robot Assembly...
Page 141: ...Step 3 12 Self Balancing Robot Assembly 139...
Page 143: ...Partial assembly should look like this Self Balancing Robot Assembly 141...
Page 144: ...Step 4 1 Step 4 0 142 Self Balancing Robot Assembly...
Page 145: ...Step 4 3 Step 4 2 Self Balancing Robot Assembly 143...
Page 146: ...Step 4 5 Step 4 4 144 Self Balancing Robot Assembly...
Page 147: ...Step 4 7 Step 4 6 Self Balancing Robot Assembly 145...
Page 148: ...Step 4 8 Step 4 9 146 Self Balancing Robot Assembly...
Page 149: ...Step 4 10 Self Balancing Robot Assembly 147...
Page 151: ...Step 5 0 Step 5 1 Self Balancing Robot Assembly 149...
Page 152: ...Step 5 2 150 Self Balancing Robot Assembly...
Page 153: ...Finished assembly should look like this Self Balancing Robot Assembly 151...