Top Banner
1 Laser PCB Milling Machine Group 18 Nathan Bodnar David Dowdle Ryan Maticka 1
56

Laser PCB Milling Machine

Jan 01, 2016

Download

Documents

Silas Flynn

Laser PCB Milling Machine. Group 18 Nathan Bodnar David Dowdle Ryan Maticka. Project Overview. The system will be capable of laser etching copper coated printed circuit boards (PCBs) for the purpose of rapidly prototyping senior design projects The system will consist of: - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Laser PCB Milling Machine

1

Laser PCB Milling Machine

Group 18

Nathan BodnarDavid DowdleRyan Maticka

1

Page 2: Laser PCB Milling Machine

2

• The system will be capable of laser etching copper coated printed circuit boards (PCBs) for the purpose of rapidly prototyping senior design projects

• The system will consist of:– High powered

green laser– Custom software– XY plotting table– Safety mechanisms

Project Overview

2

Page 3: Laser PCB Milling Machine

3

Project Motivation• Current milling machine

used by senior design students has had numerous breakdowns

• We replaced the current milling machine with a more reliable system that is capable of running without continuous user input

• Design and build our own high powered green laser

3

Page 4: Laser PCB Milling Machine

4

Project Goals and Objectives• Capable of producing a quality result in less time

than is required to ship out a PCB to a professional manufacturer

• Capable of vaporizing copper in just a few pulses of a laser

• Capable of burning through the fiberglass substrate with the laser alone

• Capable of handling FR4 copper clad PCBs• Capable of milling warped boards

4

Page 5: Laser PCB Milling Machine

5

Project Goals and Objectives• Safe, most specifically in the area of eye and lung

safety• Capable of accepting a Gerber file from a

mainstream PCB layout software program• Capable of accepting boards to be milled in

PNG format• Capable of interfacing with a computer through

two USB ports

5

Page 6: Laser PCB Milling Machine

6

Project Specifications & Requirements

• Capable of milling a 12 in x 12 in board• Resolution of 1 mil

– 1 mil = 1/1000 in

• Beam waste of 1 mil or lower• Software is protected through the storage of

hashed user passwords (SHA-512)

6

Page 7: Laser PCB Milling Machine

7

Project Specifications & Requirements

• Require 512 MB of main memory (computer) to run after everything else for the maximum supported file size (12,000 x 12,000 pixels)

• Implement a call and answer protocol for the interface between the computer and the microcontroller through the use of 64 Byte data packets

7

Page 8: Laser PCB Milling Machine

8

• User safety– Laser being ran as a class one– Enclosed laser subsystem

• Equipment safety– Housing to protect equipment from the vaporized

copper by product of the mill procedure

Safety

HIGH VOLTAGE

DANGERHIGH

VOLTAGE

DANGER

8

Page 9: Laser PCB Milling Machine

9

Laser Safety

• Desirable to run the system as a class one laser• Laser safety glasses (Five OD as per ANSI Z136.1

standard) still required when testing and calibrating the laser

• Needed to classify the laser as a class one:– Protective housing– Interlocks on the housing– Service access panel– Equipment labels

CAUTIONLASER RADIATION

DO NOT STARE INTO BEAM

CLASS 1 LASER

Enclosed Nd:YAG, 532nm, 10mJ, 40ns

! CAUTIONLASER RADIATION

DO NOT STARE INTO BEAM

CLASS 1 LASER

Enclosed Nd:YAG, 532nm, 10mJ, 40ns

!!

9

Page 10: Laser PCB Milling Machine

10

Burn Testing

Minimum amount of Energy needed: 0.7mJ for 20ns @ 532nm

Ene

rgy

(mJ)

10

Page 11: Laser PCB Milling Machine

11

Laser

• Previous Design– Second harmonic Nd:YAG Q switched laser– Generating second harmonic inside laser cavity is

more efficient than outside cavity– Output:

• Energy: 9 mJ• Pulse: < 40 ns

