Blake Ipson John Chen Matt Graeff Steven Benedict Weston Welge Team PhotoCon EXPO Lab
Embed Size (px)
description
Transcript of Blake Ipson John Chen Matt Graeff Steven Benedict Weston Welge Team PhotoCon EXPO Lab

Blake IpsonJohn ChenMatt Graeff
Steven BenedictWeston Welge
Team PhotoConEXPO LabDepartment of Electrical, Computer, and Energy EngineeringUniversity of Colorado at Boulder
Critical Design ReviewCritical Design Review

Prototype a fast lithography system accurate to 15μm
Drive galvanometer mirrors to draw 2D images within a 3.5mm scanning area
Coordinate laser power modulation based on input vectors
Stand-alone, modular and “transportable”
Matt

Matt
FromLaser
FromPC
Laser Diode/Power
SupplyCollimation
Lens Galvo X Galvo Y Doublet Lens
CameraPower
Detection Servo Drivers X/Y
ADC DAC
MCU
PC
DAC
~ 4% Power Tap
Demonstration Only
External Memory

John

John

Atmel 32bit AVRUC3C0512
4 Channel
ADC
1 Channel
ADC
4 Channel
ADC
1 Channel
DAC
1 Channel
DAC
1 Channel
DAC
X Galvo
Y Galvo
Power Meter
X Galvo
Y Galvo
Laser Driver
EEPROM
I2C I2C/Parallel
SPI
PCRS-232
Steven

Steven
Module OH_SHIT_STOPInputs N/AOutputs error LED onFunctionality Turn on error LED
Call lsr_off()send_vec(GALVO_CENTER)
Module LoadInputs User options
Vector fileOutputs Write constants, vectorfileFunctionality Check
lsr_pwr_on=int, lsr_pwr_off=int, draw_method=”dots”, galvo_center=int,int,intIf no, call OH_SHIT_STOPIf yes, write LSR_SCALE_ON, write LSR_SCALE_OFF, write DRAW_METHOD, write GALVO_CENTER) load vector file to flash mem call run()
Module RunInputs Drawing method constantOutputs call function or errorFunctionality If(DRAW_METHOD=”dots”)
Draw_dots()Else if(DRAW_METHOD=”lines”) Draw_lines()Else OH_SHIT_STOP
Module Draw_dotsInputs VectorfileOutputs function call(s)Functionality Loop(lines in vector file)
Parse line x,y,z Send_vec(x,y,z) If(error<defined) Lsr_on() Detect_energy() Lsr_off() Set_pwr() Break Break

Steven
Module Detect_energyInputs N/AOutputs EnergyFunctionality Energy=0
Loop n X=read power from sensor Energy=Energy+xReturn energy
Module Send_vecInputs Int x,y,zOutputs DAC valueFunctionality Write x to x-galvo
Write y to y-galvoWrite z to z-galvo
Module Lsr_onInputs N/AOutputs DAC valueFunctionality Read lsr_pwr_on
Write to DAC
Module Set_pwrInputs EnergyOutputs Lsr_pwr_onFunctionality Calculate power from energy over
time t=nLsr_pwr_on=resultIf lsr_pwr_on>LSR_SCALE_ON Call OH_SHIT_STOP
Module Lsr_offInputs N/AOutputs DAC valueFunctionality Read lsr_pwr_off
Write to DAC

Weston

Weston

Weston

Blake
•Milestone 1• Using the Microcontroller
Development board or STK600• Laser Modulation• Rudimentary Galvo
Movements using on-board flash
• Oh_shit_stop!• Optics in place, calibration
procedure solidified• Schematic Completed
• Rudimentary layout finished

Blake
•Milestone 2• Microcontroller Unit
• Drawing Functionality• RS232 Interface
(Debugging/Working)• C Code on PC (UI Code)
Finished• PCB Revision 1 completed and
being debugged• Revision 1 of User Manual
complete

Blake
•Expo• User Manual Fully Complete• PC Interaction
• Will accept vector files• Draw shapes with dots
• Timed to complete per refresh of CMOS camera
• System calibrated

Blake
