DC Motor-Clutch-Generator Control Workstation
Senior Project Proposal
Simon Benik and Adam Olson
Senior Project Proposal
Advisor: Dr. Gary Dempsey
Project Summary
• Physical System
• Application to Real World
• Goals– EMAC 80515 C programming– Modeling– Controllers– Simulink/Physical System Interface
System Functions
• Physical System• EMAC 80515 Development Board• Simulink
Keypad(1st command
signal input mode)
LCD
RS232 Serial Interface
Software Based Motor Controller
Matlab
Rx
EMAC 80515 Development Board
Interface Hardware
Pittman DC Motor
Rotary Encoder
PWM PWM
Velocity and AccelerationFeedback
Clutch
Joystick(2nd command
signal input mode)
DC Generator
Variable Load
Activate/Deactivate Input
User Selectable Load Input
Simulink Model
GUI Interface and Simulation
Simulink
Tx
EMAC 80515 Subsystem
Simulink Subsystem
Motor SubsystemClutch Subsystem
DC Generator Subsystem
Software Goals
• Expand off of Mini-project
• Recording Data In Ram
• Serial Communication
• GUI Interface With Matlab
• Control Motor Velocity, Clutch and Generator Resistance
Initialization
EMAC Primary Flowchart
Start
Main Loop
Poll Timings
Keypad Pressed
Closed Loop
No
No
No
Increase/Decrease PWMBreak
Closed Loop
Change Poll TimingsGet/Send Data with Computer
Set Generator ResistanceClosed Loop CalculationsYes
Yes
Yes
Interrupts
Display update every .5 seconds
Get PWM from optical encoder
Return
Mini-Project
• Data Taken Every 1 [ms]
• Display Uses Look-up Tables
• Keypad Interface
• P/PI Controller Written In Assembly
• Joystick to Control System
Serial Communication
• RS232 connection
• DUART chip
• Interfaces with Matlab– Sends RPM Data
– Receives Variables
• Real-time communication
Matlab
• 3 .M Files Created for testing
-Receiving Real-time Data, RAM Data, and sending Variables
• Provides a base for GUI
Nonlinear Frictions
• Static Friction • Coulomb Friction
• Viscous Friction • All Frictions Combined
Plant Modeling
(torque)
(Inertia)
(mechanical inductance)
(friction)
(velocity)
(current)
(capacitance)
(susceptance)
(conductance)
(voltage)
Pittman DC Motor
Rotary Encoder
ClutchDC Generator
Variable Load
Activate/Deactivate Input
User Selectable Load Input
Clutch Subsystem
DC Generator Subsystem
Hybrid Controls SystemOpen-Loop System with PWM zero-order hold
1
18001
8501
60
0146.0
SSSnversionSoftwareCoderRotaryEncoGpHbridgePWMGc
Controller Designs
• Proportional controller
• Proportional-integral controller
sec/18.473 radc
28.1318.473
10002
c
s
55PM
50PM
4.12175.51
10002
c
s
sec/75.51 radc
S
S
sGc1
5004658
)(
1
987.6645.11)(:
z
zzGcTustin
11 987.6645.11 nnnn rryy
644)( KpsGc
Nonlinearity affects PM, %OS, etc.
Implementation of Controllers
• Proportional Controller- Diff = (RPMsetval - RPMin);- number = Diff * kp;- number = number + 461;
• Proportional-integral Controller- Diff = (RPMsetval - RPMin);- number = Diff * ki;- number = number + lastRPM;- lastRPM = number;
Conclusions
• Software Design
• Problems in Code
• Next Years Mini-Project
• Accomplishments and Future Work
Conclusions
Software Design• EMAC Code
– 1,200 lines of assembly– 150 lines of C
• Matlab Code– 250 lines
• Matlab (GUI) Code – 100 lines
Conclusions
Problems In Code• LCD Update
• Highest Bit for Serial Communication
• Sending 0’s to MATLAB
Conclusions
• Accomplishments– Non-linear Model– Serial Communication– GUI for Both Model and Physical System
• Recommendation For Future Work– Sending RPM and PWM Data– More Advanced Controllers
Equipment and Tools
• EMAC 80515 Development Board• HP 30V Power supplies• Pittman DC Motors• Reell EC15 Spring Clutch• 5.6 Ohm, 8.7 Amp Potentiometer• Matlab and Simulink Software on a PC