Laser Milling Machine - PowerPoint PPT Presentation

About This Presentation
Title:

Laser Milling Machine

Description:

Laser Milling Machine Group 18 Nathan Bodnar David Dowdle Ryan Maticka Burn Testing Laser Cavity Design Laser Cavity Simulations Laser Block Diagram Q Switch Q Switch ... – PowerPoint PPT presentation

Number of Views:269
Avg rating:3.0/5.0
Slides: 62
Provided by: Corpo125
Learn more at: https://www.ece.ucf.edu
Category:

less

Transcript and Presenter's Notes

Title: Laser Milling Machine


1
Laser Milling Machine
  • Group 18
  • Nathan Bodnar
  • David Dowdle
  • Ryan Maticka

2
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
  • High powered green laser
  • Custom software
  • XY plotting table
  • Safety mechanisms

3
Project Motivation
  • Current milling machine used by senior design
    students has had numbers breakdowns
  • We wanted to replace the replace the current
    milling machine with a more reliable system that
    was capable of running without continuous user
    input
  • Design and build our own high powered green laser

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
  • Safe, most specifically in the area of eye and
    lung safety
  • Capable of interfacing with a computer through a
    single USB port
  • Capable of vaporizing copper in just a few pulses
    of a laser
  • Capable of burning through the fiberglass
    substrate with the laser alone

5
Project Goals and Objectives
  • 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 handling FR4 copper clad PCB
  • Able to store previously milled boards so that
    the left over areas can be re-milled
  • Capable of milling warped boards

6
Project Specifications Requirements
  • Capable of milling a 12inx12in board
  • Resolution of 1mil
  • 1mil 39.37mm or 1/1000inch
  • Beam waste of 1mil or lower
  • Protected through the storage of hashed user
    passwords

7
Project Specifications and Requirements
  • Require 512MB of main memory (computer) to run
    after everything else
  • Implement a call and answer protocol for the
    interface between the computer and the
    microcontroller through the use of 64Byte data
    packets

8
Safety
  • User safety
  • Laser being ran as a class one
  • Air scrubbed through a carbon filter
  • Automatic shutdown if the system is opened
  • High voltage system, so the entire system is
    enclosed and not just the laser subsystem
  • Equipment safety
  • Multiple temperature sensors
  • Automatic shutdown on a detected anomaly
  • Multiple housings to protect equipment from the
    vaporized copper by product of the mill procedure

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

10
Burn Testing
Minimum amount of Energy needed 0.7mJ for 20ns _at_
532nm
11
Laser Cavity Design
  • Folded cavity Design
  • Q switched
  • 808nm Diode Pumped
  • Output 532nm
  • NdYAG (end pumped)

12
Laser Cavity Simulations
  • With 80W input 30W _at_ 1064nm
  • 12W _at_532nm CW
  • Pulsed 4mJ _at_ 13ns
  • 307 MW duty 0.0013

13
Laser Block Diagram
14
Q Switch
  • Pockel Cell
  • Fast Switching Characteristics lt1ns
  • Voltage Rating 3-5 kV
  • High Laser Power Operation
  • Crystal KDP
  • Polarization Dependent
  • Alternative Q Switches
  • AOM modulator
  • Mechanical
  • Saturable Absorber

15
Q Switch Block Diagram
  • Generates 0 - 5 kV output
  • Generates pulses with minimal delay
  • Emergency Shutoff capabilities

16
Q Switch Voltage Regulator
  • Voltage divider reduces voltage down by 12211
  • Peak output voltage from divider 4.05 Volts
  • D/A MCP4251
  • Allows Control of 20 Volts per Step

17
Voltage Multiplier
  • Villard cascade voltage multiplier
  • Multiplies by 4
  • Inputs from CCFL transformer
  • Outputs to filter Caps

18
  • Oscillator Circuit
  • Generates a Square wave
  • Center Frequency 50kHz
  • Pulse Generator Circuit
  • Generates a pulse when the microcontrollers
    rising edge
  • Delay is formed by L-C networks
  • Delay time will depend on final Laser cavity
    alignment