Page 12: Laser PCB Milling Machine

12

Laser Cavity

•Folded cavity Design

•Q switched

•808 nm Diode Pumped

•Output: 532 nm

•Nd:YAG (end pumped) 12

Page 13: Laser PCB Milling Machine

13

Laser Cavity Simulations

• With 80 W input = 30 W @ 1064 nm

• ~12 W @ 532 nm CW

• Pulsed: 4 mJ @ 13 ns

• ~307 MW duty 0.0013%13

Page 14: Laser PCB Milling Machine

14

Laser Block DiagramMain

Computer

Laser Power Supply

USBUSB

AC Power

Cooling Lines

Thermal Electric Cooler

Laser Diode #1

Wire

Cooling Flow

Thermistor

Cooling Lines

Wire

USB USB

Laser Power Supply

AC Power

Cooling Lines

Thermal Electric Cooler

Laser Diode #1

Wire

Cooling Flow

Thermistor

Cooling Lines

Wire

Main Computer

Laser Power Supply

USBUSB

AC Power

Cooling Lines

Thermal Electric Cooler

Laser Diode #1

Wire

Cooling Flow

Thermistor

Cooling Lines

Wire

USB USB

Laser Power Supply

AC Power

Cooling Lines

Thermal Electric Cooler

Laser Diode #2

Wire

Cooling Flow

Thermistor

Cooling Lines

Wire

14

Page 15: Laser PCB Milling Machine

15

Current Laser System• Laser diode problem

– 808 nm diode ran at 800 nm, and Nd:YAG has acceptance region of 0.6 nm

– To work, the diode must be heated to unsafe operating temperatures• Flash tube based system

– Advantages • Higher output power from oscillator

– Fewer shots to burn through– Disadvantages

• 2% efficient at best• Low duty cycle

– Maximum: 100 pulses per second– Realistic: 1 pulse per second

• Shorter mean time to failure compared to diode system

Page 16: Laser PCB Milling Machine

16

Flash Tube System• 15 J electrical input power generates 100 mJ of 1064

nm light• Flash tube based amplifier

– Single pass amplification • Focusing lens creates focal point• Focused light passes through KTP crystal twice via

highly reflective mirror to produce 532 nm • light hits mirror that reflects 532 nm and transmits

1064 nm • 532 nm transmitted to XY table via mirrors and 1064

nm stays in laser section

Page 17: Laser PCB Milling Machine

17

Previous Q Switch

Pockel Cell

• Fast Switching Characteristics < 1ns

• Voltage Rating: 3-5 kV

• High Laser Power Operation

• Crystal: KD*P

• Polarization Dependent

Alternative Q Switches

•AOM modulator

•Mechanical

•Saturable Absorber

17

Page 18: Laser PCB Milling Machine

18

Q Switch PSU Block Diagram

Voltage Regulator

DarlingtonTransistor

Microcontroller

+12V

40kHzOscillator

VoltageDivider

FilterCaps

VoltageMultiplier

1:98Transformer

FastFETs

Voltage Regulator

DarlingtonTransistor

Microcontroller

+12V

40kHzOscillator

VoltageDivider

FilterCaps

VoltageMultiplier

1:98Transformer

FastFETs

•Generates 0 - 5 kV output

•Generates pulses with minimal delay

•Emergency Shutoff capabilities18

Page 19: Laser PCB Milling Machine

19

Q Switch

• Current Design– Saturable absorber

• Laser cavity < 10 cm long, so no pockel cell• Saturable absorber is 3 mm long

Page 20: Laser PCB Milling Machine

20

Stepper Motor Controller

Stepper Controller

•Full bridge MOSFET driver

•120 micro-steps per full step gives 0.0075° per step

Stepper Motor• 0.9° rotation per step• Holding Torque: 30 oz-in• Unipolar

20

Page 21: Laser PCB Milling Machine

21

XY table

• Threaded Rod Design

• Requires material to move

• Requires double the area to travel

