Particle Swarm Optimization for PID Tuning of a BLDC Motor

Similar documents
A Case Study of Rotating Sonar Sensor Application in Unmanned Automated Guided Vehicle

Design Of PID Controller In Automatic Voltage Regulator (AVR) System Using PSO Technique

INTELLIGENT PID POWER SYSTEM STABILIZER FOR A SYNCHRONOUS MACHINE IN SIMULINK ENVIRONMENT

Servo Tuning. Dr. Rohan Munasinghe Department. of Electronic and Telecommunication Engineering University of Moratuwa. Thanks to Dr.

Radiation Pattern Reconstruction from the Near-Field Amplitude Measurement on Two Planes using PSO

TUNING OF PID CONTROLLERS USING PARTICLE SWARM OPTIMIZATION

International Journal of Innovations in Engineering and Science

Modeling & Simulation of PMSM Drives with Fuzzy Logic Controller

Servo Tuning Tutorial

ME375 Lab Project. Bradley Boane & Jeremy Bourque April 25, 2018

Step vs. Servo Selecting the Best

Optimal Control System Design

DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING BANGLADESH UNIVERSITY OF ENGINEERING & TECHNOLOGY EEE 402 : CONTROL SYSTEMS SESSIONAL

PID Controller Tuning using Soft Computing Methodologies for Industrial Process- A Comparative Approach

EVALUATION ALGORITHM- BASED ON PID CONTROLLER DESIGN FOR THE UNSTABLE SYSTEMS

PID Control Tuning VIA Particle Swarm Optimization for Coupled Tank System

L E C T U R E R, E L E C T R I C A L A N D M I C R O E L E C T R O N I C E N G I N E E R I N G

Design of a Fractional Order PID Controller Using Particle Swarm Optimization Technique

Position Control of DC Motor by Compensating Strategies

AC : A STUDENT-ORIENTED CONTROL LABORATORY US- ING PROGRAM CC

IJSRD - International Journal for Scientific Research & Development Vol. 4, Issue 03, 2016 ISSN (online):

Automatic Control Systems 2017 Spring Semester

MALAYSIA. Hang Tuah Jaya, Melaka, MALAYSIA. Hang Tuah Jaya, Melaka, MALAYSIA. Tunggal, Hang Tuah Jaya, Melaka, MALAYSIA

Introduction to Servo Control & PID Tuning

Position Control of Servo Systems using PID Controller Tuning with Soft Computing Optimization Techniques

DC Motor Speed Control Using Machine Learning Algorithm

Optimal design of a linear antenna array using particle swarm optimization

Figure 1: Unity Feedback System. The transfer function of the PID controller looks like the following:

SERVOSTAR Position Feedback Resolution and Noise

Evolutionary Computation Techniques Based Optimal PID Controller Tuning

Control of Load Frequency of Power System by PID Controller using PSO


Application Note #2442

PID Controller Tuning Optimization with BFO Algorithm in AVR System

MODEL BASED DESIGN OF PID CONTROLLER FOR BLDC MOTOR WITH IMPLEMENTATION OF EMBEDDED ARDUINO MEGA CONTROLLER

AN APPROACH TO IMPROVE THE PERFORMANCE OF A POSITION CONTROL DC MOTOR BY USING DIGITAL CONTROL SYSTEM

Observer-based Engine Cooling Control System (OBCOOL) Project Proposal. Students: Andrew Fouts & Kurtis Liggett. Advisor: Dr.

Design of Compensator for Dynamical System

Design of Fractional Order Proportionalintegrator-derivative. Loop of Permanent Magnet Synchronous Motor

Swinburne Research Bank

Implementation of Proportional and Derivative Controller in a Ball and Beam System

T/R Module failure correction in active phased array antenna system

Advanced Servo Tuning

PROCEEDINGS OF THE SECOND INTERNATIONAL CONFERENCE ON SCIENCE AND ENGINEERING

Brushed DC Motor Microcontroller PWM Speed Control with Optical Encoder and H-Bridge

