EXTRACTION OF HIGH RESOLUTION POSITION INFORMATION FROM SINUSOIDAL ENCODERS

Similar documents
DIGITAL-TO-ANALOGUE AND ANALOGUE-TO-DIGITAL CONVERSION

DAC Digital To Analog Converter

Section 3. Sensor to ADC Design Example

Series: IDAM Servo Drive E Digital Motor Drive - DMD

EE 402 RECITATION #13 REPORT

Department of Electrical and Computer Engineering Ben-Gurion University of the Negev. LAB 1 - Introduction to USRP

DS1104 R&D Controller Board

Abstract. Cycle Domain Simulator for Phase-Locked Loops

Computer Networks and Internets, 5e Chapter 6 Information Sources and Signals. Introduction

Digital Signal Controller Based Automatic Transfer Switch

Optical Encoders. K. Craig 1. Actuators & Sensors in Mechatronics. Optical Encoders

Active Vibration Isolation of an Unbalanced Machine Spindle

Timing Errors and Jitter

Interfacing Analog to Digital Data Converters

6.025J Medical Device Design Lecture 3: Analog-to-Digital Conversion Prof. Joel L. Dawson

Introduction to Digital Audio

RF Measurements Using a Modular Digitizer

PCM Encoding and Decoding:

Accurate Measurement of the Mains Electricity Frequency

AVR127: Understanding ADC Parameters. Introduction. Features. Atmel 8-bit and 32-bit Microcontrollers APPLICATION NOTE

Positive Feedback and Oscillators

Android based Alcohol detection system using Bluetooth technology

A 5 Degree Feedback Control Robotic Arm (Haptic Arm)

ECONseries Low Cost USB DAQ

(Refer Slide Time: 00:01:16 min)

Implementation of Digital Signal Processing: Some Background on GFSK Modulation

Digital to Analog Converter. Raghu Tumati

Switch Mode Power Supply Topologies

ServoOne. Specification. Option 2 - Technology. x 11. x 8 X 8. x 10. x 9. x 7. x 6 TTL Encoder / TTL Encoder simulation

Acoustic Processor of the MCM Sonar

DDS. 16-bit Direct Digital Synthesizer / Periodic waveform generator Rev Key Design Features. Block Diagram. Generic Parameters.

Optimizing VCO PLL Evaluations & PLL Synthesizer Designs

Variable Resolution, 10-Bit to 16-Bit R/D Converter with Reference Oscillator AD2S1210-EP

FREQUENCY RESPONSE ANALYZERS

dspace DSP DS-1104 based State Observer Design for Position Control of DC Servo Motor

INSTRUMENTATION AND CONTROL TUTORIAL 3 SIGNAL PROCESSORS AND RECEIVERS

An overview of Computerised Numeric Control (C.N.C.) and Programmable Logic Control (P.L.C.) in machine automation

PROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 TUTORIAL OUTCOME 2 Part 1

Counters and Decoders

Timer A (0 and 1) and PWM EE3376

Micro-Step Driving for Stepper Motors: A Case Study

Synchronization of sampling in distributed signal processing systems

56F80x Resolver Driver and Hardware Interface. 1. Introduction. 2. Features of Freescale s Digital. Contents. Signal Controllers (DSCs)

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill

ANALYZER BASICS WHAT IS AN FFT SPECTRUM ANALYZER? 2-1

USB 3.0 CDR Model White Paper Revision 0.5

Op-Amp Simulation EE/CS 5720/6720. Read Chapter 5 in Johns & Martin before you begin this assignment.

Non-Data Aided Carrier Offset Compensation for SDR Implementation

Voice---is analog in character and moves in the form of waves. 3-important wave-characteristics:

Lab 5 Getting started with analog-digital conversion

Sampling Theorem Notes. Recall: That a time sampled signal is like taking a snap shot or picture of signal periodically.

Note monitors controlled by analog signals CRT monitors are controlled by analog voltage. i. e. the level of analog signal delivered through the

The Effective Number of Bits (ENOB) of my R&S Digital Oscilloscope Technical Paper

LEVERAGING FPGA AND CPLD DIGITAL LOGIC TO IMPLEMENT ANALOG TO DIGITAL CONVERTERS