Previous Design Current Design

• Belt Driven with linear bearings

• Moves the mirrors and not the material

• Requires only 6” extra for head travel

21

Page 22: Laser PCB Milling Machine

22

Laser Power Supply

• Previous Design– Specifications

• Input: 120 V AC, 60 Hz• Output: 0 - 5 V DC, 60 A• Output voltage ripple < 1 mV• Current controlled• Current monitoring• Temperature monitoring

Page 23: Laser PCB Milling Machine

23

DC to DC Converter

• Choices: – Linear regulator

• Low efficiency• Large size• Thermal problems

– Switched-mode DC to DC Converter• Buck converter for voltage gain < 1• Adjusting PWM will control voltage and current output

23

Page 24: Laser PCB Milling Machine

24

Switching• Choices:

– Bipolar Junction Transistor (BJT)• Pros: High current carrying capability• Cons: High driving power, Low frequency

– Metal-Oxide-Semiconductor Field-Effect Transistor (MOSFET)

• Pros: High frequency, low driving power, low losses• Cons: Low current carrying capability, lowered efficiency at high

voltage– Insulated Gate Bipolar Transistor (IGBT)

• Pros: High current carrying capability, High reverse voltage blocking

• Cons: Lower frequency and higher switching losses than MOSFET

24

Page 25: Laser PCB Milling Machine

25

Switching

• Problem: – MOSFETs carry low

current

• Solution:– Use MOSFETs in parallel

• High current• High switching speed• Low driving power

25

Page 26: Laser PCB Milling Machine

26

Synchronous Switching• Low Power

– Blocking diode can handle low power

• High Power– Risk of diode breakdown from high stress – Power losses on diode is large compared to using a MOSFET

• Replace diode with MOSFET controlled by secondary PWM

26

Page 27: Laser PCB Milling Machine

27

Converter Control

• Pulse width modulation (PWM) changes duty cycle of MOSFETs– Choices:

• Microcontroller detects output and controls PWM to main MOSFET

• LT1339 buck/boost converter controller instead of microcontroller

– More features for better control– Added circuit uses potentiometer to control current output

27

Page 28: Laser PCB Milling Machine

28

Page 29: Laser PCB Milling Machine

29

Thermoelectric Cooling

• Peltiers cool the laser diodes to desired temperature• ATX PSU: 12V DC• PWM controls MOSFET to control the power to each peltier• Temperature monitored via thermistor on peltier• TEC not used in current design

MOSFET

PeltierLaser Diode MicrocontrollerThermistor

+12VPWM

29

Page 30: Laser PCB Milling Machine

30

Current Laser Power Supply

• Specifications– Input: 120 V AC, 60 Hz– Output: 730 V DC– Flash tube system not susceptible output voltage

and current ripple– PWM controller

• Switching: 17 kHz

– No thermoelectric cooling required for laser

Page 31: Laser PCB Milling Machine

31

Boost Converter

• IGBT chosen over MOSFET because:– Better than MOSFET when voltage is over a few hundred

volts

• Discontinuous conduction mode (DCM)– Generates larger peak current compared to continuous

conduction mode (CCM)

• Double converters for faster current response• Regulating Pulse Width Modulator (UC3526)

Page 32: Laser PCB Milling Machine

32

Boost Converter

Page 33: Laser PCB Milling Machine

33

Snubber

• Active snubber for increased efficiency– LC circuit stores power that would be turn-off losses on

main IGBT– Secondary IGBT delivers to the energy output

Page 34: Laser PCB Milling Machine

34

Microcontroller• A different microcontroller will be used to control each part of the project• Needed to be able to do:

– Pulse Width Modulation (PWM) for micro-stepping– Low cost– Easy to implement– Large repository of example code– Easy to reprogram (USB)

34

Page 35: Laser PCB Milling Machine

35

Microcontroller Decision ChartMCU PIC18F2550 MC9S08JS8CWJ C8051F342-GQ ATMEGA162-16PU

