K. A. Lilienkamp, and D. L. Trumper Precision Motion Control Lab, MIT, Rm 35-030, 77 Mass. Ave, Cambridge, MA 02139
We have developed MATLAB software and a Simulink subsystem block which work in tandem to extract the transfer function (amplitude and phase) of a system using ‘swept sine’ excitation. The resulting dynamic signal analyzer provides a convenient tool for obtaining empirical Bode plots of system and controller dynamics within the dSPACE environment. Both the derived (Fourier) and raw (time domain) data are displayed at each frequency tested. The bandwidth possible is linearly related to the sampling rate limits set by both the dSPACE board used and the complexity of the model. With the ds1102 and a simple model, at a sampling rate of 10 kHz, the measurement bandwidth is about 1 kHz.
1. Motivation
Characterizing both time and frequency domain response is a necessary step in understanding system dynamics. In the field of controls, designers use this information both for system identification and for validation of controller behavior. The dSPACE environment provides useful graphical tools for recording and displaying discrete-time data (e.g., the step response of a system). We saw a need for similar tools that could provide empirical Bode plots of the frequency response without interfacing to external hardware. One particular benefit of a signal analyzer that runs within a Simulink model over an external DSA is the ease with which the various signals can be used without the necessity of transforming them into analog representations. This project was the first author’s Bachelor’s thesis to develop a dynamic signal analyzer (DSA) for the ds1102.1 We have used this DSA on recent projects at the Precision Motion Control Lab at MIT. The source code for the signal analyzer is publicly available at our website, with the expectation others will find it useful as well.2
2. Theory and Implementation
Our dSPACE-based DSA uses