Micro Passo

12
2004 Microchip Technology Inc. DS00906B-page 1 AN906 INTRODUCTION This application note describes how to drive a bipolar stepping motor with the PIC16F684. The Enhanced Capture Compare PWM (ECCP) module is used to implement a microstepping technique known as high- torque microstepping. The microcontroller’s 8 MHz internal oscillator allows the signals generated by the ECCP module to achieve frequencies above the audible range. MICROSTEPPING Single stepping, or turning a stepping motor at its rated step size, results in less than smooth movement. Microstepping is a technique used to smooth the motor’s movement between full steps and to improve the step resolution of the motor. Microstepping also improves the efficiency of the system, because the current in the windings of the motor is manipulated in a controlled manner rather than being turned on and off abruptly. A microstepping technique known as high torque microstepping alternately varies the current in the two windings of a stepping motor. Figure 1 shows a graph of the current in the windings vs. angular position using this technique. FIGURE 1: HIGH TORQUE MICROSTEPPING A brief description of what is happening is that one winding is powered while the current in the other wind- ing is gradually dropped to zero, reversed, and then ramped up again. This sequence is then repeated for the other winding. Note that the transition between a winding being energized in one direction and then energized in the other direction has a sinusoidal shape (refer to Figure 1). This shape gives the smoothest transition between the motor’s rated step increments (i.e., 7.5 degrees). The way this shape is achieved using a microcontroller is through the use of pulse- width modulation. Modulating the input to the drive circuitry for a particular winding will result in a current that is proportional to the duty cycle of the modulated waveform. For instance, if a 5V stepping motor is rated at 1 amp, then modulating a 5V supply across the winding at 50% will result in a current of 1/2 amp (assuming a low inductance motor). Equation 1 shows this relationship: EQUATION 1: where IMAX is the rated current of the motor and D is the duty cycle. Note: Please refer to AN907: Stepping Motor Fundamentals for information on the types of stepper motors, microstepping and current limiting techniques. Author: Reston Condit Microchip Technology Inc. +3S +6S +9S Angular Position (S = rated step size) Current 1st Winding 2nd Winding I = D× IMAX Stepper Motor Control Using the PIC16F684

Transcript of Micro Passo

Page 1: Micro Passo

AN906Stepper Motor Control Using the PIC16F684

INTRODUCTION

This application note describes how to drive a bipolarstepping motor with the PIC16F684. The EnhancedCapture Compare PWM (ECCP) module is used toimplement a microstepping technique known as high-torque microstepping. The microcontroller’s 8 MHzinternal oscillator allows the signals generated by theECCP module to achieve frequencies above theaudible range.

MICROSTEPPING

Single stepping, or turning a stepping motor at its ratedstep size, results in less than smooth movement.Microstepping is a technique used to smooth themotor’s movement between full steps and to improvethe step resolution of the motor. Microstepping alsoimproves the efficiency of the system, because thecurrent in the windings of the motor is manipulated in acontrolled manner rather than being turned on and offabruptly.

A microstepping technique known as high torquemicrostepping alternately varies the current in the twowindings of a stepping motor. Figure 1 shows a graphof the current in the windings vs. angular position usingthis technique.

FIGURE 1: HIGH TORQUE MICROSTEPPING

A brief description of what is happening is that onewinding is powered while the current in the other wind-ing is gradually dropped to zero, reversed, and thenramped up again. This sequence is then repeated forthe other winding. Note that the transition between awinding being energized in one direction and thenenergized in the other direction has a sinusoidal shape(refer to Figure 1). This shape gives the smoothesttransition between the motor’s rated step increments(i.e., 7.5 degrees). The way this shape is achievedusing a microcontroller is through the use of pulse-width modulation. Modulating the input to the drivecircuitry for a particular winding will result in a currentthat is proportional to the duty cycle of the modulatedwaveform.

For instance, if a 5V stepping motor is rated at 1 amp,then modulating a 5V supply across the winding at 50%will result in a current of 1/2 amp (assuming a lowinductance motor). Equation 1 shows this relationship:

EQUATION 1:

where IMAX is the rated current of the motor and D is theduty cycle.

Note: Please refer to AN907: Stepping MotorFundamentals for information on the typesof stepper motors, microstepping andcurrent limiting techniques.