19
Emergency Power Cutoff
  • Activated by RB7
  • Stays activated until Reset
  • Resets when the 12V line is removed

20
XY table
Old Design
Current Design
  • Threaded Rode Design
  • Requires material To Move
  • Requires Double the area to travel
  • Belt Driven
  • Moves the mirrors and not the material
  • Requires only 6 extra for head travel

21
Stepper Motor Controller
  • Stepper Motor
  • 0.9 rotation per Step
  • Holding Torque 30 oz-in
  • Unipolar
  • Stepper Controller
  • Allows Micro-stepping
  • Allows Full Stepping

22
Laser Power Supply
  • Specifications
  • Input 120VAC at 60Hz
  • Output 0 to 5VDC at 60A
  • Current driven
  • Output voltage ripple lt 1mV
  • Precision and consistency

23
Filtering and Rectification
  • Low-pass filter filter out high frequency noise
  • Metal oxide varistor high R at low V and low R
    at high V provides surge protection
  • Isolation 60Hz isolation transformer
  • Rectifier bridge with output capacitor

24
DC to DC Converter
  • Choices
  • Linear regulator
  • Not efficient enough
  • Large size
  • Thermal issues
  • Switched-mode DC to DC Converter
  • Buck converter for voltage gain lt 1
  • Adjusting PWM will control voltage and current
    output

25
Switching
  • Choices BJT, IGBT, MOSFET
  • BJT
  • Pros High current carrying capability
  • Cons High driving power
  • IGBT
  • Pros High current carrying capability
  • Cons Frequency not as high as MOSFETs to give a
    small ripple
  • MOSFET
  • Pros High frequency for small ripple, low
    driving power
  • Cons Low current carrying capability

26
Switching
  • Problem
  • MOSFET has lower current carrying capability
  • Solution
  • Use MOSFETS in parallel
  • High current
  • High switching speed
  • Low driving power

27
Synchronous Switching
  • Low Power
  • Blocking diode can handle low power
  • High Power
  • Risk of breakdown from high stress on diode
  • Power losses on diode is much greater than using
    a MOSFET
  • Replace diode with a MOSFET

28
Control
Differential Amplifier
29
LC Filter
  • Reduce the output voltage ripple and current
    ripple
  • Increase C to decrease ripple
  • Synchronous switching allows for the use of a
    small inductor
  • Pros small resistance, reach steady state fast

30
Capacitor Value
  • ?VC is the output voltage ripple
  • VO is the output voltage
  • L is the inductor values
  • D is the duty cycle of the parallel MOSFETs
  • f is the frequency of the parallel MOSFETs

31
Thermoelectric Cooling
12V
  • Used to cool laser diodes
  • ATX PSU12VDC
  • PWM controls MOSFET to control the power to the
    peltier
  • Temperature monitored via thermistor on peltier

32
Microcontroller
  • Needed to be able to do
  • Pulse Width Modulation (PWM) for microstepping
  • Analog to digital converter for the temperature
    sensors
  • Able to interface with a large number of sensors
    (greater than 5)
  • Types of sensors contact, temperature, light,
    current, voltage, humidity, and flow rate
  • Low cost
  • Easy to implement
  • Large repository of example code
  • Easy to reprogram (USB)

33
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

34
Microcontroller Decision Chart
MCU 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
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?
  • How are we going to cut out holes?

36
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
    GUIs 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

37
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

38
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

39
Software Design Decisions
  • Directly support TIFF images?
  • Possible JAI (Java Advanced Imaging) library
  • Difficult to do
  • Solution?
  • Support reading in PNG files
  • Call external program (convert.exe) to convert
    the TIFF image to a PNG image
  • PNG files can be read natively by the Java image
    handling methods

40
Software Design Decisions
  • How should we communicate with the PIC18F2550?
  • Initially Send large amounts of data to PIC,
    with not 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

41
Software Design Decisions
  • How should we control security?
  • Option1 None
  • Check the users input password against a plain
    text file
  • Option2 Encryption
  • Encrypt the users password, and check against
    the inserted password
  • Option3 Hashing
  • Hash the users password, store the hash, and
    create a new hash based on the inserted password.
    Verify that they match.