Data Bus Width: 8 bit 8 bit 8 bit 8 bit

Family: PIC18 JS 8051 AVR

Program Memory Type: Flash Flash Flash Flash

Program Memory Size: 32 KB 16 KB 64 KB 16 KB

Data RAM Size: 2 KB 256 B 5.25 KB 1 KB

Interface Type: SPI or I2C or EAUSART SPI, SCI I2C / SPI / UART / USB SPI or USART

Maximum Clock Frequency: 48 MHz 48 MHz 48 MHz 16 MHz

Number of Programmable I/Os: 24 N/A 25 35

Number of Timers: 4 1 4 4

Operating Supply Voltage: 2 V to 5.5 V 2.7 V to 5.5 V 2.7 V to 5.25 V 2.7 V to 5.5 V

Maximum Operating Temperature: + 85 C + 85 C + 85 C + 85 C

Package / Case: SOIC-28 Wide SOIC-20 Wide LQFP-32 PDIP-40

Packaging: Tube Tube Tray N/A

Minimum Operating Temperature: - 40 C - 40 C - 40 C - 40 C

On-Chip ADC: 10-chx10-bit N/A 17-ch x 10-bit N/A

Price (for 1): $4.95 $2.00 $10.25 $6.77

35

Page 36: Laser PCB Milling Machine

36

Microcontroller

• Which programming language for the microcontroller?– Choices:

• C• Assembly

– We chose C, as we are the most familiar with it, and there is a large body of software already written for the PIC18F2550. Furthermore, Microchip offers the ability to blend C and Assembly in our source files, so we can get the advantages of both languages

36

Page 37: Laser PCB Milling Machine

37

Software Design Decisions

• Which programming language to use?• Vector or raster mill?• Directly support Gerber files?• Directly support TIFF images?• How should we communicate with the

microcontroller?• How should we control security?

37

Page 38: Laser PCB Milling Machine

38

Software Design Decisions

• Which programming language for the computer program?– Choices:

• C, Java, C#– We chose Java as we are the most familiar with it

other than C, and it is much easier to create GUI’s in Java. C# would have interfaced with our microcontroller easier, but we were not as familiar with it as Java, and we wanted to cut down on development time so that we could have more time to debug and test

38

Page 39: Laser PCB Milling Machine

39

Environment• Window Builder Pro to produce the GUI• Eclipse to integrate everything together• To account for the 12,000x12,000 pixel size

that could result from the convert operation, 512MB of memory was allocated to the JVM– This could be optimized if we were to use the JAI

to tile the TIFF images, and read each tile separately.

39

Page 40: Laser PCB Milling Machine

40

Software Design Decisions

• Vector or raster mill procedure?– Vector: follow the outlines of each object until

you come back to the beginning of the object• Pros: Shorter mill time, less movement of XY head• Cons: more complicated algorithm

– Raster: scan left and right across the area to be plotted

• Pro: simple algorithm• Cons: longer mill time, more movement of XY head

40

Page 41: Laser PCB Milling Machine

41

Software Design Decisions• Directly support Gerber files?

– Would allow for easier implementation of Vector milling– Specification is too complicated for the scope of this

project• Use gerb2tiff (external program) to convert the input Gerber file

to a TIFF• Use the output as a raster mill input

41

Page 42: Laser PCB Milling Machine

42

Gerber File Example%FSLAX43Y43*%%MOMM*%G71*G01*G75*G04 Layer_Physical_Order=1*G04 Layer_Color=255*%ADD10C,0.250*%%ADD11R,3.000X1.800*%%ADD12R,4.700X3.810*%%ADD13R,0.720X1.800*%%ADD14R,4.060X3.810*%%ADD15R,3.810X6.350*%%ADD16C,1.000*%%ADD17C,2.000*%%ADD18C,2.200*%%ADD19C,0.600*%%ADD20C,0.254*%%ADD21R,8.400X1.800*%