Author: Reston ConditMicrochip Technology Inc.

+3S +6S +9S

Angular Position (S = rated step size)

Cu

rren

t

1st Winding

2nd Winding

I = D× IMAX

2004 Microchip Technology Inc. DS00906B-page 1

Page 2: Micro Passo

AN906

In order to achieve the sinusoidal transition from apositive to negative charge in a winding, numerousmicrosteps are needed. The number of microstepstypically ranges from 4 to 32 microsteps per rated stepsize. Rather than calculating the duty cycle for a partic-ular microstep on the fly, a duty cycle look-up table isimplemented in firmware. The number of table valuesis equal to the number of steps desired for a particularmicrostepping sequence. Equation 2 is used to obtainthe duty cycle values for the top half of the table. Thesecond half of the table is simply the top half in reverseorder.

EQUATION 2:

Using Equation 2, the following duty cycle values werecalculated for a 16 microsteps per full step sequenceusing an 8-bit resolution PWM waveform:

TABLE 1: DUTY CYCLE VALUES FOR MICROSTEPPING

PWM Generation Using the ECCP Module

The ECCP module on the PIC16F684 is well suited forgenerating the PWM signal required for microstepping.The module is capable of generating a 10-bit resolutionPWM waveform at frequencies ranging up to 7.81 kHzusing the microcontroller’s 8 MHz internal oscillator.Higher frequencies are more practical in motor controlapplications because a motor will typically produce unde-sirable audible noise at frequencies less than 16 kHz.Only 8-bit resolution is needed for this application, whichmeans frequencies up to 31.2 kHz can be achieved withthe ECCP module.

The ECCP module has four modes of operation:

1) Single Output

2) Half-bridge Output

3) Full-bridge Forward Output

4) Full-bridge Reverse Output

In Half-bridge mode, the module modulates two pinssimultaneously, pins P1A and P1B. For this application,these two outputs are used to drive the two windings ofa stepping motor. Only one pin is set active at a time.Enabling and disabling one pin or the other is done bymodifying the TRISC register. The following circuitdiagram shows how these pins are connected to abipolar drive circuit.

Step Number

DStep

NumberD

1 251 9 24

2 238 10 70

3 217 11 114

4 188 12 154

5 154 13 188

6 114 14 217

7 70 15 238

8 24 16 251

D(step number) = cos((step number×π)/((number of steps)+1)) × ((2^bits resolution)-1)

DS00906B-page 2 2004 Microchip Technology Inc.

Page 3: Micro Passo

AN906

FIGURE 2: BIPOLAR DRIVE CIRCUIT

VSUPPLY

VSUPPLY

CTRLA2

P1A

CTRLA1Winding 1

R1

10K

VSUPPLY

VSUPPLY

Winding 2P1B

CTRLB1 CTRLB2

2004 Microchip Technology Inc. DS00906B-page 3

Page 4: Micro Passo

AN906

Note the pull-up resistor on pins P1A and P1B. Theseresistors clamp the respective line high when the pin istristated. It is important that the non-modulated line beclamped high so that the NAND gates on either end ofthe winding can turn on the adjacent MOSFET whenthe respective control line is enabled.

The ECCP module is set up so that the waveforms onpins P1A and P1B are identical. This is done by config-uring the CCP1CON register so that P1A is active highand P1B is active low. With no dead band delay, thesepins will behave identically. Configuring the module inthis way enables each winding control block to use thesame duty cycle look-up table values for it’s transitionsequence. The following table shows all eight windingstates.

TABLE 2: WINDING STATES

* Pin is tristated and the pull-up resistor is clamping the line high.

In states 0, 2, 4 and 6, the first half of the duty cycle sinelook-up table (decreasing values) is referenced. Instates 1, 3, 5 and 7, the second half of the duty cyclesine look-up table (increasing values) is referenced.

STATE 0 1 2 3 4 5 6 7

Winding 1 Polarity

+ to 0 0 to - - - - to 0 0 to + + +

Winding 2 Polarity

+ + + to 0 0 to - - - - to 0 0 to +

P1A Duty Cycle 100% to 0 0 to 100% 100%* 100%* 100% to 0 0 to 100% 100%* 100%*

