11
Proceedings of the 2004/2005 Spring Multi-Disciplinary Engineering Design Conference Kate Gleason College of Engineering Rochester Institute of Technology Rochester, New York 14623 May 13, 2005 Project Number: 05106 MECHANICAL AND CONTROL SYSTEM ENHANCEMENT FOR AN AUTONOMOUS STEERING SYSTEM Lee Skolnik / ME Erich Bauer / ME Peter Damesimo / ME Peter Sulcs / ME ABSTRACT The process to improve the steering control system for an autonomous ground vehicle is presented. Facets of the improvement include mechanical modifications, system modeling, and PID control parameter tuning. The base vehicle is a compact automobile being prepared to race in DARPA’s Grand Challenge, an off-road race for autonomous ground vehicles. The design is centered on using a DC permanent magnet, brushed motor and optical encoder feedback to implement a position control system for the steering wheel. Design tools in Matlab are used to model the electro-mechanical system and to optimize the control system parameters, improving the rise time. INTRODUCTION The 05106 G-CART Vehicle Controls Senior Design Team provided technical support to their sponsor, the G-CART Club, a student organization at RIT. The club’s goal is to enter the 2005 Grand Challenge hosted by DARPA. The Grand Challenge is a race of fully autonomous ground vehicles navigating a 175 mile, desert terrain course with natural and man- made obstacles. The motivation behind the grand challenge was a congressional and Department of © 2005 Rochester Institute of Technology

Proceedings - Rochester Institute of Technologyedge.rit.edu/content/P05106/public/Page 5 - Files_files... · Web viewTransferring power from the motor to the steering column is an

  • Upload
    hatuong

  • View
    214

  • Download
    1

Embed Size (px)

Citation preview

Proceedings of the 2004/2005 SpringMulti-Disciplinary Engineering Design Conference

Kate Gleason College of EngineeringRochester Institute of Technology

Rochester, New York 14623May 13, 2005

Project Number: 05106

MECHANICAL AND CONTROL SYSTEM ENHANCEMENT FOR AN AUTONOMOUS STEERING

SYSTEM

Lee Skolnik / ME Erich Bauer / ME

Peter Damesimo / ME Peter Sulcs / ME

ABSTRACT

The process to improve the steering control system for an autonomous ground vehicle is presented. Facets of the improvement include mechanical modifications, system modeling, and PID control parameter tuning. The base vehicle is a compact automobile being prepared to race in DARPA’s Grand Challenge, an off-road race for autonomous ground vehicles. The design is centered on using a DC permanent magnet, brushed motor and optical encoder feedback to implement a position control system for the steering wheel. Design tools in Matlab are used to model the electro-mechanical system and to optimize the control system parameters, improving the rise time.

INTRODUCTION

The 05106 G-CART Vehicle Controls Senior Design Team provided technical support to their sponsor, the G-CART Club, a student organization at RIT. The club’s goal is to enter the 2005 Grand Challenge hosted by DARPA. The Grand Challenge is a race of fully autonomous ground vehicles navigating a 175 mile, desert terrain course with natural and man-made obstacles. The motivation behind the grand challenge was a congressional and Department of Defense mandate to stimulate R&D for autonomous ground vehicles. The development of autonomous ground vehicles is a major step toward minimizing American

casualties on the battlefield. A $2 million prize is awarded to the team crossing the finish line first and within 10 hours [1].

The most successful team from the 2004 Grand Challenge was Carnegie Mellon’s Red Team. The Red Team’s vehicle, Sandstorm, traveled 7.4 miles before failing to navigate a hairpin turn and getting stuck on a rocky incline [2].

Currently, unmanned ground vehicles are used by the military yet require a remote human operator. The current state-of-the-art in autonomous ground vehicles move very slowly and have difficulty across mild terrain and cannot traverse harsh terrain. For autonomous ground vehicles to be beneficial to the military, they must move quickly over various terrains. The specific technological hurdles include obstacle sensing and avoidance (software) as well as vehicle mobility (off-road capability) [3].

The scope of the Senior Design team’s work is to improve the reliability and performance of the existing steering system on the G-CART Club’s autonomous vehicle. Mechanical modifications will improve reliability while control system tuning will result in better system performance. The quality of the steering system is measured by its ability to quickly, accurately, and repeatedly achieve a steering wheel