%ADD22R,7.000X2.000*%%ADD23R,24.000X17.000*%%ADD24C,1.800*%%ADD25R,1.800X1.800*%%ADD26C,2.000*%

%ADD27C,2.200*%%ADD28C,1.600*%%ADD29C,1.200*%D10*X18192Y29200D02*G03*X17896Y29381I-942J-1200D01*G01*X16805Y30473D02*G03*X16073Y31205I-1305J-573D01*G01*X8012Y50000D02*G03*X8012Y50000I-2013J0D01*

G01*X6890Y40388D02*G03*X6500Y40550I-390J-388D01*G01*X6889Y40389D02*G03*X6500Y40550I-389J-389D01*G01*X81876Y18000D02*G03*X83624Y18000I874J1250D01*G01*X78376D02*G03*X80124Y18000I874J1250D01*G01*X82012Y10000D02*G03*X82012Y10000I-2013J0D01*G01*X76013Y552D02*G03*X76050Y750I-513J198D01*

……continues

42

Page 43: Laser PCB Milling Machine

43

TIFF and Machine Code Result•The Gerber file from the pervious page creates this TIFF file through the use of the gerb2tiff program•This TIFF file is then used to create the PNG file that Java will use

1 364 0 99 1 132 0 98 1 463 0 211 1 1203 0 38 1 35 0 76 1 98 0 31 1 2462 0 39 1 35 0 38 1 24 0 28 1 639 0 28 1 1908 0 21 365 0 99 1 130 0 99 1 463 0 211 1 1202 0 38 1 35 0 78 1 96 0 32 1 2461 0 39 1 35 0 38 1 26 0 27 1 639 0 28 1 1908 0 21 365 0 100 1 128 0 99 1 464 0 211 1 1201 0 38 1 35 0 80 1 94 0 32 1 2461 0 39 1 35 0 38 1 27 0 27 1 112 0 415 1 112 0 28 1 1908 0 21 366 0 100 1 126 0 100 1 464 0 211 1 1200 0 38 1 35 0 81 1 94 0 32 1 2460 0 39 1 35 0 38 1 28 0 27 1 112 0 415 1 112 0 28 1 1908 0 21 366 0 101 1 124 0 101 1 464 0 211 1 1199 0 38 1 35 0 83 1 92 0 32 1 2460 0 39 1 35 0 38 1 29 0 28 1 110 0 417 1 110 0 29 1 1908 0 2

Representation of the Gerber file that will be used to control the milling machineFormat: <laser on/off> <distance to move>

43

Page 44: Laser PCB Milling Machine

44

Software Design Decisions• How should we communicate with the

PIC18F2550?– Initially: Send large amounts of data to PIC, with

no response– Final choice: Send individual commands, wait for

acknowledged response before sending another• Slower method, but we are using a very small amount

of our available bandwidth at any one time, and the latency is low enough to be negligible compared to the rate of dots/s where 1dot = 1/1000in

44

Page 45: Laser PCB Milling Machine

45

Software Design Decisions

• How should we control security?– Option1: None

• Check the user’s input password against a plain text file• Not really an option, we need user access level control

– Option2: Encryption• Encrypt the user’s password, and check against the inserted

password• Difficult to implement

– Option3: Hashing• Hash the user’s password, store the hash, and create a new hash

based on the inserted password. Verify that they match.• Easy to implement, and mathematically impossible to construct

the password from the hashed value

45

Page 46: Laser PCB Milling Machine

46

Software Design Decisions

• How should we control security?– Option3: Hashing (SHA-512)

• Can’t just store the user’s password• Need to store the user’s access level also• Therefore, store

hash(<access_level>+<password>)• then compute the four possible hashes based on the

current password that has been entered into the system and assign the user the correct access level

• Access Levels: None, Standard, Advanced, Experienced, Administrator

46

Page 47: Laser PCB Milling Machine

47

Optimal Control Path

Experienced User

Administrator UserStandard User

Main GUI