P1B Duty Cycle 100%* 100%* 100% to 0 0 to 100% 100%* 100%* 100% to 0 0 to 100%

TRISC, P1A 0 0 1 1 0 0 1 1

TRISC, P1B 1 1 0 0 1 1 0 0

CTRLA1 1 0 0 0 0 1 1 1

CTRLA2 0 1 1 1 1 0 0 0

CTRLB1 1 1 1 0 0 0 0 1

CTRLB2 0 0 0 1 1 1 1 0

DS00906B-page 4 2004 Microchip Technology Inc.

Page 5: Micro Passo

AN906

EXAMPLE APPLICATION

This example application demonstrates how to drive a3.6 degree-per-step stepping motor. The motor used isa bipolar stepping motor rated to draw 1/2 amp at 12V.

Hardware

Appendix A shows a schematic for the exampleapplication included with this application note. The drivecircuit is composed of four Fairchild® Semiconductorhalf-bridge MOSFET ICs (part number FDC6420C).Two Microchip logic-input CMOS quad drivers are usedto drive the MOSFET ICs and to provide the logicnecessary for the implementation described in thisapplication note. The TC4467 has four on-chip NANDgates and the TC4468 has four on-chip AND gates. Theinputs to each of the AND gates on the TC4468 are tiedtogether because this IC is used as a non-invertingquad MOSFET driver for this implementation.

Firmware

A flowchart illustrating the microstepping firmwareimplementation of this example is in Appendix B. Thesource code for this application note is included withthis application note on Microchip’s web site,www.microchip.com.

Operation

There are five modes of operation in the example thatare sequenced through with single button presses. Themodes of operation are:

1. Motor Off

2. Single-step mode3. Half-step mode4. Microstep mode

5. Position Control mode

In modes 2, 3 and 4, the speed of the stepping motor iscontrolled by turning the potentiometer. Mode 5 usesthe potentiometer as a position dial. Turning thepotentiometer will cause the motor to microstep in onedirection or the other for a distance proportional to thedistance the potentiometer was turned.

CONCLUSION

The PIC16F684 has an ideal set of features for low-cost stepper motor control. High torque microstep-ping can be implemented using its ECCP module andvery few external logic components. ThePIC16F684's 8 MHz internal oscillator will allow theECCP module to drive the transitioning phase of thebipolar stepping motor at a frequency of 31.2 kHz andstill provide 8-bits of duty cycle resolution. Thisfrequency effectively eliminates unwanted audiblenoise generated by the motor.

REFERENCES

AN907: “Stepper Motor Fundamentals”

2004 Microchip Technology Inc. DS00906B-page 5

Page 6: Micro Passo

AN906

APPENDIX A:

PIC16F684

TC4467

+5V

R20

10K

C16

0.1

uF

R10

100R

S1

SW

-B3F

1000 +

5V

+5V

1 2 3 4 5 6 7

RA

5

RA

4

P1A

P1B

RC

3

U1

VD

D

RA

5

RA

4

RC

5

RC

4

RC

3

RA

3/M

CLR

GN

D

RA

0

RA

1

RA

2

RC

0

RC

1

RC

2

14

13

12

11

10 9 8

AN

2

RC

2

+5V

+5V

R3

10K

U2

P1A

R2

10K

P1B

1 2 3 4 5 6 8 9

14

13

12

11

10 7

1A

1B

2A

2B

3A

3B

4A

4B

VD

D

1Y

2Y

3Y

4Y

GN

D

U3

VS

UP

PLY

TC4468

1 2 3 4 5 6 8 9

14

13

12

11

10 7

1A

1B

2A

2B

3A

3B

4A

4B

VD

D

1Y

2Y

3Y

4Y

GN

D

10K

R6

RC

2

RA

4

AN

2

R19

100R

CW

CC

W2

3

R18

1K

PO

T-3

352E

1

VS

UP

PLY

22

D3

BA

T54S

22

S2

G2 D

2

3

S2 G

2

D2

3

44

66

Win

din

g 1

FD

C6420C

Q5:B

Q3:A

FD

C6420C

FD

C6420C

FD

C6420C

Q6:B

Q4:A

33

11

BA

T54S

D4

D1 G

1

S1

1

5

D1

G1 S

1

1

5

VS

UP

PLY

D6