PCI/PC Bus Operation ACR8020. ACR8020 Exclusives. ACR8020 (1- to 8-Axes) Ordering. 11 Parker Hannifin Corporation. Catalog 8180/USA Motion Controllers

Lock - in Amplifier and Applications

Open vs. Closed Encoder Communication Protocols: How to Choose the Right Protocol For Your Application

Outline Servo Control

Analog Representations of Sound

Chapter 2 Basic Structure of Computers. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

MICROPROCESSOR AND MICROCOMPUTER BASICS

MP3 Player CSEE 4840 SPRING 2010 PROJECT DESIGN.

Using angular speed measurement with Hall effect sensors to observe grinding operation with flexible robot.

Loop Bandwidth and Clock Data Recovery (CDR) in Oscilloscope Measurements. Application Note

Speed Control Methods of Various Types of Speed Control Motors. Kazuya SHIRAHATA

Chapter 4 Register Transfer and Microoperations. Section 4.1 Register Transfer Language

Application Report. 1 Introduction. 2 Resolution of an A-D Converter. 2.1 Signal-to-Noise Ratio (SNR) Harman Grewal... ABSTRACT

Hideo Okawara s Mixed Signal Lecture Series. DSP-Based Testing Fundamentals 46 Per-pin Signal Generator

Pulse Width Modulated (PWM) Drives. AC Drives Using PWM Techniques

Clock Recovery in Serial-Data Systems Ransom Stephens, Ph.D.

b 1 is the most significant bit (MSB) The MSB is the bit that has the most (largest) influence on the analog output

Pulse Width Modulation

Digital to Analog and Analog to Digital Conversion

X8 Option 2 - Technology

Spike-Based Sensing and Processing: What are spikes good for? John G. Harris Electrical and Computer Engineering Dept

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC Microprocessor & Microcontroller Year/Sem : II/IV

How to Turn an AC Induction Motor Into a DC Motor (A Matter of Perspective) Steve Bowling Application Segments Engineer Microchip Technology, Inc.

Pulse Width Modulation Applications

Atmel Norway XMEGA Introduction

Higher National Unit Specification. General information for centres. Transmission of Measurement Signals. Unit code: DX4T 35

LMS is a simple but powerful algorithm and can be implemented to take advantage of the Lattice FPGA architecture.

MECE 102 Mechatronics Engineering Orientation

Technical definitions of A to Z

EnDat 2.2 Bidirectional Interface for Position Encoders

EDUMECH Mechatronic Instructional Systems. Ball on Beam System

Analog/Digital Conversion. Analog Signals. Digital Signals. Analog vs. Digital. Interfacing a microprocessor-based system to the real world.

Analog and Digital Signals, Time and Frequency Representation of Signals

Wireless Communication and RF System Design Using MATLAB and Simulink Giorgia Zucchelli Technical Marketing RF & Mixed-Signal

Data Analysis Software

Create Colorful and Bright LED Light with an LED Matrix Dimmer

A Master-Slave DSP Board for Digital Control

71M6521 Energy Meter IC. Real Time Clock Compensation. The Challenge. The RTC in the 71M6521D/F. Theory of Operation APPLICATION NOTE

AFG-100/200 series USB Modular Arbitrary Function Generator. Date: Oct, 2014

PLL frequency synthesizer

Broadband Networks. Prof. Dr. Abhay Karandikar. Electrical Engineering Department. Indian Institute of Technology, Bombay. Lecture - 29.

High speed infrared camera for contactless temperature measurement on rotating tires

Pulse Width Modulated (PWM)

Extended Resolution TOA Measurement in an IFM Receiver

Transcription:

