Critical Design Review Blake Ipson John Chen Matt Graeff Steven Benedict Weston Welge Team PhotoCon EXPO Lab Department of Electrical, Computer, and Energy Engineering University of Colorado at Boulder Matt 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” Laser Diode/Power Supply Collimation From Lens Galvo X Doublet Lens Galvo Y Laser ~ 4% Power Tap Power Detection Servo Drivers X/Y ADC DAC External Memory Camera DAC MCU From PC Demonstration Only PC Matt John John X Galvo Y Galvo 4 Channel ADC 4 Channel ADC I2C I2C/Parallel PC RS-232 Atmel 32bit AVR UC3C0512 1 Channel DAC 1 Channel DAC X Galvo Y Galvo Laser Driver Power Meter 1 Channel ADC Steven SPI EEPROM 1 Channel DAC Module Inputs Outputs Functionality OH_SHIT_STOP N/A error LED on Turn on error LED Call lsr_off() send_vec(GALVO_CENTER) Module Inputs Load User options Vector file Write constants, vectorfile Check lsr_pwr_on=int, lsr_pwr_off=int, draw_method=”dots”, galvo_center=int,int,int If no, call OH_SHIT_STOP If yes, write LSR_SCALE_ON, write LSR_SCALE_OFF, write DRAW_METHOD, write GALVO_CENTER) load vector file to flash mem call run() Outputs Functionality Steven Module Inputs Outputs Functionality Run Drawing method constant call function or error If(DRAW_METHOD=”dots”) Draw_dots() Else if(DRAW_METHOD=”lines”) Draw_lines() Else OH_SHIT_STOP Module Inputs Outputs Functionality Draw_dots Vectorfile function call(s) 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 Module Inputs Outputs Functionality Module Inputs Outputs Functionality Lsr_on N/A DAC value Read lsr_pwr_on Write to DAC Module Inputs Outputs Functionality Module Inputs Outputs Functionality Send_vec Int x,y,z DAC value Write x to x-galvo Write y to y-galvo Write z to z-galvo Module Inputs Outputs Functionality Steven Lsr_off N/A DAC value Read lsr_pwr_off Write to DAC Detect_energy N/A Energy Energy=0 Loop n X=read power from sensor Energy=Energy+x Return energy Set_pwr Energy Lsr_pwr_on Calculate power from energy over time t=n Lsr_pwr_on=result If lsr_pwr_on>LSR_SCALE_ON Call OH_SHIT_STOP Weston Weston Component Status Laser Diode In place Laser Power Supply In place Galvo Scanner In place Galvo Servo drivers In place Collimating Lens In place Objective lens In place Miscellaneous Optics Acquired Optics Breadboard In place CMOS camera Not here Microcontroller Acquired Power Supply In place PCB and components Acquired Task Blake John Matt Optics X X X Laser diode X X Collimation X X Galvanometer Scanning Lens X X X Interface X X X X Power Supply PC interface Documentation Weston X X X X Microcontroller PCB layout MATLAB Pre-processing Weston X Camera/Polymer Electronics Steven X X X X X X X X X X X X X X X X X X X X •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 Blake