BA

T54S

BA

T54S

D5

2 1 3

2 1 3

Win

din

g 1

2 S2

3G

2

S2

D2

FD

C6420C

Q8:B

Q7:A

FD

C6420C

4 6

1

5D1 G

1S

1

2

G2 D

2

3

4 6

FD

C6420C

Q10:B

Q9:A

FD

C6420C

D1

1G

1 S1 5

RA

5

R7

10K

10K

R8

R9

10K

RC

3

VS

UP

PLY

RA

0

RA

1

RC

0

RC

1

DS00906B-page 6 2004 Microchip Technology Inc.

Page 7: Micro Passo

AN906

APPENDIX A: (CONTINUED)

J7

DIN5P_RECEPTICALVSUPPLY

1

4

7

2

6

5

3

10

0 u

F

VSUPPLYU10

LM78L05ACM

IN OUT

GND GND GND GND

1

2 3 6 7C11

1 u

F

C1

2

0.1

uF

C1

3

8

0.1

uF

C1

4

+5V

P5 P4 P3

1

2

3

4

5

6

7

8

9

10

11

12

13

14

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

RA5

RA4

VPP

RC5

RC4

RC3

ICSPDAT

ICSPCLK

RA2

RC0

RC1

RC2

HDR1X14 HDR1X14 HDR1X14

+5V

RA5

RA4

RA3

P1A

P1B

RC3

RA0

RA1

AN2

RC0

RC1

RC2

2004 Microchip Technology Inc. DS00906B-page 7

Page 8: Micro Passo

AN906

APPENDIX B:

Internal OscillatorFrequency = 8 MHz

Assign I/O Pins

Setup ADC Pin: AN2

Setup ECCP Module:Half-bridge mode, 31.25 kHz

Waveform

Set TMR0 Parameters

Initialize

Turn on TMR2

goto MotorState

DS00906B-page 8 2004 Microchip Technology Inc.

Page 9: Micro Passo

AN906

APPENDIX B: (CONTINUED)

TMR0Interrupt Flag

Set?

Read Potentiometer

MotorState

Yes

No

Clear TMR0 InterruptFlag

State?

R3

Move high 4-bits of ADC Value intoDelay and Increment

Initiate next ADC read

End/Middle ofLook-upTable?

Increment State

Load CCP1CON an CCPR1L withNext Duty Cycle Value

Duty CycleLook-up Table

YesNo

goto State0 goto State6goto State2 goto State4

goto State1 goto State7goto State3 goto State5

0 10

2 4 653 7

Delay = Delay - 1

Is Delay equalto zero?

Yes

No

2004 Microchip Technology Inc. DS00906B-page 9

Page 10: Micro Passo

AN906

APPENDIX B: (CONTINUED)

State0

Enable P1ADisable P1BCTRLA1 = 0CTRLA2 = 0CTRLB1 = 1CTRLB2 = 1

goto MotorState

State1

Enable P1ADisable P1BCTRLA1 = 0CTRLA2 = 1CTRLB1 = 1CTRLB2 = 0

goto MotorState

State2

Disable P1AEnable P1BCTRLA1 = 0CTRLA2 = 0CTRLB1 = 1CTRLB2 = 1

goto MotorState

State3

Disable P1AEnable P1BCTRLA1 = 0CTRLA2 = 1CTRLB1 = 0CTRLB2 = 1

goto MotorState

State4

Enable P1ADisable P1BCTRLA1 = 0CTRLA2 = 1CTRLB1 = 0CTRLB2 = 1

goto MotorState

State5

Enable P1ADisable P1BCTRLA1 = 1CTRLA2 = 0CTRLB1 = 0CTRLB2 = 1

goto MotorState

State6

Disable P1AEnable P1BCTRLA1 = 1CTRLA2 = 0CTRLB1 = 0CTRLB2 = 1

goto MotorState

State7

Disable P1AEnable P1BCTRLA1 = 0CTRLA2 = 0CTRLB1 = 1CTRLB2 = 1

goto MotorState

DS00906B-page 10 2004 Microchip Technology Inc.

Page 11: Micro Passo

Note the following details of the code protection feature on Microchip devices:

• Microchip products meet the specification contained in their particular Microchip Data Sheet.

• Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the intended manner and under normal conditions.

• There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip's Data Sheets. Most likely, the person doing so is engaged in theft of intellectual property.

• Microchip is willing to work with the customer who is concerned about the integrity of their code.

• Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not mean that we are guaranteeing the product as “unbreakable.”

Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of ourproducts. Attempts to break Microchip’s code protection feature may be a violation of the Digital Millennium Copyright Act. If such actsallow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.

Information contained in this publication regarding deviceapplications and the like is intended through suggestion onlyand may be superseded by updates. It is your responsibility toensure that your application meets with your specifications.No representation or warranty is given and no liability isassumed by Microchip Technology Incorporated with respectto the accuracy or use of such information, or infringement ofpatents or other intellectual property rights arising from suchuse or otherwise. Use of Microchip’s products as criticalcomponents in life support systems is not authorized exceptwith express written approval by Microchip. No licenses areconveyed, implicitly or otherwise, under any intellectualproperty rights.

2004 Microchip Technology Inc.

Trademarks

The Microchip name and logo, the Microchip logo, Accuron, dsPIC, KEELOQ, MPLAB, PIC, PICmicro, PICSTART, PRO MATE, PowerSmart and rfPIC are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.

AmpLab, FilterLab, microID, MXDEV, MXLAB, PICMASTER, SEEVAL, SmartShunt and The Embedded Control Solutions Company are registered trademarks of Microchip Technology Incorporated in the U.S.A.

Application Maestro, dsPICDEM, dsPICDEM.net, dsPICworks, ECAN, ECONOMONITOR, FanSense, FlexROM, fuzzyLAB, In-Circuit Serial Programming, ICSP, ICEPIC, Migratable Memory, MPASM, MPLIB, MPLINK, MPSIM, PICkit, PICDEM, PICDEM.net, PICtail, PowerCal, PowerInfo, PowerMate, PowerTool, rfLAB, Select Mode, SmartSensor, SmartTel and Total Endurance are trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.

Serialized Quick Turn Programming (SQTP) is a service mark of Microchip Technology Incorporated in the U.S.A.

All other trademarks mentioned herein are property of their respective companies.

© 2004, Microchip Technology Incorporated, Printed in the U.S.A., All Rights Reserved.

Printed on recycled paper.

DS00906B-page 11

Microchip received ISO/TS-16949:2002 quality system certification for its worldwide headquarters, design and wafer fabrication facilities in Chandler and Tempe, Arizona and Mountain View, California in October 2003. The Company’s quality system processes and procedures are for its PICmicro® 8-bit MCUs, KEELOQ® code hopping devices, Serial EEPROMs, microperipherals, nonvolatile memory and analog products. In addition, Microchip’s quality system for the design and manufacture of development systems is ISO 9001:2000 certified.

Page 12: Micro Passo

DS00906B-page 12 2004 Microchip Technology Inc.

AMERICASCorporate Office2355 West Chandler Blvd.Chandler, AZ 85224-6199Tel: 480-792-7200 Fax: 480-792-7277Technical Support: 480-792-7627Web Address: http://www.microchip.com

Atlanta3780 Mansell Road, Suite 130Alpharetta, GA 30022Tel: 770-640-0034 Fax: 770-640-0307

Boston2 Lan Drive, Suite 120Westford, MA 01886Tel: 978-692-3848 Fax: 978-692-3821

Chicago333 Pierce Road, Suite 180Itasca, IL 60143Tel: 630-285-0071 Fax: 630-285-0075

Dallas4570 Westgrove Drive, Suite 160Addison, TX 75001Tel: 972-818-7423 Fax: 972-818-2924

DetroitTri-Atria Office Building 32255 Northwestern Highway, Suite 190Farmington Hills, MI 48334Tel: 248-538-2250Fax: 248-538-2260

Kokomo2767 S. Albright Road Kokomo, IN 46902Tel: 765-864-8360Fax: 765-864-8387

Los Angeles18201 Von Karman, Suite 1090Irvine, CA 92612Tel: 949-263-1888 Fax: 949-263-1338

San Jose1300 Terra Bella AvenueMountain View, CA 94043Tel: 650-215-1444Fax: 650-961-0286

Toronto6285 Northam Drive, Suite 108Mississauga, Ontario L4V 1X5, CanadaTel: 905-673-0699 Fax: 905-673-6509