Analysis and Design of Conventional Controller for Speed Control of DC Motor -A MATLAB Approach

Research Article Optimization of Gain, Impedance, and Bandwidth of Yagi-Uda Array Using Particle Swarm Optimization

Compact, Low-Cost Solutions

Feedback Devices. By John Mazurkiewicz. Baldor Electric

Ball Balancing on a Beam

Active Vibration Isolation of an Unbalanced Machine Tool Spindle

Obstacle Avoidance in Collective Robotic Search Using Particle Swarm Optimization

A COMPARISON STUDY OF THE COMMUTATION METHODS FOR THE THREE-PHASE PERMANENT MAGNET BRUSHLESS DC MOTOR

Design of a Simulink-Based Control Workstation for Mobile Wheeled Vehicles with Variable-Velocity Differential Motor Drives

Speed control of sensorless BLDC motor with two side chopping PWM

ADAPTIVE PSO-BASED SELF-TUNING PID CONTROLLER FOR ULTRASONIC MOTOR. Received September 2012; revised January 2013

VECTOR CONTROL SCHEME FOR INDUCTION MOTOR WITH DIFFERENT CONTROLLERS FOR NEGLECTING THE END EFFECTS IN HEV APPLICATIONS

BLuAC5 Brushless Universal Servo Amplifier

ANALYSIS OF V/f CONTROL OF INDUCTION MOTOR USING CONVENTIONAL CONTROLLERS AND FUZZY LOGIC CONTROLLER

The motors are described by the following numbering system: D 500 ppr encoder 1 E 1,000 ppr encoder 1 H Hall-effect only R resolver

Analysis of Transient Response for Coupled Tank System via Conventional and Particle Swarm Optimization (PSO) Techniques

A Review of Implemention of Evolutionary Computational Techniques for Speed Control of Brushless DC Motor Based on PID Controller

Comparative Study of PID and Fuzzy Controllers for Speed Control of DC Motor

TUNING OF PID CONTROLLER USING PSO AND ITS PERFORMANCES ON ELECTRO-HYDRAULIC SERVO SYSTEM

SRV02-Series Rotary Experiment # 3. Ball & Beam. Student Handout

Speed Control of BLDC Motor Using FPGA

A Searching Analyses for Best PID Tuning Method for CNC Servo Drive

International Journal of Scientific Research Engineering & Technology (IJSRET), ISSN Volume 3, Issue 7, October 2014

Fuzzy Logic Based Speed Control System Comparative Study

BLuAC5 Brushless Universal Servo Amplifier

Swarm Based Sensor Deployment Optimization in Ad hoc Sensor Networks

DC Shunt Motor Control using Wavelet Network

Options & Accessories

Tech Note #3: Setting up a Servo Axis For Closed Loop Position Control Application note by Tim McIntosh September 10, 2001

3Specifications CHAPTER THREE IN THIS CHAPTER

Penn State Erie, The Behrend College School of Engineering

Improvement of Robot Path Planning Using Particle. Swarm Optimization in Dynamic Environments. with Mobile Obstacles and Target

The Selective Harmonic Elimination Technique for Harmonic Reduction of Multilevel Inverter Using PSO Algorithm

Root Locus Design. by Martin Hagan revised by Trevor Eckert 1 OBJECTIVE

Synthesis of Non-Uniform Amplitude equally Spaced Antenna Arrays Using PSO and DE Algorithms

The Air Bearing Throughput Edge By Kevin McCarthy, Chief Technology Officer

Structure Specified Robust H Loop Shaping Control of a MIMO Electro-hydraulic Servo System using Particle Swarm Optimization

Cantonment, Dhaka-1216, BANGLADESH

A Model Based Digital PI Current Loop Control Design for AMB Actuator Coils Lei Zhu 1, a and Larry Hawkins 2, b

CHAPTER 5 PSO AND ACO BASED PID CONTROLLER

Upgrading from Stepper to Servo

Identification and Real Time Control of a DC Motor

7 Lab: Motor control for orientation and angular speed

Fundamentals of Industrial Control