EXTRACTION OF HIGH RESOLUTION POSITION INFORMATION FROM SINUSOIDAL ENCODERS J. Burke, J. F. Moynihan, K. Unterkofler Abstract Precision motion control in industrial automation systems is placing increasing demands on the position feedback mechanisms used in the constituent servo drives of these systems. Traditional position transducer solutions based on resolvers or incremental encoders are increasingly being replaced by sinusoidal encoders that offer much higher position and speed resolution. The hardware or software techniques used to interface to the sinusoidal encoders can have a measurable impact on the achieved position resolution and accuracy. This paper compares the achievable performance levels with different interface techniques. All techniques are implemented on a common hardware platform. Each method is fully described and comparisons and tradeoffs are made in terms of computational burden, achievable position bandwidth, the resolution of both the speed and position achievable as well as the sensitivity of each method to common transducer offsets, gain, and phase errors. In order to extract reliable position and speed information from the sinusoidal encoder signals, a certain amount of preconditioning of the analog signals must be implemented. As a first stage, the differential SIN and COS signals (typically 1V pp input signal range) from the sinusoidal encoder must be applied to input differential amplifiers. This ensures maximum noise immunity and may also be used to appropriately amplify and level shift the resultant singleended SIN and COS signals for later input to the Analog to Digital Converter (ADC) stage. Next, the SIN and COS signals of Figure 1 are applied to comparators that generate squarewave TTLlevel signals (EIA & EIB) that are synchronized to the SIN and COS signals respectively. The relationship between the SIN, COS, EIA and EIB signals is illustrated in Figure. COS SIN Fundamental Operation of Sinusoidal Encoders Sinusoidal encoders encode position information by providing a pair of quadrature sine and cosine signals as the shaft is rotated. The signals may be generated by optical or magnetic means and typically produce 51 or 14 cycles per mechanical revolution. For noise immunity the signals are typically transmitted differentially from the encoder to the sensor interface electronics. A typical interface configuration is shown in Figure 1. EIA EIB EIUCNT π θelec N N1 N N3 N4 N5 N6 N7 Differential Encoder Line Receiver Comparators EIA SIN EIB COS Midpoint SaH Vsin ADC Vcos ADMC41 DSP Core EIU Figure 1: Typical Sinusoidal Encoder Interface Figure : Signals Produced by the Sinusoidal Interface The analog SIN and COS signals are also fed to dual sample and hold amplifiers (SHA) for subsequent conversion to digital and postprocessing in the digital signal processor (DSP). The signals EIA and EIB are typically applied to the internal quadrature counter of a dedicated digital Encoder Interface Unit (EIU) as illustrated in Figure 1. The resultant parallel word in the quadrature counter provides the crude position estimate from the sinusoidal encoder. There

are four counts per cycle of the sinusoidal waveforms (SIN and COS) as seen in Figure, so that for a 51 line encoder the maximum count value is 47 (4*511) which provides 11 bits of crude position information. In the case of a 14 line encoder the maximum count 495 which provides 1 bits of resolution. In the case where the EIB signal leads the EIA signal, the encoder is determined to be rotating in the reverse direction and the quadrature count value (EIUCNT) is decremented at each edge of the EIA and EIB signals, as seen in Figure. Naturally, when EIA leads EIB, the quadrature count value is incremented at each event. Fine position resolution is obtained by further processing the digitized SIN and COS signals to provide much finer granularity between the EIA and EIB events, as illustrated by the lower waveform(θ elec ) of Figure. The particular techniques used to extract this fine position resolution are the main subject of this paper. In some applications, it is necessary to know the initial position of the rotor following power up. There are different techniques used to obtain this information depending on the particular encoder design. Some encoder designs provide an alternative pair of sine and cosine signals that provide one cycle per mechanical revolution, from which it is possible to derive an initial position estimate. Alternatively, some modern sinusoidal encoders now provide a dedicated serial interface that can be used to extract the initial position following power up [1]. The particular method used to extract the initial position and the alignment of this value to the computed position value during normal operation is beyond the scope of this paper. During normal operation, the complete position information must be constructed from both the crude and fine position information. The crude information contains the cycle identification information, which, depending on the encoder used, can be 11 or 1 bits. The fine information is the result of the calculation from the sinusoidal signals. With high resolution analogue to digital conversion of 1 bits on the SIN and COS, position information to 3/4 bit can be achieved. Since the crude position information is a quadrature value the least significant bits (LSB) of the first segment should be the same as the most significant bits (MSB) of the fine data and so are not needed and so only the 9 MSBs, in the case of a 51 line encoder are used. In the case of a 14 line encoder the first 1 bits are used. The construction of the final position data is illustrated in Figure 3 for a 51line encoder. N1 Crude Position Data from EIU 1 N N1 N Overlap Bits Fine Position Data from SIN/COS Signals 15 4 Figure 3: Construction of Total Position Information from Sinusoidal Encoder. DSP Requirements The minimum requirements for a hardware platform to implement the various methods below are: 1) A fast, high performance DSP core. ) Simultaneous sampling multichannel Analog to Digital Converter. 3) Encoder Interface Unit. 4) Serial Communication Port. EXTERNAL ADDRESS BUS EXTERNAL DATA BUS 6 MIPS DSP Core Data Address Generators Program Sequencer DAG1 DAG PROGRAM MEMORY ADDRESS DATA MEMORY ADDRESS PROGRAM MEMORY DATA DATA MEMORY DATA Arithmetic Units ALU MAC SHIFTER PM ROM k x 4 PM RAM k x 4 SERIAL PORTS SPORT SPORT1 MEMORY DM RAM 1k x 16 Interval Timer COS SIN Watchdog Timer Channel Auxiliary PWM Power On Reset 8 Channel 1bit ADC Interrupt Controller Encoder Interface Precision Voltage Reference Figure 4: Block diagram for the ADMC41 Event Capture Unit 16bit PWM Generation The DSP chosen to implement both algorithms is the ADMC41 from Analog Devices, which includes a 6 MIPS, 16bit fixed point DSP core[]. The DSP provides a combination of efficient processing units such as hardware multiply and accumulator (MAC) and arithmetic logic unit (ALU) and shifter. The DSP core uses a modified Harvard architecture so that program and data memory have separate address and data buses permitting highly efficient and parallel memory accesses. A block diagram of the ADMC41 is shown in Figure 4. Digital I/O Unit