© 2005 Rochester Institute of Technology

Proceedings of KGCOE 2005 Multi-Disciplinary Engineering Design Conference Page 2

angle commanded by the vehicle’s central navigation computer.

The G-CART Club is relatively young and does not have much funding. Consequently, the senior design project was very limited financially. Equipment and parts used in the project were collected with this limitation.

NOMENCLATURE

DAQ Data AcquisitionDARPA Defense Advanced Research Projects

AgencyG-CART Grand Challenge Autonomous Race TeamNI National InstrumentsPID Proportional Integral Derivative controlb Viscous friction coefficient F Peformance Index for controllerJm Inertia of the motorK A lumped DC motor constantkd Derivative gainkg Generator constant ki Integral gainkp Proportional gainkt Torque constantQ Weighting factor for errorR Weighting factor for controller effortRm Resistance of the motorr(t) Reference signal input to control systemTa Applied torque from the motorTcf Coulomb frictionu(t) Controller effortVin Voltage applied to motory(t) Output from control system Mechanical time constant of motor Angular velocity RPM Angular velocity measured in RPM

STEERING SYSTEM DESCRIPTION

The platform vehicle used by the G-CART club is a stock 1991 Geo Storm. An AMETEK 116308-02 DC motor provides the mechanical power to the steering system (See fig. 1). The nameplate rating is 20V. Transferring power from the motor to the steering column is an ANSI #25 roller chain (1/4” pitch). The motor shaft and the steering column are fitted with sprockets giving the motor a 5:1 gear ratio. A US Digital E3 series optical encoder was mounted on the motor to provide position and velocity feedback. This encoder has an indexing capability that allows for absolute knowledge of position even if the encoder turns several revolutions. The resolution of the encoder is 1024 cycles/revolution. The motor receives power from an NI MID-7652 servo motor drive capable of delivering 0-48 V and .8-5A continuous.

MECHANICAL MODIFICATIONS

Motor SprocketNI Motion is the software package controlling the position signal sent to the control system. The control system then converts the signal into a voltage which is sent to the steering system motor. A “Trapezoidal move profile” is used by NI-Motion to carry out each change in steering wheel position directed from the navigation computer [4]. The maximum acceleration rate and the maximum steady velocity are set by the user. In practice, when the steering system was commanded to move to a new position it would accelerate, reach constant angular velocity, and decelerate to a stop. Thus, the trapezoidal constraints could limit the response time of the steering system. As the constraints were increased, during testing, it was found that there was slippage between the motor shaft and the motor sprocket. This failure is catastrophic because the encoder is mounted on the motor shaft. Consequently, the feedback information on steering wheel position is incorrect. To remedy this problem, the motor shaft was pinned to the sprocket to insure a secure connection. Further testing, at higher accelerations and velocities did not cause any slippage.

TensionerDuring test trials it was observed that slack in the roller chain caused abrupt impact to steering system components during changes in direction. Additionally, the chain actually came off the sprockets in some trials. This occurrence resulted in total system failure as the connection between the motor and the steering column became nonexistent. The first attempt to fix this problem was the addition of a metal rod which was moved into the chain’s path and screwed into place to provide tension. This solution was effective, however it was feared that the metal on

Paper Number 05106

DC Motor

Optical Encoder

Motor sprocket

Steering sprocket

Figure 1: Solid Model of Steering System

Proceedings of the Winter KGCOE Multi-Disciplinary Engineering Design Conference Page 3

metal contact between the chain and the rod could result in wear and eventual failure of the chain. To alleviate the friction, nylon washers were placed over the rod. This technique is similar to higher priced tensioners that are commercially available.

Steering WheelThe G-CART club requested that a steering wheel be added to the steering system. This addition would allow for manual control of steering which was beneficial in setting up test trials and in moving the car from place to place. The steering wheel used was purchased from the RIT Formula Race Team. A tongue and groove technique (see slotted steering sprocket in Fig. 1 for groove) was used to couple the steering wheel shaft to the steering column.

