IEEE TRANSACTIONS ON EDUCATION, VOL. 47, NO. 1, FEBRUARY 2004
33
Magnetic Levitation Hardware-in-the-Loop and MATLAB-Based Experiments for Reinforcement of Neural Network Control Concepts Panayiotis S. Shiakolas, Member, IEEE, Stephen R. Van Schenck, Damrongrit Piyabongkarn, and Ioannis Frangeskou
Abstract—This paper discusses the use of a real-time digital control environment with a hardware-in-the-loop (HIL) magnetic levitation (maglev) device for modeling and controls education, with emphasis on neural network (NN) feedforward control. Many educational advantages are realized for the students if a single environment is used for simulation, hardware implementation, and verification as compared with multienvironment settings. This real-time environment requires two personal computers (host and target) employed to control an HIL system. It requires software tools by MathWorks, Inc., a C++ compiler, an off-the-shelf data acquisition card, and the HIL (a nonlinear, open-loop, unstable, and time-varying, custom-built maglev device) to be controlled. This environment provides for experimentation, such as data collection for system identification using NN’s and their implementation as static nonlinear feedforward controllers. In addition, this environment was used to implement and demonstrate NNs with real-time dynamic weight tuning and controller performance comparison under various inputs or changes in the HIL device dynamics, as shown in the presented examples. The educational features of this environment were verified in a classroom setting in a graduate-level NN class. The presented environment is applicable to senior or graduate level (introductory intelligent and digital control) or a general introductory course on NNs with applications. Index Terms—Control education, feedforward control, magnetic levitation (maglev), MATLAB, neural networks (NNs).
I. INTRODUCTION
I
N controls education, especially in the implementation of nonlinear control algorithms, students can greatly benefit if the same environment is used for dynamic system analysis, control-law development, and simulation evaluation, as compared with multienvironment settings. One such advantage is that students are not required to learn a number of software tools, thus freeing up valuable time for activities that reinforce learning of fundamental concepts presented in class in a “learn-by-doing” environment. In addition, control concepts are better understood if students can easily implement and evaluate the performance of algorithms on a hardware-in-the-loop (HIL) device. The use of an HIL device can reinforce concepts presented in class by providing the means to observe the system performance because
Manuscript received July 29, 2002; revised October 24, 2002. The authors are with the Mechanical and Aerospace Engineering Department, University of Texas at Arlington, Arlington, TX 76019-0023 USA (e-mail:
[email protected]). Digital Object Identifier 10.1109/TE.2003.817616
of changes in reference trajectories, controller parameters, or system dynamics in real time. The combination of these settings in an “easy-to-set-up” environment and the use of the simulation software for control of the HIL device add another level of understanding of the fundamental concepts. The software suite by MathWorks, Inc., is a well-established and proven platform for modeling and simulation [1] and provides the backbone for the development of this type of educational environment. Most engineering students are introduced to MATLAB and the various toolboxes at an early stage of their college careers in the general areas of simulation, controls, and dynamic systems analysis. MATLAB is the basic “engine” with add-on components called toolboxes. Simulink is a MATLAB component that provides a graphical user interface for model development and system simulation [2]. The Real Time Workshop (RTW) toolbox is capable of generating real-time code for Simulink models [3]. The xPC Target toolbox [4] allows access to real-time input/output data directly from a compatible data acquisition (DAQ) card. xPC Target enables users with no prior experience in low-level software development to easily generate, compile, and create real-time executable code for Simulink models [4]. These toolboxes enhance the capabilities of MATLAB not only in the digital prototyping arena but also in the HIL arena. MATLAB and its toolboxes provide a unique environment where students may analyze the behavior of dynamic systems, apply classroom theory to improve the performance of dynamic systems, and observe the results in real time. The data or signals generated by any component of the system (software or hardware) can be displayed and/or saved for subsequent use, such as system identification or offline training of neural networks (NNs). The ability to observe and analyze the real-time HIL response because of changes in the reference input, controller and/or control parameters, or system dynamics and to explain the system behavior as a result of these changes is a valuable teaching tool that reinforces learning and understanding of fundamental concepts presented in class. The familiar interface of the MathWorks software suite will allow students who are often intimidated by laboratory equipment, such as oscilloscopes, function generators, and logic analyzers, to experiment and gain more insight into concepts taught in the classroom. Experimental testbeds for controls education are discussed in [5] through [7]. Proportional integral derivative (PID) structures
0018-9359/04$20.00 © 2004 IEEE
34
for introductory control courses using a Compumotor and a DAQ card from MicroDynamics are described in [5]. The PID control algorithms were developed in the C programming language. The authors do not discuss the simulation environment used in class before exposure to the actual hardware. The development of an experimental garden and its use for experimentation with a PID controller is described in [6]. The authors still utilize MATLAB/Simulink for simulation, the RTW toolbox, and a dSpace card for hardware implementation. The controller was also implemented in C, thus requiring the students to familiarize themselves with another programming language. In [7], the authors describe an educational software and hardware testbed for intelligent control using NNs and fuzzy logic. The testbed consists of various hardware components, a digital fuzzy processor, a neuroprocessor, and a digital signal processor (DSP). The software tools are MATLAB-based with the algorithms coded in Simulink. These tools then generate real-time code from the Simulink blocks. The authors do not discuss the algorithm coding or code-generation process or other required MATLAB toolboxes. The authors indicate that hardware experimentation reinforces concepts presented in class. MATLAB and RTW were used for the development and [8], [9], implementation of advanced control algorithms ( sliding mode [10], and neural generalized predictive control [11]) for a maglev system. These algorithms were demonstrated using the TMS320C31 DSP from Texas Instruments, Inc., and RTW generated real-time code from MATLAB. One of the drawbacks of this approach is that in an educational setting the students will be burdened with the development of embedded software that interfaces with the RTW-generated code and the TMS320C31. Offline parameter estimation, using a supervised learning law for estimating the inverse model of a maglev plant utilizing a pruning method to minimize the structure of the NN, is described in [12]. The authors concluded that the optimal network has six hidden neurons. Real-time adaptive control was applied to a maglev system where the reference model of the plant was also an NN with an embedded nominal linear model in the network weights implemented in C [13]. Commercial environments used in controls education are available from companies such as Quanser [14], Educational Control Products [15], and dSpace [16]. These commercial systems still require MATLAB, Simulink, and RTW from MathWorks and are restricted to their own proprietary interface boards and software interfaces. In this manuscript, the authors expand the application of the setup developed and presented in an earlier paper on linear control education [17]. The material presented in this paper is applicable to senior- or graduate-level introductory intelligent and digital control courses or a general introductory course on NNs with applications. This paper discusses DAQ and offline training of NNs, as well as the implementation of both static and dynamic NN-based controllers for the reinforcement of fundamental concepts on NN. The term NN refers to a group of individual simple computational devices that collectively learn to respond to external inputs by forming connections between each other. Patterns are stored within the connections themselves and dictate how the network will respond to an input. To the authors’ scientific understanding, this type of
IEEE TRANSACTIONS ON EDUCATION, VOL. 47, NO. 1, FEBRUARY 2004
artificial organizational processing closely mirrors biological neural and cerebral systems. As with biological nervous systems, NNs are inherently well suited for solving nonlinear problems because they are also nonlinear. NNs may be applied for function approximation and pattern recognition where a group of inputs and desired outputs are used to modify the interneuron connections. A correctly configured network will then be able to properly respond to different inputs within the same boundaries as the initial set. While NNs may be applied to many other domains, their ability to model a nonlinear system by knowledge of its response to a set of inputs and their application as a nonlinear controller will be part of this paper. The open literature is saturated with material in both books and journals that introduce and discuss NN fundamentals [18]–[21]. Discussions on the training, development, and implementation of feedforward NN controllers and the required tools will be introduced and discussed. Highlights of the educational features of the experiments performed and possible uses of the hardware and software setups are also presented throughout this paper. II. SYSTEM DESCRIPTION The software and hardware tools used in the development and implementation of this educational environment are briefly introduced as follows. (Additional information and details can be found in the authors’ previous paper [17]). A. Software and Computer Tools The main advantage of the RTW and xPC Target combination is that it eliminates the need for students to develop low-level code to program the controller or other components, such as a DAQ board I/O. A PC, the host, runs the Windows operating system and the required software tools. The host communicates with a second desktop PC, the target, through serial communication. The target is booted using an xPC boot floppy that loads the xPC Target real-time kernel operating system [4]. The digital controller is automatically generated from the Simulink model using the Microsoft C++ compiler on the host PC. Subsequently, the resulting executable code is downloaded from the host to the target via the serial port. The Simulink environment allows for real-time interactive experimentation by the user through the modification of block parameters in the model without the need to rebuild and redownload the model to the target. A PCI-6024E DAQ card by National Instruments [22] in the target computer provides the interface between the target and the HIL device. The host computer used in this project is a Pentium 233 MHz with 96–MB RAM, running Windows 98 and the suite of required software: MATLAB 6.1, Simulink 4.1, Control System Toolbox 5.1, Neural Network Toolbox 4.0, xPC Target 1.2, Real-Time Workshop 3.01, and Microsoft Visual C++ 6.0. The target computer is a Pentium 166 MHz with 96-MB RAM and the DAQ card. B. Maglev Device—HIL The selected HIL is a custom-built nonlinear, open-loop unstable, and time-varying maglev system. Details of the use of this environment for linear controls education and exercises in
SHIAKOLAS et al.: MAGNETIC LEVITATION HIL AND MATLAB-BASED EXPERIMENTS
35
Fig. 1. Maglev setup and free-body diagram.
linear control are described in [17]. The maglev device is composed of an iron-core electromagnet, an infrared sensor for position feedback, and the driving electronics. The device operates by modulating the current to the electromagnet so that the error or difference between the desired position of the levitated object and the actual position is minimized. The modeling of the maglev device employed is shown in Section II-C. Unmodeled dynamics include heating of the electromagnetic coil during operation, thus changing its resistance, the aerodynamic effects of levitated objects, the nonlinear behavior of the sensor, and the nonlinear behavior of the power electronics. The current experimental setup, including the host and target computers and the maglev device, is shown in Fig. 1. C. Maglev Device Modeling Equations A free-body diagram of a maglev device levitating an object of mass vertically in a gravity field is shown in Fig. 1. The exerted across an air gap by magnitude of the force an electromagnet through which current flows is described by [17], [23], [24] (1) The total inductance by
is a function of the distance and given
The dynamic model of the electromagnet (modeled as a resistor and inductor in series [8], [10]) is given by (5) with , , , and being the voltage at the coil, current through the coil, the coil resistance, and coil inductance, respectively (5) The power amplifier is modeled according to (6) where , , and are the amplifier input voltage, gain, and output voltage, resepectively. The governing equation for the levitated object is determined by applying Newton’s second law. For the one-degreeof-freedom system, a force balance yields (see Fig. 1) (7) In obtaining the linearized dynamic equations, the assumption is that the levitated object operates around the equilibrium point ( , ). The transfer function relating the position of the levitated object obtained from the sensor and the voltage to the electromagnet is obtained by linearizing, taking the Laplace transform and combining (1) through (7). With indicating a differential change around the equilibrium point, the transfer function is given by
(2) (8) where is the inductance of the electromagnet (coil) in the absence of the levitated object, is the additional inductance is the contributed by the presence of the object, and equilibrium position. The assumption is that the levitated object operates close to the equilibrium point ( , ). The nonlinear attractive force is obtained by combining (1) and (2) as follows: (3) where . The dynamics of the position photosensor can be experimentally obtained. Around the equilibrium point, the relationship between the sensor voltage and the object position is given being the sensor constant. by (4) with (4)
III. NEURAL NETWORK-BASED FEEDFORWARD CONTROLLER ANALYSIS AND IMPLEMENTATION The maglev device is an unstable nonlinear device. A lead–lag compensator was developed to stabilize the maglev device. However, the resulting stable system demonstrated poor tracking performance as shown by the steady-state error [17]. The tracking performance of this highly nonlinear system could be substantially improved if an advanced controller, such as a feedforward-based controller, were developed to compliment the performance of the lead–lag compensator and account for unmodeled, higher order dynamics (not included in linearized form in (8)), time-varying dynamics, or disturbances. In addition, issues such as ease of implementation and
36
IEEE TRANSACTIONS ON EDUCATION, VOL. 47, NO. 1, FEBRUARY 2004
reinforcement of advanced concepts in controls education must be considered. In this paper, two NN-based controllers, static offline-trained and dynamic online-trained, were implemented and demonstrated using MATLAB/Simulink blocks. The standard closed-loop block diagram with a feedforward controller loop is shown in Fig. 2. The transfer function for this system is given by (parameters shown in Fig. 2) (9) The output equals the input if . An approximate linearized analytical expression for the transfer function of the HIL dynamic system was derived in (8) and could be used to identify the linearized inverse model of the plant. However, this inverse model would be an approximation since the expression used is indeed an approximation to a highly nonlinear, time-varying hardware system because of the linearization process, the presence of time-varying unmodeled dynamics as mentioned previously, the dynamics of the control electronics, and other disturbances to the system. In this paper, is approximated using a static (offline-trained) and a dynamic (online-trained) NN. Three feedforward nonlinear controllers, two implementations of a static NN, and a dynamic NN were developed as shown in Fig. 3. One of the advantages of the developed environment is the capability to capture any of the signals available in the Simulink diagram and save them for subsequent use or operate on them in the command line of MATLAB. The control input (the lead–lag compensator output) and the position of the ball as indicated by the sensor were recorded and used in identifying the inverse . model of the plant A. Static Neural Network Using the MATLAB DAQ feature, the amplitude of a reference step input to the system was varied, and the output of the compensator block and the position of the levitated object as detected by the sensor were recorded using a ball bearing identified as Ball 1 (1.0-inch diameter and 66.98 grams of mass). Once the system reached a steady-state operation after each reference input change, 1000 samples for each required signal were collected with a sampling rate of 0.001 s. Next, the 1000 sample data were saved in a MATLAB variable as a matrix and exported to the MATLAB command line for averaging. The data collected were used for the offline training of NNs in order to identify the nonlinear inverse model of the plant (electromagnet, sensor, and levitated object), the power amplifier, and discretization during DAQ. The approximation of the inverse plant model using NNs was performed using the MATLAB Neural Network toolbox [25] in order to identify the connection weights and biases. Different network topologies were trained and identified by a numerical sequence starting with the number of inputs, the number of neurons in the hidden layer, and the number of outputs (i.e., a 1–3–1 network has one input, three hidden, and one output layer neurons). The availability of experimental data provides the opportunity for students to experiment with the various features of the NN toolbox, such as hidden layer activation functions, number of epochs, and learning rate, and to observe their ef-
Fig. 2. Feedforward controller structure block diagram.
fect on convergence rate and error. Experiments may also be performed using the variants of the back-propagation algorithm available in the NN toolbox. The students can compare the performance of the developed networks in the MATLAB-simulated environment to decide the network topology to be implemented for hardware verification. The design goal was to determine a network topology that adequately modeled the inverse-plant characteristics. The students trained several network topologies and compared each by its output error. The students concluded that the 1–3–1 NN, trained using a batch back propagation with a variable learning-rate algorithm, was most suited to the collected data set. The 1–3–1 NN was implemented as a feedforward controller in Simulink, using two different approaches with the weights and biases obtained from offline training. The first implementation is through low-level Simulink blocks (Fig. 4), and the second, a compact form that uses vector quantities for the weights and biases (Fig. 5). The compact form allows for easy implementation of networks with different hidden layer neurons by simply changing the number of entries in the vector quantities. Once the Simulink model was completed, it was compiled and downloaded to the xPC target. At this stage, experiments for evaluating the tracking performance of the static neural network could be performed on the HIL device. For comparison, the system could be reconfigured as a lead–lag compensator without feedforward control by simply switching the “multiport” switch (Fig. 3) to the block containing a zero gain. A representative system response for Ball 1 for a sinusoidal is shown in Fig. 6(a) with a 0.001-s input sampling rate. The students may perform several experiments, such as suspending a different-sized ball or several balls to modify the weight and, in turn, the system dynamics. The input characteristics (magnitude and/or frequency) of the sinusoidal reference input may also be modified to identify system bandwidth limitations. Discussions could address the performance of the controller under various inputs and/or plant modifications. The students were also cautioned that the controller uses an inverse model of the plant based upon measured data and that good tracking performance is not guaranteed if the plant characteristics change (i.e., changes in plant parameters, such as different levitated objects). Note that whenever the students modify the reference input parameters or the levitated object, there is no need to stop execution, recompile the Simulink model, and redownload it to the host computer. The changes take effect as soon as they are implemented.
SHIAKOLAS et al.: MAGNETIC LEVITATION HIL AND MATLAB-BASED EXPERIMENTS
37
Fig. 3. Simulink block diagram for all feedforward controllers.
Fig. 4.
Static 1–3–1 NN implementation using low-level Simulink blocks.
B. Dynamic Online-Trained NN The capability of the MATLAB environment to capture any data available in the Simulink model and use the data at a subsequent time allowed the students to experiment with various network topologies, evaluate their error, and finally, implement one on the HIL device. However, the static implementation does not utilize the full capabilities of NNs as universal function approximations of unknown systems when there are changes in the plant dynamics or when disturbances are introduced in the system. These capabilities could only be used if the network is
trained online, using data collected from the HIL device in real time. A dynamic 1–2–1 NN based on the standard back-propagation algorithm with logsigmoid activation function [18], [19], [21] was implemented in Simulink, using the compact form since the xPC Target environment does not support the use of MATLAB commands found in the NN toolbox. The implementation using Simulink blocks reinforces the understanding of the fundamental NN operations and algorithms. In the course of the development and verification on the HIL device, it became apparent that the signals required for online
38
IEEE TRANSACTIONS ON EDUCATION, VOL. 47, NO. 1, FEBRUARY 2004
Fig. 5. Static 1–3–1 NN implementation in compact form.
(a)
(b) Fig. 6. Tracking performance for ball 1 under input 0:1 sin(2:5 2t).
training, the controller output and position sensor, were noisy and hindered the performance of the dynamic network. Using this opportunity, the students may be introduced to the concepts
of sensor noise and possible approaches on how to address adverse effects associated with sensor noise. In addition, students could acquire system data and experiment with various filters to evaluate their effect on sensor output. A discrete Butterworth filter was implemented for both signals with the transfer function obtained utilizing the MATLAB Filter Design toolbox [26] and the MATLAB command butter (4,0.05). The filtered signals were then used for online training of the NN during the 0.001–s sampling rate. The weights and biases are evaluated and internally transferred to the NN that implements the inverse dynamic model of the plant as a feedforward controller module (Fig. 3) using Simulink Data Store Read and Data Store Write blocks. Several experiments that demonstrate the capabilities of dynamic NNs were performed. The experiments consisted of observing the tracking performance improvement under different conditions, such as modifying the real-time characteristics of the input signal in both magnitude and frequency or modifying the characteristics of the plant by adding additional weights to the levitating object. Since the weights and biases are signals in the Simulink diagram, they could be displayed thus, allowing the students to observe the training process in real time. The tracking performance of the dynamic NN was also evaluated, using a sampling rate of 0.001 s for all test cases. The performance for the same sinusoidal input as the static impleis shown in Fig. 6(b). The tracking mentation performance for the static 1–3–1 NN and dynamic 1–2–1 NN under different dynamic characteristics (different masses: balls 3, 4b, and 5 weigh 35.75, 28.15, 16.26 grams of mass with diameters of 0.8, 0.75, and 0.625 inches, respectively) are shown in Figs. 7–9. The ease of modifying the reference signal through a change of values in the Simulink block diagram, performed without having to stop execution, simplifies experimentation with reference input magnitude and frequency characteristics. The figures show that the dynamic NN was able to identify the inverse model of the plant for the new system configuration. The active feedforward controller is selected by changing the multiport switch in the Simulink diagram in Fig. 3. Students were able to observe and understand that when the dynamics of the plant change (additional weight), the static feedforward controllers cannot perform adequately, but the dynamic NN identifies the changes and dynamically compensates for them as observed in the tracking error responses.
SHIAKOLAS et al.: MAGNETIC LEVITATION HIL AND MATLAB-BASED EXPERIMENTS
(a)
39
(a)
(b) Fig. 7. Tracking performance for ball 3 under input 0:1 sin(2:5 2t).
C. Potential Additional Educational Experiments The students could experiment with other ferromagnetic balls of various diameter and mass. The students could observe changes in system performance with the introduction of a disturbance in the system through the levitated mass or through the diameter of the first levitated ball bearing that affects the sensor performance. Subsequently, the students could experiment and identify the levitated object weight limitation and discuss actuator saturation and other factors that influence the performance of the implemented controllers. The current Simulink diagram has three reference inputs: step, sinusoid, and square wave. The experiments could require the students to modify the reference signal and investigate the performance of the various controllers as a function of input signal characteristics. Using the MATLAB NN toolbox, students in a group setting could experiment with NNs of various topologies and activation functions using experimentally collected data. The students should understand the fundamentals of NN theory before attempting a design in Simulink since the network must
(b) Fig. 8. Tracking performance for balls 3 + 4b under input 0:1 sin(2:5 2t).
be created using Simulink blocks rather than functions from the NN toolbox. The class could meet as a whole to compare and discuss the merits of each group’s design. IV. CONCLUSION In this paper, the use and development of an interactive real-time digital control system, using standard off-the-shelf components, the widely used software package MATLAB and some of its toolboxes, a C++ compiler, and a nonlinear maglev system as the HIL device suitable for senior- and graduate-level nonlinear controls and neural network courses were presented. The host–target environment provides for the implementation of advanced control algorithms using Simulink blocks and allows for interactive real-time system monitoring and experimentation. The data for any signal in the Simulink diagram may be observed and saved within MATLAB for subsequent use, such as data analysis, system identification, or offline NN training. The ease of switching between control configurations (linear lead–lag, static NN, and dynamic NN)
40
IEEE TRANSACTIONS ON EDUCATION, VOL. 47, NO. 1, FEBRUARY 2004
from its original form. The authors would also like to thank P. Trogos, formerly of the MathWorks and currently with the MathPros, for his assistance with MATLAB-related issues.
REFERENCES
(a)
[1] Using MATLAB, MathWorks, Inc., Natick, MA, 1999. [2] Using Simulink, MathWorks, Inc., Natick, MA, 1999. [3] Real Time Workshop User’s Guide, MathWorks, Inc., Natick, MA, 1999. [4] xPC Target User’s Guide, MathWorks, Inc., Natick, MA, 1999. [5] R. Kelly and J. Moreno, “Learning PID structures in an introductory course on automatic control,” IEEE Trans. Educ., vol. 44, pp. 373–376, Nov. 2001. [6] A. B. Koku and O. Kaynak, “An Internet assisted experimental environment suitable for the reinforcement of undergraduate teaching of advanced control techniques,” IEEE Trans. Educ., vol. 44, pp. 24–28, Feb. 2001. [7] F. Jurado, M. Castro, and J. Carpio, “Experiences with fuzzy logic and neural networks in a control course,” IEEE Trans. Educ., vol. 45, pp. 161–167, May 2002. [8] A. M. Mohamed, B. Vestgaard, and I. Busch-Vishniac, “Real-time implementation of a robust H controller for a 2-DOF magnetic microlevitation positioner,” ASME J. Dynamic Syst., Measurement Control, vol. 117, pp. 637–640, Dec. 1995. [9] J. Tang, “Real-time DC motor control using the MATLAB interfaced TMS320C31 digital signal processing starter kit (DSK),” in Proc. IEEE 1999 Int. Conf. Power Electron. Drive Syst. (PEDS’99), Hong Kong, 1999, pp. 321–326. [10] D. Cho, Y. Kato, and D. Spilman, “Sliding mode and classical control of magnetic levitation system,” IEEE Control Syst. Mag., vol. 13, pp. 42–48, Feb. 1993. [11] M. Lairi and G. Bloch, “A neural network with minimal structure for MagLev system modeling and control,” in Proc. IEEE Int. Symp. Intelligent Control/Intelligent Syst. Semiotics, Sept. 1999, pp. 40–45. , “A neural network with minimal structure for MagLev system [12] modeling and control,” in Proc. 1999 IEEE Int. Symp. Intelligent Control/Intelligent Syst. Semiotics, Cambridge, MA, Sept. 1999, pp. 40–45. [13] P. Haley, D. Soloway, and B. Gold, “Real-time adaptive control using neural generalized predictive control,” in Proc. Amer. Control Conf., San Diego, CA, June 1999, pp. 4278–4282. [14] Quanser Consulting. (2000, Mar.). [Online] http://www.quanser.com [15] ECP. (2000, Mar.). [Online] http://www.ecpsystems.com [16] dSpace Inc.. (2000, Mar.). [Online] http:///www.dspaceinc.com [17] P. S. Shiakolas and D. Piyabongkarn, “Development of a real-time digital control system with a hardware-in-the loop magnetic levitation device for reinforcement of controls education,” IEEE Trans. Educ., vol. 46, pp. 79–87, Feb. 2003, to be published. [18] M. T. Hagan, H. B. Demuth, and M. Beale, Neural Network Design. Boston, MA: PWS-Kent, 1995. [19] F. L. Lewis, S. Jagannathan, and A. Yesildirek, Neural Network Control of Robot Manipulators and Nonlinear Systems. New York: Taylor & Francis, 1999. [20] P. Wasserman, Neural Computing: Theory and Practice. New York: Van Nostrand, 1989. [21] M. Norgaard, O. Ravn, N. K. Poulsen, and L. K. Hansen, Neural Networks for Modeling and Control of Dynamic Systems. London, U.K.: Springer-Verlag, 2000. [22] National Instruments, 6023E/6024E/6025E Families of DAQ Cards, Austin, TX, 2000. [23] S. A. Green, R. S. Hirsch, and K. C. Craig, “Magnetic levitation device as teaching aid for mechatronics at Rensselaer,” in Proc. ASME IMECE Dynamic Syst. Control Div., 1995. [24] K. Craig, T. Kurfess, and M. Nagurka, “Magnetic levitation testbed for controls education,” in Proc. ASME, Dynamic Syst. Control Div., vol. DSC-64, 1998, pp. 83–88. [25] Neural Network Toolbox User’s Guide, MathWorks, Inc., Natick, MA, 1999. [26] Filter Design Toolbox User’s Guide, MathWorks, Inc., Natick, MA, 1999.
1
(b) Fig. 9. Tracking performance for balls 3 + 4b + 5 under input
0:1 sin(2:5 2t).
allowed the students to focus on the task of understanding, developing, testing, and comparing algorithms without the distraction of low-level software development. Thus, the students could easily compare the performance of the developed algorithms, discuss the merits of each algorithm, and decide which approach should be selected depending on the process requirements. The MATLAB m-files and data files used in this project for training the static NN and all the Simulink files referenced in this paper could not be included due to space limitations but may be obtained in their native format from the corresponding author upon request.
ACKNOWLEDGMENT The authors would like to thank the reviewers for their insightful and helpful comments in improving this manuscript
SHIAKOLAS et al.: MAGNETIC LEVITATION HIL AND MATLAB-BASED EXPERIMENTS
Panayiotis S. Shiakolas (M’01) was born in Nicosia, Cyprus. He received the B.S. and M.S. degrees in mechanical engineering from the University of Texas in Austin in 1986 and 1988, respectively, and the Ph.D. degree from the University of Texas at Arlington in 1992. He joined the Mechanical and Aerospace Engineering Department of the University of Texas at Arlington in 1996, where he is currently an Associate Professor. His research interests include robotics, manufacturing process automation, controls, and engineering education. He has currently expanded his research interests in the manufacturing of biosensors and biomicroelectromechanical systems (bio-MEMS). Dr. Shiakolas is a Member of the American Society of Mechanical Engineers (ASME) and the Society of Manufacturing Engineers (SME).
Stephen R. Van Schenck was born in California. He received the B.S. degree in mechanical engineering from the California State Polytechnic University, Pomona, CA, in 1994 and the M.S.E. degree in mechanical engineering from the University of Texas in Arlington in 2001. He is currently working toward the Ph.D. degree in the Mechanical and Aerospace Engineering Department, University of Texas, Arlington. His areas of interest include simulation, control systems, and robotics. He currently works in simulation and modeling for a major aerospace corporation.
41
Damrongrit Piyabongkarn received the B.Eng. degree in mechanical engineering from Chulalongkorn University, Bangkok, Thailand, in May 1996 and the M.S. degree in mechanical engineering from the University of Texas at Arlington in December 2000. He is currently working toward the Ph.D. degree in mechanical engineering at the University of Minnesota–Twin Cities with a dissertation titled “Development of a MEMS Gyroscope for Absolute Angle Measurement.” His research interests include advanced controls, microelectromechanical systems (MEMS), micro-gyroscopes, signal processing, and artificial neural networks.
Ioannis Frangeskou was born in Nicosia, Cyprus. He received the B.Eng. degree in electronic and electrical engineering from Loughborough University of Technology, Loughborough, U.K., in 1994 and the M.S. degree in electrical engineering from the University of Texas at Arlington in August 2002. He is currently applying for the Ph.D. degree. He has consulted in the area of electronic circuit design and wireless communications. He worked as a Research Assistant in the Manufacturing and Robotic Systems Laboratory, University of Texas, Arlington, where he was responsible for the design and construction of electronic circuits for control applications. He is currently consulting for electronic circuit design. His interests include electronic circuit design, control theory and applications, and analog and digital communications.