|
|
|
| Early Simulation Results Balancing Furuta Krusty Having explored in simulation the problems facing a wireless control system, we next moved on to the control of the actual plant. As explained in the Technical Approach section, the plant chosen is a Furuta pendulum, nicely incorporated into the body of a 17" tall Krusty the Clown doll. In addition to creating the dramatic effect of a clown balancing a stick on the palm of his hand, the union of a doll body with a Furuta pendulum add some interesting dynamics to the system. In particular, the dragging of Krusty's feet, swinging of his legs, and 15Hz natural frequency of his oversized head add a good deal of unmodeled nonlinearity to the system. The need to mount the motor one foot below the arm attachment also adds flexibility in the cantilevered driving shaft. We view these characteristics not as faults but as features, helping to make the problem of balancing Furuta Krusty all the more interesting. Our first attempt at balancing this modified inverted pendulum was based on LQR state feedback with 100Hz communication. No real stability could be achieved with this simple of a controller. Adding constant friction compensation terms based on the direction of arm movement allowed the pendulum to be stabilized indefinitely in the inverted position, but control of arm position was poor and disturbance rejection was almost nonexistent. Due to the significant cogging effects of the rather large Aerotech motor that drives Furuta Krusty, reasonable performance was obtained only after mapping these cogging effects and compensating for them through feed-forward in the controller. For an LQR controller running at 250Hz controller with the feedforward cog map in use, tracking of a 115 degree step in arm position is shown below.
Arm position is seen to be within 20 degrees of the reference position for nearly all of the time. The limit cycle seen here is a widely observed result of stick-slip friction. Differences in behavior from one operating point to another result from cogging effects that are not completely canceled by the cogging map.
Swing up Control the Furuta Pendulum The CLOWN controller also incorporates a swing-up control algorithm to bring the pendulum from the lowered to the inverted position. This was accomplished using the energy control method of Åström and Furuta with some slight modification to keep the arm near the desired operating point. A video of swing-up control along with disturbance rejection is available in QuickTime or AVI format.
Delay Compensation for the Furuta Pendulum The prior application of a Smith Predictor for delay compensation proved the value of canceling time delays within the control loop. Unfortunately, a Smith Predictor cannot be used in the control of an unstable plant such as the inverted pendulum. This is because the Smith Predictor relies on the open-loop input/output behavior of its predictive element to have a reasonably close match to that of the plant. For an unstable plant it is clear that the control sequence used in balancing the plant will not necessarily balance the predicted plant, and thus prediction can diverge from reality. This would result in very poor feedback and could potentially cause instability. Seeking another method for state prediction within the loop, we looked to adaptive control. In particular, the Recursive Least Squares (RLS) algorithm has been shown to give optimal predictors over a range of problems. We have applied this technique for the estimation of the plant's state-space matrices. Using the discrete-time estimates we obtain, we can then use current feedback to predict the feedback one step ahead. Clearly this type of prediction introduces an open-loop element into our control loop, and thus stability in contingent on the accuracy of our predictions. It has been found in application to our system that while convergence of the estimated parameters is not perfect, the resulting predictions still outperform the use of the true feedback by a substantial margin.
Increased Sampling Rate on Feedback A second strategy for improving the performance of our control loop is the use of an increased sampling rate in the feedback loop. Sampling rate limitations on the control loop are the result of limitations in the communication rates, but it has been found that these communication rates are not sensitive to the amount of data being transmitted. Due to a minimum packet size requirement of the communication protocol, any amount of data below the critical level (256 bytes) will be sent in the form of a packet that is of the critical size. As a result, increases in the amount of data transmitted in our control loop should have no negative effects (up to a point). This feature can be exploited to allow for faster sampling of feedback. While the control loop is limited to 250Hz, sampling could be performed at 1000Hz with 4 feedback samples contained in each packet of feedback from the sensor to the controller. The utility of having 4 samples instead of 1 is twofold. First, faster sampling means that by using the intermediate samples in calculation of derivatives (by backward differencing) we can achieve a reduction in the phase lag of the derivative states. In experience with our particular system, phase lag in the derivative states is seen to be one of the worst contributors to lack of stability. A second benefit of using more samples is the added ability to filter errors from the feedback. There are a number of ways to do this type of filtering, depending on the type of effects that are to be removed. One application would be the reduction of high-frequency measurement noise, which could be approached through low-pass filtering of the feedback. A second potential application is the compensation for quantization effects in feedback measurements. In our particular system, these quantization effects are quite noticeable in the encoder measurements for the pendulum angle. The effect of these quantizations in the calculated derivative states are even more apparent. We have applied the strategy of increased sampling rate to our current plant with the joint goal of filtering out quantization effects and reducing phase lag in the feedback states. We have found that this can be accomplished nicely by performing a linear fit to the sampled positions. The endpoint of this linear fit is taken as the position measurement with the slope as the velocity state. For the test case of 100Hz control with 500Hz sampling, the above strategy has been found to give significant reduction in quantization effects and a general improvement in the continuity of calculated states. These improvements are further propagated through the prediction scheme for delay compensation, resulting in better estimation of future states. Multiple Loops with Coordination While the preceding results demonstrate control for a two-node plant and controller interaction, extension to multiple controller-plant systems requires scalability for more complex systems. In addition, extension to multiple controller-plant interactions motivates the development of communication between individual control loops to take advantage of possible performance improvement when there is a coordinated control objective. Execution of individual control loops with communication of coordination information among the controller can be straightforwardly accomplished in the current framework. The modified communication arrangement for a four-node two plant arrangement is shown below along with the corresponding timing arrangement..
In this coordinated scheme, calculation and communication of control are still executed by each controller immediately following the reception of data from the respective actuator/sensor. The difference from the original arrangement is that each controller follows the communication of a control action to the actuator/sensor with a communication to the other controller node. Afterwards, while waiting for feedback from the actuator/sensor, the controllers also poll for communications from each other. Action is not taken when such data are received, but the data are used at the next control iteration, which occurs when feedback data from the corresponding plant is received. In other words, timing of individual control loops is unchanged, but additional communication of data between controllers is performed while the controllers are waiting for feedback from the plants. Multiple Loops with Coordination - Implementation and Experiment
The test system for evaluating multiple loop
performance is shown below. The pendulum plant has been modified by adding
a LED light source directed axially from the pendulum rod end. The second
plant consists of a photosensor array on a rotating arm whose base is mounted
co-axially above the pendulum base.
Using the experimental test setup, two different coordinated control objectives are evaluated. By sharing information between controllers, it is possible to achieve improved light tracking performance. The pendulum plant is able compute the expected position of the projected light from the measured link angles. This information is sent to the light tracking plant to augment the photo-sensor measurement of the light position. The resulting coordinated tracking has RMS errors that are approximately 20% than tracking without coordination. In addition to improved tracking, coordination also allows maneuvering around obstacles that appear in the light path as shown below. Logic added to the controllers detects blockages, decides on a desired light location, and communicates an adjusted reference pendulum position f to the pendulum control loop. Light blockages are detected by comparing the amount of light reaching the photosensor and the calculated tracking error. If the calculated tracking error is low but little light is reaching the sensor, we know that light is being blocked. Whenever such a blockage is detected, a ramp in the pendulum reference position is provided. Limits on the maximum position offset for the pendulum reference are set at ±86°. Once this limit is reached, further light blockages result in pendulum reference adjustments in the opposite direction. Through this simple strategy, successful navigation around obstacles is possible.
Other Past Investigations
References [
1
] F.-L. Lian, J.R. Moyne, and D.M.
Tilbury, “Performance evaluation of control networks,” IEEE Control Systems
Magazine, pp. 66-83, Feb. 2001. [
2
] T. Skeie, S. Johannessen, and C.
Brunner, “Ethernet in substation automation,” IEEE Control Systems Magazine,
vol. 22, no. 3., pp. 43-51, June 2002. [
3
] H. Ye, G. Walsh, and L., Bushnell,
“Wireless local area networks in the manufacturing industry,” in Proc. of
the American Controls Conference, Chicago, IL, June 2000, pp. 2363-2367. [
4
] H. Ye, and G. Walsh, “Real-time
mixed-traffic wireless networks,” IEEE Transactions on Industrial Electronics,
vol. 48 no. 5, pp. 883-890, Oct. 2001. [
5
] G. Walsh, H. Ye, L. and Bushnell,
“Stability analysis of networked control systems,” IEEE Transactions
on Control Systems Technology, vol. 10, no. 3, pp 438-446, May 2002. [
6
] W. Zhang, M.S. Branicky, and S.
Phillips, “Stability of networked control systems,” IEEE Control Systems
Magazine, vol. 21, no. 1, pp. 84-99, Feb. 2001. [
7
] F. Lian, J. Moyne, and D. Tilbury,
“Analysis and modeling of networked control systems: MIMO case with multiple
time delays,” in Proc. of the American Controls Conference, Arlington, VA,
June 2001, pp. 4306-4312. [
8
] A. Cervin, D. Henriksson, B.
Lincoln, and K. Arzen, “Jitterbug
and TrueTime: analysis tools for real-time control systems,” in
Proceedings of the 2nd Workshop on Real-Time Tools [Online], Copenhagen,
Denmark, 2002. [
9
] R. Luck, and A. Ray, “An
observer-based compensator for distributed delays,” Automatica, vol. 26,
no. 5, pp. 903-908, Sept. 1990. [
10
] O. Beldiman, G. Walsh, and L. Bushnell,
“Predictors for networked control systems,” in Proceedings of the American
Control Conference, Chicago, IL, June 2000, pp. 2347-2351 . [
11
] J. Nilsson, “Real-time control systems with
delays,” Ph.D. Thesis [Online], Department of Automatic Control, Lund
Institute of Technology, Lund, Sweden, 1998. Available at http://www.control.lth.se/documents/1998/nilj98dis.pdf. [
12
] A. Horjel, “Bluetooth
in control,” Master’s Thesis [Online], Department of Automatic Control,
Lund Institute of Technology, Lund, Sweden, 2001. [
13
] N. Ploplys, “Wireless
feedback control of mechanical systems,” Master’s Thesis, Department of
Mechanical Engineering, University of Illinois, Champaign, IL, 2003.
Available at [ 14 ] S. Munir, and W. Book, “Internet-based teleoperation using wave variables with prediction,” IEEE/ASME Transactions on Mechatronics, vol. 7, no. 2, pp. 124-133, June 2002. [
15
] P. Liu, M. Meng, X. Ye, and J. Gu, “An UDP-based
protocol for internet robots,” in Proceedings of the 4th World Congress on
Intelligent Control and Automation, China, vol. 1, June 10-14, 2002, pp. 59-65. [
16
] K. Furuta, M. Yamakita, and S. Kobayashi,
“Swing up control of inverted pendulum,” IEEE IECON, vol. 3. Kobe, Japan,
1991, pp. 2193-2198. [
17
] M. Gafvert, “Modeling the Furuta pendulum,”
Lund Institute of Technology, Department of Automatic Control, technical report
ISRN LUTFD2/TFRT--7574--SE, Apr. 1998. [
18
] K. J. Astrom, and K. Furuta, “Swinging up a
pendulum by energy control,” Automatica, vol. 36, pp. 287-295, 2000. [ 19 ] G.T. Nguyen, R.H. Katz, B. Noble, and M. Satyanarayanan, “A trace-based approach for modeling wireless channel behavior,” Proceedings of the 1996 Winter Simulation Conference, pp. 597-604, 1996. [
20
] F.-L. Lian, J.R. Moyne, and D.M. Tilbury,
“Network design consideration for distributed control [ 21] K. J. Åström and K. Furuta, "Swinging up a pendulum by energy control," Automatica, Vol. 36, pp.278-285, 2000. [ 22] V. S. Frost and B. Melamed, "Traffic Models for Telecommunications Networks," IEEE Communications Magazine, March 1994, pp. 70-81. [ 23] J. G. Kim and M. M. Krunz, "Delay Analysis of Selective Repeat ARQ for a Markovian Source Over a Wireless Channel," IEEE Transactions on Vehicular Technology, Vol. 49. No. 5, Sep. 2000, pp. 1968-1981.
|