42
Software Design Decisions
  • How should we control security?
  • Option1 None
  • Not really an option, we need user access level
    control
  • Option2 Encryption
  • Difficult to implement
  • Option3 Hashing
  • Easy to implement, and mathematically impossible
    to construct the password from the hashed value

43
Software Design Decisions
  • How should we control security?
  • Option3 Hashing
  • Cant just store the users password
  • Need to store the users access level also
  • Therefore, store
  • hash(ltaccess_levelgtltpasswordgt)
  • 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

44
Software Design Decisions
  • How are we going to cut out holes?
  • Raster?
  • We only need to cut around the edge of the hole
  • Vector?
  • Yes
  • How is this possible?
  • PCB authoring software produces separate drill
    files for holes

45
Software Design Decisions
  • How are we going to cut out holes?
  • Vector
  • Code snippet below
  • int Bx 50 //x location of the hole
  • int By 50 //y location of the hole
  • int Ax, Ay
  • int D 10 //diameter of the hole
  • for (double y0 ylt360 y y0.01)
  • Ax (int)Math.floor(D/2Math.cos(yMath.PI/180))
  • Ax Bx
  • Ay (int)Math.floor(D/2Math.sin(yMath.PI/180))
  • Ay By
  • mapAxAy 1

46
Optimal Control Path
Main GUI
47
Realistic Path Step 1
48
Realistic Path Step 2
User File Exists?
File Name Exists?
Select File
Yes
No
No
PNG File Exists?
Yes
No
Yes
Main GUI
49
Realistic Path Step 2
50
Main GUI
Standard
Advanced
Administrator
Experienced
51
Important Functions
  • Create hash file to store users
  • Access hash file
  • Read and process input file
  • Take processed input file and send the commands
    to the machine
  • Interpret the commands coming from the machine
    acknowledging that it received data and is
    working properly

52
Create Hash File
  • Store the userName (the students NID)
  • Store a hash of the users password and access
    level in the format
  • hash(ltaccessLevelgt ltpasswordgt)
  • Check for duplicate entries, replace the old
    entry with the new entry
  • Use SHA-512 (SHA-2 family) hashing algorithm

53
Access Hash File
  • Read current hash file into a TreeMap
  • User the userName field as the key, and the
    hashed password as the value
  • Make a hash out of the current users password,
    and all of the possible access levels
  • Compare the two hashes
  • Assign the user their access level based on the
    result of the comparison

54
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

55
Environment
  • NetBeans 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, 1GB 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. This will be implemented if we have
    time at the end of this project.

56
Process Input File
  • Read the PNG file into memory so that we can
    process it
  • Read the image line by line, and produce a text
    file indicating the if the laser should be on or
    off and for how many steps
  • Store if the laser should be on/off, and the
    distance that this is true for in an int array
  • index2 0 (on/off)
  • index2 1 (distance)
  • Indicate if a line needs to be milled

57
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

58
Milestone Chart
Laser PS
Software
Software Testing
TEC PS
Laser Cavity
Q Switch PS
XY Table Testing
XY Table Stepper PS
Cleaning up
Feb 21
Feb 28
Mar 7
Mar 24
Mar 28
Apr 4
Apr 11
Mar 14
59
Budget
Estimate cost
Spent cost
  • Software free
  • Parts for XYZ table 200
  • Laser setup
  • Q-switch 60 - 5000
  • 808nm Diodes 600
  • NdYAG rod 50
  • KTP(KDP) 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
  • NdYAG rod 125
  • KTP(KDP) 43.22
  • Directing mirrors 27.19
  • Lens 420
  • Quarter wave plate 74
  • Polarizer 49
  • Parts for Laser Power Supply 200
  • Parts for TEC Power Supply 35
  • Parts for Q switch Power Supply 140
  • Parts for Stepper Power Supply 30
  • Parts for Power Management Circuit 50
  • Fume controller 30
  • Total 2423.35

60
Project Progress
61
Questions?
Write a Comment
User Comments (0)
About PowerShow.com