Control Design for Servomechanisms July 2005, Glasgow Detailed Training Course Agenda

Particle Swarm Optimization-Based Consensus Achievement of a Decentralized Sensor Network

CONTROLLING SPEED OF INDUCTION MOTOR USING THREE- PHASE BOOST CONVERTER

SPEED CONTROL OF BRUSHLESS DC MOTOR USING FUZZY BASED CONTROLLERS

Mathematical Modeling, Simulation and Control of Ball and Beam System

Comparison of Different Performance Index Factor for ABC-PID Controller

II. PROPOSED CLOSED LOOP SPEED CONTROL OF PMSM BLOCK DIAGRAM

Control System Design for Tricopter using Filters and PID controller

International Journal of Advance Engineering and Research Development

DC MOTOR SPEED CONTROL USING PID CONTROLLER. Fatiha Loucif

Options & Accessories

Transcription:

Proceedings of the 009 IEEE International Conference on Systems, Man, and Cybernetics San Antonio, TX, USA - October 009 Particle Swarm Optimization for PID Tuning of a BLDC Motor Alberto A. Portillo UTSA Department of Electrical Engineering University of Texas Health Science Center PM&R San Antonio, TX Michael Frye, Ph. D. Department of Engineering University of the Incarnate Word San Antonio, TX Chunjiang Qian, Ph. D. UTSA Department of Electrical Engineering University of Texas at San Antonio San Antonio, TX Abstract This paper applies a particle swarm optimizer to tune the PID gains for a brushless DC motor. This motor is used in a milling machine that moves in coordination with three additional motors to carve out transtibial and transfemoral prosthetic sockets. Three motors move in the X, Y, and Z coordinate axes, while one motor rotates in a clockwise/counterclockwise rotation. The BLDC motor of interested is responsible for controlling the movement along the X axis. Performance improvements using the PSO PID gains are analyzed in the motor controlling the X axis by comparing the performance of the motor obtained by an optimizer program provided by the manufacturer of the milling machine and the brushless DC motor model developed in this paper. Keywords Particle Swarm Optimization, PID tuning, biomedical application I. INTRODUCTION The digital motion controller used in the milling of transtibial and transfemoral prosthetic sockets is a Galil s DMC-184 which controls four Parker OEM675 motor amplifiers. The four motors being used are Parker SM series brushless DC motor (BLDC). The milling machine that uses each of these elements carves out the shape of a patient s lower extremity amputation into a foam block. From this foam carve, a prosthetist melts a sheet of plastic and vacuum fits the plastic over the foam from which a prosthetic socket is made from various materials. The demands of the foam carve require the plastic mold to be as accurate as possible so that an air tight seal is created when the amputee is fitted into the socket. Also, the length of time that is spent carving out the socket needs to be as fast as possible with out compromising the quality of the carve in order to give the prosthetist optimal amount of time to create a socket, fit the patient, and correct for errors in a time efficient manor to give the best quality care the patient expects from the clinician. This paper develops a motor model by way of a transfer function and modeled in Matlab in order to test and implement motor improvements for time and accuracy of the carve. The Windows Servo Design Kit (WSDK) is a specific software package developed by Galil to run the DMC-184 motion controller. The WSDK has an Auto Crossover Frequency (ACF) automated tuning feature that allows the user to automatically find optimized PID gains. This tuning method was used to find the PID gains and then implemented in the transfer function to be modeled in Matlab. To compare the performance characteristics of the ACF tuning method provided by the WSDK Galil software, particle swarm optimization (PSO) is investigated to find specific parameters and tested to find optimized PID gains for the motor controller. PSO is a heuristic algorithm first introduced in 1995 as an alternative method to find optimized proportionalintegral-derivative values by James Kennedy and Russell Eberhart [1]. The PSO was used to find optimized PID gains and the values were implemented in the transfer function to compare with the open loop modeling and root-locus modeling of the optimized PID gains that were obtained using the WSDK ACF tuning function. The results show a smaller overshoot, a faster settling time, and improved stability as shown in the root-locus analysis. II. MOTOR MODEL The transfer function of the motors movement needed to be found in order to perform a comparison analysis of the WSDK ACF PID values versus the PSO PID optimized values. By finding the individual transfer functions and gain values from each of the individual components used to drive the motor, the transfer function was found and modeled in Matlab. A step impulse was used to drive the transfer function so that the percent overshoot, rise time, and settling time could be analyzed. The root-locus was used to further determine the stability of the transfer function. A. Calculation the PID Values The WSDK s ACF tuning function was used to find the optimal PID values for several important reasons. (1) It is a general tuning tool to find optimal PID values for general motor movement. () It is easy to use and autonomous once the parameters are established. (3) It provides reasonably SMC 009 978-1-444-794-9/09/$5.00 009 IEEE 4017

