Home
User`s Manual for the Beam Profiler - leorg
Contents
1. Intensity Graph pezzzzzzzzzzzzzzrz j B Use the cursor locations to generate the crossection plots on the primary axis aH Bp LB Ejer a Bp 2 00 fe gt Us A alf of width mm primary crossection an DBL baee f p pean b Primary Axis Green sample points in crossection Location gt e l ralf of height mm J i gt peoe mber of Vertical Pixels ea E gt Use the cursor locations to generate the crossection plots on the secondary axis N i half of width mm gt lt gt gt secondary crossection ese gt T Secondary Axis Blue gt ee half of height mm gt lt gt lt Ea Gi p The code works by correlating each cursor location in the Cursor List CrsrLst with an intensity pixel from the Intensity Graph The positions of the cursors are stored in units of millimeters while the intensity array is stored in units of pixels So this code simply converts each cursor location to a pixel value and then creates a 1 D intensity array to define the cross section intensity 15 Find Best Axis Tool The find best axis tool is a case structure with a true false controller When the user presses the Find Best Axis button the case structure switches to true for one iteration and then returns to false Thus the code will only run once when pressed The code first locates the center of the beam using a center of mass method A x A 2 4 x
2. Analyze Mode User Defined Axis Generation The simplest way to define the axis Is to click and drag the endpoints of the primary axis green to the desired locations The program will then automatically generate the intensity cross section between those two points The program will also automatically generate a secondary axis of equal length perpendicular to the primary axis The secondary axis by default intersects the primary axis at its midpoint However the user can slide the intersection point along the primary axis using the Secondary Axis Intersection controller secondary Axis Intersection i L E 0 00 1 00 Automatic Axis Generation Find Best Axis Tool The program can automatically generate primary and secondary axis when Find Best Axis is pressed To use this tool simply press the Find Best Axis button The progress bar below the button indicates the time remaining to finish the analysis The Find Best Axis tool will first find the center of the beam using a center of mass calculation The program will then try a variable number of angles of rotation for the axis and set the primary axis at the rotation angle that generates the densest cross section intensity Find Best Axis Best Axis Length J rm Angle Sensitivity ql peor porrny i sampling Sensitivity E ec5 p ra granna enro There are three settings that the user should set before running Automati
3. 3D Graph can be swiveled in any direction by simply clicking and grabbing the 3D image with the cursor Generate a Gaussian Best Fit The Generate Gaussian Best Fit tool will generate a Gaussian curve fit for both the primary and secondary axis indicate the full width half maximum for each axis and indicate the amount of error in the curve fits The Gaussian curves are drawn in red on top of the actually intensity cross sections which are drawn in white The Gaussian fits are not automatically updated so the user must press the Perform Gaussian Fit button whenever an update is desired Primary Axis Green Full Width Half Max 0 35 mm Error 2 9374E 3 Perorm Gaussian Fit Secular Fos Bine dmm o Full Width Half Max 0 40 imm Error f1 8445E 3 10 Chapter 4 Coding and Algorithms Explanation Overview This program is written entirely in LabVIEW The code uses some advanced analysis functions and requires that the user have the full version of LabVIEW to function properly The majority of the code is written inside an all encompassing while loop The while loop is controlled by the Stop Program button on the front panel When Stop Program is pressed the while loop will terminate and the program will stop running Outside of the main while loop are a couple of variables that get initialized whenever the program starts They are Number of Horizontal Pixels Number of Vertical
4. Axis Perpendicular to Primary Axis 14 Use the Four Endpoints to draw lines cccceeeeee enna 14 Generate Primary and Secondary Axis Cross Sections 15 FING BESEAXIS OO iste etnicaracactnsiautnanteesar agin nual N 16 Generate Best Fit Gaussian TOOl ccc cccceseeeeeeee ees 17 Generate 3D Intensity Graph cccccece ec eceeeeeeeee ees 18 Zoom On Intensity Graph cccccceccsseeceeeeeeeseeeseeeaaes 19 EDC 1000HR Specifications ccccccecceecee eee eeees 20 Chapter 1 General Information Overview This manual describes a laser beam spatial profiler software program written in LabVIEW The program uses an EDC 1000HR camera to detect a two dimensional cross section of a laser beam s intensity The user is then able to perform the following calculations to analyze the spatial profile of the laser Locate the primary and secondary axis Generate a 3D intensity graph Zoom in on the 2D intensity image Generate cross sections of the intensity profile Generate best fit Gaussian curves Find the full width half maximum FWHM of the beam Requirements EDC 1000HR camera LabVIEW A 15 pin pc cable PC card for the EDC 1000HR An open ISA slot for the PC card Profiler Software Package written in LabVIEW HRCAM32 DLL Application file for camera EDC360HR VXD Virtual Device Driver for camera HRCAM32 LIB Library file for camera Chapter 2 Setup Hardware Se
5. Crossection which is defaulted to be 200 Intensity Graph ES T Index Number Description zerr mmm First Primary axis endpoint E Second Primary axis endpoint First Secondary Axis endpoint E Second Secondary axis endpoint Points between Primary Axis endpoints 203 204 thru Points between Secondary Axis endpoints 403 The first two cursor clusters i e the endpoints for the primary axis dictate all of the rest of the cursors in Cursor List CrsrLst because the secondary axis is automatically perpendicular to the primary axis and the rest of the cursors just fill in the lines between the endpoints 13 Make Secondary Axis Perpendicular to Primary Axis The following code generates the secondary axis endpoints perpendicular to the primary axis endpoints Intensity Graph Catia ala in Make secondary axis perpendicular to primary axis CLEA EELLAALELELELELEL LEELA EERE EERE EERE EEELEEEEEEEEEALELELELALELARE EERE REAR REE R EERE EERE EERE EEEEAEEEEEEEEEELELELELALA RARE EERE R RRR R EERE EERE EEEEEEEEELEELALALEEEEEEREEELELERE EEE This portion of the program automatically generates the two secondary axis end points X3 13 and x4 Y4 perpendicular to the primary axis The intersection point Xc Yc forthe two axis can f be selected by the user using the knob The length ofthe second ary axis is equal to the length of the primary axis The math used a tk c X2 X2 X1 kn
6. Pixels Half Height Half of the physical dimension of the ccd detector in mm Half Width Half of the physical dimension of the ccd detector in mm A color table for the 2D intensity graph for a black and white image AE ae coat care Inside the main while loop is a case structure that allows the user to toggle between Preview Mode and Analyze Mode Stop Program gt While Loop True Program Running False Program Stop Case Structure True Preview Mode Analyze gt False Analyze Mode 11 Preview Mode The code for preview mode is located on the True side of the main case structure This is the code that calls the DLL file receives the images from the EDC 1000HR and updates the preview image on the front panel All graphs have a cursor list a 1 D array of all cursors each with several properties like position and color B64 The first 4 cursors 3 are used as endpoints with all z Use the restforming a line between them co ze m Intensity Graph ENEN a8 a CE ost ee 0 4 1132 EENEN uaz fua cafea Exposure time 182952 The input parameters for the HRCAM32 DLL are on the left side of the function They are hrcam32 unsigned int int int int unsigned int pixel The card s base address in Hex is 360h Anti Blooming Flag not 0 for anti blooming Interlace Mode 0 for no interlace Field Flag 0 for no interlace Exposure time in milliseco
7. Taer A a A is the intensity at pixel x y gt A gt A Xcenter Find Best Axis AE A EIENEN NIENIE NENNI N IEN EIENEN NENONEN EN ENEN NENNEN NEN EN EN ENEN NEN ON N DENONA NONN DEN NEN NEN TENENS N DEN NEN NENONEN NENEN NEN NN N NEN NON NEN EN NENEN NEN NENONEN NENNEN NENONEN ON NENEN NENEN DEN DEN ONENEN N DEN NENEN NENONEN ENEN DEN ENIN NENEN N DEN NENNEN EN EN NENONEN NENEN DENEN NENONEN INEN ENEN NENONEN EN NENONEN NEN NEN IN NDEN NENEN rn NON EO l s Find Centroid dTe p This portion of the program Intensity Graph amp will try to find the best _ E primary axis Program first locates peak _ amp of intensity and then tries amp all different _ amp slopes for the axis that will amp generate the widest _ amp crossection Convert Centroid into mm 6 56 zoa Intensity Graph generate trial crossection R Array vi ot gt Number of horizontal Pixels trial x1 ima gt i gt gt RangeArray vi x i gt gt trial y1 E tee ce aa gee points in trials a ise Number of a gt ih a If of height ram gt gt i gt T aie trial y2 Sampling Sensitivity fincieecing wilclewdawn eign Fin ity gt gt gt a i Increase Gl Number of Vertical Pixels The Find Best Axis code then generates a trial primary and secondary axis for a variable number of angles of rotation The trial axis are always centered at Xcenter and Ycenter with their leng
8. User s Manual for the EDC 1000HR Beam Profiler E Profiler wi Fle Ect Opera Took Browse Window Help Primary xit Crees A Denna Full Width Malt Max 35 ren Enoe P3974r Secondary Socks Blue Fri Bost Axis od Beat dixis Length i immi Ange Sengat mm fd ii STOF PIA Full Width Half Max UAU dmm Eror i 8445E 3 EEEE We Jeffrey B Cole University of California Davis Department of Applied Science LEORG Copyright 2003 Contents Chapter 1 Chapter 2 Chapter 3 Chapter 4 Chapter 5 General Information VOI VICW is ncn de cia A A nde iseuan tae adiamesdvenade 3 FREQUIPEIMEINS sisare aa T 3 Setup HardWare as cuteohoes cathe corneal ames onie acu vacmestearecatten cease ccoeaaneecs 4 DOW Ale e a 4 Using the Spatial Profiler FOV IC W IV OCC anra AO 5 Analyze ModE oaaae N ed och ted 6 Generating Primary amp Secondary AX S c00ceeee 7 User defined axis generation ccccccceceeeeeeeeeees 7 Automatic axis generation cccccecceeeceeeeeeeeeeeees 8 ZOOM IN ZOOM Out ccc cece eecee sees eee eeteeeeeeeseeeeeeeeeeeeees 9 Generate 3D Intensity Graph ccceccceccceeeeee eee ees 9 BeStFItOJUSSIA Meri 10 Coding and Algorithms Explanation OVEIVICW sorrara na A E A N 11 PFEVICW MOGE siirron adasanietansaunessaeanmaeet apie 12 PUAIV ZO MOOG esse 12 Primary and Secondary Axis Cursors Concept 13 Make Secondary
9. c Axis Generation The user can specify the width of the desired axis in millimeters the number of rotation angles probed and the sampling density of each test angle The last two settings are controlled with sliders described below Angle Sensitivity Slide This slide control corresponds to the number of rotation angles that the program should probe Moving the slider to the right will increase the sensitivity and vice versa Number of angles probed ee SensitivitySlider Sampling Sensitivity Slide The Sampling Sensitivity slide indicates the number of points the program will sample on each angle probed Increasing the number will increase the sensitivity and vice versa Zoom In Zoom Out The Zoom In tool is a toggle switch that when pressed zooms in on the area of interest defined by the primary and secondary axis and shows the camera s entire intensity array when un pressed 3 3 2 1 Y mm x mm Generate 3D Intensity Graph The image on the bottom left corner of the program is an intensity graph representing the intensity of the beam as a function of its spatial coordinates in millimeters The 3D graph is automatically zoomed in on the area of interest specified by the primary and secondary axis The 3D graph will not automatically update when new primary and secondary axis are selected so the user must press the Generate 3D Graph button whenever an update is desired The
10. l Pixels po EI 2 L gt i half of height i alf of height mm Intensity Graph F ga i B CWAxis3D 8 CaptionColor i MIMI ODIO SISISISIOIOIOIIIOIIS Se Hi r g oe CaptionColor SLA AD DAA DLA A DAL A SAA A AAAI AAD AAA SA AI AAA AA SDAA DADA A SAA IAS AIAN IAA DA AA NAIA AAA IA SSAA IA DAA AD AAI AAAI ANAL A DIAN ALAA ASIA IAL A IAI IIASA AA AAAI ASA IA SALA IA AAA A SAA DASA IAA IAA DA AANA AAA NILA DADA DADA AA SAAB ASAI ASAI A DAI A DADA AS AA DAA AIA SAAD SAI ASAI AA DAA SALA DA IAA AS AAA AI ANG This code is a straightforward use of the 3D surface tool built into LabVIEW The code at the bottom right of the case structure defines the axis maximum and minimum based on the endpoints of the primary and secondary axis 18 Zoom on Intensity Graph Zooming in on a graph means simply changing the maximum and minimum values for the axis The following code will set the maximum and minimum y axis values to be the maximum and minimum y locations of the endpoints of the primary axis The x axis limits are then set to maintain the correct aspect ratio for the preview window The x maximim is chosen to make the visible area a rectangle of the same ratio as the graph area Intensity Graph Scale Maximum YScale Minimum Cancel Button amp o Scale Maximum a ct g ee oe pe sa 3 gt lt Scale Minimum 7 o D The initial For loop makes an array of all four x locations and all four y l
11. nds An empty array buffer pointer must be 756 242 al ea The output is a one dimensional array of intensity values that must be reshaped into a 2D array that is 756 pixels wide and 242 pixels high Intensity values initially range from O to 255 but they are converted to a scale from 0 to 1 Analyze Mode The code for Analyze Mode is located on the False side of the case structure The functions in this mode are described in this manual from the top down The first couple of code clusters located at the top of the Analyze Mode case structure are the axis controllers and the primary and secondary axis intensity graph generators They run continually whenever the program is in Analyze Mode Below them are a number of case structures which each run different analysis tools 12 Primary and Secondary Axis Cursors Concept All graphs in LabVIEW have a cursor list a 1 D array of clusters each with several properties like position and color In this specific program a series of cursors are used to describe the primary and secondary axis on the intensity graph in the top left corner The cursors are stored in a 1 D array of clusters in which the first four clusters describe the 2 primary axis endpoint cursors and the 2 secondary axis endpoint cursors respectively The rest of the array describes the cursors that make up the lines between the endpoints The number of cursors between the two endpoints is a variable Sample Points in
12. ob aa Gannea ne smmnrrerrrenmenmnnmnnnire aries an ama NTs Ties areas AIT _ Yo 2 2 1 knob x 3 xc L 2 cos theta pi 2 Y3 Vc L 2 sin theta pi 2 4 xXc L 2 cos theta pi 2 Location XT BLE teceton YT ad Lecion fl Use the 4 endpoints to draw lines The following code generates the line series of cursors between the primary and secondary axis endpoints The code also uses the endpoints to create a scale multiplier for the cross section graphs Use cursors to draw lines between the endpoints Update Cursors Intensity Graph eee ES 7 e e eB Bg Me nie neces names agente PEQErTTaz CrsrList Get ante DR a j Location x Location x aration i Location J Hesi AE wr Location Locsin Location Y gt gt H Hair Style p Shape into two parts Get endpoint locations m Foin the endpoints of two lineouts sample points in crossection Gi 7 i iin mulitplier for step Create new cursors Pi T gt SOO OO COCO H 0 Default Sa SOOO SOC 2 3 sample points in crossection i gt gt sample points in crossection This process uses a separate VI called RangeArray vi RangeArray simply generates an array of numbers given a starting number an ending number and the number of points in between Generate Primary and Secondary Axis Cross Sections The following code generates the primary and secondary axis intensity cross sections
13. ocations for the primary and secondary axis endpoints Then the largest and smallest x and y values are used to define the new limits on the intensity graph When the case structure is switched to false the intensity graph limits are returned to the initial default settings 19 Chapter 5 EDC 1000HR Camera Specifications Image size 8 67x6 58 mm Sensing area Pixel size Non interlaced 11 5x2 7 microns Interlaced 11 5x13 5 Spatial Resolution Non interlaced 753 H x244 V Interlaced 753 H x488 V Non uniformity 15 maximum over central 92 of image Peak Quantum 70 0 68 microns Efficiency Saturation Signal 200 000 electrons Single Scan R m s noise 140 electrons pixel Exposure time 1 msec to 10secs 20
14. ser to setup the laser alignment and camera exposure time Analyze Mode Once in Analyze Mode the program will stop receiving images from the EDC 1000HR and the user is then able to perform a number of numerical and graphical calculations to characterize the spatial profile of the laser beam In Analyze Mode the user can e Locate the primary and secondary axis e Generate a 3D intensity graph e Zoom in on the 2D intensity image e Generate cross sections of the intensity profile e Generate a best fit Gaussian curve e Find the full width half maximum FWHM of the beam A Preview Zoom In Melee k p Secondary Axis Intersection Tool FRG Controller Generate 3D Perform Graph Tool Gaussian Fit Tool Find Best Axis Tool and settings Stop Program Button In Analyze Mode the cross section graphs will be automatically updated any time that the primary and secondary axis are moved However all other functions will only update when prompted by the user Generating Primary and Secondary Axis All calculations in Analyze Mode are focused on an area of interest defined by the primary and secondary axis So the first important step is to set the primary axis endpoints The primary axis and secondary axis are green and blue respectively The secondary axis is automatically generated perpendicular to the primary axis Exposure time 3 is ms Secondary Axis Intersection 27 E MU 0 00 1 00
15. ths controlled by the Best Axis Length variable Note that this code is very similar to the Generate Primary and Secondary Axis Cross Sections code The only difference is that the code is placed inside a For Loop and each iteration uses a slightly different rotation angle Then the intensities for each trial angle are summed up and placed in an array 16 Find Best Axis Case structure continued Convert Centroid into mm generate trial crossection MEE ee of horizontal Pixels Intensity Graph ntensity Intensity Graph Best Axis Length fe aaa ike Intensity Graph p az wand E z gt Location F pCrsrList best angle in degrez Ema gt If of height mm gt P i gt peH Sensiivly 7 Location e The loop s output array is then analyzed and the index of the maximum intensity summation is determined to be the ideal rotation angle Finally the first two cursors locations which correspond to the primary axis endpoints are replaced with the newly found ideal endpoint locations Generate Best Fit Gaussian Tool The Generate Best Fit Gaussian tool is a case structure with a true false controller When the user presses the Perform Gaussian Fit button the case structure switches to true for one iteration Thus the code will only run once when pressed Generate a best fit gaussian TISSA P Tru m aiii Raa ass sample points in crossection B primar
16. tup 1 Connect the EDC 1000HR to the computer by inserting the card into an open ISA slot in the PC Connect the camera to the card using a 15 pin cable Place an appropriate amount of density filters directly in front of the CCD detectors in the camera to attenuate the beam and protect the camera from over exposure Software Setup 1 2 EOC 1000HF Camera Place the driver file HRCAM32 VXD into the Windows System folder Place the library file HRCAM32 LIB into the Windows System folder Place the application file HRCAM32 DLL into the Windows System folder Open the LabVIEW program titled BeamProfiler lb Run the VI titled Profiler vi Filter Chapter 3 Using the Spatial Profiler Preview Mode When the program is first run it will be in Preview Mode In Preview Mode the camera is essentially a video camera continually updating the intensity image in the top left corner of the screen This mode allows the user to align the laser beam and set the exposure time on the camera from anywhere between 1 millisecond to 10 seconds Once the image in the top left corner is acceptable and the image is ready for analysis switch the program into Analyze Mode by pressing the Analyze Mode button in the center of the screen E Exposure Time Window None of the analysis functions will operate in Preview Mode Preview Mode is meant only to allow the u
17. y crossection Full Width Half Max This portion of code uses a modified version of the Lev Mar curve fitting tool which comes with LabVIEW The original Lev Mar VI attempts to fit an 17 exponential curve However the target equation for the Lev Mar VI was modified for this program to specifically generate a Gaussian curve The modified VI is called JBC_LevMar VI and is saved in BeamProfiler IIb The inputs to the JBC_Lev Mar curve fit VI are 1 X values for input graph array 2 Y values for input graph array 3 Initial guesses array for parameters PeakValue PeakLocation FWHM For more information on the Lev Mar VI see the help index in LabVIEW Generate 3 D Intensity Graph The Generate 3 D Intensity Graph tool is a case structure with a true false controller When the user presses the Generate 3D graph button the case structure switches to true for one iteration Thus the code will only run once when pressed Serer rrr RRR RRS rE rE rE rE EE RERE rE EEKE REE rE PEE KERERE KERERE KEREKE KERE rE REE rE PEE KERERE REEE aR aR KERERE rE REE KERERE RERE RERE KEKEE KERERE KE REE aR aR aR aR REE KERERE rE REE RE ar aR EERE Rea Raa _ Generate D ka k O O 3 OOOO OO OOOO MMMM MMMM MMMM MMMM MMMM MMMM MMMM RMN ld True P Number of horizontal Pixels al e p CWGraph3D p 3 gt PlotTemplate half of width mm lt ra Pintres Caon Draw 3d E RangeArray vi ae i Number of Vertica
Download Pdf Manuals
Related Search
Related Contents
EWCM 400 - Produktübersicht... ...www.delcocontrols.ch... ...delco Modulation morphologique de la densité Manuel d`installation et d`exploitation Necta opera Sécurité des machines Manuale d`lstruzioni Benchman - BioPak 240 Revolution 4 OTS80PB and OTS60PB Portable oil test sets Betriebs- und Montageanleitung für Anbau- und MANUAL DO USUÁRIO 保存用 HDSPARK セットアップガイド(PDF) Copyright © All rights reserved.
Failed to retrieve file