Main Program User Login Main GUI Select File

Console GUI

mill()

47

TranslateImage

Page 48: Laser PCB Milling Machine

48

Main GUI

48

Page 49: Laser PCB Milling Machine

49

Read Input File

• Convert the Gerber file to a TIFF (gerb2tiff.exe)• Convert the TIFF file to a PNG (convert.exe, Image Magick

suite)Runtime rt = Runtime.getRuntime();

pr = rt.exec(String toRun);• We did not want to have to write our own Gerber parser, so

we used the gerb2tiff program• Java will not natively handle TIFF files, so we used the convert

program– JAI library was deemed to add too much complexity to this

project

49

Page 50: Laser PCB Milling Machine

50

Mill Procedure• mill(String fileName) procedure called• checkReady()

– Is the laser on?– Have any errors occurred?

• loadPreprocessedFile(String fileName)– If errors occur, exit gracefully to calling procedure which will handle the

outcome• loadSettings()

– Set how fast the XY head will move over areas where the laser will be on or off• traverseXY(int xy, int laser, int distance)

– int xy determines which MCU to connect with, laser determines whether the laser will be on or off and thus how fast to move the milling head, and the distance determines how far to go with this one command

– moveXY (int xy, int laser, int distance)• sends the actual commands to the respective microcontroller• returns a boolean to traverseXY(…) depending on whether the mill operation for that

movement command was a success or not

50

Page 51: Laser PCB Milling Machine

51

Send and Receive Data

• Traverse the processed input file in an alternating line fashion

• Send the data to the machine, wait for an acknowledgement packet back before sending the next movement command

• If a line has nothing to be milled on it, move down until a line with something to be milled is found, the edge of the file, or the edge of the XY table is found

51

Page 52: Laser PCB Milling Machine

52

Image Tiling•Idea: Split the image into smaller sections to reduce the extraneous travel of the milling head•Implemented along with a blank line skipalgorithm that allows quick travel throughlarge sparsely populated regions.

•Accomplished by loading the main full sized image first, grabbing sub sections•of this image and saving the location data of where to mill in a text file.

Blank Line

Page 53: Laser PCB Milling Machine

53

Milestone Chart

Feb 21

Feb 28

Mar 7

Mar 14

Mar 24

Mar 28

Apr 4

Apr 11

Laser Cavity

Q Switch PS

XY Table Stepper PS

TEC PS

Software

Laser PS

XY Table Testing

Software Testing

Cleaning up

53

Page 54: Laser PCB Milling Machine

54

Budget

• Software – free• Parts for XYZ table – $200• Laser setup

– Q-switch – $60 - $5000– 808nm Diodes – $600– Nd:YAG rod – $50– KTP(KD*P) – $30 to $100– Directing mirrors – $450– Lens – $600– Quarter wave plate – $200– Polarizer – $400

• Parts for Laser Power Supply – $200• Parts for TEC Power Supply – $75• Parts for Q switch Power Supply – $50• Parts for Stepper Power Supply – $30• Parts for Power Management Circuit – $50• Fume controller – $30

Total: $3100 to $8100

• Software – free• Parts for XYZ table – $200• Laser setup

– Q-switch – $512.95– 808nm Diodes – $486.99– Nd:YAG rod – $250– KTP(KD*P) – $43.22– Directing mirrors – $27.19– Lens – $420– Quarter wave plate – $74– Polarizer – $49

• Parts for Laser Power Supply – $400• Parts for TEC Power Supply – $35• Parts for Q switch Power Supply – $140• Parts for Stepper Power Supply – $30• Parts for Power Management Circuit – $70

Total: $2738.35

Estimate cost: Spent cost:

54

Page 55: Laser PCB Milling Machine

55

Acknowledgment

• Special Thanks to the Laser Plasma Laboratories team in the CREOL department for the help in burn testing and laser diode calibration.

• Group 17 for there morale support.

Page 56: Laser PCB Milling Machine

56

Questions?

56