The core of the ADC system is a single highperformance 1bit analog to digital converter that uses a pipeline flash conversion technique to achieve very fast conversions. The ADC system provides 8 analog inputs arranged in two banks of four channels, each of which is provided with a dedicated sample and hold amplifier. This structure permits four pairs of input signals to be sampled simultaneously. The conversion time for all 8 analog inputs is under µs at a DSP clock rate of 6 MHz and conversion may be initiated for either an internal source synchronized to the PWM generation or from an external source. The core of the encoder interface unit is a 16bit quadrature up down counter that converts the A and B quadrature signals from the encoder into a parallel word. This word can be read by the DSP as part of the motor control algorithm for motor current commutation, speed estimation and/or position control. The encoder interface unit of the ADMC41 also provides a programmable input filter stage that permits encoder pulses less than some minimum value to be filtered and rejected. With this feature, spurious noise pulses do not adversely affect the operation of the quadrature counter. The encoder interface unit permits input A and B quadrature signals with rates of up to 4.3 MHz corresponding to a maximum quadrature rate of 17. MHz. The ADMC41 provides two independent serial communication ports that can be used to interface with sophisticated sinusoidal encoders such as the Stegmann Hiperface[1]. The additional serial port can be used to transmit the computed position information to another processor or host. Alternatively the ADMC41 may address shared external memory so that data can be accessed by another processor or host. Methods for Extracting Fine Position Information Method 1: Direct Arctangent Computation In the first method the fine position data is computed directly from the digitized SIN and COS signals. The DSP implements the calculation as: 1 V θ fine = tan V sin cos (1) where V sin and V cos are the digital representations of the simultaneously sampled SIN and COS waveforms from the encoder at the particular sampling instant. The arctangent is approximated in the DSP calculation by a fifth order Taylor series expansion below: tan 1 ( α ) =.31853α.3314α.6854α 4.9159α 5.1398α 3 () Using a Matlab simulation, values for V sin and V cos (quantized at the 1bit level ) were generated and transmitted to the DSP. These values were then used as the source to compute the divide and arctangent functions of (1), using standard, 16bit, fixedpoint arithmetic. The result of the computation was then fed back to Matlab. The difference between the high precision Matlab generated position and the estimate computed by the ADMC41 using (1) is plotted over 1 electrical cycle in Figure 5. Position Error (deg).15.1.5..5.1.15 5 1 15 5 3 35 Position (deg) Figure 5: Quantization Error in Position over Electrical Cycle. As seen from Figure 5, the resultant error in the computation is always less than or equal to.1 degrees per electrical revolution. In addition, for an encoder that offers 51 electrical cycles per mechanical revolution, the 9 MSBs of position information come from the cycle information as 9 =51, the number of lines in the encoder. This means that the error occurring in Figure 5 due to the finite quantization levels and calculation inaccuracies of the DSP is at the 15 th bit position of the computed 16bit fine position value. This implies that the fundamental limit on the 16bit fixed point DSP calculation used in this method is located at the 4 th bit in position (for a 51line encoder). In other words, the maximum achievable resolution from such a solution is given by 4 * 36 * 6 * 6 =.77 arcsec.