consistent PID values over several implementations. The parameters of the WSDK were set to move the motor 50 encoder counts/radian (cnts/rad). From this movement, the PID values were generated and recorded for use in the motion model. The PID values generated from the WSDK ACF were (40.50/7.5/381) respectively for P, I, and D. K d 0V 0.003 v/cnt. 16 cnt Equation 4 shows the combined transfer functions and gains from Equations 1 3 to create the transfer function for the DMC motion controller, B. Elements of the Motor Model Ds Ps I s 000s 0.6 0.6 0.6. Figure 1: Components of the Motor Model [5] Figure 1 shows the elements for which the transfer function of the motor model was built for the DMC motion controller, the amplifier, the motor, and the encoder. The DMC motion controller is further separated into three parts: the PID digital filter, the zero order hold (ZOH), and the digital to analog converter (DAC). The OEM675 amplifier was selected to driver the SM33BE series parker BLDC servo motor. The selection for this amplifier was based on the manufacturers recommendation of the appropriate amplifier to drive the specific motor [4]. The output gain of the amplifier is 1. amp/volt. The BLDC motor is able to provide accuracy at high speed with the embedded encoders and hall effect sensors keeping track of the motors internal position. The BLDC motor is also able to provide a large amount of toque upwards of 11.3 lb.-in. continuous torque. This large torque provides sufficient amount of force to drive loaded objects and provide the accuracy and speeds needed to move multiple objects. The efficient integration of the motor and the encoders located on the shaft of the motor required the individual modeling of the motors movement and the encoder. The gain of the encoder is found to be 636, based on Equation 5. The variable N is defined by the product specifications to be 1000 pulses per revolution (ppr), K f 4N 4(1000) 636. Figure : Elements of the DMC Motor Controller [6] The PID digital filters transfer function is realized in Equation 1. The values for P, I, and D are obtained from the WSDK ACF tuning function, Ds Ps I PID. s The ZOHs transfer function in the controller is designed to control the sampling time at which the motor command is updated inside the controller, 1 1 000 H() s. st s(0.001) (1 ) (1 ) s 000 The gain of the DAC component is found to be: The position of the motor is calculated using the values shown in Table 1 and implemented in Equation 6 shown below, Table 1: SM33BE System Parameters Parameters Symbol Units SM33BE Resistance Ra Ohms.58 Rotor Inertia J kg-m^ 1.30E-04 Torque Constant Kt Nm/Amp peak 0.08 Viscous Damping B Nm/Krpm 3.78E-03 Kt () s Ra * j. V() s 1 Kt s s B j R Combing Equations 4 6 yields Equation 7, the open loop characteristic transfer function of the motion model. The PID 4018