Safety PlateOne of the greatest concerns during all engineering design projects and machine operation must be safety. The existing steering system used a high powered DC motor and a chain drive. The chain and sprockets were unguarded and the possibility of injury was evident. A 1/8” thick aluminum plate was mounted on the steering system, fully covering the chain drive.

CONTROL SYSTEM TUNING

OverviewThe steering system used a PID control system to achieve the desired operating characteristics. In a PID control system, there are three parameters that must be selected by the designer: kp, ki, kd. With 3 degrees of freedom, there are many possible combinations (theoretically infinite) to choose from. The proportional gain, kp, determines the restoring force which is used to correct positional error. Error is the difference between the actual steering wheel position and the desired steering wheel position. A high value of kp is analogous to a stiff spring forcing the steering wheel to the desired position. The derivative gain, kd, determines the restoring force proportional to the rate of change of the positional error. The effect of kd is analogous to the effect of a shock absorber. The integral gain, ki, affects a component of the restoring force to increase with time. As time progresses, if there is still error in the system, an integration sum increases causing the restoring force to increase in an effort to reduce the error to zero. The contribution of ki also acts to resist external torque loading and hold the steering wheel into the desired position. [5]. It should be remembered that there are no actual springs or shock absorbers in the actual control system. The restoring force is created solely by the DC motor which is experiencing voltages influenced by the PID parameters, kp, kd, and ki.

Care must be taken when assigning control parameters because an unstable situation can certainly occur.

Once a system becomes unstable its behavior is erratic and the control system is rendered useless. For example, if the G-CART’s steering system was unstable the steering wheel could oscillate from full left to full right unpredictably. Any input from the navigation computer would have no effect.

The assignment of control parameters is system dependent. For example, the steering system for G-CART’s autonomous vehicle would, most likely, have different parameters than the steering system for another vehicle. Further, the parameter values selected will affect the steering system’s performance in terms of overshoot, rise time, and other metrics. The process used to tune the control system was to mathematically model the system, match the mathematical model to the physical system, optimize the control parameters in the model, and implement the optimized control parameters in the model. This process is detailed below.

Mathematical Modeling of the System - DC MotorThe motor used in the steering system is an AMETEK 116308-02. Unfortunately, the motor characteristics needed for modeling were unavailable as this motor is now obsolete. Efforts were made to contact the manufacturer and no usable constants were available. To determine these necessary constants for modeling, experiments were conducted. In order to run the experiments, various equipment was needed. An optical encoder was mounted to the motor shaft to measure motor speed, a computer with LabVIEW was used for data acquisition, a multi-meter was used to measure the resistance, Rm, across the motor, and an Instek GPC-3030DQ variable output power supply was used to test the motor under different operating conditions. The following experiments were run with no load on the motor.

1) The first experiment performed was to apply different voltages to the motor and measure motor speed. A plot of speed versus voltage was made and the slope was calculated with the trend line feature in Excel. This slope is denoted, K.

2) The second experiment was conducted to determine kg, the generator constant. The motor shaft was turned by hand while measuring the voltage generated by the motor. This manual process was recorded with the data acquisition computer. The motor speed was calculated from the encoder data and the simultaneously generated voltage was known for each speed. The proportionality between generated voltage and motor speed yields kg.

3) To find the torque constant, k t, a moment arm was fitted to the motor shaft. Known weights were suspended from the moment arm and the current needed to lift these weights was recorded. The motor

Copyright © 2005 by Rochester Institute of Technology

Proceedings of KGCOE 2005 Multi-Disciplinary Engineering Design Conference Page 4

was supplied with enough current to lift the moment arm level to the motor shaft. Therefore, angle measurement was not needed to calculate the applied torque on the motor.

4) All motors are inhibited by friction, which is comprised of a viscous component (velocity dependent) and a Coulomb (or constant) component. The viscous friction coefficient, b, can be calculated from the known values from previous experiments by eq. (1) [6]. To quantify the Coulomb friction, the voltage and current was slowly increased to the motor while the motor was at rest. At a threshold, the motor would break free and begin to spin. By recording this procedure through data acquisition, the current required to break the motor free was found. With the torque constant now known from previous experimentation, the Coulomb friction of the motor was calculated.

(1)

