DSPACE DS1103 Control Workstation Tutorial and DCMotor Speed Control
This document outlines a project to develop a tutorial for using a dSPACE DS1103 control workstation by implementing a DC motor speed control system. The goals are to determine any additional setup needed for the workstation, write a tutorial paying attention to the DS1103 board using motor speed control as an example, design and implement a DC motor speed controller on the workstation using Simulink blocks and interface libraries, and decrease the learning curve for future users. The controller will control motor speed based on encoder and desired input signals passed through the workstation and connector panel.
DSPACE DS1103 Control Workstation Tutorial and DCMotor Speed Control
This document outlines a project to develop a tutorial for using a dSPACE DS1103 control workstation by implementing a DC motor speed control system. The goals are to determine any additional setup needed for the workstation, write a tutorial paying attention to the DS1103 board using motor speed control as an example, design and implement a DC motor speed controller on the workstation using Simulink blocks and interface libraries, and decrease the learning curve for future users. The controller will control motor speed based on encoder and desired input signals passed through the workstation and connector panel.
Functional Description and Complete System Block Diagram By Annemarie Thomas Advisor: Dr. Winfred Anakwa November 11, 2008 Thomas 1 Introduction The dSPACE DS1102 was first used at Bradley University in the year 2000 when a users manual and a workstation based on this board were developed. Since then, a newer dSPACE DS1103 board has been developed. With grant from the Bradley College of Engineering of $2,000 and additional funds of $12,200 provided by Dr. Larry Kendrick at the Caterpillar Technical Center, a dSPACE DS1103 board and additional parts needed have been purchased to set up a DS1103 workstation. Initial setup has been completed by Mr. Chris Mattus. Now, someone must learn how to use it. The object of the dSPACE DS1103 Control Workstation Tutorial and DC Motor Speed Control project is to develop a tutorial for use of the new dSPACE DS1103 Workstation by implementing a DC motor speed control system. The tutorial will minimize the time required for future students to become proficient in using the workstation, therefore increasing the time they can spend designing and implementing more complex control systems. Project The goals for the dSPACE DS1103 Control Workstation Tutorial and DC Motor Speed Control project are the following: Determine and implement any additional setup that may be required for the dSPACE DS1103 control workstation. Write a tutorial for use of the workstation, paying particular attention to details related to the DS1103 board using a DC motor speed controller as the example application. Design a controller to control the speed of a DC motor. Implement the designed DC motor speed controller on the dSPACE DS1103 system using the Simulink and the dSPACE blocksets, the Matlab-to-DSP interface libraries, Real-Time Interface to Simulink, and Real-Time Workshop. The ultimate goal of this project is to decrease the learning curve for future students who use the workstation for more complex projects. Past projects completed by Bradley University students using the dSPACE DS1102 board included OFDM transmission and magnetic suspension projects. The dSPACE DS1103 Control workstation could be used for similar projects and is well adapted for use in automobile [1], airplane, and many other control applications. Description The design portion of this project involves designing and implementing a motor speed controller using the dDSPACE DS1103 board. The controller will be simulated and designed using the Simulink and the dSPACE blocksets, the Matlab-to-DSP interface libraries, Real-Time Interface to Simulink, and Real-Time Workshop on a PC. The controller will then be downloaded onto the Texas Instruments TM320F240 DSP [1] located on the DS1103 board. Inputs to the DS1103 will include the desired motor speed and the output of an optical encoder connected to the motor. Outputs from the DS1103 will include the input to the motor, possibly a PWM signal, and a display of the actual motor speed. Inputs to and outputs from the DS1103 will pass Thomas 2 through the CLP1103 [2] connector panel for the DS1103 board. The motors speed should remain steady for any reasonable amount of load torque applied to it by a braking system. A general block diagram for the system is shown in figure 1 below. Input Desired Speed (From ControlDesk or voltage sent through CLP1103) DS1103 Motor System ControlDesk Load Applied to Motor Shaft By Brake Optical Encoder System CLP1103 Connector Panel Figure 1: Motor Speed Control System Block Diagram Testing of the initial controller design can be done by modeling the Motor System, Optical Encoder System, and CLP Connector Panel, shown in figure 1 above, in Simulink. A simple motor model is shown in figure 2 below. From this model, a closed loop control block diagram can be generated with a transfer function for the input voltage into the motor, Va, in relation to the output, w, in radians per second, which can then be easily be converted to other formats such as RPM (revolutions per minute). A simple transfer function that can be used to model the motor in the frequency domain, in terms of s, is: w / Va = Kt / [ ( Ra + s * La ) * ( B + s * J ) + Kt * Kv ] (1) where Ra and La are the electrical resistance and inductance of the motor, J and B are the mechanical inertia and damping/friction of the motor, and Kt and Kv are the torque constant and back emf constant of the motor. These values will be found in the motors datasheet(s) and verified experimentally. w B Ra La Va J Figure 2: Simple Motor Model Schematic Controller The controller will be designed using the various development and simulation tools found on the PC for the workstation. It will then be downloaded to the DSP in the DS1103 shown in figure 1 on the previous page using the ControlDesk software package also on the PC. The complexity and other specifications of the motor speed controller design have not yet been determined. A simple proportional (P) controller design would probably be implemented first to Thomas 3 gain experience and knowledge with the overall system, and then one or several more complex controllers would probably be designed and implemented. The output from the DS1103 is currently expected to be a PWM signal. ControlDesk ControlDesk in figure 1 on the previous page serves multiple uses. It provides the interface for downloading controller models designed in Simulink onto the DSP. The Instrument Panel feature of ControlDesk can be used as an input device for the system and as a data output device. It may be possible to control the input value for the Simulink model using the Instrument panel, but more research in this area is needed to be certain of this. The output from the Optical Encoder System can definitely be sent through the CLP1103 and DS1103 to the computer and various measurements can be displayed on the PC screen. [3] Initially, measurement of the system response (the actual motor speed) will be measured by connecting the output of the Optical Encoder to an oscilloscope. CLP1103 The CLP1103 shown in figure 1 on the previous page serves as an interface between the DS1103 and the external hardware portion (Motor System, Optical Encoder System, and possibly the Desired Input) of the overall system. The CLP1103 contains connector for twenty (20) Analog-to-Digital inputs, eight (8) Digital-to-Analog outputs, several other connectors that can be used for Digital I/O, Slave/DSP I/O, Incremental Encoder Interfaces, CAN interface, and Serial Interfaces. [2] Motor System The Motor System identified in the block diagram in figure 1 on the previous page will include the motor and additional analog components. The analog components will include either a transistor or an H-bridge to further process the output from the DS1103 board (passed through the CLP1103 Connector Panel) before it enters the motor. Thomas 4 Optical Encoder System The Optical Encoder System shown in figure 1 on page 2 may be just an optical encoder connected to the motor and necessary pull-up resistors and power/ground connections, but additional analog components might be added to convert the optical encoder output signal into a form that can be more easily handled by the DSP. Speed Input A means of inputting the speed at which the motor is desired to operate is needed. This is shown as the Input Desired Speed Block in figure 1 on page 2. The speed could be hard coded into the controller or an external signal could be used to vary the desired operating speed. Initial design and implementation will most likely use a hard-coded value, but eventually it should be possible to control the desired speed by using a DC voltage supply or some other type of input. Current research is inconclusive, but it might also be possible to set desired input using the Instrument Panel Feature of ControlDesk, see ControlDesk section on the previous page. This would be the preferred option if it is possible. Conclusion In order to successfully complete the dSPACE DS1103 Control Workstation Tutorial and DC Motor Speed Control project, the required software packages and their interaction with the dSPACE DS1103 board must be investigated and well-understood. Currently, not much information can be found related to the DS1103 other than what is contained in the manuals [3,4]. This project will hopefully be a step in solving that problem and make it easier for future Bradley University students and perhaps others as well to use these boards. References [1] DS1103 PPC Controller Board, Germany: dSPACE, July 2008. [2] Connector and LED Panels, Catalog 2008, Germany: dSPACE:2008, p. 302. [3] ControlDesk Experiment Guide For ControlDesk 3.2, Germany: dSPACE GmbH, 2008, Release 6.1. [4] dSPACE System First Work Steps For DS1103, DS1104, DS1005, DS1006, and Micro Auto Box, Germany: dSPACE GmbH, 2007, Release 6.0.