values from the WSDK ACF tuning function provided the values of (40.50/7.5/381) respectively for P, I, and D, 4.154 s 4.54 s 1.0769 5 7 8 3 5 s 17s.537 s. C. Motor Model Results The closed loop step response of equation with PID values of (40.50/7.53/381) is shown in Figure 1. From the graph, several important calculations are found that are used to compare to the PSO PID values in the same closed loop transfer function shown in Equation 7. These calculations are peak time, settling time, and percent overshoot are shown in Table. Table : WSDK ACF Performance Response Performance Characteristics WSDK ACF Peak Time 0.0375 sec. Settling Time 0.093 sec. Percent Overshoot 8.80% Figure. Open-Loop Root Locus. Figure 1. Open Loop Step Response. The root-locus method was also used to determine the rate of stability of the open-loop response of Equation 7. Figure shows the root-locus response. The WSDK ACF PID values achieved stability by root-locus examination at the complex poles of -36.36±4i where the gain (K) is equal to 4.154x10 5. Table 3: WSDK ACK Root Locus Performance Performance Characteristics PSO PID Gain (K).977x10 5 Complex Poles (S) -6.67±6.53i III. PARTICLE SWARM OPTIMIZATION PSO is a stochastic swarm optimization technique as described by Kennedy and Eberhart [1]. Kennedy and Eberhart discuss that a swarm of bees will work together to find an area with the most food. Each individual bee in the swarm searches a random area and finds the area for the most abundant food. The individual bee will then relay this location to the entire swarm and compare this individual location of food to the other locations reported by the other bees. Based upon the input, the bee will either keep the location because the other bees have not returned a location with a greater food density, or will gravitate towards the location with the higher density in comparison to its own location. The individual bee does a random search, this time with the location of the highest density in mind and tries to find a location of higher food density. If the bee finds a higher density while doing the random search, the bee relays this new information to the rest of the swarm. Each bee has a new location for the highest food density and begins to gravitate to the new location. Eventually, the entire swarm will collectively gather at the location with the highest density of food. Kennedy and Eberhart [1] bridges the biological concept of the swarm behavior to an engineering focus by using the idea that in nature, a swarm will find an optimal solution. In engineering, the swarm concept could be adapted as yet another tool to find optimized values in a multivariable environment, such as finding optimized PID values. Robinson and Rahmat-Samii [] further expand on the PSO discussion by bringing attention to several key elements that make the PSO an effective engineering optimizing tool. The particles in 4019

the swarm are the individual elements in the swarm responsible for moving to there personal best values (pbest) and the swarms best values (gbest) all the while continually searching there current position to monitor for better values than what the individual has. The individuals position is the location given a specific boundary for which to search in. Evaluation of the position is performed through a fitness function that returns the optimal solution. I) Number of particles The number of particles was assigned to 100 with the intent that this would allow for a large number of individual elements to better explore and converge on the optimal PID gains. Research by Robinson [] and Carliel [3] suggest that the higher number of particles gives an improved exploration for optimal values when compared to the number of particles at 0 or 30. The compromise between the higher number is that the higher values takes longer to compute than at 0 or 30 particles. II) PID search space In order to find the optimal values for the proportional, integral, and derivate elements, three ranges were established based upon the output from the WSDK ACF tuning. The PID values resulting from auto tuning resulted in PID values of 40.5, 7.5, and 381 respectively. The search space for which the particles worked in were set to 50, 10, and 450 in order to provide an effective window to perform a search that would be similar to the PID values found using the WSDK ACF tuning method. The search space also establishes the boundaries to which the fitness function is to be evaluated. III) Fitness function The pbest and gbest are initial assigned random values in the search space. For each iteration, The pbest and gbest values are compared to the current location. If the current location has better optimized values than the current pbest/gbest values, the fitness function returns a numerical value that is used to evaluate a new velocity and the new values replace the old pbest/gbest values. IV) Number of trials The number of trials was set to 50 iterations for each particle. This number was established to give each particle an opportunity to successfully find optimal PID values over multiple trials. V) Inertial weight (0.9 0.01) The internal weight,, as suggested by Robinson [] and Carliel [3] was initial set to 0.9 to provide a global search which is less influenced by pbest and gbest. As the number of iterations increased toward 50, the internal weight reduced towards 0.01 resulting in a condensed area that VI) VII) VIII) put more emphasis on the activities of pbest and gbest. C1 & C values The social factors of C1 and C determine the amount of emphases the particles velocity is effected by pbest/gbest. C1 is set to 1 and C is set to thus putting more emphases on gbest. Velocity In order for the velocity (Vn) to be calculated, the fitness functions of pbest and gbest needed to be evaluated. The rand( ) element in the equation provides the function a sense of natural behavior found in nature []. Vnnew w* Vnold C1* rand()( pbest xn) C* rand()( gbest xn) Movement The movement of the particle is accomplished by adding the new velocity to the current location. Xn Xn t Vn * new IV. PSO PID RESULTS The PSO PID function produced gain results of (47.50/.31/73.08). The new PID values were implemented in Equation 4 and a new Equation 7 was calculated and simulated through Matlab. The new PID results are shown in Table 4. Table 4: PSO PID Performance Results Performance Characteristics PSO PID Peak Time 0.05 sec. Settling Time 0.083 sec. Percent Overshoot 5.64% The results for the root-locus analysis are shown in Figure 3 and Table 5. Table 5: PSO PID Root Locus Analysis Performance Characteristics Auto WSDK Gain (K) 4.154x10 5 Complex Poles (S) -6.67±6.53i 400