This analysis does not take into account position accuracy errors due to the expected imperfections in the physical system due to offset or gain errors in the sine and cosine channels from the encoder or in the analog signal processing circuits prior to the ADC. Additional errors are also introduced by phaseimbalance in the encoder such that the sine and cosine waveforms are no longer in perfect quadrature. The advantage of the arctangent method is that it allows position information to be requested at any time, as long as the time for consecutive requests is greater than the time taken to run the necessary DSP calculations. This means that if requests are time stamped, which is possible with the ADMC41, the speed of the motor can than be accurately calculated. Using a test rig, a Sinusoidal Encoder was mounted on a very highresolution turntable. The table was rotated slowly such that the position change was 1 electrical degree (of the sine and cosine waveforms) in 1µs. This corresponds to a shaft speed of approximately 3.5rpm for a 51line encoder. The position was read from both the ADMC41 and the table counter and the difference is plotted in Figure 6. error [ ] Error within one electrical period [ ].3..1.1 9 18 7 36..3.4 angle [ ] error [ ] Figure 6: A graph of the error over one electrical revolution. derived using (1). Only the 16 MSB s of the resultant position value are plotted for clarity. Presently, the execution time for this arctangent method is 6.57µs using the ADMC41 DSP. At a motor speed of 6rpm, a 51line sinusoidal encoder will produce sinusoidal outputs at 51.kHz. At this speed the encoder signals have a period of 19.5µs which allows for just 3 samples per period. The length of time between consecutive samples compared to the period of one electrical cycle would possibly make feedback digital filtering of this position information less accurate because aliasing could occur. It is likely that motor noise could be significant, and this could present a problem with using this method. A possible solution is to shield the motor, which could reduce the noise. Alternatively, finding software solutions that could incorporate digital filtering as an inherent part of the process of extracting position information is one reason for considering another method. Method Tracking and Filtering Loop The second method of extracting precise position information from the sinusoidal encoder is similar to that used in existing hardware solutions for extracting position from resolvers using standard Resolver to Digital Converters (RDC) [3]. The solution here involves forming a closed loop tracking system that forces the estimate of the rotor position (ϕ) to converge to the actual position (θ). The error is formed by a heterodyning, crossmultiplication process to form the signal: E = sin = sin θ ϕ, ( θ ) cos( ϕ) cos( θ ) sin( ϕ) ( θ ϕ) for small θ ϕ (3) V Sin SHA X E(s) * d ω ϕ(s) V Cos SHA X ω 1 S 1 S Figure 7: Plot of position for an encoder rotated at constant speed. Encoder Sin(ϕ) Cos(ϕ) Figure 7 shows the derived rotor position information from a 51line encoder over 1 complete mechanical revolution. The complete position data is the combination of the crude position information (11 bits) from the EIU and the fine position information Hardware Software Figure 8 : Block diagram of the Tracking and Filtering Loop