5) The transient response of the motor was needed to calculate , the mechanical time constant. In reality, motors have an electrical and mechanical time constant. In practice, the electrical time constant is often neglected because it is much smaller than the mechanical time constant. Thus, the electrical time constant minimally affects the mathematical model. With the motor at rest, a step voltage input was applied to the motor by plugging into a DC power supply set at a known voltage. The velocity of the motor was recorded by capturing the encoder’s output in LabVIEW. A plot of velocity versus time was generated in Matlab. The first order exponential, shown in eq. (2) was fit to the data using the Solver function in Excel (See fig. 2). The mechanical time constant was taken from the curve fit equation. Trials for step inputs from ranging from 1V to 10V were tested. The time constants from each trial were averaged to arrive at the time constant used during modeling.

(2)

With most of the motor characteristics known, the motor’s inertia, Jm, could also be calculated using eq. (3) [6].

(3)

Mathematical Modeling of the System – with LoadThe steering system was modeled as a DC motor, a load, and a known gear ratio of 5:1 between the motor and the load. Dynamic equations of motion were formulated for this rotational system. The resulting transfer function was then entered into Simulink, the numerical differential equation solver within Matlab.

The steering wheel or load was characterized with a rotational inertia, a viscous friction, and a Coulomb friction. To include the Coulomb friction into the model, a nested for loop structure was used in an accompanying mfile and can be summarized by eq. (4).

Equation (4)

This description of the Coulomb friction insures that it opposes the direction of motion of the steering wheel. Also, when the system is at rest, the Coulomb friction balances with the applied torque from the motor provided that the applied torque is less than the Coulomb Friction.

Assumptions made in the modeling process:1) The shafts connecting the motor and sprocket as well as the load and sprocket were taken as fully rigid (i.e. infinite stiffness). The shafts were relatively short which justified this assumption.2) The real system incorporated a chain and for modeling purposes the chain dynamics were neglected. It was assumed that the chain was mass-less and that there was no slip between the chain and the sprockets. This assumption leads to the conclusion that the kinematics of the motor are proportional to the kinematics of the load by a factor of 5 due to the gear ratio.3) The electrically transient nature of motor caused by inductance was neglected. During previous experiments, the effect of inductance was undetectable.

Matching the model to the Physical System – DAQ

Paper Number 05106

No Load Step Response for the DC motor

0

10

20

30

40

50

60

70

80

90

100

0 0.1 0.2 0.3 0.4 0.5

Time (seconds)

Angu

lar V

eloc

ity (R

PM))

Experimental Data

Curve Fit for 4V trial

Model (based on all trials)

Figure 2: Transient response for DC Motor

Proceedings of the Winter KGCOE Multi-Disciplinary Engineering Design Conference Page 5

With the G-CART at a standstill and the engine running, several sets of data were acquired from the steering system. First, the existing control system was disabled to allow for open loop data collection from the physical steering system. Within the LabVIEW Virtual Instrument (VI) that controlled the steering system, the encoder output was wired to a chart supplying graphical data. More importantly, the encoder output was also wired to an Express VI which saved the data to a file for later use. Express VI’s are pre-programmed tools available in LabVIEW’s newer versions to easily carry out functions such as saving data to a file or time averaging data. All other unnecessary features in the LabVIEW VI controlling the steering system were temporarily disabled to allow for rapid data sampling. Data was sampled at a rate of 200 Hz. During open loop testing, the motor was disconnected from its onboard power. An Instek power supply was used to perform trials at many different voltages. Step voltage inputs were applied to the steering system motor ranging from 6V to 20 V. Both rotational directions were tested. Further, different portions of the steering wheel’s range of motion were tested. For each step input, the system was allowed to reach steady state velocity. The data files collected contained position data from the encoder versus time. To calculate velocity versus time, the backward differencing method was used. With velocity versus time plots in place, the open loop physical steering system data could be compared to the mathematical model.

The next set of experiments on the physical steering system was to determine the overall Coulomb friction of the system. This procedure was similar to the Coulomb friction experiment conducted on the motor with no load. While the steering system was at rest, the voltage from the power supply was slowly increased until the system began to move. This voltage threshold was recorded. The current required to break the system free was calculated using Ohm’s law and the known resistance of the motor. With the motor’s kt also known, the coulomb friction was calculated.