shows the two PID values implemented in the physical system. When comparing the output graphs of the two optimizing functions, the implemented PSO PID values show a faster settling time with a faster rise time, little to no overshoot and a fast settling time. The ACF WSDK PID values result in a much longer rise time, a large overshoot, and a substantial settling time when compared to the PSO PID. It is shown that the response in the physical system is consistent with the improved calculations in the closed loop step response and the root locus analysis between the two PID optimizing functions. WSDK PID v. PSO PID 60 50 40 30 Figure 3. PSO PID Root Locus. Position 0 ACF PSO V. RESULTS The resulting closed-loop step response parameters using the PID values derived from the PSO algorithm were found to be an improvement from the PID values found using the WSDK ACF. Comparing the values of Table and Table 4 show the improvements in peak time, settling time, and percent overshoot. The relative percent difference equation is used to determine a statistical improvement in all three performance characteristics for the closed loop step response. These performance improvement values are shown in Table 6. Table 6: Step Response Performance Improvements Performance Characteristics % Improvement Peak Time 50 Settling Time 11.45 Percent Overshoot 43.76 The root-locus analysis also showed a faster rate for stability of the model and a lower gain (K). Using the PID values obtained with the PSO, the new K was.977x10 5 resulting in complex poles at -6.67±6.53i. By comparing Table 3 and Table 5, the performance improvements can be seen that the PSO PID converges towards stability much faster than the WSDK ACF PID values. Upon successful results with the PSO PID over the WSDK ACF PID values, the two PID values were implemented in the actual system to determine if the modeled performance actually had an improvement in the real system. Figure 4 10 0 1 6 11 16 1 6 31 36 41 46 51 56 61 66 71 76 81 86 91 96 101 106 111 116 11-10 Time Figure 4: PSO v. WSDK comparison ACKNOWLEDGMENT We would like to thank the support and facilities of the Andrew Gitter GAIT Laboratory at the University of Texas Health Science Center. REFERENCES [1] James Kennedy, R. E. (1995). Particle Swarm Optimization. IEEE International Conference on Neural Networks, Perth, Australia, IEEE Service Center, Piscataway, NJ. [] Jacob Robinson, Y. R.-S. (004). "Particle Swarm Optimization in Electromagnetics." IEEE Transactions on Antennas and Propagation 5(): 397-407. [3] Anthony Carlisle, G. D. (001). AN Off-The-Shelf PSO. Proceedings of the 001 Workshop on Particle Swarm Optimization, Indianapolis, In. [4] Compumotor (1998). OEM670X/675X, Parker Hannifin Corporation. [5] Galil Motion Control, Inc.. Application Note #3413: Manual Tuning Methods. Rocklin, CA 401

[6] Tal, J. (1994). STEP-BY-STEP DESIGN OF MOTION CONTROL SYSTEMS. Mountain View, CA, Galil Motion Control, Inc. [7] Portillo, A. (008). Using the Particle Swarm Optimizer to Solve for PID values for a BLDC Motor. Electrical Engineering. San Antonio, University of Texas at San Antonio: 60. 40