ASIA/PACIFICAustraliaSuite 22, 41 Rawson StreetEpping 2121, NSWAustraliaTel: 61-2-9868-6733 Fax: 61-2-9868-6755

China - BeijingUnit 706BWan Tai Bei Hai Bldg.No. 6 Chaoyangmen Bei Str. Beijing, 100027, ChinaTel: 86-10-85282100 Fax: 86-10-85282104China - ChengduRm. 2401-2402, 24th Floor, Ming Xing Financial TowerNo. 88 TIDU StreetChengdu 610016, ChinaTel: 86-28-86766200 Fax: 86-28-86766599China - FuzhouUnit 28F, World Trade PlazaNo. 71 Wusi RoadFuzhou 350001, ChinaTel: 86-591-7503506 Fax: 86-591-7503521China - Hong Kong SARUnit 901-6, Tower 2, Metroplaza223 Hing Fong RoadKwai Fong, N.T., Hong KongTel: 852-2401-1200 Fax: 852-2401-3431China - ShanghaiRoom 701, Bldg. BFar East International PlazaNo. 317 Xian Xia RoadShanghai, 200051Tel: 86-21-6275-5700 Fax: 86-21-6275-5060China - ShenzhenRm. 1812, 18/F, Building A, United PlazaNo. 5022 Binhe Road, Futian DistrictShenzhen 518033, ChinaTel: 86-755-82901380 Fax: 86-755-8295-1393China - ShundeRoom 401, Hongjian Building, No. 2 Fengxiangnan Road, Ronggui Town, ShundeDistrict, Foshan City, Guangdong 528303, ChinaTel: 86-757-28395507 Fax: 86-757-28395571China - QingdaoRm. B505A, Fullhope Plaza,No. 12 Hong Kong Central Rd.Qingdao 266071, ChinaTel: 86-532-5027355 Fax: 86-532-5027205IndiaDivyasree Chambers1 Floor, Wing A (A3/A4)No. 11, O’Shaugnessey RoadBangalore, 560 025, IndiaTel: 91-80-22290061 Fax: 91-80-22290062JapanBenex S-1 6F3-18-20, ShinyokohamaKohoku-Ku, Yokohama-shiKanagawa, 222-0033, JapanTel: 81-45-471- 6166 Fax: 81-45-471-6122

Korea168-1, Youngbo Bldg. 3 FloorSamsung-Dong, Kangnam-KuSeoul, Korea 135-882Tel: 82-2-554-7200 Fax: 82-2-558-5932 or 82-2-558-5934Singapore200 Middle Road#07-02 Prime CentreSingapore, 188980Tel: 65-6334-8870 Fax: 65-6334-8850TaiwanKaohsiung Branch30F - 1 No. 8Min Chuan 2nd RoadKaohsiung 806, TaiwanTel: 886-7-536-4818Fax: 886-7-536-4803TaiwanTaiwan Branch11F-3, No. 207Tung Hua North RoadTaipei, 105, TaiwanTel: 886-2-2717-7175 Fax: 886-2-2545-0139

EUROPEAustriaDurisolstrasse 2A-4600 WelsAustriaTel: 43-7242-2244-399Fax: 43-7242-2244-393DenmarkRegus Business CentreLautrup hoj 1-3Ballerup DK-2750 DenmarkTel: 45-4420-9895 Fax: 45-4420-9910FranceParc d’Activite du Moulin de Massy43 Rue du Saule TrapuBatiment A - ler Etage91300 Massy, FranceTel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79GermanySteinheilstrasse 10D-85737 Ismaning, GermanyTel: 49-89-627-144-0 Fax: 49-89-627-144-44ItalyVia Quasimodo, 1220025 Legnano (MI)Milan, Italy Tel: 39-0331-742611 Fax: 39-0331-466781NetherlandsP. A. De Biesbosch 14NL-5152 SC Drunen, NetherlandsTel: 31-416-690399 Fax: 31-416-690340United Kingdom505 Eskdale RoadWinnersh TriangleWokingham Berkshire, England RG41 5TUTel: 44-118-921-5869Fax: 44-118-921-5820

02/17/04

WORLDWIDE SALES AND SERVICE