Høgskolen i Buskerud: Fag Kybernetikk 3

Prosjektoppgave:

Lab: Systemindentifikasjon av DC-motor

Introduction

In this lab you are to estimate a discrete-time transfer function of a DC motor using the Matlab function n4sid (which implements a subspace system identification method). LabVIEW will be used to perform the experiments on the motor and to save time-series of control signal and measurement signal (tachometer measurement) to files. The estimated model will be simulated in Simulink where you are to tune a PI speed controller for the motor. Finally, you will apply the controller parameters in a speed control system implemented in LabVIEW.

Practical information about the project

See the homepage of the project.

Equipment

  • PC with LabVIEW and Matlab/Simulink (and System Identification Toolbox and Control System Toolbox)
  • USB6008 I/O device.
  • DC motor

Tasks

In the tasks below, you can, for simplicity, represent the rotational speed in unit of measurement voltage (not revolutions per minute).

  1. Estimation of transfer function: Estimate a discrete-time transfer function from control signal (volt) to tachometer voltage (rotational speed measurement) using the n4sid function in Matlab's System Identification Toolbox. The sampling time can be set to 0.1 s. Why should you detrend (i.e. remove the mean values of) the data series before applying them for system identification? Use LabVIEW for exciting the process and logging signals. Use open-loop experiments (no feedback control system). You can use the Write to Measurement File function on the File I/O palette in LabVIEW for writing data to text files. In Matab file import can be made using the load function or using the Import Wizard on the File menu.
     
  2. Is the model good? Check if the model is good (accurate) by visually comparing a simulated  tachometer response with a real response in Simulink. Should you use the same input sequence in the simulation as was used in the system identification, or should you use a different sequence?
     
  3. Simulation of the speed control system in Simulink: Tune a PI controller for speed control in Simulink. (Use any tuning method you want.) There are a couple of inbuilt PID-controllers in Simulink. As long as you need a PI controller (no D-term), you can use any of them because the PI parts are (I guess) identical. The control system must contain a measurement lowpass filter with time-constant 0.2 sec. Is the stability of the simulated control system ok?
    Note: The parameterization of the PID controllers in Simulink is somewhat unusual, so study carefully the documentation given in the dialog window of the PID block(s).
     
  4. Implementing a real control system with LabVIEW: Implement a speed control system for the (real) motor in LabVIEW. Use the PID Advanced function. As in the previous task, the control system shall contain a measurement filter with the same time-constant as defined above. You can use this measurement filter. Is the stability of the control system ok, or is there a need for retuning the PI controller in LabVIEW (compared to the tuning made in Simulink)?

Emnets hjemmeside


Oppdatert 24.2.09 av Finn Haugen. E-post: finn@techteach.no.