Lastly, the original control system was enabled, allowing closed-loop response of the steering system. With the control system consuming additional computational power the data sampling rate was decreased to 20Hz. Tests were performed to provide benchmarking for control system tuning.

Matching the Model to the Physical System – Model AdjustmentUsing Matlab, the velocity versus time plots from the physical system and from the mathematical model were overlaid on the same graph. The initial approximations for inertias and frictions came from previous experiments. The first observation was that

the steady state velocity of the model was slower than that of the physical system. The viscous frictions in the model were reduced until a suitable match was found. Next, it was evident that the physical system accelerated faster than the model. Hence, the inertias in the model were reduced. An effort was made to adjust the model for the many experimental trials performed on the physical systems. For example, the model settings at a 6V test may match the physical system very well, but the same settings at a 20 V test may not be as good. See fig. 3 for a sample overlay for the model and the physical system.

Optimization of Control ParametersWith a suitable model in place, control parameter selection could proceed. A PID control system was added to the model (See fig. 4).

A performance index function, eq. (5), was adopted to compare different control parameters.

Copyright © 2005 by Rochester Institute of Technology

Figure 4: Schematic for PID Control

Time (s) 0 1.0

100

Figure 3: Model and Physical System Overlay

(RPM)

Proceedings of KGCOE 2005 Multi-Disciplinary Engineering Design Conference Page 6

(5)

The performance index sums a weighted function of the error and the controller effort over time. Error is the difference between the reference input and the output at a given time. Controller effort is the voltage coming from the controller and applied to the motor. The ‘fminsearch’ function in Matlab was used to minimize the performance index by changing the control parameters, kp, ki, and kd. The weights in the performance index, Q and R, were selected based on a reasonable effort from the controller. For example, if the controller effort resulting from the optimization was too high, then R would have to be decreased. According to the specification sheet received from the manufacturer, the maximum voltage applied to the motor should be no more than 30V. Hence, the controller effort should not exceed 30V.

Implementation of Optimized Control Parameters in the Model.With the new control parameters, the model was tested and compared to the benchmark data from the physical system (see fig. 5)

The newly tuned control system indicates a 10% improvement compared with the original control

system in terms of the rise time. The rise time is defined as the time it takes for the system to go from 10% to 90% of the target or reference position.

CONCLUSION

Many engineering tools were drawn upon to enhance the steering control system for G-CART’s autonomous ground vehicle. Additionally, several experiments were conducted. Improvements were made to the steering system’s ease of testing, mechanical reliability, safety, and control system performance.

AKNOWLEDGEMENTS

The G-CART Vehicle Control Senior Design Team would like to thank the members of G-CART for providing an ambitious and interesting design challenge. Special thanks are extended to Mark Baybutt and Chris Armenio, members of G-CART’s executive board, for their extra contributions in terms of time and technical support. We would also like to thank our mentor, Dr. Crassidis, for all of his technical guidance and our coordinator, Dr. Nye, for his direction from week to week.

REFERENCES[1] DARPA Grand Challenge ’05 Overview. http://www.darpa.mil/grandchallenge/overview.html

[2] Carnegie Mellon Red Team Robot Racing. http://www.redteamracing.org/index.cfm?method=page.display&page=challenges.gc04

[3] DARPA Grand Challenge 2004 Media Archive. http://www.darpa.mil/grandchallenge04/media_faq.htm#3

[4] NI-Motion User Manual. National Instruments Corporation, 2003.

[5] NI-MAX help Documentation National Instruments Corporation, 2004.

[6] Franklin, G. F., Powell, J. D., and Emami-Naeini, A., 2002, Feedback Control of Dynamic Systems, 4th

Ed., Prentice Hall, Upper Saddle River, NJ, Chap. 2.

Paper Number 05106

Rise time for optimized model = .96 sec

-1.4

-1.2

-1

-0.8

-0.6

-0.4

-0.2

00 0.5 1 1.5 2 2.5 3

Time (sec)

Stee

ring

Whe

el P

ositi

on (R

ev)

.

Rise time for Benchmark data = 1.06 sec

Figure 5: Optimized model comparison to original system