This process is illustrated graphically in Figure 8. As with any closed loop system the aim is to force the error to zero. The benefit of this method is that digital filtering, which consists of a PI controller in series with an integrator, is built into the feedback loop. This method tracks the position and periodically updates a position counter. In the continuous domain, the forward path of the system may be expressed as: G(s) ϕ (s) = E(s) = 1 * d 1 [ ω ]* * s ω s (4) Using the Zero Order Hold (ZOH) approximation to translate the transfer function (4) to the discrete domain, G(z) becomes: ω * TS (z 1) (*d* ω * TS ) G(z) * (z 1) (Z 1) (5) As can be seen in equation (5) the three main parameters are ω, d and T s, where ω is the natural frequency of the filter, d the Damping Ratio and T s is the Sample Time. Due to the ZOH approximation, equation (4) becomes: The following is a summary of some of the results of the tests using the ADMC41 to implement the closed loop tracking of (7) and the cross multiplication of (3). Figure 9 shows the transient response in tracking a step change of 45 electrical degrees. As in the previous method Matlab was used to generate two values V Sin and V Cos which were used as a starting point for the algorithm. The result of the calculation was then sent back to Matlab. [Step] is the step change, [DSP Pos.] is the DSP estimated position. Position(Radians).9.6.3. Tracking Responce to a 45 electrical degree step change 1 3 4 5 6 7 8 9 Time (µs) Figure 9: Plot of DSP and Simulation position against a step change. Step DSP Pos. ( z) G( z) = ϕ 1 Z E( z) Combining equations (5) and (6) results in: (6) The position error is also plotted in Figure 1, so that the tacking error can be seen more clearly..8.7 Plot of the difference between step change and the DSP estimated position ϕ where K 1 = A* EK B* EK 1 * K K 1 ϕ ω T A * = * d * ω * TS ω * T S B = * d * ω * TS ϕ (7) (8) To improve the resolution and speed of convergence the algorithm was implemented in 3bit arithmetic. These 3 bits of fine position information combined with the 9 bits of cycles information from a 51 line encoder results in 41 bits of position information over one complete mechanical cycle of which only the 3 MSB s are stored for use by subsequent algorithms. Error(Radians).6.5.4.3..1..1. 1 3 4 5 6 7 8 9 Time (µs) Figure 1: Plot of the tracking error for a 45 step change. Figure 11 illustrates the transient response of the position error, E, when the speed of rotation is 1 rpm. In this case the rotor position is ramping linearly and Figure 11 shows the initial error in the rotor position estimate due to the finite tracking performance of the proposed method. It can also be

seen that the tracking loop reduces the steady state estimation error to zero in about 7µs. Error(Radians).3.5..15.1.5. Plot of the difference between Real Positon and Estimated Position. 1.. 3. 4. 5. 6. 7. 8. 9. Time (µs) Figure 11: Error in tracking a ramp at 1 rpm. The maximum number of DSP cycles executed in implementing this tracking is 111. This is equivalent to 4.69µs and so T s was chosen to be 4.5µs. Using the sampling theorem as a starting point, ω Max is approximately 7krad/s. For a 51line encoder, this gives a theoretical limit of the mechanical speed of approximately 1rpm. For the test showed above, the bandwidth ω of the filter was set to 1krad/s. The Damping Ratio (d) was set to.9. With these values, there is no need of scaling of the coefficients of equation (8). This method can produce very high position resolutions once the motor speed is kept inside the bandwidth of the filter. As with all such closedloop tracking systems, it is possible to tradeoff the mutually exclusive characteristics of resolution and position bandwidth by adjusting the filter coefficients in the feedback loop. Using the above parameters the motor could be tracked to a speed of 11rpm, which is in accordance with the theoretical limit stated above. Unlike the arctangent method, this method requires a settling time, during which the position estimation may not be exact and incur some error as in Figure 11. However the obvious benefit for a second order tracking loop is zero steady state error (at least to within the quantization noise levels in the DSP implementation). Sensitivity to System Offsets and Signal Gains Test were also carried out in regards to the effects of system offsets and mismatched gains on the final result. Due to the cross multiplication approach the effect of mismatched gains and offsets is greatly reduced. The final algorithm will incorporate amplitude scaling and offset compensation to fully eliminate these effects. Conclusions At a speed of 1rpm, a 51line encoder will have swept out an angle of 1.65888 electrical degrees in the 4.5µs computation time, making the 3 bits of position information relatively useless for position estimation for an outside controller. Thus, it makes sense to say that such high resolution is really only required at low speeds, and for the most part the encoder will be at rest in order to determine exact position information. Given this, both methods have their advantages. The tracking loop requires less DSP cycles and results in higher resolution than the arctangent method. However the arctangent method has zero settling time. The greatest considerations in choosing a method would be the maximum speed the encoder is allowed to travel at and the required resolution of the position estimation. References: [1] SRS5, Motor Feedback System for Servomotors SinCos SRS 5 with HIPERFACE by STEGMANN. [] ADMC41, SingleChip, DSPBased, High Performance, Motor Controller, Analog Devices Inc., 1999. [3] ADS81A/ADS8A, Variable Resolution Monolithic Resolver to Digital Converter, Analog Devices Inc., 1998. Acknowledgements: The authors of this paper would like to thank Ulrich Armbruster, Andrew Monnin and Bernd Appel of Stegmann Inc. for all their input.